mirror of
https://github.com/hrydgard/ppsspp.git
synced 2025-04-02 11:01:50 -04:00
Minor simplification to ctrl buffer updates.
This commit is contained in:
parent
39cd7f812a
commit
d7d0242225
1 changed files with 6 additions and 8 deletions
|
@ -195,10 +195,8 @@ void __CtrlSetRapidFire(bool state)
|
|||
emuRapidFire = state;
|
||||
}
|
||||
|
||||
int __CtrlReadSingleBuffer(u32 ctrlDataPtr, bool negative)
|
||||
int __CtrlReadSingleBuffer(PSPPointer<_ctrl_data> data, bool negative)
|
||||
{
|
||||
PSPPointer<_ctrl_data> data;
|
||||
data = ctrlDataPtr;
|
||||
if (data.IsValid())
|
||||
{
|
||||
*data = ctrlBufs[ctrlBufRead];
|
||||
|
@ -238,11 +236,10 @@ int __CtrlReadBuffer(u32 ctrlDataPtr, u32 nBufs, bool negative, bool peek)
|
|||
ctrlBufRead = (ctrlBuf - availBufs + NUM_CTRL_BUFFERS) % NUM_CTRL_BUFFERS;
|
||||
|
||||
int done = 0;
|
||||
PSPPointer<_ctrl_data> data;
|
||||
data = ctrlDataPtr;
|
||||
for (u32 i = 0; i < availBufs; ++i)
|
||||
{
|
||||
done += __CtrlReadSingleBuffer(ctrlDataPtr, negative);
|
||||
ctrlDataPtr += sizeof(_ctrl_data);
|
||||
}
|
||||
done += __CtrlReadSingleBuffer(data++, negative);
|
||||
|
||||
if (peek)
|
||||
ctrlBufRead = resetRead;
|
||||
|
@ -268,7 +265,8 @@ retry:
|
|||
if (wVal == 0)
|
||||
goto retry;
|
||||
|
||||
u32 ctrlDataPtr = __KernelGetWaitValue(threadID, error);
|
||||
PSPPointer<_ctrl_data> ctrlDataPtr;
|
||||
ctrlDataPtr = __KernelGetWaitValue(threadID, error);
|
||||
int retVal = __CtrlReadSingleBuffer(ctrlDataPtr, wVal == CTRL_WAIT_NEGATIVE);
|
||||
__KernelResumeThreadFromWait(threadID, retVal);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue