summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/core')
-rw-r--r--src/core/core.cpp10
-rw-r--r--src/core/settings.h2
-rw-r--r--src/core/telemetry_session.cpp5
3 files changed, 7 insertions, 10 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp
index d55621de8..11654d4da 100644
--- a/src/core/core.cpp
+++ b/src/core/core.cpp
@@ -148,19 +148,15 @@ System::ResultStatus System::Init(EmuWindow* emu_window, u32 system_mode) {
148 148
149 current_process = Kernel::Process::Create("main"); 149 current_process = Kernel::Process::Create("main");
150 150
151 switch (Settings::values.cpu_core) { 151 if (Settings::values.use_cpu_jit) {
152 case Settings::CpuCore::Unicorn:
153 cpu_core = std::make_shared<ARM_Unicorn>();
154 break;
155 case Settings::CpuCore::Dynarmic:
156 default:
157#ifdef ARCHITECTURE_x86_64 152#ifdef ARCHITECTURE_x86_64
158 cpu_core = std::make_shared<ARM_Dynarmic>(); 153 cpu_core = std::make_shared<ARM_Dynarmic>();
159#else 154#else
160 cpu_core = std::make_shared<ARM_Unicorn>(); 155 cpu_core = std::make_shared<ARM_Unicorn>();
161 LOG_WARNING(Core, "CPU JIT requested, but Dynarmic not available"); 156 LOG_WARNING(Core, "CPU JIT requested, but Dynarmic not available");
162#endif 157#endif
163 break; 158 } else {
159 cpu_core = std::make_shared<ARM_Unicorn>();
164 } 160 }
165 161
166 gpu_core = std::make_unique<Tegra::GPU>(); 162 gpu_core = std::make_unique<Tegra::GPU>();
diff --git a/src/core/settings.h b/src/core/settings.h
index eaef47236..fc2b8dae4 100644
--- a/src/core/settings.h
+++ b/src/core/settings.h
@@ -121,7 +121,7 @@ struct Values {
121 std::string touch_device; 121 std::string touch_device;
122 122
123 // Core 123 // Core
124 CpuCore cpu_core; 124 bool use_cpu_jit;
125 125
126 // Data Storage 126 // Data Storage
127 bool use_virtual_sd; 127 bool use_virtual_sd;
diff --git a/src/core/telemetry_session.cpp b/src/core/telemetry_session.cpp
index bea05a09b..b3ffcd443 100644
--- a/src/core/telemetry_session.cpp
+++ b/src/core/telemetry_session.cpp
@@ -154,12 +154,13 @@ TelemetrySession::TelemetrySession() {
154#endif 154#endif
155 155
156 // Log user configuration information 156 // Log user configuration information
157 AddField(Telemetry::FieldType::UserConfig, "Core_CpuCore", 157 AddField(Telemetry::FieldType::UserConfig, "Core_UseCpuJit", Settings::values.use_cpu_jit);
158 static_cast<int>(Settings::values.cpu_core));
159 AddField(Telemetry::FieldType::UserConfig, "Renderer_ResolutionFactor", 158 AddField(Telemetry::FieldType::UserConfig, "Renderer_ResolutionFactor",
160 Settings::values.resolution_factor); 159 Settings::values.resolution_factor);
161 AddField(Telemetry::FieldType::UserConfig, "Renderer_ToggleFramelimit", 160 AddField(Telemetry::FieldType::UserConfig, "Renderer_ToggleFramelimit",
162 Settings::values.toggle_framelimit); 161 Settings::values.toggle_framelimit);
162 AddField(Telemetry::FieldType::UserConfig, "System_UseDockedMode",
163 Settings::values.use_docked_mode);
163} 164}
164 165
165TelemetrySession::~TelemetrySession() { 166TelemetrySession::~TelemetrySession() {