aboutsummaryrefslogtreecommitdiff
path: root/libpcsxcore/psxhw.c
diff options
context:
space:
mode:
authornotaz2010-12-10 17:57:35 +0200
committernotaz2010-12-14 15:25:05 +0200
commit28bc5688589e5f2d6cfa86bb22441e763de468cd (patch)
tree1ba279382d93edf79b2ce9e57c2ef55d07098cfd /libpcsxcore/psxhw.c
parentccf51908872ddeb811b1245e6751600b860d90b5 (diff)
downloadpcsx_rearmed-28bc5688589e5f2d6cfa86bb22441e763de468cd.tar.gz
pcsx_rearmed-28bc5688589e5f2d6cfa86bb22441e763de468cd.tar.bz2
pcsx_rearmed-28bc5688589e5f2d6cfa86bb22441e763de468cd.zip
drc: hook even to detect irq unmasking
Diffstat (limited to 'libpcsxcore/psxhw.c')
-rw-r--r--libpcsxcore/psxhw.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libpcsxcore/psxhw.c b/libpcsxcore/psxhw.c
index 9123f76..f265e19 100644
--- a/libpcsxcore/psxhw.c
+++ b/libpcsxcore/psxhw.c
@@ -431,6 +431,8 @@ void psxHwWrite16(u32 add, u16 value) {
PSXHW_LOG("IMASK 16bit write %x\n", value);
#endif
psxHu16ref(0x1074) = SWAPu16(value);
+ if (psxHu16ref(0x1070) & value)
+ new_dyna_set_event(6, 1);
return;
case 0x1f801100:
@@ -543,6 +545,8 @@ void psxHwWrite32(u32 add, u32 value) {
PSXHW_LOG("IMASK 32bit write %x\n", value);
#endif
psxHu32ref(0x1074) = SWAPu32(value);
+ if (psxHu32ref(0x1070) & value)
+ new_dyna_set_event(6, 1);
return;
#ifdef PSXHW_LOG