From 900c429d900493d114f2141b0c815018a226a720 Mon Sep 17 00:00:00 2001 From: Vitaly Novichkov Date: Sun, 6 May 2018 23:02:03 +0300 Subject: Attempt to fix AppVeyor build --- utils/gen_adldata/file_formats/load_wopl.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'utils/gen_adldata/file_formats/load_wopl.h') diff --git a/utils/gen_adldata/file_formats/load_wopl.h b/utils/gen_adldata/file_formats/load_wopl.h index 26a2611..eba94e3 100644 --- a/utils/gen_adldata/file_formats/load_wopl.h +++ b/utils/gen_adldata/file_formats/load_wopl.h @@ -207,9 +207,9 @@ static bool LoadWopl(const char *fn, unsigned bank, const char *prefix) char name2[512]; std::memset(name2, 0, 512); if(is_percussion) - std::snprintf(name2, 512, "%sP%u", prefix, gmno & 127); + snprintf(name2, 512, "%sP%u", prefix, gmno & 127); else - std::snprintf(name2, 512, "%sM%u", prefix, i); + snprintf(name2, 512, "%sM%u", prefix, i); if(!real4op && !tmp2.pseudo4op) { -- cgit v1.2.3 From bb4797ee68c0f12018196d3ee8caddcdcad9fe38 Mon Sep 17 00:00:00 2001 From: Vitaly Novichkov Date: Sat, 19 May 2018 22:33:37 +0300 Subject: Works and fixes - Fixed an incorrect calculation of 4-op channels and choosing 4-op channels for 2-op only banks - Resolved trouble with automatically chosen flags because of internal confusion --- utils/gen_adldata/file_formats/load_wopl.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'utils/gen_adldata/file_formats/load_wopl.h') 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; -- cgit v1.2.3