parent
fd07f0eb3c
commit
29cec0e49b
|
@ -340,9 +340,11 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES
|
||||||
if (!reg_2000.vblank_nmi_gen & ((value & 0x80) != 0) && (Reg2002_vblank_active) && !Reg2002_vblank_clear_pending)
|
if (!reg_2000.vblank_nmi_gen & ((value & 0x80) != 0) && (Reg2002_vblank_active) && !Reg2002_vblank_clear_pending)
|
||||||
{
|
{
|
||||||
//if we just unleashed the vblank interrupt then activate it now
|
//if we just unleashed the vblank interrupt then activate it now
|
||||||
NMI_PendingInstructions = 2;
|
if (ppudead<=1)
|
||||||
|
NMI_PendingInstructions = 2;
|
||||||
}
|
}
|
||||||
reg_2000.Value = value;
|
if (ppudead<=1)
|
||||||
|
reg_2000.Value = value;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -581,11 +581,15 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES
|
||||||
//register before around a full frame, but no games
|
//register before around a full frame, but no games
|
||||||
//should write to those regs during that time, it needs
|
//should write to those regs during that time, it needs
|
||||||
//to wait for vblank
|
//to wait for vblank
|
||||||
ppur.status.sl = 241;
|
if (ppudead<2)
|
||||||
runppu(postNMIlines * kLineTime);
|
{
|
||||||
ppur.status.sl = 0;
|
ppur.status.sl = 241;
|
||||||
Reg2002_vblank_active = true;
|
runppu(postNMIlines * kLineTime);
|
||||||
|
ppur.status.sl = 0;
|
||||||
|
clear_2002();
|
||||||
|
}
|
||||||
runppu(241 * kLineTime);
|
runppu(241 * kLineTime);
|
||||||
|
Reg2002_vblank_active = true;
|
||||||
runppu(preNMIlines * kLineTime);
|
runppu(preNMIlines * kLineTime);
|
||||||
--ppudead;
|
--ppudead;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue