GBA BIOS: Fix reloading video registers after reset (fixes #1808)
Vicki Pfau vi@endrift.com
Wed, 24 Jun 2020 18:09:07 -0700
2 files changed,
6 insertions(+),
0 deletions(-)
M
CHANGES
→
CHANGES
@@ -3,6 +3,7 @@ Emulation fixes:
- GB Memory: Fix OAM DMA from top 8 kB - GB MBC: Fix MBC1 RAM enable bit selection - GB MBC: Fix MBC2 bit selection + - GBA BIOS: Fix reloading video registers after reset (fixes mgba.io/i/1808) Other fixes: - All: Correct format strings for some numbers on Windows (fixes mgba.io/i/1794) - GB Core: Fix extracting SRAM when none is present
M
src/gba/bios.c
→
src/gba/bios.c
@@ -179,6 +179,11 @@ cpu->memory.store16(cpu, BASE_IO | 0x208, 0, 0);
} if (registers & 0x9C) { gba->video.renderer->reset(gba->video.renderer); + gba->video.renderer->writeVideoRegister(gba->video.renderer, REG_DISPCNT, gba->memory.io[REG_DISPCNT >> 1]); + int i; + for (i = REG_BG0CNT; i < REG_SOUND1CNT_LO; i += 2) { + gba->video.renderer->writeVideoRegister(gba->video.renderer, i, gba->memory.io[i >> 1]); + } } }