NES - small (probably unnoticeable) speedup to WriteMemory()
This commit is contained in:
parent
6473321100
commit
959e56b71a
|
@ -286,15 +286,34 @@ namespace BizHawk.Emulation.Consoles.Nintendo
|
|||
|
||||
public void WriteMemory(ushort addr, byte value)
|
||||
{
|
||||
if (addr < 0x0800) ram[addr] = value;
|
||||
else if (addr < 0x1000) ram[addr - 0x0800] = value;
|
||||
else if (addr < 0x1800) ram[addr - 0x1000] = value;
|
||||
else if (addr < 0x2000) ram[addr - 0x1800] = value;
|
||||
else if (addr < 0x4000) ppu.WriteReg(addr & 7, value);
|
||||
else if (addr < 0x4020) WriteReg(addr, value); //we're not rebasing the register just to keep register names canonical
|
||||
else if (addr < 0x6000) board.WriteEXP(addr - 0x4000, value);
|
||||
else if (addr < 0x8000) board.WriteWRAM(addr - 0x6000, value);
|
||||
else board.WritePRG(addr - 0x8000, value);
|
||||
if (addr < 0x0800)
|
||||
{
|
||||
ram[addr] = value;
|
||||
}
|
||||
else if (addr < 0x2000)
|
||||
{
|
||||
ram[addr & 0x7FF] = value;
|
||||
}
|
||||
else if (addr < 0x4000)
|
||||
{
|
||||
ppu.WriteReg(addr & 7, value);
|
||||
}
|
||||
else if (addr < 0x4020)
|
||||
{
|
||||
WriteReg(addr, value); //we're not rebasing the register just to keep register names canonical
|
||||
}
|
||||
else if (addr < 0x6000)
|
||||
{
|
||||
board.WriteEXP(addr - 0x4000, value);
|
||||
}
|
||||
else if (addr < 0x8000)
|
||||
{
|
||||
board.WriteWRAM(addr - 0x6000, value);
|
||||
}
|
||||
else
|
||||
{
|
||||
board.WritePRG(addr - 0x8000, value);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue