[Gambatte] various upstream accuracy improvements (notably, cgb-acid-hell now passes!). also fix memory callbacks for ROM0 area

This commit is contained in:
CasualPokePlayer 2022-04-05 20:36:11 -07:00
parent c2ea1c6c7b
commit 2c232a2b81
4 changed files with 3 additions and 2 deletions

Binary file not shown.

Binary file not shown.

View File

@ -87,8 +87,9 @@ namespace BizHawk.Emulation.Cores.Nintendo.Gameboy
{
MemoryCallbacks.CallMemoryCallbacks(address, 0, rawFlags, which + "System Bus");
var bank = LibGambatte.gambatte_getaddrbank(GambatteState, (ushort)address);
if (address < 0x4000u) // always rom bank 0 for most mbcs (todo: edge mbcs where this doesn't apply)
if (address < 0x4000u) // usually rom bank 0 for most mbcs, some mbcs might have this at a different rom bank
{
address += (uint)(bank * 0x4000);
MemoryCallbacks.CallMemoryCallbacks(address, 0, rawFlags, which + "ROM");
}
else if (address < 0x8000u) // rom bank x

@ -1 +1 @@
Subproject commit fe395de27ee371bed3482e63c9a5536061df9d5d
Subproject commit cbb565fcb149fa73b0aa15c6e03cd860e5d7af07