diff --git a/src/engine/platform/genesis.cpp b/src/engine/platform/genesis.cpp index c375e51f..c6a5abc7 100644 --- a/src/engine/platform/genesis.cpp +++ b/src/engine/platform/genesis.cpp @@ -554,7 +554,7 @@ int DivPlatformGenesis::dispatch(DivCommand c) { switch (c.cmd) { case DIV_CMD_NOTE_ON: { DivInstrument* ins=parent->getIns(chan[c.chan].ins,DIV_INS_FM); - if (c.chan==csmChan && extMode && softPCM) { // CSM + if (c.chan==csmChan && extMode) { // CSM chan[c.chan].macroInit(ins); chan[c.chan].insChanged=false; diff --git a/src/engine/platform/genesisext.cpp b/src/engine/platform/genesisext.cpp index c2040eff..20268de9 100644 --- a/src/engine/platform/genesisext.cpp +++ b/src/engine/platform/genesisext.cpp @@ -587,7 +587,7 @@ void DivPlatformGenesisExt::tick(bool sysTick) { } } - if (extMode && softPCM) { + if (extMode) { if (chan[csmChan].freqChanged) { chan[csmChan].freq=parent->calcFreq(chan[csmChan].baseFreq,chan[csmChan].pitch,chan[csmChan].fixedArp?chan[csmChan].baseNoteOverride:chan[csmChan].arpOff,chan[csmChan].fixedArp,true,0,chan[csmChan].pitch2,chipClock,CHIP_DIVIDER); if (chan[csmChan].freq<1) chan[csmChan].freq=1; @@ -620,7 +620,7 @@ void DivPlatformGenesisExt::tick(bool sysTick) { immWrite(0x28,writeMask); } - if (extMode && softPCM) { + if (extMode) { if (chan[csmChan].keyOn) { immWrite(0x27,0x81); chan[csmChan].keyOn=false; @@ -685,10 +685,10 @@ void DivPlatformGenesisExt::forceIns() { opChan[i].freqChanged=true; } } - if (extMode && softPCM && chan[7].active) { // CSM - chan[7].insChanged=true; - chan[7].freqChanged=true; - chan[7].keyOn=true; + if (extMode && chan[csmChan].active) { // CSM + chan[csmChan].insChanged=true; + chan[csmChan].freqChanged=true; + chan[csmChan].keyOn=true; } } @@ -700,7 +700,7 @@ void* DivPlatformGenesisExt::getChanState(int ch) { DivMacroInt* DivPlatformGenesisExt::getChanMacroInt(int ch) { if (ch>=6) return &chan[ch-3].std; - if (ch>=2) return NULL; // currently not implemented + if (ch>=2) return &opChan[ch-2].std; return &chan[ch].std; } diff --git a/src/engine/platform/ym2203ext.cpp b/src/engine/platform/ym2203ext.cpp index dd3e8595..12605a93 100644 --- a/src/engine/platform/ym2203ext.cpp +++ b/src/engine/platform/ym2203ext.cpp @@ -601,7 +601,7 @@ void* DivPlatformYM2203Ext::getChanState(int ch) { DivMacroInt* DivPlatformYM2203Ext::getChanMacroInt(int ch) { if (ch>=6) return ay->getChanMacroInt(ch-6); - if (ch>=2) return NULL; // currently not implemented + if (ch>=2) return &opChan[ch-2].std; return &chan[ch].std; } diff --git a/src/engine/platform/ym2608ext.cpp b/src/engine/platform/ym2608ext.cpp index 6c8ccd36..47a01d13 100644 --- a/src/engine/platform/ym2608ext.cpp +++ b/src/engine/platform/ym2608ext.cpp @@ -639,7 +639,7 @@ void* DivPlatformYM2608Ext::getChanState(int ch) { DivMacroInt* DivPlatformYM2608Ext::getChanMacroInt(int ch) { if (ch>=9 && ch<12) return ay->getChanMacroInt(ch-9); if (ch>=6) return &chan[ch-3].std; - if (ch>=2) return NULL; // currently not implemented + if (ch>=2) return &opChan[ch-2].std; return &chan[ch].std; } diff --git a/src/engine/platform/ym2610bext.cpp b/src/engine/platform/ym2610bext.cpp index 5c7eab18..207708bd 100644 --- a/src/engine/platform/ym2610bext.cpp +++ b/src/engine/platform/ym2610bext.cpp @@ -630,7 +630,7 @@ void* DivPlatformYM2610BExt::getChanState(int ch) { DivMacroInt* DivPlatformYM2610BExt::getChanMacroInt(int ch) { if (ch>=(psgChanOffs+3) && ch<(adpcmAChanOffs+3)) return ay->getChanMacroInt(ch-psgChanOffs-3); if (ch>=(extChanOffs+4)) return &chan[ch-3].std; - if (ch>=extChanOffs) return NULL; // currently not implemented + if (ch>=extChanOffs) return &opChan[ch-extChanOffs].std; return &chan[ch].std; } diff --git a/src/engine/platform/ym2610ext.cpp b/src/engine/platform/ym2610ext.cpp index 2460ae66..b4da0878 100644 --- a/src/engine/platform/ym2610ext.cpp +++ b/src/engine/platform/ym2610ext.cpp @@ -630,7 +630,7 @@ void* DivPlatformYM2610Ext::getChanState(int ch) { DivMacroInt* DivPlatformYM2610Ext::getChanMacroInt(int ch) { if (ch>=(psgChanOffs+3) && ch<(adpcmAChanOffs+3)) return ay->getChanMacroInt(ch-psgChanOffs-3); if (ch>=(extChanOffs+4)) return &chan[ch-3].std; - if (ch>=extChanOffs) return NULL; // currently not implemented + if (ch>=extChanOffs) return &opChan[ch-extChanOffs].std; return &chan[ch].std; }