summaryrefslogtreecommitdiff
path: root/arm7/lib/include/OS_interrupt.h
blob: fb8694836e31b1f5aa68ac249edabed779f28f4c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#ifndef POKEDIAMOND_ARM7_OS_INTERRUPT_H
#define POKEDIAMOND_ARM7_OS_INTERRUPT_H

#include "nitro/OS_interrupt_shared.h"
#include "consts.h"

extern OSIrqFunction OS_IRQTable[];
extern OSIrqCallbackInfo OSi_IrqCallbackInfo[9];

static inline void OSi_SetVBlankCount(u32 count)
{
    *(u32 *)HW_VBLANK_COUNT_BUF = count;
}

void OS_InitIrqTable(void);
void OS_SetIrqFunction(OSIrqMask intrBit, OSIrqFunction function);
void OSi_EnterTimerCallback(u32 timerNo, void (*callback) (void *), void *arg);
OSIrqMask OS_SetIrqMask(OSIrqMask mask);
OSIrqMask OS_EnableIrqMask(OSIrqMask mask);
OSIrqMask OS_DisableIrqMask(OSIrqMask mask);
OSIrqMask OS_ResetRequestIrqMask(OSIrqMask mask);

#endif //POKEDIAMOND_ARM7_OS_INTERRUPT_H