Defer HLE interrupts, vblank only when enabled.

Based on tests, vblank doesn't queue up (makes sense) while
interrupts are disabled.

I'm not 100% sure about the GPU stuff but it seems to only come
from HLE via sceGe, so this should fix those return values.
This commit is contained in:
Unknown W. Brackets committed 2012-12-20 21:54:40 -08:00
1 parent 99b24720b8
commit 9034cfbfd3
8 files changed
+60 -20

No files matched your search

+1 -1
View File
@@ -151,7 +151,7 @@ void hleEnterVblank(u64 userdata, int cyclesLate)
vblankWaitingThreads.clear();
// Trigger VBlank interrupt handlers.
__TriggerInterrupt(PSP_VBLANK_INTR);
__TriggerInterrupt(PSP_INTR_IMMEDIATE | PSP_INTR_ONLY_IF_ENABLED, PSP_VBLANK_INTR);
CoreTiming::ScheduleEvent(msToCycles(vblankMs) - cyclesLate, leaveVblankEvent, vbCount+1);