Lift out running the display list to the callers.

This has one tricky case though...
This commit is contained in:
Henrik Rydgård
2024-12-03 22:35:36 +01:00
parent 63c0305301
commit e977906d75
4 changed files with 58 additions and 27 deletions
+10 -2
View File
@@ -334,7 +334,11 @@ void DumpExecute::SyncStall() {
return;
}
gpu->UpdateStall(execListID, execListPos);
bool runList;
gpu->UpdateStall(execListID, execListPos, &runList);
if (runList) {
gpu->RunGe();
}
s64 listTicks = gpu->GetListTicks(execListID);
if (listTicks != -1) {
s64 nowTicks = CoreTiming::GetTicks();
@@ -365,7 +369,11 @@ bool DumpExecute::SubmitCmds(const void *p, u32 sz) {
gpu->EnableInterrupts(false);
auto optParam = PSPPointer<PspGeListArgs>::Create(0);
execListID = gpu->EnqueueList(execListBuf, execListPos, -1, optParam, false);
bool runList;
execListID = gpu->EnqueueList(execListBuf, execListPos, -1, optParam, false, &runList);
if (runList) {
gpu->RunGe();
}
gpu->EnableInterrupts(true);
}