commodore64 - second timer chip triggers NMI instead of IRQ on 6510

This commit is contained in:
saxxonpike 2012-11-06 15:15:37 +00:00
parent c217768871
commit 47a556b326
2 changed files with 4 additions and 5 deletions

View File

@ -117,7 +117,8 @@ namespace BizHawk.Emulation.Computers.Commodore64
public bool CiaSerial0 { get { return _CiaSerialInput[0]; } }
public bool CiaSerial1 { get { return _CiaSerialInput[1]; } }
public bool CpuAEC { get { return _VicAECOutput; } }
public bool CpuIRQ { get { return _VicIRQOutput | _CiaIRQOutput[0] | _CiaIRQOutput[1]; } }
public bool CpuIRQ { get { return _VicIRQOutput | _CiaIRQOutput[0]; } }
public bool CpuNMI { get { return _CiaIRQOutput[1]; } }
public bool CpuRDY { get { return _VicBAOutput; } }
public bool LPOutput { get { return _VicLPInput; } set { _VicLPInput = value; } }
public bool VicAEC { get { return _VicAECOutput; } set { _VicAECOutput = value; } }

View File

@ -91,10 +91,8 @@ namespace BizHawk.Emulation.Computers.Commodore64
for (int i = 0; i < cyclesPerSecond; i++)
{
if (signal.CpuIRQ)
{
cpu.IRQ = true;
}
cpu.IRQ = signal.CpuIRQ;
cpu.NMI = signal.CpuNMI;
if (signal.CpuAEC)
{
cpu.ExecuteOne();