summaryrefslogtreecommitdiff
path: root/arm9/lib/NitroSDK/src/OS_terminate_proc.c
diff options
context:
space:
mode:
Diffstat (limited to 'arm9/lib/NitroSDK/src/OS_terminate_proc.c')
-rw-r--r--arm9/lib/NitroSDK/src/OS_terminate_proc.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/arm9/lib/NitroSDK/src/OS_terminate_proc.c b/arm9/lib/NitroSDK/src/OS_terminate_proc.c
new file mode 100644
index 00000000..fdc4dbff
--- /dev/null
+++ b/arm9/lib/NitroSDK/src/OS_terminate_proc.c
@@ -0,0 +1,19 @@
+#include "OS_terminate_proc.h"
+#include "function_target.h"
+#include "OS_system.h"
+
+ARM_FUNC void OS_Terminate(void)
+{
+ while (TRUE)
+ {
+ (void)OS_DisableInterrupts();
+ OS_Halt();
+ }
+}
+
+ARM_FUNC asm void OS_Halt(void)
+{
+ mov r0, #0x0
+ mcr p15, 0x0, r0, c7, c0, 0x4 //Wait For Interrupt (Halt)
+ bx lr
+}