all repos — mgba @ 51e70703023773fbe37a527c13c3df9f9fc05c69

mGBA Game Boy Advance Emulator

GB Audio: Deschedule channel 3 when disabled (fixes #1463)
Vicki Pfau vi@endrift.com
Mon, 24 Jun 2019 09:15:35 -0700
commit

51e70703023773fbe37a527c13c3df9f9fc05c69

parent

06d407f130ca454bc23668051a7b73a84b9c1dd7

2 files changed, 2 insertions(+), 0 deletions(-)

jump to
M CHANGESCHANGES

@@ -28,6 +28,7 @@ - GBA Memory: Fix STM to VRAM (fixes mgba.io/i/1430)

- GB Audio: Only reset channel 3 sample in DMG mode - GB Audio: Sample inactive channels (fixes mgba.io/i/1455, mgba.io/i/1456) - 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: - Qt: Fix some Qt display driver race conditions - Core: Improved lockstep driver reliability (Le Hoang Quyen)
M src/gb/audio.csrc/gb/audio.c

@@ -279,6 +279,7 @@

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; }