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 2012-12-20 21:54:40 -08:00
parent 99b24720b8
commit 9034cfbfd3
8 changed files with 60 additions and 20 deletions

View file

@ -88,10 +88,8 @@ void __KernelTriggerAlarm(u64 userdata, int cyclesLate)
u32 error;
Alarm *alarm = kernelObjects.Get<Alarm>(uid, error);
// TODO: Need to find out the return value.
if (alarm)
__TriggerInterrupt(PSP_SYSTIMER0_INTR, uid);
__TriggerInterrupt(PSP_INTR_IMMEDIATE, PSP_SYSTIMER0_INTR, uid);
}
void __KernelScheduleAlarm(Alarm *alarm, int ticks)