mirror of
https://github.com/hrydgard/ppsspp.git
synced 2024-11-24 05:49:58 +00:00
Reschedule after many cases of eating cycles.
All of these eat enough cycles they could cause issues in a loop, and I'm pretty sure they would reschedule.
This commit is contained in:
parent
1ef3ac6e55
commit
aa6355a9e5
@ -838,6 +838,7 @@ u32 sceDisplayWaitVblank() {
|
||||
} else {
|
||||
DEBUG_LOG(SCEDISPLAY,"sceDisplayWaitVblank() - not waiting since in vBlank");
|
||||
hleEatCycles(1110);
|
||||
hleReSchedule("vblank wait skipped");
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
@ -866,6 +867,7 @@ u32 sceDisplayWaitVblankCB() {
|
||||
} else {
|
||||
DEBUG_LOG(SCEDISPLAY,"sceDisplayWaitVblankCB() - not waiting since in vBlank");
|
||||
hleEatCycles(1110);
|
||||
hleReSchedule("vblank wait skipped");
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
@ -381,6 +381,7 @@ int sceKernelDcacheWritebackAll()
|
||||
// to zap the whole texture cache.
|
||||
gpu->InvalidateCache(0, -1, GPU_INVALIDATE_ALL);
|
||||
hleEatCycles(3524);
|
||||
hleReSchedule("dcache writeback all");
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -419,6 +420,7 @@ int sceKernelDcacheWritebackInvalidateAll()
|
||||
#endif
|
||||
gpu->InvalidateCache(0, -1, GPU_INVALIDATE_ALL);
|
||||
hleEatCycles(1165);
|
||||
hleReSchedule("dcache invalidate all");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -1352,6 +1352,8 @@ int sceMpegRingbufferAvailableSize(u32 ringbufferAddr)
|
||||
}
|
||||
|
||||
hleEatCycles(2020);
|
||||
hleReSchedule("mpeg ringbuffer avail");
|
||||
|
||||
static int lastFree = 0;
|
||||
if (lastFree != ringbuffer->packetsFree) {
|
||||
DEBUG_LOG(ME, "%i=sceMpegRingbufferAvailableSize(%08x)", ringbuffer->packetsFree, ringbufferAddr);
|
||||
|
Loading…
Reference in New Issue
Block a user