diff --git a/src/xenia/gpu/graphics_system.cc b/src/xenia/gpu/graphics_system.cc index 913697410..50956d463 100644 --- a/src/xenia/gpu/graphics_system.cc +++ b/src/xenia/gpu/graphics_system.cc @@ -138,7 +138,7 @@ X_STATUS GraphicsSystem::Setup(cpu::Processor* processor, while (frame_limiter_worker_running_) { // If there is no title running then there is no need for guest // frame limiter thread. - if (!kernel_state_->title_id()) { + if (!kernel_state_->is_title_open()) { xe::threading::Sleep(std::chrono::milliseconds(100)); continue; } diff --git a/src/xenia/kernel/kernel_state.cc b/src/xenia/kernel/kernel_state.cc index 800653051..bf2d83efa 100644 --- a/src/xenia/kernel/kernel_state.cc +++ b/src/xenia/kernel/kernel_state.cc @@ -120,6 +120,8 @@ uint32_t KernelState::title_id() const { return 0; } +bool KernelState::is_title_open() const { return emulator_->is_title_open(); } + const std::unique_ptr KernelState::title_xdbf() const { return module_xdbf(executable_module_); } diff --git a/src/xenia/kernel/kernel_state.h b/src/xenia/kernel/kernel_state.h index 75e27f307..32da7ddbe 100644 --- a/src/xenia/kernel/kernel_state.h +++ b/src/xenia/kernel/kernel_state.h @@ -175,6 +175,7 @@ class KernelState { vfs::VirtualFileSystem* file_system() const { return file_system_; } uint32_t title_id() const; + bool is_title_open() const; const std::unique_ptr title_xdbf() const; const std::unique_ptr module_xdbf( object_ref exec_module) const;