From 91db1083cc248734e934ff9e1c93a27c2b448250 Mon Sep 17 00:00:00 2001 From: red031000 Date: Sat, 13 Jun 2020 20:12:27 +0100 Subject: arm7 OS_terminate_proc --- arm7/lib/src/OS_reset.c | 2 +- arm7/lib/src/OS_terminate_proc.c | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 arm7/lib/src/OS_terminate_proc.c (limited to 'arm7/lib/src') diff --git a/arm7/lib/src/OS_reset.c b/arm7/lib/src/OS_reset.c index c40fcff3..e0f380f8 100644 --- a/arm7/lib/src/OS_reset.c +++ b/arm7/lib/src/OS_reset.c @@ -1,6 +1,7 @@ #include "function_target.h" #include "OS_reset.h" #include "OS_interrupt.h" +#include "OS_terminate_proc.h" static u16 OSi_IsInitReset = 0; vu16 OSi_IsResetOccurred = 0; @@ -10,7 +11,6 @@ extern OSIrqMask OS_SetIrqMask(OSIrqMask mask); extern OSIrqMask OS_ResetRequestIrqMask(OSIrqMask mask); extern void SND_Shutdown(void); extern void PXI_SetFifoRecvCallback(u32 param1, void* callback); -extern void OS_Terminate(void); extern u32 PXI_SendWordByFifo(u32 param1, u32 data, u32 param2); extern void FUN_038073EC(void); //OSi_DoResetSystem, in wram diff --git a/arm7/lib/src/OS_terminate_proc.c b/arm7/lib/src/OS_terminate_proc.c new file mode 100644 index 00000000..23793fd4 --- /dev/null +++ b/arm7/lib/src/OS_terminate_proc.c @@ -0,0 +1,17 @@ +#include "function_target.h" +#include "nitro/types.h" +#include "OS_terminate_proc.h" +#include "OS_system.h" + +extern void CTRDG_VibPulseEdgeUpdate(u32 param); +extern void FUN_037F8530(void); //SVC_Halt + +ARM_FUNC void OS_Terminate(void) +{ + CTRDG_VibPulseEdgeUpdate(0); + while (TRUE) + { + (void)OS_DisableInterrupts(); + FUN_037F8530(); //SVC_Halt + } +} -- cgit v1.2.3