diff --git a/CHANGES b/CHANGES index a2f445615..733f85d36 100644 --- a/CHANGES +++ b/CHANGES @@ -43,6 +43,7 @@ Other fixes: - Qt: Fix some Qt display driver race conditions - FFmpeg: Fix audio conversion producing gaps - Core: Improved lockstep driver reliability (Le Hoang Quyen) + - GBA: Fix skipping BIOS on irregularly sized ROMs Misc: - GBA Savedata: EEPROM performance fixes - GBA Savedata: Automatically map 1Mbit Flash files as 1Mbit Flash diff --git a/src/gba/core.c b/src/gba/core.c index 6b9061f8f..e753971e6 100644 --- a/src/gba/core.c +++ b/src/gba/core.c @@ -528,7 +528,7 @@ static void _GBACoreReset(struct mCore* core) { #endif ARMReset(core->cpu); - if (core->opts.skipBios && gba->isPristine) { + if (core->opts.skipBios && (gba->romVf || gba->memory.rom)) { GBASkipBIOS(core->board); } } diff --git a/src/gba/gba.c b/src/gba/gba.c index 39a3f72c3..42697ffe1 100644 --- a/src/gba/gba.c +++ b/src/gba/gba.c @@ -241,10 +241,6 @@ void GBAReset(struct ARMCore* cpu) { if (gba->pristineRomSize > SIZE_CART0) { GBAMatrixReset(gba); } - - if (!gba->romVf && gba->memory.rom) { - GBASkipBIOS(gba); - } } void GBASkipBIOS(struct GBA* gba) {