BizHawk/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/NES.CpuLink.cs

28 lines
760 B
C#

using BizHawk.Emulation.Cores.Components.M6502;
namespace BizHawk.Emulation.Cores.Nintendo.NES
{
public partial class NES
{
public struct CpuLink : IMOS6502XLink
{
private readonly NES _nes;
public CpuLink(NES nes)
{
_nes = nes;
}
public byte DummyReadMemory(ushort address) => _nes.ReadMemory(address);
public void OnExecFetch(ushort address) => _nes.ExecFetch(address);
public byte PeekMemory(ushort address) => _nes.CDL == null ? _nes.PeekMemory(address) : _nes.FetchMemory_CDL(address);
public byte ReadMemory(ushort address) => _nes.CDL == null ? _nes.ReadMemory(address) : _nes.ReadMemory_CDL(address);
public void WriteMemory(ushort address, byte value) => _nes.WriteMemory(address, value);
}
}
}