diff --git a/src/engine/platform/x1_010.cpp b/src/engine/platform/x1_010.cpp index 34973a99d..12e6280d9 100644 --- a/src/engine/platform/x1_010.cpp +++ b/src/engine/platform/x1_010.cpp @@ -362,7 +362,7 @@ void DivPlatformX1_010::tick(bool sysTick) { if (chan[i].std.pitch.had) { if (chan[i].std.pitch.mode) { chan[i].pitch2+=chan[i].std.pitch.val; - CLAMP_VAR(chan[i].pitch2,-32768,32767); + CLAMP_VAR(chan[i].pitch2,-65535,65535); } else { chan[i].pitch2=chan[i].std.pitch.val; } @@ -484,6 +484,7 @@ void DivPlatformX1_010::tick(bool sysTick) { if (chan[i].freq>255) chan[i].freq=255; chWrite(i,2,chan[i].freq&0xff); } else { + if (chan[i].freq<0) chan[i].freq=0; if (chan[i].freq>65535) chan[i].freq=65535; chWrite(i,2,chan[i].freq&0xff); chWrite(i,3,(chan[i].freq>>8)&0xff);