gameboy memory domains: make consistent between gambatte and GBhawk
This commit is contained in:
parent
af2f87deac
commit
7e00b7892f
|
@ -12,26 +12,12 @@ namespace BizHawk.Emulation.Cores.Nintendo.GBHawk
|
|||
var domains = new List<MemoryDomain>
|
||||
{
|
||||
new MemoryDomainDelegate(
|
||||
"Main RAM",
|
||||
"WRAM",
|
||||
RAM.Length,
|
||||
MemoryDomain.Endian.Little,
|
||||
addr => RAM[addr],
|
||||
(addr, value) => RAM[addr] = value,
|
||||
1),
|
||||
new MemoryDomainDelegate(
|
||||
"Zero Page RAM",
|
||||
ZP_RAM.Length,
|
||||
MemoryDomain.Endian.Little,
|
||||
addr => ZP_RAM[addr],
|
||||
(addr, value) => ZP_RAM[addr] = value,
|
||||
1),
|
||||
new MemoryDomainDelegate(
|
||||
"System Bus",
|
||||
0X10000,
|
||||
MemoryDomain.Endian.Little,
|
||||
addr => PeekSystemBus(addr),
|
||||
(addr, value) => PokeSystemBus(addr, value),
|
||||
1),
|
||||
new MemoryDomainDelegate(
|
||||
"ROM",
|
||||
_rom.Length,
|
||||
|
@ -45,12 +31,33 @@ namespace BizHawk.Emulation.Cores.Nintendo.GBHawk
|
|||
MemoryDomain.Endian.Little,
|
||||
addr => VRAM[addr],
|
||||
(addr, value) => VRAM[addr] = value,
|
||||
1)
|
||||
1),
|
||||
new MemoryDomainDelegate(
|
||||
"OAM",
|
||||
OAM.Length,
|
||||
MemoryDomain.Endian.Little,
|
||||
addr => OAM[addr],
|
||||
(addr, value) => OAM[addr] = value,
|
||||
1),
|
||||
new MemoryDomainDelegate(
|
||||
"HRAM",
|
||||
ZP_RAM.Length,
|
||||
MemoryDomain.Endian.Little,
|
||||
addr => ZP_RAM[addr],
|
||||
(addr, value) => ZP_RAM[addr] = value,
|
||||
1),
|
||||
new MemoryDomainDelegate(
|
||||
"System Bus",
|
||||
0X10000,
|
||||
MemoryDomain.Endian.Little,
|
||||
addr => PeekSystemBus(addr),
|
||||
(addr, value) => PokeSystemBus(addr, value),
|
||||
1),
|
||||
};
|
||||
|
||||
if (cart_RAM != null)
|
||||
{
|
||||
var CartRam = new MemoryDomainByteArray("Cart RAM", MemoryDomain.Endian.Little, cart_RAM, true, 1);
|
||||
var CartRam = new MemoryDomainByteArray("CartRAM", MemoryDomain.Endian.Little, cart_RAM, true, 1);
|
||||
domains.Add(CartRam);
|
||||
}
|
||||
|
||||
|
|
|
@ -32,7 +32,6 @@ namespace BizHawk.Emulation.Cores.Nintendo.Gameboy
|
|||
CreateMemoryDomain(LibGambatte.MemoryAreas.wram, "WRAM");
|
||||
CreateMemoryDomain(LibGambatte.MemoryAreas.rom, "ROM");
|
||||
CreateMemoryDomain(LibGambatte.MemoryAreas.vram, "VRAM");
|
||||
CreateMemoryDomain(LibGambatte.MemoryAreas.cartram, "CartRAM");
|
||||
CreateMemoryDomain(LibGambatte.MemoryAreas.oam, "OAM");
|
||||
CreateMemoryDomain(LibGambatte.MemoryAreas.hram, "HRAM");
|
||||
|
||||
|
@ -57,6 +56,8 @@ namespace BizHawk.Emulation.Cores.Nintendo.Gameboy
|
|||
LibGambatte.gambatte_cpuwrite(GambatteState, (ushort)addr, val);
|
||||
}, 1));
|
||||
|
||||
CreateMemoryDomain(LibGambatte.MemoryAreas.cartram, "CartRAM");
|
||||
|
||||
MemoryDomains = new MemoryDomainList(_memoryDomains);
|
||||
(ServiceProvider as BasicServiceProvider).Register<IMemoryDomains>(MemoryDomains);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue