Put some more callbacks into IZ80ALink; remove MemoryCallbacks in Z80A (it's not actually used at all)
This commit is contained in:
parent
666cb39392
commit
85d6002673
|
@ -23,5 +23,12 @@
|
|||
|
||||
// This is only called when the first byte of an instruction is fetched.
|
||||
void OnExecFetch(ushort address);
|
||||
|
||||
void IRQCallback();
|
||||
void NMICallback();
|
||||
|
||||
// This will be a few cycles off for now
|
||||
// It should suffice for now until Alyosha returns from hiatus
|
||||
void IRQACKCallback();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -242,8 +242,6 @@ namespace BizHawk.Emulation.Cores.Components.Z80A
|
|||
}
|
||||
}
|
||||
|
||||
public IMemoryCallbackSystem MemoryCallbacks { get; set; }
|
||||
|
||||
public void SetCpuLink(TLink link)
|
||||
=> _link = link;
|
||||
|
||||
|
|
|
@ -27,6 +27,16 @@ namespace BizHawk.Emulation.Cores.Calculators.TI83
|
|||
public void OnExecFetch(ushort address)
|
||||
{
|
||||
}
|
||||
|
||||
public void IRQCallback()
|
||||
=> ti83.IRQCallback();
|
||||
|
||||
public void NMICallback()
|
||||
=> ti83.NMICallback();
|
||||
|
||||
public void IRQACKCallback()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -16,12 +16,7 @@ namespace BizHawk.Emulation.Cores.Calculators.TI83
|
|||
ServiceProvider = ser;
|
||||
PutSettings(lp.Settings ?? new TI83CommonSettings());
|
||||
|
||||
_cpu = new Z80A<CpuLink>(new CpuLink(this))
|
||||
{
|
||||
IRQCallback = IRQCallback,
|
||||
NMICallback = NMICallback,
|
||||
MemoryCallbacks = MemoryCallbacks
|
||||
};
|
||||
_cpu = new Z80A<CpuLink>(new CpuLink(this));
|
||||
|
||||
_rom = lp.Comm.CoreFileProvider.GetFirmwareOrThrow(new("TI83", "Rom"));
|
||||
LinkPort = new TI83LinkPort(this);
|
||||
|
|
|
@ -27,6 +27,17 @@ namespace BizHawk.Emulation.Cores.Computers.AmstradCPC
|
|||
public void OnExecFetch(ushort address)
|
||||
{
|
||||
}
|
||||
|
||||
public void IRQCallback()
|
||||
{
|
||||
}
|
||||
|
||||
public void NMICallback()
|
||||
{
|
||||
}
|
||||
|
||||
public void IRQACKCallback()
|
||||
=> machine.GateArray.IORQA();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -23,12 +23,7 @@ namespace BizHawk.Emulation.Cores.Computers.AmstradCPC
|
|||
ServiceProvider = ser;
|
||||
CoreComm = lp.Comm;
|
||||
_gameInfo = lp.Roms.Select(r => r.Game).ToList();
|
||||
|
||||
_cpu = new Z80A<CpuLink>(default)
|
||||
{
|
||||
MemoryCallbacks = MemoryCallbacks
|
||||
};
|
||||
|
||||
_cpu = new Z80A<CpuLink>(default);
|
||||
_tracer = new TraceBuffer(_cpu.TraceHeader);
|
||||
_files = lp.Roms.Select(r => r.RomData).ToList();
|
||||
|
||||
|
@ -59,7 +54,6 @@ namespace BizHawk.Emulation.Cores.Computers.AmstradCPC
|
|||
SoftReset = _machine.SoftReset;
|
||||
|
||||
_cpu.SetCpuLink(new CpuLink(_machine));
|
||||
_cpu.IRQACKCallback = _machine.GateArray.IORQA;
|
||||
|
||||
ser.Register<ITraceable>(_tracer);
|
||||
ser.Register<IDisassemblable>(_cpu);
|
||||
|
|
|
@ -28,6 +28,18 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
|
|||
|
||||
public void OnExecFetch(ushort address)
|
||||
=> machine.CPUMon.OnExecFetch(address);
|
||||
|
||||
public void IRQCallback()
|
||||
{
|
||||
}
|
||||
|
||||
public void NMICallback()
|
||||
{
|
||||
}
|
||||
|
||||
public void IRQACKCallback()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -27,11 +27,7 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
|
|||
|
||||
_gameInfo = lp.Roms.Select(r => r.Game).ToList();
|
||||
|
||||
_cpu = new Z80A<CpuLink>(default)
|
||||
{
|
||||
MemoryCallbacks = MemoryCallbacks
|
||||
};
|
||||
|
||||
_cpu = new Z80A<CpuLink>(default);
|
||||
_tracer = new TraceBuffer(_cpu.TraceHeader);
|
||||
|
||||
_files = lp.Roms.Select(r => r.RomData).ToList();
|
||||
|
|
|
@ -27,6 +27,18 @@ namespace BizHawk.Emulation.Cores.ColecoVision
|
|||
public void OnExecFetch(ushort address)
|
||||
{
|
||||
}
|
||||
|
||||
public void IRQCallback()
|
||||
{
|
||||
}
|
||||
|
||||
public void NMICallback()
|
||||
{
|
||||
}
|
||||
|
||||
public void IRQACKCallback()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,10 +17,7 @@ namespace BizHawk.Emulation.Cores.ColecoVision
|
|||
_syncSettings = syncSettings ?? new ColecoSyncSettings();
|
||||
bool skipBios = _syncSettings.SkipBiosIntro;
|
||||
|
||||
_cpu = new Z80A<CpuLink>(new CpuLink(this))
|
||||
{
|
||||
MemoryCallbacks = MemoryCallbacks
|
||||
};
|
||||
_cpu = new Z80A<CpuLink>(new CpuLink(this));
|
||||
|
||||
PSG = new SN76489col();
|
||||
SGM_sound = new AY_3_8910_SGM();
|
||||
|
|
|
@ -30,6 +30,18 @@ namespace BizHawk.Emulation.Cores.Sega.MasterSystem
|
|||
|
||||
public void OnExecFetch(ushort address)
|
||||
=> sms.OnExecMemory(address);
|
||||
|
||||
public void IRQCallback()
|
||||
{
|
||||
}
|
||||
|
||||
public void NMICallback()
|
||||
{
|
||||
}
|
||||
|
||||
public void IRQACKCallback()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -77,10 +77,7 @@ namespace BizHawk.Emulation.Cores.Sega.MasterSystem
|
|||
HasYM2413 = true;
|
||||
}
|
||||
|
||||
Cpu = new Z80A<CpuLink>(new CpuLink(this))
|
||||
{
|
||||
MemoryCallbacks = MemoryCallbacks
|
||||
};
|
||||
Cpu = new Z80A<CpuLink>(new CpuLink(this));
|
||||
|
||||
// set this before turning off GG system for GG_in_SMS games
|
||||
bool sms_reg_compat = !IsGameGear && (_region == SmsSyncSettings.Regions.Japan);
|
||||
|
|
Loading…
Reference in New Issue