Minimal attempt to be compatible with ROMs without correct headers
This commit is contained in:
parent
3d99773ddb
commit
724153e5ef
@ -110,7 +110,11 @@ void GB_configure_cart(GB_gameboy_t *gb)
|
|||||||
{
|
{
|
||||||
gb->cartridge_type = &GB_cart_defs[gb->rom[0x147]];
|
gb->cartridge_type = &GB_cart_defs[gb->rom[0x147]];
|
||||||
|
|
||||||
if (gb->rom[0x147] != 0 && memcmp(gb->cartridge_type, &GB_cart_defs[0], sizeof(GB_cart_defs[0])) == 0) {
|
if (gb->rom[0x147] == 0 && gb->rom_size > 0x8000) {
|
||||||
|
GB_log(gb, "ROM header reports no MBC, but file size is over 32Kb. Assuming cartridge uses MBC3.\n");
|
||||||
|
gb->cartridge_type = &GB_cart_defs[0x11];
|
||||||
|
}
|
||||||
|
else if (gb->rom[0x147] != 0 && memcmp(gb->cartridge_type, &GB_cart_defs[0], sizeof(GB_cart_defs[0])) == 0) {
|
||||||
GB_log(gb, "Cartridge type %02x is not yet supported.\n", gb->rom[0x147]);
|
GB_log(gb, "Cartridge type %02x is not yet supported.\n", gb->rom[0x147]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user