all repos — mgba @ 61c2f6a07b901a1ec793d2e683b09ce029019e56

mGBA Game Boy Advance Emulator

GBA: Fix idle skip state being retained between games
Jeffrey Pfau jeffrey@endrift.com
Mon, 26 Oct 2015 22:03:38 -0700
commit

61c2f6a07b901a1ec793d2e683b09ce029019e56

parent

a93b21e88640848a0dac4a1319ffb4e3506040b6

2 files changed, 7 insertions(+), 4 deletions(-)

jump to
M CHANGESCHANGES

@@ -7,6 +7,7 @@ Bugfixes:

- Util: Fix PowerPC PNG read/write pixel order - Qt: Use safer isLoaded check in GameController - GBA Memory: Fix DMAs from BIOS while not in BIOS + - GBA: Fix idle skip state being retained between games Misc: - Qt: Window size command line options are now supported - Qt: Increase usability of key mapper
M src/gba/gba.csrc/gba/gba.c

@@ -98,10 +98,6 @@ gba->biosChecksum = GBAChecksum(gba->memory.bios, SIZE_BIOS);

gba->idleOptimization = IDLE_LOOP_REMOVE; gba->idleLoop = IDLE_LOOP_NONE; - gba->lastJump = 0; - gba->haltPending = false; - gba->idleDetectionStep = 0; - gba->idleDetectionFailures = 0; gba->realisticTiming = true; gba->hardCrash = true;

@@ -127,6 +123,7 @@ gba->romVf = 0;

} GBASavedataDeinit(&gba->memory.savedata); + gba->idleLoop = IDLE_LOOP_NONE; } void GBADestroy(struct GBA* gba) {

@@ -182,6 +179,11 @@ GBASIOReset(&gba->sio);

gba->timersEnabled = 0; memset(gba->timers, 0, sizeof(gba->timers)); + + gba->lastJump = 0; + gba->haltPending = false; + gba->idleDetectionStep = 0; + gba->idleDetectionFailures = 0; } void GBASkipBIOS(struct GBA* gba) {