MCPcopy Create free account
hub / github.com/PCSX2/pcsx2 / iopTestIntc

Function iopTestIntc

pcsx2/R3000A.cpp:242–261  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

240}
241
242void iopTestIntc()
243{
244 if( psxHu32(HW_ICTRL) == 0 ) return;
245 if( (psxHu32(HW_ISTAT) & psxHu32(HW_IMASK)) == 0 ) return;
246
247 if( !eeEventTestIsActive )
248 {
249 // An iop exception has occurred while the EE is running code.
250 // Inform the EE to branch so the IOP can handle it promptly:
251
252 cpuSetNextEventDelta( 16 );
253 iopEventAction = true;
254 //Console.Error( "** IOP Needs an EE EventText, kthx ** %d", iopCycleEE );
255
256 // Note: No need to set the iop's branch delta here, since the EE
257 // will run an IOP branch test regardless.
258 }
259 else if ( !iopEventTestIsActive )
260 psxSetNextBranchDelta( 2 );
261}
262
263inline bool psxIsBranchOrJump(u32 addr)
264{

Callers 3

iopIntcIrqFunction · 0.85
_rcntFireInterruptFunction · 0.85
_HwWrite_16or32_Page1Function · 0.85

Calls 2

cpuSetNextEventDeltaFunction · 0.85
psxSetNextBranchDeltaFunction · 0.85

Tested by

no test coverage detected