diff options
author | bunnei <ericbunnie@gmail.com> | 2014-04-09 01:25:03 +0200 |
---|---|---|
committer | bunnei <ericbunnie@gmail.com> | 2014-04-09 01:25:03 +0200 |
commit | 63e46abdb8764bc97e91bae862c8d461e61b1965 (patch) | |
tree | e73f4aa25d7b4015a265e7bbfb6004dab7561027 /src/core/core.cpp | |
parent | fixed some license headers that I missed (diff) | |
download | yuzu-63e46abdb8764bc97e91bae862c8d461e61b1965.tar yuzu-63e46abdb8764bc97e91bae862c8d461e61b1965.tar.gz yuzu-63e46abdb8764bc97e91bae862c8d461e61b1965.tar.bz2 yuzu-63e46abdb8764bc97e91bae862c8d461e61b1965.tar.lz yuzu-63e46abdb8764bc97e91bae862c8d461e61b1965.tar.xz yuzu-63e46abdb8764bc97e91bae862c8d461e61b1965.tar.zst yuzu-63e46abdb8764bc97e91bae862c8d461e61b1965.zip |
Diffstat (limited to 'src/core/core.cpp')
-rw-r--r-- | src/core/core.cpp | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp new file mode 100644 index 000000000..540b20f27 --- /dev/null +++ b/src/core/core.cpp @@ -0,0 +1,58 @@ +// Copyright 2014 Citra Emulator Project +// Licensed under GPLv2 +// Refer to the license.txt file included. + +#include "log.h" +#include "core.h" +#include "mem_map.h" +#include "hw/hw.h" +#include "arm/disassembler/arm_disasm.h" +#include "arm/interpreter/arm_interpreter.h" + +namespace Core { + +ARM_Disasm* g_disasm = NULL; ///< ARM disassembler +ARM_Interface* g_app_core = NULL; ///< ARM11 application core +ARM_Interface* g_sys_core = NULL; ///< ARM11 system (OS) core + +/// Run the core CPU loop +void RunLoop() { + // TODO(ShizZy): ImplementMe +} + +/// Step the CPU one instruction +void SingleStep() { + g_app_core->Step(); + HW::Update(); +} + +/// Halt the core +void Halt(const char *msg) { + // TODO(ShizZy): ImplementMe +} + +/// Kill the core +void Stop() { + // TODO(ShizZy): ImplementMe +} + +/// Initialize the core +int Init() { + NOTICE_LOG(MASTER_LOG, "Core initialized OK"); + + g_disasm = new ARM_Disasm(); + g_app_core = new ARM_Interpreter(); + g_sys_core = new ARM_Interpreter(); + + return 0; +} + +void Shutdown() { + delete g_disasm; + delete g_app_core; + delete g_sys_core; + + NOTICE_LOG(MASTER_LOG, "Core shutdown OK"); +} + +} // namespace |