diff --git a/libctru/include/3ds/svc.h b/libctru/include/3ds/svc.h index 271408f..7a9da11 100644 --- a/libctru/include/3ds/svc.h +++ b/libctru/include/3ds/svc.h @@ -61,6 +61,7 @@ s32 svcCreateThread(Handle* thread, ThreadFunc entrypoint, u32 arg, u32* stack_ void __attribute__((noreturn)) svcExitThread(); void svcSleepThread(s64 ns); s32 svcSetThreadPriority(Handle thread, s32 prio); +s32 svcGetCurrentProcessorNumber(void); s32 svcCreateMutex(Handle* mutex, bool initially_locked); s32 svcReleaseMutex(Handle handle); s32 svcCreateSemaphore(Handle* semaphore, s32 initial_count, s32 max_count); diff --git a/libctru/source/svc.s b/libctru/source/svc.s index 555eb13..807128b 100644 --- a/libctru/source/svc.s +++ b/libctru/source/svc.s @@ -65,6 +65,12 @@ svcSetThreadPriority: svc 0x0C bx lr +.global svcGetCurrentProcessorNumber +.type svcGetCurrentProcessorNumber, %function +svcGetCurrentProcessorNumber: + svc 0x11 + bx lr + .global svcCreateMutex .type svcCreateMutex, %function svcCreateMutex: