GBA: Loosen checks on idle loops
Jeffrey Pfau jeffrey@endrift.com
Sat, 21 Mar 2015 18:15:06 -0700
1 files changed,
1 insertions(+),
1 deletions(-)
jump to
M
src/gba/memory.c
→
src/gba/memory.c
@@ -197,7 +197,7 @@ struct GBAMemory* memory = &gba->memory;
int newRegion = address >> BASE_OFFSET; if (gba->idleOptimization >= IDLE_LOOP_REMOVE && memory->activeRegion != REGION_BIOS) { - if (address == gba->lastJump && address == gba->idleLoop) { + if (address == gba->idleLoop) { GBAHalt(gba); } else if (gba->idleOptimization >= IDLE_LOOP_DETECT && newRegion == memory->activeRegion) { if (address == gba->lastJump) {