Hacky fix for weird video hangs in Metroid Prime 1. May think of something better later.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1290 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
hrydgard 2008-11-24 19:31:49 +00:00
parent 0b5fed62c1
commit b9c6f7cb89

View File

@ -110,8 +110,14 @@ void Fifo_EnterLoop(const SVideoInitialize &video_initialize)
Common::InterlockedExchange((int*)&_fifo.CPReadIdle, 0);
#endif
//video_initialize.pLog("RUN...........................",FALSE);
while(_fifo.bFF_GPReadEnable && (_fifo.CPReadWriteDistance > 0) )
int peek_counter = 0;
while (_fifo.bFF_GPReadEnable && (_fifo.CPReadWriteDistance > 0))
{
peek_counter++;
if (peek_counter == 50) {
video_initialize.pPeekMessages();
peek_counter = 0;
}
// read the data and send it to the VideoPlugin
u32 readPtr = _fifo.CPReadPointer;
u8 *uData = video_initialize.pGetMemoryPointer(readPtr);