Global Variable: Rename _SystemTimer to g_SystemTimer

This commit is contained in:
zilmar 2012-11-17 13:31:46 +11:00
parent 1bc60df9a1
commit 2bebce913e
12 changed files with 53 additions and 53 deletions

View File

@ -217,7 +217,7 @@ void CInterpreterCPU::InPermLoop (void) {
if (*_NextTimer > 0) { if (*_NextTimer > 0) {
*_NextTimer = 0 - m_CountPerOp; *_NextTimer = 0 - m_CountPerOp;
_SystemTimer->UpdateTimers(); g_SystemTimer->UpdateTimers();
} }
} }
} }
@ -242,7 +242,7 @@ void CInterpreterCPU::ExecuteCPU (void )
{ {
WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %s",*_PROGRAM_COUNTER,R4300iOpcodeName(Opcode.Hex,*_PROGRAM_COUNTER)); WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %s",*_PROGRAM_COUNTER,R4300iOpcodeName(Opcode.Hex,*_PROGRAM_COUNTER));
//WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %s t9: %08X v1: %08X",*_PROGRAM_COUNTER,R4300iOpcodeName(Opcode.Hex,*_PROGRAM_COUNTER),_GPR[0x19].UW[0],_GPR[0x03].UW[0]); //WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %s t9: %08X v1: %08X",*_PROGRAM_COUNTER,R4300iOpcodeName(Opcode.Hex,*_PROGRAM_COUNTER),_GPR[0x19].UW[0],_GPR[0x03].UW[0]);
//WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %d %d",*_PROGRAM_COUNTER,*_NextTimer,_SystemTimer->CurrentType()); //WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %d %d",*_PROGRAM_COUNTER,*_NextTimer,g_SystemTimer->CurrentType());
}*/ }*/
m_R4300i_Opcode[ Opcode.op ](); m_R4300i_Opcode[ Opcode.op ]();
NextTimer -= m_CountPerOp; NextTimer -= m_CountPerOp;
@ -270,7 +270,7 @@ void CInterpreterCPU::ExecuteCPU (void )
TestTimer = FALSE; TestTimer = FALSE;
if (NextTimer < 0) if (NextTimer < 0)
{ {
_SystemTimer->TimerDone(); g_SystemTimer->TimerDone();
} }
if (bDoSomething) if (bDoSomething)
{ {
@ -283,7 +283,7 @@ void CInterpreterCPU::ExecuteCPU (void )
PROGRAM_COUNTER = JumpToLocation; PROGRAM_COUNTER = JumpToLocation;
R4300iOp::m_NextInstruction = NORMAL; R4300iOp::m_NextInstruction = NORMAL;
CInterpreterCPU::InPermLoop(); CInterpreterCPU::InPermLoop();
_SystemTimer->TimerDone(); g_SystemTimer->TimerDone();
if (bDoSomething) if (bDoSomething)
{ {
_SystemEvents->ExecuteEvents(); _SystemEvents->ExecuteEvents();
@ -319,7 +319,7 @@ void CInterpreterCPU::ExecuteOps ( int Cycles )
{ {
if (Cycles <= 0) if (Cycles <= 0)
{ {
_SystemTimer->UpdateTimers(); g_SystemTimer->UpdateTimers();
return; return;
} }
@ -329,13 +329,13 @@ void CInterpreterCPU::ExecuteOps ( int Cycles )
{ {
WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %s",*_PROGRAM_COUNTER,R4300iOpcodeName(Opcode.Hex,*_PROGRAM_COUNTER)); WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %s",*_PROGRAM_COUNTER,R4300iOpcodeName(Opcode.Hex,*_PROGRAM_COUNTER));
//WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %s t9: %08X v1: %08X",*_PROGRAM_COUNTER,R4300iOpcodeName(Opcode.Hex,*_PROGRAM_COUNTER),_GPR[0x19].UW[0],_GPR[0x03].UW[0]); //WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %s t9: %08X v1: %08X",*_PROGRAM_COUNTER,R4300iOpcodeName(Opcode.Hex,*_PROGRAM_COUNTER),_GPR[0x19].UW[0],_GPR[0x03].UW[0]);
//WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %d %d",*_PROGRAM_COUNTER,*_NextTimer,_SystemTimer->CurrentType()); //WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %d %d",*_PROGRAM_COUNTER,*_NextTimer,g_SystemTimer->CurrentType());
}*/ }*/
/*if (PROGRAM_COUNTER > 0x80323000 && PROGRAM_COUNTER< 0x80380000) /*if (PROGRAM_COUNTER > 0x80323000 && PROGRAM_COUNTER< 0x80380000)
{ {
WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %s",*_PROGRAM_COUNTER,R4300iOpcodeName(Opcode.Hex,*_PROGRAM_COUNTER)); WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %s",*_PROGRAM_COUNTER,R4300iOpcodeName(Opcode.Hex,*_PROGRAM_COUNTER));
//WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %s t9: %08X v1: %08X",*_PROGRAM_COUNTER,R4300iOpcodeName(Opcode.Hex,*_PROGRAM_COUNTER),_GPR[0x19].UW[0],_GPR[0x03].UW[0]); //WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %s t9: %08X v1: %08X",*_PROGRAM_COUNTER,R4300iOpcodeName(Opcode.Hex,*_PROGRAM_COUNTER),_GPR[0x19].UW[0],_GPR[0x03].UW[0]);
//WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %d %d",*_PROGRAM_COUNTER,*_NextTimer,_SystemTimer->CurrentType()); //WriteTraceF((TraceType)(TraceError | TraceNoHeader),"%X: %d %d",*_PROGRAM_COUNTER,*_NextTimer,g_SystemTimer->CurrentType());
}*/ }*/
m_R4300i_Opcode[ Opcode.op ](); m_R4300i_Opcode[ Opcode.op ]();
_GPR[0].DW = 0; _GPR[0].DW = 0;
@ -376,7 +376,7 @@ void CInterpreterCPU::ExecuteOps ( int Cycles )
TestTimer = FALSE; TestTimer = FALSE;
if (*_NextTimer < 0) if (*_NextTimer < 0)
{ {
_SystemTimer->TimerDone(); g_SystemTimer->TimerDone();
} }
if (DoSomething) if (DoSomething)
{ {
@ -389,7 +389,7 @@ void CInterpreterCPU::ExecuteOps ( int Cycles )
PROGRAM_COUNTER = JumpToLocation; PROGRAM_COUNTER = JumpToLocation;
R4300iOp::m_NextInstruction = NORMAL; R4300iOp::m_NextInstruction = NORMAL;
CInterpreterCPU::InPermLoop(); CInterpreterCPU::InPermLoop();
_SystemTimer->TimerDone(); g_SystemTimer->TimerDone();
if (DoSomething) if (DoSomething)
{ {
_SystemEvents->ExecuteEvents(); _SystemEvents->ExecuteEvents();

View File

@ -1187,7 +1187,7 @@ void R4300iOp32::COP0_MF (void) {
#endif #endif
if (m_Opcode.rd == 9) if (m_Opcode.rd == 9)
{ {
_SystemTimer->UpdateTimers(); g_SystemTimer->UpdateTimers();
} }
_GPR[m_Opcode.rt].W[0] = (int)_CP0[m_Opcode.rd]; _GPR[m_Opcode.rt].W[0] = (int)_CP0[m_Opcode.rd];
} }
@ -1219,22 +1219,22 @@ void R4300iOp32::COP0_MT (void) {
_CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0]; _CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0];
break; break;
case 6: //Wired case 6: //Wired
_SystemTimer->UpdateTimers(); g_SystemTimer->UpdateTimers();
_CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0]; _CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0];
break; break;
case 4: //Context case 4: //Context
_CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0] & 0xFF800000; _CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0] & 0xFF800000;
break; break;
case 9: //Count case 9: //Count
_SystemTimer->UpdateTimers(); g_SystemTimer->UpdateTimers();
_CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0]; _CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0];
_SystemTimer->UpdateCompareTimer(); g_SystemTimer->UpdateCompareTimer();
break; break;
case 11: //Compare case 11: //Compare
_SystemTimer->UpdateTimers(); g_SystemTimer->UpdateTimers();
_CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0]; _CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0];
g_Reg->FAKE_CAUSE_REGISTER &= ~CAUSE_IP7; g_Reg->FAKE_CAUSE_REGISTER &= ~CAUSE_IP7;
_SystemTimer->UpdateCompareTimer(); g_SystemTimer->UpdateCompareTimer();
break; break;
case 12: //Status case 12: //Status
if ((_CP0[m_Opcode.rd] ^ _GPR[m_Opcode.rt].UW[0]) != 0) { if ((_CP0[m_Opcode.rd] ^ _GPR[m_Opcode.rt].UW[0]) != 0) {

View File

@ -1790,7 +1790,7 @@ void R4300iOp::COP0_MF (void) {
#endif #endif
if (m_Opcode.rd == 9) if (m_Opcode.rd == 9)
{ {
_SystemTimer->UpdateTimers(); g_SystemTimer->UpdateTimers();
} }
_GPR[m_Opcode.rt].DW = (int)_CP0[m_Opcode.rd]; _GPR[m_Opcode.rt].DW = (int)_CP0[m_Opcode.rd];
} }
@ -1822,22 +1822,22 @@ void R4300iOp::COP0_MT (void) {
_CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0]; _CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0];
break; break;
case 6: //Wired case 6: //Wired
_SystemTimer->UpdateTimers(); g_SystemTimer->UpdateTimers();
_CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0]; _CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0];
break; break;
case 4: //Context case 4: //Context
_CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0] & 0xFF800000; _CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0] & 0xFF800000;
break; break;
case 9: //Count case 9: //Count
_SystemTimer->UpdateTimers(); g_SystemTimer->UpdateTimers();
_CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0]; _CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0];
_SystemTimer->UpdateCompareTimer(); g_SystemTimer->UpdateCompareTimer();
break; break;
case 11: //Compare case 11: //Compare
_SystemTimer->UpdateTimers(); g_SystemTimer->UpdateTimers();
_CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0]; _CP0[m_Opcode.rd] = _GPR[m_Opcode.rt].UW[0];
g_Reg->FAKE_CAUSE_REGISTER &= ~CAUSE_IP7; g_Reg->FAKE_CAUSE_REGISTER &= ~CAUSE_IP7;
_SystemTimer->UpdateCompareTimer(); g_SystemTimer->UpdateCompareTimer();
break; break;
case 12: //Status case 12: //Status
if ((_CP0[m_Opcode.rd] ^ _GPR[m_Opcode.rt].UW[0]) != 0) { if ((_CP0[m_Opcode.rd] ^ _GPR[m_Opcode.rt].UW[0]) != 0) {

View File

@ -21,7 +21,7 @@ void CAudio::Reset ( void )
DWORD CAudio::GetLength ( void ) DWORD CAudio::GetLength ( void )
{ {
WriteTraceF(TraceAudio,__FUNCTION__ ": Start (m_SecondBuff = %d)",m_SecondBuff); WriteTraceF(TraceAudio,__FUNCTION__ ": Start (m_SecondBuff = %d)",m_SecondBuff);
DWORD TimeLeft = _SystemTimer->GetTimer(CSystemTimer::AiTimer), Res = 0; DWORD TimeLeft = g_SystemTimer->GetTimer(CSystemTimer::AiTimer), Res = 0;
if (TimeLeft > 0) if (TimeLeft > 0)
{ {
Res = (TimeLeft / m_CountsPerByte) + m_SecondBuff; Res = (TimeLeft / m_CountsPerByte) + m_SecondBuff;
@ -46,14 +46,14 @@ void CAudio::LenChanged ( void )
WriteTraceF(TraceAudio,__FUNCTION__ ": *** Ignoring Write, To Large (%X)",g_Reg->AI_LEN_REG); WriteTraceF(TraceAudio,__FUNCTION__ ": *** Ignoring Write, To Large (%X)",g_Reg->AI_LEN_REG);
} else { } else {
m_Status |= 0x80000000; m_Status |= 0x80000000;
if (_SystemTimer->GetTimer(CSystemTimer::AiTimer) == 0) if (g_SystemTimer->GetTimer(CSystemTimer::AiTimer) == 0)
{ {
if (m_SecondBuff) if (m_SecondBuff)
{ {
g_Notify->BreakPoint(__FILE__,__LINE__); g_Notify->BreakPoint(__FILE__,__LINE__);
} }
WriteTraceF(TraceAudio,__FUNCTION__ ": Set Timer AI_LEN_REG: %d m_CountsPerByte: %d",g_Reg->AI_LEN_REG,m_CountsPerByte); WriteTraceF(TraceAudio,__FUNCTION__ ": Set Timer AI_LEN_REG: %d m_CountsPerByte: %d",g_Reg->AI_LEN_REG,m_CountsPerByte);
_SystemTimer->SetTimer(CSystemTimer::AiTimer,g_Reg->AI_LEN_REG * m_CountsPerByte,false); g_SystemTimer->SetTimer(CSystemTimer::AiTimer,g_Reg->AI_LEN_REG * m_CountsPerByte,false);
} else { } else {
WriteTraceF(TraceAudio,__FUNCTION__ ": Increasing Second Buffer (m_SecondBuff %d Increase: %d)",m_SecondBuff,g_Reg->AI_LEN_REG); WriteTraceF(TraceAudio,__FUNCTION__ ": Increasing Second Buffer (m_SecondBuff %d Increase: %d)",m_SecondBuff,g_Reg->AI_LEN_REG);
m_SecondBuff += g_Reg->AI_LEN_REG; m_SecondBuff += g_Reg->AI_LEN_REG;
@ -61,7 +61,7 @@ void CAudio::LenChanged ( void )
} }
} else { } else {
WriteTraceF(TraceAudio,__FUNCTION__ ": *** Reset Timer to 0"); WriteTraceF(TraceAudio,__FUNCTION__ ": *** Reset Timer to 0");
_SystemTimer->StopTimer(CSystemTimer::AiTimer); g_SystemTimer->StopTimer(CSystemTimer::AiTimer);
m_SecondBuff = 0; m_SecondBuff = 0;
m_Status = 0; m_Status = 0;
} }
@ -78,7 +78,7 @@ void CAudio::TimerDone ( void )
WriteTraceF(TraceAudio,__FUNCTION__ ": Start (m_SecondBuff = %d)",m_SecondBuff); WriteTraceF(TraceAudio,__FUNCTION__ ": Start (m_SecondBuff = %d)",m_SecondBuff);
if (m_SecondBuff != 0) if (m_SecondBuff != 0)
{ {
_SystemTimer->SetTimer(CSystemTimer::AiTimer,m_SecondBuff * m_CountsPerByte,false); g_SystemTimer->SetTimer(CSystemTimer::AiTimer,m_SecondBuff * m_CountsPerByte,false);
m_SecondBuff = 0; m_SecondBuff = 0;
} else { } else {
g_Reg->MI_INTR_REG |= MI_INTR_AI; g_Reg->MI_INTR_REG |= MI_INTR_AI;

View File

@ -286,7 +286,7 @@ void CPifRam::SI_DMA_READ (void)
#endif #endif
if (bDelaySI()) { if (bDelaySI()) {
_SystemTimer->SetTimer(CSystemTimer::SiTimer,0x900,false); g_SystemTimer->SetTimer(CSystemTimer::SiTimer,0x900,false);
} else { } else {
g_Reg->MI_INTR_REG |= MI_INTR_SI; g_Reg->MI_INTR_REG |= MI_INTR_SI;
g_Reg->SI_STATUS_REG |= SI_STATUS_INTERRUPT; g_Reg->SI_STATUS_REG |= SI_STATUS_INTERRUPT;
@ -382,7 +382,7 @@ void CPifRam::SI_DMA_WRITE (void)
PifRamWrite(); PifRamWrite();
if (bDelaySI()) { if (bDelaySI()) {
_SystemTimer->SetTimer(CSystemTimer::SiTimer,0x900,false); g_SystemTimer->SetTimer(CSystemTimer::SiTimer,0x900,false);
} else { } else {
g_Reg->MI_INTR_REG |= MI_INTR_SI; g_Reg->MI_INTR_REG |= MI_INTR_SI;
g_Reg->SI_STATUS_REG |= SI_STATUS_INTERRUPT; g_Reg->SI_STATUS_REG |= SI_STATUS_INTERRUPT;

View File

@ -45,7 +45,7 @@ void CSystemEvents::ExecuteEvents ( void )
g_System->m_EndEmulation = true; g_System->m_EndEmulation = true;
break; break;
case SysEvent_ResetCPU_Soft: case SysEvent_ResetCPU_Soft:
_SystemTimer->SetTimer(CSystemTimer::SoftResetTimer,0x3000000,false); g_SystemTimer->SetTimer(CSystemTimer::SoftResetTimer,0x3000000,false);
g_Plugins->Gfx()->ShowCFB(); g_Plugins->Gfx()->ShowCFB();
g_Reg->FAKE_CAUSE_REGISTER |= CAUSE_IP4; g_Reg->FAKE_CAUSE_REGISTER |= CAUSE_IP4;
g_Reg->CheckInterrupts(); g_Reg->CheckInterrupts();

View File

@ -174,17 +174,17 @@ void CSystemTimer::TimerDone (void)
UpdateCompareTimer(); UpdateCompareTimer();
break; break;
case CSystemTimer::SoftResetTimer: case CSystemTimer::SoftResetTimer:
_SystemTimer->StopTimer(CSystemTimer::SoftResetTimer); g_SystemTimer->StopTimer(CSystemTimer::SoftResetTimer);
g_System->ExternalEvent(SysEvent_ResetCPU_SoftDone); g_System->ExternalEvent(SysEvent_ResetCPU_SoftDone);
break; break;
case CSystemTimer::SiTimer: case CSystemTimer::SiTimer:
_SystemTimer->StopTimer(CSystemTimer::SiTimer); g_SystemTimer->StopTimer(CSystemTimer::SiTimer);
g_Reg->MI_INTR_REG |= MI_INTR_SI; g_Reg->MI_INTR_REG |= MI_INTR_SI;
g_Reg->SI_STATUS_REG |= SI_STATUS_INTERRUPT; g_Reg->SI_STATUS_REG |= SI_STATUS_INTERRUPT;
g_Reg->CheckInterrupts(); g_Reg->CheckInterrupts();
break; break;
case CSystemTimer::PiTimer: case CSystemTimer::PiTimer:
_SystemTimer->StopTimer(CSystemTimer::PiTimer); g_SystemTimer->StopTimer(CSystemTimer::PiTimer);
g_Reg->PI_STATUS_REG &= ~PI_STATUS_DMA_BUSY; g_Reg->PI_STATUS_REG &= ~PI_STATUS_DMA_BUSY;
g_Reg->MI_INTR_REG |= MI_INTR_PI; g_Reg->MI_INTR_REG |= MI_INTR_PI;
g_Reg->CheckInterrupts(); g_Reg->CheckInterrupts();
@ -202,7 +202,7 @@ void CSystemTimer::TimerDone (void)
g_Reg->CheckInterrupts(); g_Reg->CheckInterrupts();
break; break;
case CSystemTimer::RspTimer: case CSystemTimer::RspTimer:
_SystemTimer->StopTimer(CSystemTimer::RspTimer); g_SystemTimer->StopTimer(CSystemTimer::RspTimer);
try { try {
g_System->RunRSP(); g_System->RunRSP();
} catch (...) { } catch (...) {
@ -210,12 +210,12 @@ void CSystemTimer::TimerDone (void)
} }
break; break;
case CSystemTimer::RSPTimerDlist: case CSystemTimer::RSPTimerDlist:
_SystemTimer->StopTimer(CSystemTimer::RSPTimerDlist); g_SystemTimer->StopTimer(CSystemTimer::RSPTimerDlist);
g_Reg->m_GfxIntrReg |= MI_INTR_DP; g_Reg->m_GfxIntrReg |= MI_INTR_DP;
g_Reg->CheckInterrupts(); g_Reg->CheckInterrupts();
break; break;
case CSystemTimer::AiTimer: case CSystemTimer::AiTimer:
_SystemTimer->StopTimer(CSystemTimer::AiTimer); g_SystemTimer->StopTimer(CSystemTimer::AiTimer);
g_Audio->TimerDone(); g_Audio->TimerDone();
break; break;
default: default:

View File

@ -531,7 +531,7 @@ bool CN64System::SetActiveSystem( bool bActive )
g_TLB = &m_TLB; g_TLB = &m_TLB;
g_Reg = &m_Reg; g_Reg = &m_Reg;
g_Audio = &m_Audio; g_Audio = &m_Audio;
_SystemTimer = &m_SystemTimer; g_SystemTimer = &m_SystemTimer;
_TransVaddr = &m_MMU_VM; _TransVaddr = &m_MMU_VM;
_SystemEvents = this; _SystemEvents = this;
_NextTimer = &m_NextTimer; _NextTimer = &m_NextTimer;
@ -562,7 +562,7 @@ bool CN64System::SetActiveSystem( bool bActive )
g_TLB = NULL; g_TLB = NULL;
g_Reg = NULL; g_Reg = NULL;
g_Audio = NULL; g_Audio = NULL;
_SystemTimer = NULL; g_SystemTimer = NULL;
_TransVaddr = NULL; _TransVaddr = NULL;
_SystemEvents = NULL; _SystemEvents = NULL;
_NextTimer = NULL; _NextTimer = NULL;
@ -879,7 +879,7 @@ void CN64System::SyncCPUPC (CN64System * const SecondCPU)
{ {
bool ErrorFound = false; bool ErrorFound = false;
_SystemTimer->UpdateTimers(); g_SystemTimer->UpdateTimers();
if (m_Reg.m_PROGRAM_COUNTER != SecondCPU->m_Reg.m_PROGRAM_COUNTER) { if (m_Reg.m_PROGRAM_COUNTER != SecondCPU->m_Reg.m_PROGRAM_COUNTER) {
ErrorFound = true; ErrorFound = true;
} }
@ -901,7 +901,7 @@ void CN64System::SyncCPU (CN64System * const SecondCPU)
bool ErrorFound = false; bool ErrorFound = false;
//WriteTraceF(TraceError,"SyncCPU PC = %08X",m_Reg.m_PROGRAM_COUNTER); //WriteTraceF(TraceError,"SyncCPU PC = %08X",m_Reg.m_PROGRAM_COUNTER);
_SystemTimer->UpdateTimers(); g_SystemTimer->UpdateTimers();
#ifdef TEST_SP_TRACKING #ifdef TEST_SP_TRACKING
if (m_CurrentSP != GPR[29].UW[0]) { if (m_CurrentSP != GPR[29].UW[0]) {
@ -1584,7 +1584,7 @@ void CN64System::RunRSP ( void ) {
} }
if (Task == 1 && bDelayDP() && ((m_Reg.m_GfxIntrReg & MI_INTR_DP) != 0)) if (Task == 1 && bDelayDP() && ((m_Reg.m_GfxIntrReg & MI_INTR_DP) != 0))
{ {
_SystemTimer->SetTimer(CSystemTimer::RSPTimerDlist,0x1000,false); g_SystemTimer->SetTimer(CSystemTimer::RSPTimerDlist,0x1000,false);
m_Reg.m_GfxIntrReg &= ~MI_INTR_DP; m_Reg.m_GfxIntrReg &= ~MI_INTR_DP;
} }
if (bShowCPUPer()) { m_CPU_Usage.StartTimer(CPU_UsageAddr); } if (bShowCPUPer()) { m_CPU_Usage.StartTimer(CPU_UsageAddr); }
@ -1592,7 +1592,7 @@ void CN64System::RunRSP ( void ) {
if ( ( m_Reg.SP_STATUS_REG & SP_STATUS_HALT ) == 0 && ( m_Reg.SP_STATUS_REG & SP_STATUS_BROKE ) == 0) if ( ( m_Reg.SP_STATUS_REG & SP_STATUS_HALT ) == 0 && ( m_Reg.SP_STATUS_REG & SP_STATUS_BROKE ) == 0)
{ {
_SystemTimer->SetTimer(CSystemTimer::RspTimer,0x200,false); g_SystemTimer->SetTimer(CSystemTimer::RspTimer,0x200,false);
} }
WriteTrace(TraceRSP, "RunRSP: check interrupts"); WriteTrace(TraceRSP, "RunRSP: check interrupts");
g_Reg->CheckInterrupts(); g_Reg->CheckInterrupts();
@ -1664,7 +1664,7 @@ void CN64System::RefreshScreen ( void ) {
VI_INTR_TIME -= 38; VI_INTR_TIME -= 38;
} }
} }
_SystemTimer->SetTimer(CSystemTimer::ViTimer,VI_INTR_TIME,true); g_SystemTimer->SetTimer(CSystemTimer::ViTimer,VI_INTR_TIME,true);
if (bFixedAudio()) if (bFixedAudio())
{ {
g_Audio->SetViIntr (VI_INTR_TIME); g_Audio->SetViIntr (VI_INTR_TIME);

View File

@ -411,7 +411,7 @@ void CCodeSection::GenerateSectionLinkage (void)
m_Jump.RegSet.WriteBackRegisters(); m_Jump.RegSet.WriteBackRegisters();
UpdateCounters(m_Jump.RegSet,false, true); UpdateCounters(m_Jump.RegSet,false, true);
Call_Direct(AddressOf(CInterpreterCPU::InPermLoop),"CInterpreterCPU::InPermLoop"); Call_Direct(AddressOf(CInterpreterCPU::InPermLoop),"CInterpreterCPU::InPermLoop");
MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); MoveConstToX86reg((DWORD)g_SystemTimer,x86_ECX);
Call_Direct(AddressOf(&CSystemTimer::TimerDone),"CSystemTimer::TimerDone"); Call_Direct(AddressOf(&CSystemTimer::TimerDone),"CSystemTimer::TimerDone");
CPU_Message("CompileSystemCheck 3"); CPU_Message("CompileSystemCheck 3");
CompileSystemCheck((DWORD)-1,m_Jump.RegSet); CompileSystemCheck((DWORD)-1,m_Jump.RegSet);

View File

@ -3999,7 +3999,7 @@ void CRecompilerOps::COP0_MF(void) {
UpdateCounters(m_RegWorkingSet,false, true); UpdateCounters(m_RegWorkingSet,false, true);
m_RegWorkingSet.SetBlockCycleCount(m_RegWorkingSet.GetBlockCycleCount() + CountPerOp()) ; m_RegWorkingSet.SetBlockCycleCount(m_RegWorkingSet.GetBlockCycleCount() + CountPerOp()) ;
BeforeCallDirect(m_RegWorkingSet); BeforeCallDirect(m_RegWorkingSet);
MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); MoveConstToX86reg((DWORD)g_SystemTimer,x86_ECX);
Call_Direct(AddressOf(&CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers"); Call_Direct(AddressOf(&CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers");
AfterCallDirect(m_RegWorkingSet); AfterCallDirect(m_RegWorkingSet);
} }
@ -4043,7 +4043,7 @@ void CRecompilerOps::COP0_MT (void) {
UpdateCounters(m_RegWorkingSet,false, true); UpdateCounters(m_RegWorkingSet,false, true);
m_RegWorkingSet.SetBlockCycleCount(m_RegWorkingSet.GetBlockCycleCount() + CountPerOp()) ; m_RegWorkingSet.SetBlockCycleCount(m_RegWorkingSet.GetBlockCycleCount() + CountPerOp()) ;
BeforeCallDirect(m_RegWorkingSet); BeforeCallDirect(m_RegWorkingSet);
MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); MoveConstToX86reg((DWORD)g_SystemTimer,x86_ECX);
Call_Direct(AddressOf(&CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers"); Call_Direct(AddressOf(&CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers");
AfterCallDirect(m_RegWorkingSet); AfterCallDirect(m_RegWorkingSet);
if (IsConst(m_Opcode.rt)) { if (IsConst(m_Opcode.rt)) {
@ -4055,7 +4055,7 @@ void CRecompilerOps::COP0_MT (void) {
} }
AndConstToVariable((DWORD)~CAUSE_IP7,&g_Reg->FAKE_CAUSE_REGISTER,"FAKE_CAUSE_REGISTER"); AndConstToVariable((DWORD)~CAUSE_IP7,&g_Reg->FAKE_CAUSE_REGISTER,"FAKE_CAUSE_REGISTER");
BeforeCallDirect(m_RegWorkingSet); BeforeCallDirect(m_RegWorkingSet);
MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); MoveConstToX86reg((DWORD)g_SystemTimer,x86_ECX);
Call_Direct(AddressOf(&CSystemTimer::UpdateCompareTimer), "CSystemTimer::UpdateCompareTimer"); Call_Direct(AddressOf(&CSystemTimer::UpdateCompareTimer), "CSystemTimer::UpdateCompareTimer");
AfterCallDirect(m_RegWorkingSet); AfterCallDirect(m_RegWorkingSet);
break; break;
@ -4064,7 +4064,7 @@ void CRecompilerOps::COP0_MT (void) {
UpdateCounters(m_RegWorkingSet,false, true); UpdateCounters(m_RegWorkingSet,false, true);
m_RegWorkingSet.SetBlockCycleCount(m_RegWorkingSet.GetBlockCycleCount() + CountPerOp()) ; m_RegWorkingSet.SetBlockCycleCount(m_RegWorkingSet.GetBlockCycleCount() + CountPerOp()) ;
BeforeCallDirect(m_RegWorkingSet); BeforeCallDirect(m_RegWorkingSet);
MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); MoveConstToX86reg((DWORD)g_SystemTimer,x86_ECX);
Call_Direct(AddressOf(&CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers"); Call_Direct(AddressOf(&CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers");
AfterCallDirect(m_RegWorkingSet); AfterCallDirect(m_RegWorkingSet);
if (IsConst(m_Opcode.rt)) { if (IsConst(m_Opcode.rt)) {
@ -4075,7 +4075,7 @@ void CRecompilerOps::COP0_MT (void) {
MoveX86regToVariable(Map_TempReg(x86_Any,m_Opcode.rt,FALSE), &_CP0[m_Opcode.rd], CRegName::Cop0[m_Opcode.rd]); MoveX86regToVariable(Map_TempReg(x86_Any,m_Opcode.rt,FALSE), &_CP0[m_Opcode.rd], CRegName::Cop0[m_Opcode.rd]);
} }
BeforeCallDirect(m_RegWorkingSet); BeforeCallDirect(m_RegWorkingSet);
MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); MoveConstToX86reg((DWORD)g_SystemTimer,x86_ECX);
Call_Direct(AddressOf(&CSystemTimer::UpdateCompareTimer), "CSystemTimer::UpdateCompareTimer"); Call_Direct(AddressOf(&CSystemTimer::UpdateCompareTimer), "CSystemTimer::UpdateCompareTimer");
AfterCallDirect(m_RegWorkingSet); AfterCallDirect(m_RegWorkingSet);
break; break;
@ -4111,7 +4111,7 @@ void CRecompilerOps::COP0_MT (void) {
break; break;
case 6: //Wired case 6: //Wired
BeforeCallDirect(m_RegWorkingSet); BeforeCallDirect(m_RegWorkingSet);
MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); MoveConstToX86reg((DWORD)g_SystemTimer,x86_ECX);
Call_Direct(AddressOf(&CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers"); Call_Direct(AddressOf(&CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers");
AfterCallDirect(m_RegWorkingSet); AfterCallDirect(m_RegWorkingSet);
if (IsConst(m_Opcode.rt)) { if (IsConst(m_Opcode.rt)) {
@ -4178,7 +4178,7 @@ void CRecompilerOps::COP0_CO_TLBWR( void) {
UpdateCounters(m_RegWorkingSet,false, true); UpdateCounters(m_RegWorkingSet,false, true);
m_RegWorkingSet.SetBlockCycleCount(m_RegWorkingSet.GetBlockCycleCount() + CountPerOp()) ; m_RegWorkingSet.SetBlockCycleCount(m_RegWorkingSet.GetBlockCycleCount() + CountPerOp()) ;
BeforeCallDirect(m_RegWorkingSet); BeforeCallDirect(m_RegWorkingSet);
MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); MoveConstToX86reg((DWORD)g_SystemTimer,x86_ECX);
Call_Direct(AddressOf(&CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers"); Call_Direct(AddressOf(&CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers");
PushImm32("true",true); PushImm32("true",true);
@ -5141,7 +5141,7 @@ void CRecompilerOps::UpdateCounters ( CRegInfo & RegSet, bool CheckTimer, bool C
JnsLabel8("Continue_From_Timer_Test",0); JnsLabel8("Continue_From_Timer_Test",0);
BYTE * Jump = m_RecompPos - 1; BYTE * Jump = m_RecompPos - 1;
Pushad(); Pushad();
MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); MoveConstToX86reg((DWORD)g_SystemTimer,x86_ECX);
Call_Direct(AddressOf(&CSystemTimer::TimerDone),"CSystemTimer::TimerDone"); Call_Direct(AddressOf(&CSystemTimer::TimerDone),"CSystemTimer::TimerDone");
Popad(); Popad();

View File

@ -11,7 +11,7 @@ CNotification * g_Notify = NULL;
CPlugins * g_Plugins = NULL; CPlugins * g_Plugins = NULL;
CN64Rom * g_Rom = NULL; //The current rom that this system is executing.. it can only execute one file at the time CN64Rom * g_Rom = NULL; //The current rom that this system is executing.. it can only execute one file at the time
CAudio * g_Audio = NULL; CAudio * g_Audio = NULL;
CSystemTimer * _SystemTimer = NULL; CSystemTimer * g_SystemTimer = NULL;
CTransVaddr * _TransVaddr = NULL; CTransVaddr * _TransVaddr = NULL;
CSystemEvents * _SystemEvents = NULL; CSystemEvents * _SystemEvents = NULL;
DWORD * _TLBLoadAddress = NULL; DWORD * _TLBLoadAddress = NULL;

View File

@ -11,7 +11,7 @@ extern CRegisters * g_Reg; //Current Register Set attached to the g_MMU
extern CPlugins * g_Plugins; extern CPlugins * g_Plugins;
extern CN64Rom * g_Rom; //The current rom that this system is executing.. it can only execute one file at the time extern CN64Rom * g_Rom; //The current rom that this system is executing.. it can only execute one file at the time
extern CAudio * g_Audio; extern CAudio * g_Audio;
extern CSystemTimer * _SystemTimer; extern CSystemTimer * g_SystemTimer;
extern CTransVaddr * _TransVaddr; extern CTransVaddr * _TransVaddr;
extern CSystemEvents * _SystemEvents; extern CSystemEvents * _SystemEvents;
extern int * _NextTimer; extern int * _NextTimer;