diff options
Diffstat (limited to 'src/core/system.h')
| -rw-r--r-- | src/core/system.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/core/system.h b/src/core/system.h new file mode 100644 index 000000000..8e94e5252 --- /dev/null +++ b/src/core/system.h | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | // Copyright 2014 Citra Emulator Project | ||
| 2 | // Licensed under GPLv2 | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #pragma once | ||
| 6 | |||
| 7 | #include "emu_window.h" | ||
| 8 | #include "file_sys/meta_file_system.h" | ||
| 9 | |||
| 10 | //////////////////////////////////////////////////////////////////////////////////////////////////// | ||
| 11 | |||
| 12 | namespace System { | ||
| 13 | |||
| 14 | // State of the full emulator | ||
| 15 | typedef enum { | ||
| 16 | STATE_NULL = 0, ///< System is in null state, nothing initialized | ||
| 17 | STATE_IDLE, ///< System is in an initialized state, but not running | ||
| 18 | STATE_RUNNING, ///< System is running | ||
| 19 | STATE_LOADING, ///< System is loading a ROM | ||
| 20 | STATE_HALTED, ///< System is halted (error) | ||
| 21 | STATE_STALLED, ///< System is stalled (unused) | ||
| 22 | STATE_DEBUG, ///< System is in a special debug mode (unused) | ||
| 23 | STATE_DIE ///< System is shutting down | ||
| 24 | } State; | ||
| 25 | |||
| 26 | extern volatile State g_state; | ||
| 27 | extern MetaFileSystem g_ctr_file_system; | ||
| 28 | |||
| 29 | void UpdateState(State state); | ||
| 30 | void Init(EmuWindow* emu_window); | ||
| 31 | void RunLoopFor(int cycles); | ||
| 32 | void RunLoopUntil(u64 global_cycles); | ||
| 33 | void Shutdown(); | ||
| 34 | |||
| 35 | }; | ||