diff options
Diffstat (limited to 'src/core/core.cpp')
-rw-r--r-- | src/core/core.cpp | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp index 01d4f0afa..25c78d33c 100644 --- a/src/core/core.cpp +++ b/src/core/core.cpp @@ -5,12 +5,14 @@ #include "common/common_types.h" #include "core/core.h" -#include "core/hw/hw.h" + +#include "core/settings.h" #include "core/arm/disassembler/arm_disasm.h" #include "core/arm/interpreter/arm_interpreter.h" - +#include "core/arm/dyncom/arm_dyncom.h" #include "core/hle/hle.h" #include "core/hle/kernel/thread.h" +#include "core/hw/hw.h" namespace Core { @@ -48,9 +50,18 @@ int Init() { NOTICE_LOG(MASTER_LOG, "initialized OK"); g_disasm = new ARM_Disasm(); - g_app_core = new ARM_Interpreter(); g_sys_core = new ARM_Interpreter(); + switch (Settings::values.cpu_core) { + case CPU_FastInterpreter: + g_app_core = new ARM_DynCom(); + break; + case CPU_Interpreter: + default: + g_app_core = new ARM_Interpreter(); + break; + } + g_last_ticks = Core::g_app_core->GetTicks(); return 0; |