GBA: Fix idle skip state being retained between games

This commit is contained in:
Jeffrey Pfau 2015-10-26 22:03:38 -07:00
parent 20cadd8cf1
commit 04e40ff459
2 changed files with 7 additions and 4 deletions

View File

@ -1,6 +1,7 @@
0.3.2: (Future)
Bugfixes:
- Qt: Use safer isLoaded check in GameController
- GBA: Fix idle skip state being retained between games
Misc:
- GBA Audio: Implement missing flags on SOUNDCNT_X register

View File

@ -88,10 +88,6 @@ static void GBAInit(struct ARMCore* cpu, struct ARMComponent* component) {
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;
@ -115,6 +111,7 @@ void GBAUnloadROM(struct GBA* gba) {
}
GBASavedataDeinit(&gba->memory.savedata);
gba->idleLoop = IDLE_LOOP_NONE;
}
void GBADestroy(struct GBA* gba) {
@ -169,6 +166,11 @@ void GBAReset(struct ARMCore* cpu) {
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 ARMCore* cpu) {