summaryrefslogtreecommitdiff
path: root/libpcsxcore/r3000a.c
diff options
context:
space:
mode:
authorSND\edgbla_cp <SND\edgbla_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2010-08-13 21:58:00 +0000
committerSND\edgbla_cp <SND\edgbla_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2010-08-13 21:58:00 +0000
commitd310056a1a1dc1305735178bc57b499001e92b4d (patch)
tree9a0f65f3b4a0c736cdb1e85a090aa3cbc81a867d /libpcsxcore/r3000a.c
parent3e945aaa3675d69e746715fe0abc5dbef4923222 (diff)
Added gpu busy interface.
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@56084 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'libpcsxcore/r3000a.c')
-rw-r--r--libpcsxcore/r3000a.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libpcsxcore/r3000a.c b/libpcsxcore/r3000a.c
index 27c247bd..acc8eb60 100644
--- a/libpcsxcore/r3000a.c
+++ b/libpcsxcore/r3000a.c
@@ -151,6 +151,12 @@ void psxBranchTest() {
spuInterrupt();
}
}
+ if (psxRegs.interrupt & (1 << PSXINT_GPUBUSY)) { // gpu busy
+ if ((psxRegs.cycle - psxRegs.intCycle[PSXINT_GPUBUSY].sCycle) >= psxRegs.intCycle[PSXINT_GPUBUSY].cycle) {
+ psxRegs.interrupt &= ~(1 << PSXINT_GPUBUSY);
+ GPU_idle();
+ }
+ }
}
if (psxHu32(0x1070) & psxHu32(0x1074)) {