GPU: Don't recursively execute commands
This can happen with interlaced rendering on when a line is pending scanout and a primitive is drawn. Fixes screen transitions in Slap Happy Rhythm Busters.
This commit is contained in:
parent
0bdac9e4be
commit
664bd06df6
|
@ -619,7 +619,11 @@ void GPU::Execute(TickCount ticks)
|
|||
if (m_command_ticks > 0)
|
||||
{
|
||||
m_command_ticks -= gpu_ticks;
|
||||
|
||||
// we can be syncing if this came from a DMA write. recursively executing commands would be bad.
|
||||
if (!m_syncing)
|
||||
ExecuteCommands();
|
||||
|
||||
if (m_command_ticks < 0)
|
||||
m_command_ticks = 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue