Tweaked input latency patch to help prevent microstutters, updated RT64
This commit is contained in:
parent
2e4988da2b
commit
fcc4eb6351
2
lib/rt64
2
lib/rt64
|
@ -1 +1 @@
|
||||||
Subproject commit 3ae6485d70e9899587b2afdb7551b9256f6427be
|
Subproject commit c9f38195ef1a6d56953957dc2ad84049a146818d
|
|
@ -153,11 +153,16 @@ void Graph_TaskSet00(GraphicsContext* gfxCtx, GameState* gameState) {
|
||||||
|
|
||||||
// @recomp Wait on the VI framebuffer to change if this task has a framebuffer swap.
|
// @recomp Wait on the VI framebuffer to change if this task has a framebuffer swap.
|
||||||
if (scTask->flags & OS_SC_SWAPBUFFER) {
|
if (scTask->flags & OS_SC_SWAPBUFFER) {
|
||||||
while (osViGetCurrentFramebuffer_recomp() != cfb->fb1) {
|
int viCounter = 0;
|
||||||
|
while (osViGetCurrentFramebuffer() != cfb->fb1) {
|
||||||
|
osRecvMesg(&vi_queue, NULL, OS_MESG_BLOCK);
|
||||||
|
viCounter++;
|
||||||
|
}
|
||||||
|
|
||||||
|
// If we didn't wait the full number of VIs needed between frames then wait one extra VI afterwards.
|
||||||
|
if (viCounter < gameState->framerateDivisor) {
|
||||||
osRecvMesg(&vi_queue, NULL, OS_MESG_BLOCK);
|
osRecvMesg(&vi_queue, NULL, OS_MESG_BLOCK);
|
||||||
}
|
}
|
||||||
// Wait one extra VI afterwards.
|
|
||||||
osRecvMesg(&vi_queue, NULL, OS_MESG_BLOCK);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// @recomp Flush any extra messages from the VI queue.
|
// @recomp Flush any extra messages from the VI queue.
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
#define osCreateMesgQueue osCreateMesgQueue_recomp
|
#define osCreateMesgQueue osCreateMesgQueue_recomp
|
||||||
#define osRecvMesg osRecvMesg_recomp
|
#define osRecvMesg osRecvMesg_recomp
|
||||||
#define osSendMesg osSendMesg_recomp
|
#define osSendMesg osSendMesg_recomp
|
||||||
|
#define osViGetCurrentFramebuffer osViGetCurrentFramebuffer_recomp
|
||||||
#define sinf __sinf_recomp
|
#define sinf __sinf_recomp
|
||||||
#define cosf __cosf_recomp
|
#define cosf __cosf_recomp
|
||||||
#define gRandFloat sRandFloat
|
#define gRandFloat sRandFloat
|
||||||
|
|
Loading…
Reference in New Issue