From f376e919ff3e637a30759997ab1fad58cfdd4447 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 17 Feb 2022 22:19:01 -0500 Subject: [PATCH] Game Boy: fix sweep in non-sweep channel --- src/engine/platform/gb.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/engine/platform/gb.cpp b/src/engine/platform/gb.cpp index 37905542..3139da0b 100644 --- a/src/engine/platform/gb.cpp +++ b/src/engine/platform/gb.cpp @@ -358,6 +358,7 @@ int DivPlatformGB::dispatch(DivCommand c) { chan[c.chan].inPorta=c.value; break; case DIV_CMD_GB_SWEEP_DIR: + if (c.chan>0) break; chan[c.chan].sweep&=0xf7; if (c.value&1) { chan[c.chan].sweep|=8; @@ -365,6 +366,7 @@ int DivPlatformGB::dispatch(DivCommand c) { chan[c.chan].sweepChanged=true; break; case DIV_CMD_GB_SWEEP_TIME: + if (c.chan>0) break; chan[c.chan].sweep&=8; chan[c.chan].sweep|=c.value&0x77; chan[c.chan].sweepChanged=true;