From b628192bf27c871af3ecbf8982b4a13a78fd70c4 Mon Sep 17 00:00:00 2001
From: MerryMage <MerryMage@users.noreply.github.com>
Date: Fri, 12 Jan 2018 16:06:30 +0000
Subject: configuration: Add cpu_core configuration option

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

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

diff --git a/src/core/core.cpp b/src/core/core.cpp
index 0240f946ba..e5f299f268 100644
--- a/src/core/core.cpp
+++ b/src/core/core.cpp
@@ -140,8 +140,16 @@ void System::Reschedule() {
 System::ResultStatus System::Init(EmuWindow* emu_window, u32 system_mode) {
     LOG_DEBUG(HW_Memory, "initialized OK");
 
-    // TODO: Configuration option
-    cpu_core = std::make_unique<ARM_Dynarmic>();
+    switch (Settings::values.cpu_core) {
+    case Settings::CpuCore::Unicorn:
+        cpu_core = std::make_unique<ARM_Unicorn>();
+        break;
+    case Settings::CpuCore::Dynarmic:
+    default:
+        cpu_core = std::make_unique<ARM_Dynarmic>();
+        break;
+    }
+
     telemetry_session = std::make_unique<Core::TelemetrySession>();
 
     CoreTiming::Init();
-- 
cgit v1.2.3-70-g09d2