summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/Src/Fifo.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/VideoCommon/Src/Fifo.cpp')
-rw-r--r--Source/Core/VideoCommon/Src/Fifo.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/Source/Core/VideoCommon/Src/Fifo.cpp b/Source/Core/VideoCommon/Src/Fifo.cpp
index 642959c8f3..09b927351f 100644
--- a/Source/Core/VideoCommon/Src/Fifo.cpp
+++ b/Source/Core/VideoCommon/Src/Fifo.cpp
@@ -133,7 +133,11 @@ void Fifo_EnterLoop(const SVideoInitialize &video_initialize)
if (_fifo.CPReadPointer == _fifo.CPBreakpoint)
{
//_fifo.bFF_Breakpoint = 1;
+ #ifdef _WIN32
InterlockedExchange((LONG*)&_fifo.bFF_Breakpoint, true);
+ #else
+ _fifo.bFF_Breakpoint = true;
+ #endif
video_initialize.pUpdateInterrupts();
break;
}
@@ -151,11 +155,12 @@ void Fifo_EnterLoop(const SVideoInitialize &video_initialize)
u32 readPtr = _fifo.CPReadPointer+32;
if (readPtr >= _fifo.CPEnd)
readPtr = _fifo.CPBase;
- InterlockedExchange((LONG*)&_fifo.CPReadPointer, readPtr);
#ifdef _WIN32
+ InterlockedExchange((LONG*)&_fifo.CPReadPointer, readPtr);
InterlockedExchangeAdd((LONG*)&_fifo.CPReadWriteDistance, -32);
//LeaveCriticalSection(&_fifo.sync);
#else
+ _fifo.CPReadPointer = readPtr;
Common::InterlockedExchangeAdd((int*)&_fifo.CPReadWriteDistance, -32);
_fifo.sync->Leave();
#endif