From 19d9ddaf23e4186258a240bfa99cac26efada7e7 Mon Sep 17 00:00:00 2001 From: Vicki Pfau Date: Mon, 24 Jun 2019 09:15:35 -0700 Subject: [PATCH] GB Audio: Deschedule channel 3 when disabled (fixes #1463) --- CHANGES | 1 + src/gb/audio.c | 1 + 2 files changed, 2 insertions(+) diff --git a/CHANGES b/CHANGES index a96f3b9a1..fe3d94e6a 100644 --- a/CHANGES +++ b/CHANGES @@ -3,6 +3,7 @@ Emulation fixes: - GBA Video: Fix wrapped sprite mosaic clamping (fixes mgba.io/i/1432) - GBA Memory: Fix STM to VRAM (fixes mgba.io/i/1430) - GB Video: Increment BCPS/OCPS even in mode 3 (fixes mgba.io/i/1462) + - GB Audio: Deschedule channel 3 when disabled (fixes mgba.io/i/1463) Other fixes: - Switch: Fix threading-related crash on second launch - Qt: Fix FPS target maxing out at 59.727 (fixes mgba.io/i/1421) diff --git a/src/gb/audio.c b/src/gb/audio.c index 08ba1fa9e..df92eb848 100644 --- a/src/gb/audio.c +++ b/src/gb/audio.c @@ -279,6 +279,7 @@ void GBAudioWriteNR24(struct GBAudio* audio, uint8_t value) { void GBAudioWriteNR30(struct GBAudio* audio, uint8_t value) { audio->ch3.enable = GBAudioRegisterBankGetEnable(value); if (!audio->ch3.enable) { + mTimingDeschedule(audio->timing, &audio->ch3Event); audio->playingCh3 = false; *audio->nr52 &= ~0x0004; }