From c45816b8f2bc7a0eb232c706767338237fc1ac03 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 29 Sep 2022 00:38:18 -0500 Subject: [PATCH] DAC: fix wavetable mode --- src/engine/platform/pcmdac.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/engine/platform/pcmdac.cpp b/src/engine/platform/pcmdac.cpp index f7db0ef4c..ae3362ecd 100644 --- a/src/engine/platform/pcmdac.cpp +++ b/src/engine/platform/pcmdac.cpp @@ -47,7 +47,7 @@ void DivPlatformPCMDAC::acquire(short* bufL, short* bufR, size_t start, size_t l chan.audPos%=chan.audLen; chan.audDir=false; } - output=(chan.ws.output[chan.audPos]^0x80)<<8; + output=(chan.ws.output[chan.audPos]-0x80)<<8; } else { DivSample* s=parent->getSample(chan.sample); if (s->samples>0) { @@ -195,7 +195,7 @@ int DivPlatformPCMDAC::dispatch(DivCommand c) { DivInstrument* ins=parent->getIns(chan.ins,DIV_INS_AMIGA); if (ins->amiga.useWave) { chan.useWave=true; - chan.audLen=ins->amiga.waveLen; + chan.audLen=ins->amiga.waveLen+1; if (chan.insChanged) { if (chan.wave<0) { chan.wave=0;