From 0670eebe15083c4a58ae7f181598ddeba3a0d5d2 Mon Sep 17 00:00:00 2001 From: Vicki Pfau Date: Mon, 10 Feb 2020 18:06:57 -0800 Subject: [PATCH] GBA: Fix multiboot entry point while skipping BIOS --- CHANGES | 1 + src/gba/gba.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index 444c0a8af..d3122f5c6 100644 --- a/CHANGES +++ b/CHANGES @@ -5,6 +5,7 @@ Emulation fixes: - ARM: Fix ALU reading PC after shifting - ARM: Fix STR storing PC after address calculation - GB Serialize: Fix timing bug loading channel 4 timing + - GBA: Fix multiboot entry point while skipping BIOS - GBA BIOS: Fix undefined instruction HLE behavior - GBA DMA: Linger last DMA on bus (fixes mgba.io/i/301 and mgba.io/i/1320) - GBA Memory: Misaligned SRAM writes are ignored diff --git a/src/gba/gba.c b/src/gba/gba.c index 8dd40d492..2e9e3ec65 100644 --- a/src/gba/gba.c +++ b/src/gba/gba.c @@ -253,7 +253,7 @@ void GBASkipBIOS(struct GBA* gba) { if (gba->memory.rom) { cpu->gprs[ARM_PC] = BASE_CART0; } else { - cpu->gprs[ARM_PC] = BASE_WORKING_RAM; + cpu->gprs[ARM_PC] = BASE_WORKING_RAM + 0xC0; } gba->video.vcount = 0x7D; gba->memory.io[REG_VCOUNT >> 1] = 0x7D;