summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/common/kernel/threadmgr.h13
-rw-r--r--include/kernel/kernel/threadmgr.h8
-rw-r--r--include/user/kernel/threadmgr.h22
3 files changed, 28 insertions, 15 deletions
diff --git a/include/common/kernel/threadmgr.h b/include/common/kernel/threadmgr.h
index 0077fc5..f8b2924 100644
--- a/include/common/kernel/threadmgr.h
+++ b/include/common/kernel/threadmgr.h
@@ -266,6 +266,19 @@ typedef SceInt32 (*SceKernelThreadEntry)(SceSize argSize, void *pArgBlock);
#define SCE_KERNEL_RW_LOCK_CANCEL_WITH_WRITE_LOCK (1)
+// Types
+
+typedef struct _SceKernelThreadOptParam {
+ /** Size of the ::SceKernelThreadOptParam structure. */
+ SceSize size;
+ SceUInt32 attr;
+ SceKernelMemBlockType memType1;
+ SceKernelMemBlockType memType2;
+ SceInt32 unk0x10;
+ SceInt32 unk0x14;
+ SceInt32 unk0x1C;
+} SceKernelThreadOptParam;
+
#if defined(_LANGUAGE_C_PLUS_PLUS)||defined(__cplusplus)||defined(c_plusplus)
}
#endif
diff --git a/include/kernel/kernel/threadmgr.h b/include/kernel/kernel/threadmgr.h
index 445c806..edd690b 100644
--- a/include/kernel/kernel/threadmgr.h
+++ b/include/kernel/kernel/threadmgr.h
@@ -9,14 +9,6 @@ extern "C" {
/* Threads. */
-/** Additional options used when creating threads. */
-typedef struct SceKernelThreadOptParam {
- /** Size of the ::SceKernelThreadOptParam structure. */
- SceSize size;
- /** Attributes */
- SceUInt32 attr;
-} SceKernelThreadOptParam;
-
/** Structure to hold the status information for a thread
* @see sceKernelGetThreadInfo
*/
diff --git a/include/user/kernel/threadmgr.h b/include/user/kernel/threadmgr.h
index a1fa266..ccc44da 100644
--- a/include/user/kernel/threadmgr.h
+++ b/include/user/kernel/threadmgr.h
@@ -9,13 +9,6 @@ extern "C" {
/* Threads. */
-/** Additional options used when creating threads. */
-typedef struct _SceKernelThreadOptParam {
- /** Size of the ::SceKernelThreadOptParam structure. */
- SceSize size;
- SceUInt32 attr;
-} SceKernelThreadOptParam;
-
/** Structure to hold the status information for a thread
* @see sceKernelGetThreadInfo
*/
@@ -1582,6 +1575,21 @@ void *sceKernelGetThreadTLSAddr(SceUID thid, int key);
*/
void *sceKernelGetTLSAddr(int key);
+typedef enum _SceKernelThreadSpecificInfo {
+ SCE_THREAD_SPECIFIC_INFO_UNK_0,
+ SCE_THREAD_SPECIFIC_INFO_ID,
+ SCE_THREAD_SPECIFIC_INFO_STACK_START_ADDRESS,
+ SCE_THREAD_SPECIFIC_INFO_STACK_END_ADDRESS,
+ SCE_THREAD_SPECIFIC_INFO_VFP_EXCEPTION,
+ SCE_THREAD_SPECIFIC_INFO_LWMUTEX_STATUS,
+ SCE_THREAD_SPECIFIC_INFO_UNK_6,
+ SCE_THREAD_SPECIFIC_INFO_UNK_7,
+ SCE_THREAD_SPECIFIC_INFO_PRIORITY,
+ SCE_THREAD_SPECIFIC_INFO_AFFINITY,
+} SceKernelThreadSpecificInfo;
+
+SceUnion32 sceKernelGetThreadSpecificInfo(SceUID threadId, SceKernelThreadSpecificInfo info);
+
#ifdef __cplusplus
}
#endif