From 5d3a2be04f265c2d6a8687431593029f7329060f Mon Sep 17 00:00:00 2001
From: Fernando Sahmkow <fsahmkow27@gmail.com>
Date: Sun, 15 Mar 2020 21:34:22 -0400
Subject: GUI: Make multicore only work with Async and add GUI for multicore.

---
 src/core/core.cpp | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

(limited to 'src/core/core.cpp')

diff --git a/src/core/core.cpp b/src/core/core.cpp
index 032da7aa58..0f0eb885ad 100644
--- a/src/core/core.cpp
+++ b/src/core/core.cpp
@@ -152,8 +152,12 @@ struct System::Impl {
 
         device_memory = std::make_unique<Core::DeviceMemory>(system);
 
-        kernel.SetMulticore(Settings::values.use_multi_core);
-        cpu_manager.SetMulticore(Settings::values.use_multi_core);
+        is_multicore = Settings::values.use_multi_core;
+        is_async_gpu = is_multicore || Settings::values.use_asynchronous_gpu_emulation;
+
+        kernel.SetMulticore(is_multicore);
+        cpu_manager.SetMulticore(is_multicore);
+        cpu_manager.SetAsyncGpu(is_async_gpu);
 
         core_timing.Initialize([&system]() { system.RegisterHostThread(); });
         kernel.Initialize();
@@ -395,6 +399,9 @@ struct System::Impl {
     std::unique_ptr<Core::PerfStats> perf_stats;
     Core::FrameLimiter frame_limiter;
 
+    bool is_multicore{};
+    bool is_async_gpu{};
+
     std::array<u64, Core::Hardware::NUM_CPU_CORES> dynarmic_ticks{};
 };
 
-- 
cgit v1.2.3-70-g09d2