From ef1fae3beeb8371293014a0293b4b58224db025f Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 9 Mar 2025 04:06:47 -0500 Subject: [PATCH] SM8521: the actual rate is /2 rather than /4 --- src/engine/platform/sm8521.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/engine/platform/sm8521.cpp b/src/engine/platform/sm8521.cpp index 1f572001f..cc7de2c07 100644 --- a/src/engine/platform/sm8521.cpp +++ b/src/engine/platform/sm8521.cpp @@ -24,7 +24,7 @@ //#define rWrite(a,v) pendingWrites[a]=v; #define rWrite(a,v) if (!skipRegisterWrites) {writes.push(QueuedWrite(a,v)); if (dumpWrites) {addWrite(a,v);} } -#define CHIP_DIVIDER 64 +#define CHIP_DIVIDER 32 const char* regCheatSheetSM8521[]={ "SGC", "40", @@ -402,7 +402,7 @@ void DivPlatformSM8521::setFlags(const DivConfig& flags) { chipClock=11059200; CHECK_CUSTOM_CLOCK; antiClickEnabled=!flags.getBool("noAntiClick",false); - rate=chipClock/4; // CKIN -> fCLK(/2) -> Function blocks (/2) + rate=chipClock/2; // CKIN -> fCLK(/2) -> Function blocks (/2) for (int i=0; i<3; i++) { oscBuf[i]->setRate(rate); }