all repos — mgba @ 1c10743995da4951a245cb66f7b2c67e0abd6518

mGBA Game Boy Advance Emulator

GBA: Loosen checks on idle loops
Jeffrey Pfau jeffrey@endrift.com
Sat, 21 Mar 2015 18:15:06 -0700
commit

1c10743995da4951a245cb66f7b2c67e0abd6518

parent

291d5c500b9f6e6fc3a4e1b936b6cdb3457406a5

1 files changed, 1 insertions(+), 1 deletions(-)

jump to
M src/gba/memory.csrc/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) {