GBA: Add function for loading default overrides
This commit is contained in:
parent
f5092737ff
commit
818bde5869
@ -300,3 +300,12 @@ void GBAOverrideApply(struct GBA* gba, const struct GBACartridgeOverride* overri
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void GBAOverrideApplyDefaults(struct GBA* gba) {
|
||||||
|
struct GBACartridgeOverride override;
|
||||||
|
const struct GBACartridge* cart = (const struct GBACartridge*) gba->memory.rom;
|
||||||
|
memcpy(override.id, &cart->id, sizeof(override.id));
|
||||||
|
if (GBAOverrideFind(0, &override)) {
|
||||||
|
GBAOverrideApply(gba, &override);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -25,5 +25,6 @@ void GBAOverrideSave(struct Configuration*, const struct GBACartridgeOverride* o
|
|||||||
|
|
||||||
struct GBA;
|
struct GBA;
|
||||||
void GBAOverrideApply(struct GBA*, const struct GBACartridgeOverride*);
|
void GBAOverrideApply(struct GBA*, const struct GBACartridgeOverride*);
|
||||||
|
void GBAOverrideApplyDefaults(struct GBA*);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -235,13 +235,7 @@ bool retro_load_game(const struct retro_game_info* game) {
|
|||||||
save = VFileFromMemory(savedata, SIZE_CART_FLASH1M);
|
save = VFileFromMemory(savedata, SIZE_CART_FLASH1M);
|
||||||
|
|
||||||
GBALoadROM(&gba, rom, save, game->path);
|
GBALoadROM(&gba, rom, save, game->path);
|
||||||
|
GBAOverrideApplyDefaults(&gba);
|
||||||
struct GBACartridgeOverride override;
|
|
||||||
const struct GBACartridge* cart = (const struct GBACartridge*) gba.memory.rom;
|
|
||||||
memcpy(override.id, &cart->id, sizeof(override.id));
|
|
||||||
if (GBAOverrideFind(0, &override)) {
|
|
||||||
GBAOverrideApply(&gba, &override);
|
|
||||||
}
|
|
||||||
|
|
||||||
ARMReset(&cpu);
|
ARMReset(&cpu);
|
||||||
return true;
|
return true;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user