OPL: fix 4-op channel muting

This commit is contained in:
tildearrow 2022-06-12 23:22:45 -05:00
parent f3f8804f47
commit da756bef7f
1 changed files with 3 additions and 0 deletions

View File

@ -677,6 +677,9 @@ void DivPlatformOPL::muteChannel(int ch, bool mute) {
fm.channel[outChanMap[ch]].muted=mute;
}
int ops=(slots[3][ch]!=255 && chan[ch].state.ops==4 && oplType==3)?4:2;
if (ch&1 && ch<12) {
if (chan[ch-1].fourOp) return;
}
chan[ch].fourOp=(ops==4);
update4OpMask=true;
for (int i=0; i<ops; i++) {