diff options
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/core.cpp | 19 | ||||
-rw-r--r-- | src/core/settings.h | 1 |
2 files changed, 13 insertions, 7 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp index cabab744ad..a3834adae6 100644 --- a/src/core/core.cpp +++ b/src/core/core.cpp @@ -6,16 +6,16 @@ #include "common/logging/log.h" -#include "core/core.h" -#include "core/core_timing.h" - #include "core/arm/arm_interface.h" +#include "core/arm/dynarmic/arm_dynarmic.h" #include "core/arm/dyncom/arm_dyncom.h" +#include "core/core.h" +#include "core/core_timing.h" +#include "core/gdbstub/gdbstub.h" #include "core/hle/hle.h" #include "core/hle/kernel/thread.h" #include "core/hw/hw.h" - -#include "core/gdbstub/gdbstub.h" +#include "core/settings.h" namespace Core { @@ -73,8 +73,13 @@ void Stop() { /// Initialize the core void Init() { - g_sys_core = std::make_unique<ARM_DynCom>(USER32MODE); - g_app_core = std::make_unique<ARM_DynCom>(USER32MODE); + if (Settings::values.use_cpu_jit) { + g_sys_core = std::make_unique<ARM_Dynarmic>(USER32MODE); + g_app_core = std::make_unique<ARM_Dynarmic>(USER32MODE); + } else { + g_sys_core = std::make_unique<ARM_DynCom>(USER32MODE); + g_app_core = std::make_unique<ARM_DynCom>(USER32MODE); + } LOG_DEBUG(Core, "Initialized OK"); } diff --git a/src/core/settings.h b/src/core/settings.h index fb3fbe391d..fcd14c6f3e 100644 --- a/src/core/settings.h +++ b/src/core/settings.h @@ -60,6 +60,7 @@ struct Values { float pad_circle_modifier_scale; // Core + bool use_cpu_jit; int frame_skip; // Data Storage |