From 67f1566b5efa81dee2b1b10b6c6ce9d8955209c5 Mon Sep 17 00:00:00 2001 From: Lior Halphon Date: Sat, 23 Sep 2017 00:23:02 +0300 Subject: [PATCH] Minor refinement to sweep --- Core/apu.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Core/apu.c b/Core/apu.c index 6391baa..7087258 100755 --- a/Core/apu.c +++ b/Core/apu.c @@ -560,6 +560,9 @@ void GB_apu_write(GB_gameboy_t *gb, uint8_t reg, uint8_t value) /* APU bug: if shift is nonzero, overflow check also occurs on trigger */ gb->apu.square_sweep_calculate_countdown = 0x13 - gb->apu.lf_div; } + else { + gb->apu.square_sweep_calculate_countdown = 0; + } gb->apu.sweep_enabled = gb->io_registers[GB_IO_NR10] & 0x77; gb->apu.square_sweep_countdown = ((gb->io_registers[GB_IO_NR10] >> 4) & 7); if (!gb->apu.square_sweep_countdown) gb->apu.square_sweep_countdown = 8;