First pass of NTSC integration

This commit is contained in:
michaelangel007
2014-12-31 14:13:36 -08:00
parent 7ba8128530
commit e116014742
12 changed files with 191 additions and 106 deletions
+13
View File
@@ -44,6 +44,11 @@ static DWORD Cpu6502 (DWORD uTotalCycles)
UINT uExtraCycles = 0;
BYTE iOpcode;
// NTSC_BEGIN
ULONG uElapsedCycles;
ULONG uPreviousCycles = uExecutedCycles;
// NTSC_END
if (g_ActiveCPU == CPU_Z80)
{
const UINT uZ80Cycles = z80_mainloop(uTotalCycles, uExecutedCycles); CYC(uZ80Cycles)
@@ -315,6 +320,14 @@ static DWORD Cpu6502 (DWORD uTotalCycles)
}
}
// NTSC_BEGIN
uElapsedCycles = uExecutedCycles - uPreviousCycles;
if( g_bFullSpeed )
NTSC_VideoUpdateCycles( uElapsedCycles );
else
g_pNTSC_FuncVideoUpdate( uElapsedCycles );
// NTSC_END
CheckInterruptSources(uExecutedCycles);
NMI(uExecutedCycles, uExtraCycles, flagc, flagn, flagv, flagz);
IRQ(uExecutedCycles, uExtraCycles, flagc, flagn, flagv, flagz);
+13
View File
@@ -47,6 +47,11 @@ static DWORD Cpu65C02 (DWORD uTotalCycles)
UINT uExtraCycles = 0;
BYTE iOpcode;
// NTSC_BEGIN
ULONG uElapsedCycles;
ULONG uPreviousCycles = uExecutedCycles;
// NTSC_END
if (g_ActiveCPU == CPU_Z80)
{
const UINT uZ80Cycles = z80_mainloop(uTotalCycles, uExecutedCycles); CYC(uZ80Cycles)
@@ -319,6 +324,14 @@ static DWORD Cpu65C02 (DWORD uTotalCycles)
#undef $
}
// NTSC_BEGIN
uElapsedCycles = uExecutedCycles - uPreviousCycles;
if( g_bFullSpeed )
NTSC_VideoUpdateCycles( uElapsedCycles );
else
g_pNTSC_FuncVideoUpdate( uElapsedCycles );
// NTSC_END
CheckInterruptSources(uExecutedCycles);
NMI(uExecutedCycles, uExtraCycles, flagc, flagn, flagv, flagz);
IRQ(uExecutedCycles, uExtraCycles, flagc, flagn, flagv, flagz);
+13
View File
@@ -106,6 +106,11 @@ static DWORD Cpu65D02 (DWORD uTotalCycles)
UINT uExtraCycles = 0;
BYTE iOpcode;
// NTSC_BEGIN
ULONG uElapsedCycles;
ULONG uPreviousCycles = uExecutedCycles;
// NTSC_END
if (g_ActiveCPU == CPU_Z80)
{
const UINT uZ80Cycles = z80_mainloop(uTotalCycles, uExecutedCycles); CYC(uZ80Cycles)
@@ -648,6 +653,14 @@ static DWORD Cpu65D02 (DWORD uTotalCycles)
}
#undef $
// NTSC_BEGIN
uElapsedCycles = uExecutedCycles - uPreviousCycles;
if( g_bFullSpeed )
NTSC_VideoUpdateCycles( uElapsedCycles );
else
g_pNTSC_FuncVideoUpdate( uElapsedCycles );
// NTSC_END
CheckInterruptSources(uExecutedCycles);
NMI(uExecutedCycles, uExtraCycles, flagc, flagn, flagv, flagz);
IRQ(uExecutedCycles, uExtraCycles, flagc, flagn, flagv, flagz);