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

Function rcntUpdate

pcsx2/Counters.cpp:755–775  ·  view source on GitHub ↗

forceinline note: this method is called from two locations, but one of them is the interpreter, which doesn't count. ;) So might as well forceinline it!

Source from the content-addressed store, hash-verified

753// of them is the interpreter, which doesn't count. ;) So might as
754// well forceinline it!
755__fi void rcntUpdate()
756{
757 rcntUpdate_vSync();
758 // HBlank after as VSync can do error compensation
759 rcntUpdate_hScanline();
760
761 // Update counters so that we can perform overflow and target tests.
762
763 for (int i = 0; i <= 3; i++)
764 {
765 rcntSyncCounter(i);
766
767 if (counters[i].mode.ClockSource == 0x3 || !rcntCanCount(i)) // don't count hblank sources
768 continue;
769
770 _cpuTestOverflow(i);
771 _cpuTestTarget(i);
772 }
773
774 cpuRcntSet();
775}
776
777static __fi void _rcntSetGate(int index)
778{

Callers 1

_cpuEventTest_SharedFunction · 0.85

Calls 7

rcntUpdate_vSyncFunction · 0.85
rcntUpdate_hScanlineFunction · 0.85
rcntSyncCounterFunction · 0.85
rcntCanCountFunction · 0.85
_cpuTestOverflowFunction · 0.85
_cpuTestTargetFunction · 0.85
cpuRcntSetFunction · 0.85

Tested by

no test coverage detected