From 26a66ad4c496cb346e8bf0205bc188c3695eb4d8 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Wed, 21 May 2025 18:26:47 -0500 Subject: [PATCH] OPN: fix block not working on ExtCh issue #2504 --- src/engine/platform/genesisext.cpp | 1 + src/engine/platform/ym2203ext.cpp | 1 + src/engine/platform/ym2608ext.cpp | 1 + src/engine/platform/ym2610bext.cpp | 1 + src/engine/platform/ym2610ext.cpp | 1 + 5 files changed, 5 insertions(+) diff --git a/src/engine/platform/genesisext.cpp b/src/engine/platform/genesisext.cpp index 11314aa5e..abf0776c9 100644 --- a/src/engine/platform/genesisext.cpp +++ b/src/engine/platform/genesisext.cpp @@ -37,6 +37,7 @@ void DivPlatformGenesisExt::commitStateExt(int ch, DivInstrument* ins) { } chan[extChanOffs].state.fms=ins->fm.fms; chan[extChanOffs].state.ams=ins->fm.ams; + chan[extChanOffs].state.block=ins->fm.block; chan[extChanOffs].state.op[ordch]=ins->fm.op[ordch]; } diff --git a/src/engine/platform/ym2203ext.cpp b/src/engine/platform/ym2203ext.cpp index 1d03bb4f0..a65210f35 100644 --- a/src/engine/platform/ym2203ext.cpp +++ b/src/engine/platform/ym2203ext.cpp @@ -31,6 +31,7 @@ void DivPlatformYM2203Ext::commitStateExt(int ch, DivInstrument* ins) { if (ch==0 || fbAllOps) { chan[2].state.fb=ins->fm.fb; } + chan[extChanOffs].state.block=ins->fm.block; chan[2].state.op[ordch]=ins->fm.op[ordch]; } diff --git a/src/engine/platform/ym2608ext.cpp b/src/engine/platform/ym2608ext.cpp index 798c121bc..1f0ca8546 100644 --- a/src/engine/platform/ym2608ext.cpp +++ b/src/engine/platform/ym2608ext.cpp @@ -34,6 +34,7 @@ void DivPlatformYM2608Ext::commitStateExt(int ch, DivInstrument* ins) { } chan[2].state.fms=ins->fm.fms; chan[2].state.ams=ins->fm.ams; + chan[extChanOffs].state.block=ins->fm.block; chan[2].state.op[ordch]=ins->fm.op[ordch]; } diff --git a/src/engine/platform/ym2610bext.cpp b/src/engine/platform/ym2610bext.cpp index e8757590c..cfca1d003 100644 --- a/src/engine/platform/ym2610bext.cpp +++ b/src/engine/platform/ym2610bext.cpp @@ -30,6 +30,7 @@ void DivPlatformYM2610BExt::commitStateExt(int ch, DivInstrument* ins) { } chan[extChanOffs].state.fms=ins->fm.fms; chan[extChanOffs].state.ams=ins->fm.ams; + chan[extChanOffs].state.block=ins->fm.block; chan[extChanOffs].state.op[ordch]=ins->fm.op[ordch]; } diff --git a/src/engine/platform/ym2610ext.cpp b/src/engine/platform/ym2610ext.cpp index 2cab7c326..20ce25d58 100644 --- a/src/engine/platform/ym2610ext.cpp +++ b/src/engine/platform/ym2610ext.cpp @@ -30,6 +30,7 @@ void DivPlatformYM2610Ext::commitStateExt(int ch, DivInstrument* ins) { } chan[extChanOffs].state.fms=ins->fm.fms; chan[extChanOffs].state.ams=ins->fm.ams; + chan[extChanOffs].state.block=ins->fm.block; chan[extChanOffs].state.op[ordch]=ins->fm.op[ordch]; }