From 1470564267efcf4b3d69cda3a700fdd28eea76fa Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 23 Mar 2025 13:02:12 -0500 Subject: [PATCH] C64: fix PCM chan osc --- src/engine/platform/c64.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/engine/platform/c64.cpp b/src/engine/platform/c64.cpp index ecbc72e1d..d2615a9be 100644 --- a/src/engine/platform/c64.cpp +++ b/src/engine/platform/c64.cpp @@ -171,7 +171,7 @@ void DivPlatformC64::acquire(short** buf, size_t len) { oscBuf[0]->putSample(i,sid_d->lastOut[0]); oscBuf[1]->putSample(i,sid_d->lastOut[1]); oscBuf[2]->putSample(i,sid_d->lastOut[2]); - oscBuf[3]->putSample(i,chan[3].pcmOut<<11); + oscBuf[3]->putSample(i,isMuted[3]?0:(chan[3].pcmOut<<11)); } } else if (sidCore==1) { sid_fp->clock(4,&buf[0][i]); @@ -180,7 +180,7 @@ void DivPlatformC64::acquire(short** buf, size_t len) { oscBuf[0]->putSample(i,runFakeFilter(0,(sid_fp->lastChanOut[0]-dcOff)>>5)); oscBuf[1]->putSample(i,runFakeFilter(1,(sid_fp->lastChanOut[1]-dcOff)>>5)); oscBuf[2]->putSample(i,runFakeFilter(2,(sid_fp->lastChanOut[2]-dcOff)>>5)); - oscBuf[3]->putSample(i,chan[3].pcmOut<<11); + oscBuf[3]->putSample(i,isMuted[3]?0:(chan[3].pcmOut<<11)); } } else { sid->clock(); @@ -190,7 +190,7 @@ void DivPlatformC64::acquire(short** buf, size_t len) { oscBuf[0]->putSample(i,runFakeFilter(0,(sid->last_chan_out[0]-dcOff)>>5)); oscBuf[1]->putSample(i,runFakeFilter(1,(sid->last_chan_out[1]-dcOff)>>5)); oscBuf[2]->putSample(i,runFakeFilter(2,(sid->last_chan_out[2]-dcOff)>>5)); - oscBuf[3]->putSample(i,chan[3].pcmOut<<11); + oscBuf[3]->putSample(i,isMuted[3]?0:(chan[3].pcmOut<<11)); } } }