This commit is contained in:
Henrik Rydgård
2025-05-15 10:32:07 +02:00
parent 4fcf5a4fab
commit 9293afa1c0
2 changed files with 10 additions and 12 deletions
+1 -9
View File
@@ -617,19 +617,11 @@ BootState PSP_InitUpdate(std::string *error_string) {
*error_string = "Unable to initialize rendering engine.";
PSP_Shutdown(false);
g_bootState = BootState::Off;
Core_NotifyLifecycle(CoreLifecycle::START_COMPLETE);
return BootState::Failed;
}
}
// TODO: This should all be checked during GPU_Init.
if (!GPU_IsStarted()) {
*error_string = "Unable to initialize rendering engine.";
PSP_Shutdown(false);
g_bootState = BootState::Off;
Core_NotifyLifecycle(CoreLifecycle::START_COMPLETE);
return BootState::Failed;
}
Core_NotifyLifecycle(CoreLifecycle::START_COMPLETE);
// The thread should have set it at this point.
_dbg_assert_(bootState == BootState::Complete);
+9 -3
View File
@@ -201,12 +201,21 @@ inline bool IsTrianglePrim(GEPrimitiveType prim) {
class GPUCommon : public GPUDebugInterface {
public:
// The constructor might run on the loader thread.
GPUCommon(GraphicsContext *gfxCtx, Draw::DrawContext *draw);
// FinishInitOnMainThread runs on the main thread, of course.
virtual void FinishInitOnMainThread() {}
virtual ~GPUCommon() {}
Draw::DrawContext *GetDrawContext() {
return draw_;
}
virtual void DeviceLost() = 0;
virtual void DeviceRestore(Draw::DrawContext *draw) = 0;
virtual u32 CheckGPUFeatures() const = 0;
virtual void UpdateCmdInfo() = 0;
@@ -257,9 +266,6 @@ public:
virtual void ReapplyGfxState();
virtual void DeviceLost() = 0;
virtual void DeviceRestore(Draw::DrawContext *draw) = 0;
// Returns true if we should split the call across GE execution.
// For example, a debugger is active.
bool ShouldSplitOverGe() const;