# HG changeset patch # User Laurens Holst # Date 1595609821 -7200 # Fri Jul 24 18:57:01 2020 +0200 # Node ID 41cba7f43314874814bb3e87dc2f47ba21221602 # Parent 3687eecba1ce098c94b418ac4edf918d5f7de93e OPL3: Pass waveform select enable for OPL2s. OPL2 is not officially supported for playback, but since it is detected as OPL3, we pass this flag to allow it to play back OPL2 music nevertheless. diff --git a/src/drivers/OPL3.asm b/src/drivers/OPL3.asm --- a/src/drivers/OPL3.asm +++ b/src/drivers/OPL3.asm @@ -36,7 +36,14 @@ MaskControl: cp 8H jr z,WriteRegister - ret + cp 1H + ret nz + MaskTest: + ld a,d + and 00100000B ; pass waveform select enable for OPL2s + ld d,a + ld a,e + jr WriteRegister ; e = register ; d = value @@ -136,6 +143,8 @@ ld b,0D6H ld de,0020H call OPL3_FillRegisterPairs + ld de,0001H + call OPL3_WriteRegister ld de,0008H call OPL3_WriteRegister ld de,0004H