aboutsummaryrefslogtreecommitdiff
path: root/utils/gen_adldata/file_formats
diff options
context:
space:
mode:
Diffstat (limited to 'utils/gen_adldata/file_formats')
-rw-r--r--utils/gen_adldata/file_formats/load_ail.h1
-rw-r--r--utils/gen_adldata/file_formats/load_bisqwit.h1
-rw-r--r--utils/gen_adldata/file_formats/load_bnk.h1
-rw-r--r--utils/gen_adldata/file_formats/load_bnk2.h1
-rw-r--r--utils/gen_adldata/file_formats/load_ea.h1
-rw-r--r--utils/gen_adldata/file_formats/load_ibk.h1
-rw-r--r--utils/gen_adldata/file_formats/load_jv.h1
-rw-r--r--utils/gen_adldata/file_formats/load_op2.h1
-rw-r--r--utils/gen_adldata/file_formats/load_tmb.h1
-rw-r--r--utils/gen_adldata/file_formats/load_wopl.h5
10 files changed, 12 insertions, 2 deletions
diff --git a/utils/gen_adldata/file_formats/load_ail.h b/utils/gen_adldata/file_formats/load_ail.h
index a10ff92..e63b1d7 100644
--- a/utils/gen_adldata/file_formats/load_ail.h
+++ b/utils/gen_adldata/file_formats/load_ail.h
@@ -89,6 +89,7 @@ static bool LoadMiles(const char *fn, unsigned bank, const char *prefix)
struct ins tmp2;
tmp2.notenum = gmno < 128 ? 0 : (unsigned char)notenum;
tmp2.pseudo4op = false;
+ tmp2.real4op = (inscount > 1);
tmp2.voice2_fine_tune = 0.0;
std::string name;
if(midi_index >= 0) name = std::string(1, '\377') + MidiInsName[midi_index];
diff --git a/utils/gen_adldata/file_formats/load_bisqwit.h b/utils/gen_adldata/file_formats/load_bisqwit.h
index 015b0eb..f5f73dc 100644
--- a/utils/gen_adldata/file_formats/load_bisqwit.h
+++ b/utils/gen_adldata/file_formats/load_bisqwit.h
@@ -44,6 +44,7 @@ static bool LoadBisqwit(const char *fn, unsigned bank, const char *prefix)
(gmno < 128 ? 'M' : 'P'), gmno & 127);
tmp[1].diff = (tmp[0] != tmp[1]);
+ tmp2.real4op = tmp[1].diff;
size_t resno = InsertIns(tmp[0], tmp[1], tmp2, name, name2, (tmp[0] == tmp[1]));
SetBank(bank, gmno, resno);
}
diff --git a/utils/gen_adldata/file_formats/load_bnk.h b/utils/gen_adldata/file_formats/load_bnk.h
index 38793a7..aa7701f 100644
--- a/utils/gen_adldata/file_formats/load_bnk.h
+++ b/utils/gen_adldata/file_formats/load_bnk.h
@@ -108,6 +108,7 @@ static bool LoadBNK(const char *fn, unsigned bank, const char *prefix, bool is_f
ins tmp2;
tmp2.notenum = is_fat ? voice_num : (percussive ? usage_flag : 0);
tmp2.pseudo4op = false;
+ tmp2.real4op = false;
tmp2.voice2_fine_tune = 0.0;
if(is_fat) tmp.data[10] ^= 1;
diff --git a/utils/gen_adldata/file_formats/load_bnk2.h b/utils/gen_adldata/file_formats/load_bnk2.h
index a44b689..4772da5 100644
--- a/utils/gen_adldata/file_formats/load_bnk2.h
+++ b/utils/gen_adldata/file_formats/load_bnk2.h
@@ -86,6 +86,7 @@ static bool LoadBNK2(const char *fn, unsigned bank, const char *prefix,
ins tmp2;
tmp2.notenum = (gmno & 128) ? 35 : 0;
tmp2.pseudo4op = false;
+ tmp2.real4op = false;
tmp2.voice2_fine_tune = 0.0;
if(xxP24NNN & 8)
diff --git a/utils/gen_adldata/file_formats/load_ea.h b/utils/gen_adldata/file_formats/load_ea.h
index 86c1b54..79367d9 100644
--- a/utils/gen_adldata/file_formats/load_ea.h
+++ b/utils/gen_adldata/file_formats/load_ea.h
@@ -85,6 +85,7 @@ static bool LoadEA(const char *fn, unsigned bank, const char *prefix)
ins tmp2{};
tmp2.notenum = 0;
tmp2.pseudo4op = false;
+ tmp2.real4op = false;
std::string name;
char name2[512];
diff --git a/utils/gen_adldata/file_formats/load_ibk.h b/utils/gen_adldata/file_formats/load_ibk.h
index bc03962..12fa520 100644
--- a/utils/gen_adldata/file_formats/load_ibk.h
+++ b/utils/gen_adldata/file_formats/load_ibk.h
@@ -61,6 +61,7 @@ static bool LoadIBK(const char *fn, unsigned bank, const char *prefix, bool perc
struct ins tmp2;
tmp2.notenum = gmno < 128 ? 0 : 35;
tmp2.pseudo4op = false;
+ tmp2.real4op = false;
tmp2.voice2_fine_tune = 0.0;
size_t resno = InsertIns(tmp, tmp2, std::string(1, '\377') + name, name2);
diff --git a/utils/gen_adldata/file_formats/load_jv.h b/utils/gen_adldata/file_formats/load_jv.h
index b79832f..35caead 100644
--- a/utils/gen_adldata/file_formats/load_jv.h
+++ b/utils/gen_adldata/file_formats/load_jv.h
@@ -71,6 +71,7 @@ static bool LoadJunglevision(const char *fn, unsigned bank, const char *prefix)
struct ins tmp2;
tmp2.notenum = data[offset + 1];
tmp2.pseudo4op = false;
+ tmp2.real4op = (data[offset] != 0);
tmp2.voice2_fine_tune = 0.0;
while(tmp2.notenum && tmp2.notenum < 20)
diff --git a/utils/gen_adldata/file_formats/load_op2.h b/utils/gen_adldata/file_formats/load_op2.h
index fc55a0e..48b7eae 100644
--- a/utils/gen_adldata/file_formats/load_op2.h
+++ b/utils/gen_adldata/file_formats/load_op2.h
@@ -108,6 +108,7 @@ static bool LoadDoom(const char *fn, unsigned bank, const char *prefix)
struct ins tmp2;
tmp2.notenum = ins.note;
tmp2.pseudo4op = false;
+ tmp2.real4op = false;
tmp2.voice2_fine_tune = 0.0;
while(tmp2.notenum && tmp2.notenum < 20)
{
diff --git a/utils/gen_adldata/file_formats/load_tmb.h b/utils/gen_adldata/file_formats/load_tmb.h
index ab1ff37..5b38433 100644
--- a/utils/gen_adldata/file_formats/load_tmb.h
+++ b/utils/gen_adldata/file_formats/load_tmb.h
@@ -50,6 +50,7 @@ static bool LoadTMB(const char *fn, unsigned bank, const char *prefix)
struct ins tmp2;
tmp2.notenum = data[offset + 11];
tmp2.pseudo4op = false;
+ tmp2.real4op = false;
tmp2.voice2_fine_tune = 0.0;
std::string name;
diff --git a/utils/gen_adldata/file_formats/load_wopl.h b/utils/gen_adldata/file_formats/load_wopl.h
index eba94e3..fe4865d 100644
--- a/utils/gen_adldata/file_formats/load_wopl.h
+++ b/utils/gen_adldata/file_formats/load_wopl.h
@@ -57,8 +57,8 @@ static bool LoadWopl(const char *fn, unsigned bank, const char *prefix)
uint16_t pbanks_count = toUint16BE((const uint8_t *)data.data() + 0x0f);
AdlBankSetup setup;
- setup.deepTremolo = (data[0x11] >> 0) & 0x01;
- setup.deepVibrato = (data[0x11] >> 1) & 0x01;
+ setup.deepTremolo = (data[0x11] & 0x01) != 0;
+ setup.deepVibrato = (data[0x11] & 0x02) != 0;
setup.volumeModel = (int)data[0x12];
setup.adLibPercussions = false;
setup.scaleModulators = false;
@@ -169,6 +169,7 @@ static bool LoadWopl(const char *fn, unsigned bank, const char *prefix)
tmp2.notenum = is_percussion ? data[offset + 38] : 0;
bool real4op = (flags & (uint8_t)WOPL_Flags::Mode_4op) != 0;
tmp2.pseudo4op = (flags & (uint8_t)WOPL_Flags::Mode_DoubleVoice) != 0;
+ tmp2.real4op = real4op && !tmp2.pseudo4op;
tmp2.voice2_fine_tune = 0;
tmp[0].diff = false;
tmp[1].diff = real4op && !tmp2.pseudo4op;