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 @@ | |||
| 5 | #include "common/common_types.h" | 5 | #include "common/common_types.h" |
| 6 | 6 | ||
| 7 | #include "core/core.h" | 7 | #include "core/core.h" |
| 8 | #include "core/hw/hw.h" | 8 | |
| 9 | #include "core/settings.h" | ||
| 9 | #include "core/arm/disassembler/arm_disasm.h" | 10 | #include "core/arm/disassembler/arm_disasm.h" |
| 10 | #include "core/arm/interpreter/arm_interpreter.h" | 11 | #include "core/arm/interpreter/arm_interpreter.h" |
| 11 | 12 | #include "core/arm/dyncom/arm_dyncom.h" | |
| 12 | #include "core/hle/hle.h" | 13 | #include "core/hle/hle.h" |
| 13 | #include "core/hle/kernel/thread.h" | 14 | #include "core/hle/kernel/thread.h" |
| 15 | #include "core/hw/hw.h" | ||
| 14 | 16 | ||
| 15 | namespace Core { | 17 | namespace Core { |
| 16 | 18 | ||
| @@ -48,9 +50,18 @@ int Init() { | |||
| 48 | NOTICE_LOG(MASTER_LOG, "initialized OK"); | 50 | NOTICE_LOG(MASTER_LOG, "initialized OK"); |
| 49 | 51 | ||
| 50 | g_disasm = new ARM_Disasm(); | 52 | g_disasm = new ARM_Disasm(); |
| 51 | g_app_core = new ARM_Interpreter(); | ||
| 52 | g_sys_core = new ARM_Interpreter(); | 53 | g_sys_core = new ARM_Interpreter(); |
| 53 | 54 | ||
| 55 | switch (Settings::values.cpu_core) { | ||
| 56 | case CPU_FastInterpreter: | ||
| 57 | g_app_core = new ARM_DynCom(); | ||
| 58 | break; | ||
| 59 | case CPU_Interpreter: | ||
| 60 | default: | ||
| 61 | g_app_core = new ARM_Interpreter(); | ||
| 62 | break; | ||
| 63 | } | ||
| 64 | |||
| 54 | g_last_ticks = Core::g_app_core->GetTicks(); | 65 | g_last_ticks = Core::g_app_core->GetTicks(); |
| 55 | 66 | ||
| 56 | return 0; | 67 | return 0; |