From ee287295971d0b25fe434cbd1e618f053d29e7c4 Mon Sep 17 00:00:00 2001 From: red031000 Date: Sat, 1 Aug 2020 19:30:35 +0100 Subject: arm9 OS_valarm --- arm9/lib/src/OS_init.c | 1 - arm9/lib/src/OS_valarm.c | 30 ++++++++++++++++++++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 arm9/lib/src/OS_valarm.c (limited to 'arm9/lib/src') diff --git a/arm9/lib/src/OS_init.c b/arm9/lib/src/OS_init.c index c93b1584..152a5534 100644 --- a/arm9/lib/src/OS_init.c +++ b/arm9/lib/src/OS_init.c @@ -3,7 +3,6 @@ extern void PXI_Init(void); extern void MI_Init(void); -extern void OS_InitVAlarm(void); extern void OSi_InitVramExclusive(void); extern void CTRDG_Init(void); extern void CARD_Init(void); diff --git a/arm9/lib/src/OS_valarm.c b/arm9/lib/src/OS_valarm.c new file mode 100644 index 00000000..37329147 --- /dev/null +++ b/arm9/lib/src/OS_valarm.c @@ -0,0 +1,30 @@ +#include "OS_valarm.h" +#include "function_target.h" +#include "OS_interrupt.h" + +static struct OSiVAlarmQueue +{ + OSVAlarm *head; + OSVAlarm *tail; +} OSi_VAlarmQueue; + +static u16 OSi_UseVAlarm = FALSE; + +static s32 OSi_VFrameCount; +static s32 OSi_PreviousVCount; + +ARM_FUNC void OS_InitVAlarm(void) +{ + if (!OSi_UseVAlarm) + { + OSi_UseVAlarm = TRUE; + + OSi_VAlarmQueue.head = NULL; + OSi_VAlarmQueue.tail = NULL; + + (void)OS_DisableIrqMask(OS_IE_V_COUNT); + + OSi_VFrameCount = 0; + OSi_PreviousVCount = 0; + } +} -- cgit v1.2.3