mirror of https://github.com/mgba-emu/mgba.git
GB: Fix GBC games running on GBA with BIOS
GBC games can detect if they are running on a GBA by checking if the low bit of register B is set to 1. B is set in `GBSkipBIOS`, but B was not updated when loading a real BIOS. Load 1 into B after unmapping the BIOS if the model is set to GBA.
This commit is contained in:
parent
f28e20d4aa
commit
36de596fdb
|
@ -555,6 +555,10 @@ void GBUnmapBIOS(struct GB* gb) {
|
|||
free(gb->memory.romBase);
|
||||
gb->memory.romBase = gb->memory.rom;
|
||||
}
|
||||
// XXX: Force AGB registers for AGB-mode
|
||||
if (gb->model == GB_MODEL_AGB && gb->cpu->pc == 0x100) {
|
||||
gb->cpu->b = 1;
|
||||
}
|
||||
}
|
||||
|
||||
void GBDetectModel(struct GB* gb) {
|
||||
|
|
Loading…
Reference in New Issue