diff --git a/src/engine/platform/ym2608.cpp b/src/engine/platform/ym2608.cpp index d87bcf688..02e6a427e 100644 --- a/src/engine/platform/ym2608.cpp +++ b/src/engine/platform/ym2608.cpp @@ -1795,9 +1795,6 @@ void DivPlatformYM2608::poke(std::vector& wlist) { void DivPlatformYM2608::reset() { writes.clear(); memset(regPool,0,512); - if (dumpWrites) { - addWrite(0xffffffff,0); - } OPN2_Reset(&fm_nuked); OPN2_SetChipType(&fm_nuked,ym3438_mode_opn); fm->reset(); @@ -1883,6 +1880,13 @@ void DivPlatformYM2608::reset() { extMode=false; + // enable 6 channel mode + immWrite(0x29,0x80); + + if (dumpWrites) { + addWrite(0xffffffff,0); + } + // LFO immWrite(0x22,lfoValue); @@ -1894,9 +1898,6 @@ void DivPlatformYM2608::reset() { immWrite(0x10d,0xff); immWrite(0x10c,0xff); - // enable 6 channel mode - immWrite(0x29,0x80); - // set prescaler immWrite(0x2d,0xff); immWrite(prescale,0xff);