From 5672590cdc4ba258fb1ddf809f1cd9cf167c4f16 Mon Sep 17 00:00:00 2001 From: cam900 Date: Sun, 4 Dec 2022 17:00:29 +0900 Subject: [PATCH] Fix again --- src/engine/platform/es5506.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/engine/platform/es5506.cpp b/src/engine/platform/es5506.cpp index 0a16648a..8382a57b 100644 --- a/src/engine/platform/es5506.cpp +++ b/src/engine/platform/es5506.cpp @@ -1149,6 +1149,10 @@ void DivPlatformES5506::setFlags(const DivConfig& flags) { chipClock=16000000; CHECK_CUSTOM_CLOCK; rate=chipClock/16; // 2 E clock tick (16 CLKIN tick) per voice + for (int i=0; i<32; i++) { + oscBuf[i]->rate=rate; + } + initChanMax=MAX(4,flags.getInt("channels",0x1f)&0x1f); chanMax=initChanMax; pageWriteMask(0x00,0x60,0x0b,chanMax); @@ -1245,14 +1249,13 @@ int DivPlatformES5506::init(DivEngine* p, int channels, int sugRate, const DivCo dumpWrites=false; skipRegisterWrites=false; - setFlags(flags); - for (int i=0; i<32; i++) { isMuted[i]=false; oscBuf[i]=new DivDispatchOscBuffer; - oscBuf[i]->rate=rate; } + setFlags(flags); + reset(); return 32; }