Line 17:
Line 17:
== Usage ==
== Usage ==
−
=== CreateThread (svc 0x08) ===
+
=== CreateThread ===
+
'''svc''' : 0x08
'''Definition'''
'''Definition'''
Line 45:
Line 46:
The input address used for Entrypoint_Param and StackTop are normally the same, however these can be arbitrary. For the main thread the Entrypoint_Param is value 0.
The input address used for Entrypoint_Param and StackTop are normally the same, however these can be arbitrary. For the main thread the Entrypoint_Param is value 0.
−
=== ExitThread (svc 0x09)===
+
=== ExitThread ===
+
'''svc''' : 0x09
'''Definition'''
'''Definition'''
void ExitThread(void);
void ExitThread(void);
−
=== SleepThread (svc 0x0A)===
+
=== SleepThread ===
+
'''svc''' : 0x0A
'''Definition'''
'''Definition'''
void SleepThread(s64 nanoseconds);
void SleepThread(s64 nanoseconds);
−
=== GetThreadPriority (svc 0x0B) ===
+
=== GetThreadPriority ===
+
'''svc''' : 0x0B
'''Definition'''
'''Definition'''
Line 70:
Line 74:
bx lr
bx lr
−
=== SetThreadPriority (svc 0x0C) ===
+
=== SetThreadPriority ===
+
'''svc''' : 0x0C
'''Definition'''
'''Definition'''
Result SetThreadPriority(Handle thread, s32 priority);
Result SetThreadPriority(Handle thread, s32 priority);
−
=== OpenThread (svc 0x34) ===
+
=== OpenThread ===
+
'''svc''' : 0x34
'''Definition'''
'''Definition'''
Result OpenThread(Handle* thread, Handle process, u32 threadId);
Result OpenThread(Handle* thread, Handle process, u32 threadId);
−
=== GetProcessIdOfThread (svc 0x36) ===
+
=== GetProcessIdOfThread ===
+
'''svc''' : 0x36
'''Definition'''
'''Definition'''
Result GetProcessIdOfThread(u32* processId, Handle thread);
Result GetProcessIdOfThread(u32* processId, Handle thread);
−
=== GetThreadId (svc 0x37) ===
+
=== GetThreadId ===
+
'''svc''' : 0x37
'''Definition'''
'''Definition'''
Result GetThreadId(u32* threadId, Handle thread);
Result GetThreadId(u32* threadId, Handle thread);
−
=== GetThreadInfo (svc 0x2C) ===
+
=== GetThreadInfo ===
+
'''svc''' : 0x2C
'''Definition'''
'''Definition'''
Line 103:
Line 112:
|}
|}
−
=== GetThreadContext (svc 0x3B) ===
+
=== GetThreadContext ===
+
'''svc''' : 0x3B
'''Definition'''
'''Definition'''
Line 113:
Line 123:
== Core affinity ==
== Core affinity ==
−
=== GetThreadAffinityMask (svc 0x0D) ===
+
=== GetThreadAffinityMask ===
+
'''svc''' : 0x0D
'''Definition'''
'''Definition'''
Result GetThreadAffinityMask(u8* affinitymask, Handle thread, s32 processorcount);
Result GetThreadAffinityMask(u8* affinitymask, Handle thread, s32 processorcount);
−
=== SetThreadAffinityMask (svc 0x0E) ===
+
=== SetThreadAffinityMask ===
+
'''svc''' : 0x0E
'''Definition'''
'''Definition'''
Result SetThreadAffinityMask(Handle thread, u8* affinitymask, s32 processorcount);
Result SetThreadAffinityMask(Handle thread, u8* affinitymask, s32 processorcount);
−
=== GetThreadIdealProcessor (svc 0x0F) ===
+
=== GetThreadIdealProcessor ===
+
'''svc''' : 0x0F
'''Definition'''
'''Definition'''
Result GetThreadIdealProcessor(s32* processorid, Handle thread);
Result GetThreadIdealProcessor(s32* processorid, Handle thread);
−
=== SetThreadIdealProcessor (svc 0x10) ===
+
=== SetThreadIdealProcessor ===
+
'''svc''' : 0x10
== Debug ==
== Debug ==