commit
36b011c72e
|
@ -362,7 +362,9 @@ void mapperMBC3ROM(uint16_t address, uint8_t value)
|
||||||
gbDataMBC3.mapperRAMEnable = ((value & 0x0a) == 0x0a ? 1 : 0);
|
gbDataMBC3.mapperRAMEnable = ((value & 0x0a) == 0x0a ? 1 : 0);
|
||||||
break;
|
break;
|
||||||
case 0x2000: // ROM bank select
|
case 0x2000: // ROM bank select
|
||||||
value = value & 0x7f;
|
// MBC3 has 2MB rom size, anything above that is a 4MB MBC30
|
||||||
|
if (gbRomSize < 0x200000)
|
||||||
|
value &= 0x7f;
|
||||||
if (value == 0)
|
if (value == 0)
|
||||||
value = 1;
|
value = 1;
|
||||||
if (value == gbDataMBC3.mapperROMBank)
|
if (value == gbDataMBC3.mapperROMBank)
|
||||||
|
|
|
@ -1462,11 +1462,11 @@ void retro_run(void)
|
||||||
case 0x0f:
|
case 0x0f:
|
||||||
case 0x10:
|
case 0x10:
|
||||||
/* Check if any RTC has been loaded, zero value means nothing has been loaded. */
|
/* Check if any RTC has been loaded, zero value means nothing has been loaded. */
|
||||||
if (!gbDataMBC3.mapperSeconds && !gbDataMBC3.mapperLSeconds && !gbDataMBC3.mapperLastTime)
|
if (!gbDataMBC3.mapperLastTime)
|
||||||
initRTC = true;
|
initRTC = true;
|
||||||
break;
|
break;
|
||||||
case 0xfd:
|
case 0xfd:
|
||||||
if (!gbDataTAMA5.mapperSeconds && !gbDataTAMA5.mapperLSeconds && !gbDataTAMA5.mapperLastTime)
|
if (!gbDataTAMA5.mapperLastTime)
|
||||||
initRTC = true;
|
initRTC = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue