diff --git a/Core/HLE/sceCtrl.cpp b/Core/HLE/sceCtrl.cpp index cc19502d58..52609447f3 100644 --- a/Core/HLE/sceCtrl.cpp +++ b/Core/HLE/sceCtrl.cpp @@ -446,6 +446,7 @@ int sceCtrlGetIdleCancelThreshold(u32 idleResetPtr, u32 idleBackPtr) void sceCtrlReadBufferPositive(u32 ctrlDataPtr, u32 nBufs) { int done = __CtrlReadBuffer(ctrlDataPtr, nBufs, false, false); + hleEatCycles(330); if (done != 0) { RETURN(done); @@ -462,6 +463,7 @@ void sceCtrlReadBufferPositive(u32 ctrlDataPtr, u32 nBufs) void sceCtrlReadBufferNegative(u32 ctrlDataPtr, u32 nBufs) { int done = __CtrlReadBuffer(ctrlDataPtr, nBufs, true, false); + hleEatCycles(330); if (done != 0) { RETURN(done); @@ -479,6 +481,7 @@ int sceCtrlPeekBufferPositive(u32 ctrlDataPtr, u32 nBufs) { int done = __CtrlReadBuffer(ctrlDataPtr, nBufs, false, true); DEBUG_LOG(SCECTRL, "%d=sceCtrlPeekBufferPositive(%08x, %i)", done, ctrlDataPtr, nBufs); + hleEatCycles(330); return done; } @@ -486,6 +489,7 @@ int sceCtrlPeekBufferNegative(u32 ctrlDataPtr, u32 nBufs) { int done = __CtrlReadBuffer(ctrlDataPtr, nBufs, true, true); DEBUG_LOG(SCECTRL, "%d=sceCtrlPeekBufferNegative(%08x, %i)", done, ctrlDataPtr, nBufs); + hleEatCycles(330); return done; }