Atari 7800 - combine Ram1 and Ram2 into a single Ram domain
This commit is contained in:
parent
82bda9006a
commit
f4664bba9b
|
@ -21,33 +21,38 @@ namespace BizHawk.Emulation.Cores.Atari.Atari7800
|
||||||
if (theMachine is Machine7800)
|
if (theMachine is Machine7800)
|
||||||
{
|
{
|
||||||
_MemoryDomains.Add(new MemoryDomain(
|
_MemoryDomains.Add(new MemoryDomain(
|
||||||
"RAM1", 0x800, MemoryDomain.Endian.Unknown,
|
"RAM", 0x1000, MemoryDomain.Endian.Unknown,
|
||||||
delegate(long addr)
|
delegate(long addr)
|
||||||
{
|
{
|
||||||
if (addr < 0 || addr >= 0x800)
|
if (addr < 0 || addr >= 0x1000)
|
||||||
throw new ArgumentOutOfRangeException();
|
{
|
||||||
return ((Machine7800)theMachine).RAM1[(ushort)addr];
|
|
||||||
},
|
|
||||||
delegate(long addr, byte val)
|
|
||||||
{
|
|
||||||
if (addr < 0 || addr >= 0x800)
|
|
||||||
throw new ArgumentOutOfRangeException();
|
|
||||||
((Machine7800)theMachine).RAM1[(ushort)addr] = val;
|
|
||||||
}));
|
|
||||||
_MemoryDomains.Add(new MemoryDomain(
|
|
||||||
"RAM2", 0x800, MemoryDomain.Endian.Unknown,
|
|
||||||
delegate(long addr)
|
|
||||||
{
|
|
||||||
if (addr < 0 || addr >= 0x800)
|
|
||||||
throw new ArgumentOutOfRangeException();
|
throw new ArgumentOutOfRangeException();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (addr < 0x800)
|
||||||
|
{
|
||||||
|
return ((Machine7800)theMachine).RAM1[(ushort)addr];
|
||||||
|
}
|
||||||
|
|
||||||
return ((Machine7800)theMachine).RAM2[(ushort)addr];
|
return ((Machine7800)theMachine).RAM2[(ushort)addr];
|
||||||
},
|
},
|
||||||
|
|
||||||
delegate(long addr, byte val)
|
delegate(long addr, byte val)
|
||||||
{
|
{
|
||||||
if (addr < 0 || addr >= 0x800)
|
if (addr < 0 || addr >= 0x1000)
|
||||||
|
{
|
||||||
throw new ArgumentOutOfRangeException();
|
throw new ArgumentOutOfRangeException();
|
||||||
((Machine7800)theMachine).RAM2[(ushort)addr] = val;
|
}
|
||||||
|
else if (addr < 0x800)
|
||||||
|
{
|
||||||
|
((Machine7800)theMachine).RAM1[(ushort)addr] = val;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
((Machine7800)theMachine).RAM2[(ushort)addr] = val;
|
||||||
|
}
|
||||||
}));
|
}));
|
||||||
|
|
||||||
_MemoryDomains.Add(new MemoryDomain(
|
_MemoryDomains.Add(new MemoryDomain(
|
||||||
"BIOS ROM", bios.Length, MemoryDomain.Endian.Unknown,
|
"BIOS ROM", bios.Length, MemoryDomain.Endian.Unknown,
|
||||||
delegate(long addr)
|
delegate(long addr)
|
||||||
|
|
Loading…
Reference in New Issue