System: Periodically flush GPU

Needs real timings...
This commit is contained in:
Connor McLaughlin
2019-09-14 23:49:55 +10:00
parent 03bd135060
commit 77b15d156d
3 changed files with 23 additions and 3 deletions

View File

@ -178,6 +178,12 @@ void GPU::DMAWrite(u32 value)
}
}
void GPU::Flush()
{
FlushRender();
UpdateDisplay();
}
u32 GPU::ReadGPUREAD()
{
if (m_GPUREAD_buffer.empty())
@ -312,6 +318,14 @@ void GPU::WriteGP1(u32 value)
const u32 param = value & UINT32_C(0x00FFFFFF);
switch (command)
{
case 0x01: // Clear FIFO
{
m_GP0_command.clear();
Log_DebugPrintf("GP1 clear FIFO");
UpdateGPUSTAT();
}
break;
case 0x04: // DMA Direction
{
m_GPUSTAT.dma_direction = static_cast<DMADirection>(param);
@ -409,8 +423,6 @@ bool GPU::HandleRenderCommand()
ZeroExtend32(words_per_vertex));
DispatchRenderCommand(rc, num_vertices);
//FlushRender();
//UpdateDisplay();
return true;
}