aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/hle/kernel/thread.h
diff options
context:
space:
mode:
authorGravatar bunnei <ericbunnie@gmail.com>2014-05-09 22:11:18 -0400
committerGravatar bunnei <ericbunnie@gmail.com>2014-05-09 22:11:18 -0400
commit6b264518a50ce21cb1be55ff3eac4e1c85582cfe (patch)
tree036ae3be74768165fbb4ee24db4cdba4ffadec2e /src/core/hle/kernel/thread.h
parentdaf7a7880a9e3b84c340aaf690310fb68e287372 (diff)
added initial kernel/thread modules
Diffstat (limited to 'src/core/hle/kernel/thread.h')
-rw-r--r--src/core/hle/kernel/thread.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/core/hle/kernel/thread.h b/src/core/hle/kernel/thread.h
new file mode 100644
index 00000000..c3cdca31
--- /dev/null
+++ b/src/core/hle/kernel/thread.h
@@ -0,0 +1,36 @@
+// Copyright 2014 Citra Emulator Project / PPSSPP Project
+// Licensed under GPLv2
+// Refer to the license.txt file included.
+
+#pragma once
+
+#include "common/common_types.h"
+
+enum ThreadStatus {
+ THREADSTATUS_RUNNING = 1,
+ THREADSTATUS_READY = 2,
+ THREADSTATUS_WAIT = 4,
+ THREADSTATUS_SUSPEND = 8,
+ THREADSTATUS_DORMANT = 16,
+ THREADSTATUS_DEAD = 32,
+
+ THREADSTATUS_WAITSUSPEND = THREADSTATUS_WAIT | THREADSTATUS_SUSPEND
+};
+
+struct ThreadContext {
+ void reset();
+
+ u32 reg[16];
+ u32 cpsr;
+ u32 pc;
+};
+
+void __KernelThreadingInit();
+void __KernelThreadingShutdown();
+
+//const char *__KernelGetThreadName(SceUID threadID);
+//
+//void __KernelSaveContext(ThreadContext *ctx);
+//void __KernelLoadContext(ThreadContext *ctx);
+
+//void __KernelSwitchContext(Thread *target, const char *reason); \ No newline at end of file