diff options
| author | donkopunchstania <donkopunchstania@gmail.com> | 2009-11-11 03:14:38 +0000 |
|---|---|---|
| committer | donkopunchstania <donkopunchstania@gmail.com> | 2009-11-11 03:14:38 +0000 |
| commit | 52da977c73a1b9de7e6c5892a67d2ab783b2edcc (patch) | |
| tree | 639be5f3dd438c9daa9697c30b8910470dbde4dd /Source/Core | |
| parent | c2a4e3331356acc40bdbc314b858dd10e49c955b (diff) | |
Fixes to the software plugin command processor. Made it easy to use the command processor in place of the one in video common. Use frame skip setting from the application in the software plugin instead of the internal frame skipping config setting. The WGP does not loop if the write pointer is set beyond the end of the fifo.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4527 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core')
| -rw-r--r-- | Source/Core/Core/Src/HW/GPFifo.cpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/Source/Core/Core/Src/HW/GPFifo.cpp b/Source/Core/Core/Src/HW/GPFifo.cpp index 01d38ed0f5..4d9a160a1c 100644 --- a/Source/Core/Core/Src/HW/GPFifo.cpp +++ b/Source/Core/Core/Src/HW/GPFifo.cpp @@ -80,14 +80,10 @@ void STACKALIGN CheckGatherPipe() memcpy(m_gatherPipe, m_gatherPipe + GATHER_PIPE_SIZE, m_gatherPipeCount); // increase the CPUWritePointer - ProcessorInterface::Fifo_CPUWritePointer += GATHER_PIPE_SIZE; - - if (ProcessorInterface::Fifo_CPUWritePointer > ProcessorInterface::Fifo_CPUEnd) - _assert_msg_(DYNA_REC, 0, "Fifo_CPUWritePointer out of bounds: %08x (end = %08x)", - ProcessorInterface::Fifo_CPUWritePointer, ProcessorInterface::Fifo_CPUEnd); - - if (ProcessorInterface::Fifo_CPUWritePointer >= ProcessorInterface::Fifo_CPUEnd) - ProcessorInterface::Fifo_CPUWritePointer = ProcessorInterface::Fifo_CPUBase; + if (ProcessorInterface::Fifo_CPUWritePointer == ProcessorInterface::Fifo_CPUEnd) + ProcessorInterface::Fifo_CPUWritePointer = ProcessorInterface::Fifo_CPUBase; + else + ProcessorInterface::Fifo_CPUWritePointer += GATHER_PIPE_SIZE; // TODO store video plugin pointer CPluginManager::GetInstance().GetVideo()->Video_GatherPipeBursted(); |
