diff --git a/CHANGES b/CHANGES index 522007fef..fc891a9f7 100644 --- a/CHANGES +++ b/CHANGES @@ -18,6 +18,7 @@ Bugfixes: - GBA BIOS: Fix misaligned CpuSet - Libretro: Fix problems with rumble not turning off - ARM7: Fix sign of unaligned LDRSH + - GBA BIOS: Fix CpuSet on 0x01XXXXXX addresses Misc: - Qt: Window size command line options are now supported - Qt: Increase usability of key mapper diff --git a/src/gba/bios.c b/src/gba/bios.c index a00555c1e..0a570daf0 100644 --- a/src/gba/bios.c +++ b/src/gba/bios.c @@ -220,7 +220,7 @@ void GBASwi16(struct ARMCore* cpu, int immediate) { break; case 0xB: case 0xC: - if (cpu->gprs[0] >> BASE_OFFSET == REGION_BIOS) { + if (cpu->gprs[0] >> BASE_OFFSET < REGION_WORKING_RAM) { GBALog(gba, GBA_LOG_GAME_ERROR, "Cannot CpuSet from BIOS"); return; }