mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 06:09:50 -06:00
Sorry, I forgot to implement LoWatermark code for SC, now both SC & DC are working.
By now I'm pretty sure some games are written in multi-thread, and they depend on Watermark to suspend/resume their threads. So without Watermark, they will never work. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5709 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@ -148,7 +148,7 @@ void Fifo_EnterLoop(const SVideoInitialize &video_initialize)
|
||||
VideoFifo_CheckSwapRequest();
|
||||
|
||||
// check if we are able to run this buffer
|
||||
while (_fifo.bFF_GPReadEnable && _fifo.CPReadWriteDistance && (!_fifo.bFF_BPEnable || (_fifo.bFF_BPEnable && !_fifo.bFF_Breakpoint)))
|
||||
while (_fifo.bFF_GPReadEnable && _fifo.CPReadWriteDistance)
|
||||
{
|
||||
if (!fifoStateRun)
|
||||
break;
|
||||
@ -165,7 +165,8 @@ void Fifo_EnterLoop(const SVideoInitialize &video_initialize)
|
||||
{
|
||||
if ((readPtr <= _fifo.CPBreakpoint) && (readPtr + 32 > _fifo.CPBreakpoint))
|
||||
{
|
||||
Common::AtomicStore(_fifo.bFF_Breakpoint, 1);
|
||||
Common::AtomicStore(_fifo.bFF_GPReadEnable, false);
|
||||
Common::AtomicStore(_fifo.bFF_Breakpoint, true);
|
||||
if (_fifo.bFF_BPInt)
|
||||
CommandProcessor::UpdateInterruptsFromVideoPlugin();
|
||||
CommandProcessor::FifoCriticalLeave();
|
||||
|
Reference in New Issue
Block a user