From fc34474d6e3b575b1a6555bf14ddfdca2a573986 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 4 Jun 2022 16:52:42 -0500 Subject: [PATCH] MSM6258: prepare for rate changing --- src/engine/platform/msm6258.cpp | 10 ++++++++++ src/engine/platform/msm6258.h | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/engine/platform/msm6258.cpp b/src/engine/platform/msm6258.cpp index 826d221b2..9bcb79668 100644 --- a/src/engine/platform/msm6258.cpp +++ b/src/engine/platform/msm6258.cpp @@ -46,6 +46,16 @@ void DivPlatformMSM6258::acquire(short* bufL, short* bufR, size_t start, size_t case 0: msm->ctrl_w(w.val); break; + case 2: + msmPan=w.val; + break; + case 8: + msmClock=w.val; + break; + case 12: + msmDivider=4-(w.val&3); + if (msmDivider<2) msmDivider=2; + break; } writes.pop(); } diff --git a/src/engine/platform/msm6258.h b/src/engine/platform/msm6258.h index ea0482f37..7ef226816 100644 --- a/src/engine/platform/msm6258.h +++ b/src/engine/platform/msm6258.h @@ -87,9 +87,9 @@ class DivPlatformMSM6258: public DivDispatch { unsigned char* adpcmMem; size_t adpcmMemLen; - unsigned char sampleBank; + unsigned char sampleBank, msmPan, msmDivider; - int delay, updateOsc, sample, samplePos; + int delay, updateOsc, sample, samplePos, msmClock; bool extMode;