GB Audio: Fix deserializing while audio was disabled (fixes #1305)
Vicki Pfau vi@endrift.com
Mon, 24 Aug 2020 01:19:45 -0700
2 files changed,
3 insertions(+),
1 deletions(-)
M
CHANGES
→
CHANGES
@@ -2,6 +2,7 @@ 0.8.4: (Future)
Emulation fixes: - GB Audio: Fix initial sweep state - GB Audio: Fix deserializing audio channels 2 and 3 + - GB Audio: Fix deserializing while audio was disabled (fixes mgba.io/i/1305) - GBA Audio: Fix deserializing SOUNDCNT_L - GBA Audio: Fix stereo in XQ audio - GBA Audio: Fix volume/mute in XQ audio (fixes mgba.io/i/1864)
M
src/gb/io.c
→
src/gb/io.c
@@ -697,7 +697,8 @@ void GBIODeserialize(struct GB* gb, const struct GBSerializedState* state) {
memcpy(gb->memory.io, state->io, GB_SIZE_IO); gb->memory.ie = state->ie; - if (GBAudioEnableGetEnable(*gb->audio.nr52)) { + gb->audio.enable = GBAudioEnableGetEnable(*gb->audio.nr52); + if (gb->audio.enable) { GBIOWrite(gb, REG_NR10, gb->memory.io[REG_NR10]); GBIOWrite(gb, REG_NR11, gb->memory.io[REG_NR11]); GBIOWrite(gb, REG_NR12, gb->memory.io[REG_NR12]);