From 8de60fe2a68bd027970a04ea7d793c8e05a6cebe Mon Sep 17 00:00:00 2001 From: tildearrow Date: Wed, 15 Dec 2021 00:50:32 -0500 Subject: [PATCH] arcade pitch oddity --- src/engine/playback.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/engine/playback.cpp b/src/engine/playback.cpp index 0ee565563..01bcae575 100644 --- a/src/engine/playback.cpp +++ b/src/engine/playback.cpp @@ -486,6 +486,11 @@ void DivEngine::processRow(int i, bool afterDelay) { break; case 0xe5: // pitch chan[i].pitch=effectVal-0x80; + if (song.system==DIV_SYSTEM_ARCADE) { // arcade pitch oddity + chan[i].pitch*=2; + if (chan[i].pitch<-128) chan[i].pitch=-128; + if (chan[i].pitch>127) chan[i].pitch=127; + } dispatchCmd(DivCommand(DIV_CMD_PITCH,i,chan[i].pitch+(((chan[i].vibratoDepth*vibTable[chan[i].vibratoPos]*chan[i].vibratoFine)>>4)/15))); break; case 0xea: // legato mode