summaryrefslogtreecommitdiff
path: root/lib/ultralib/src/os/gethwinterrupt.c
blob: 46dc36661033b160b87a23771fa49b6e51a88d95 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "PR/os_internal.h"

struct __osHwInt {
    s32 (*handler)(void);
#if BUILD_VERSION >= VERSION_J
    void* stackEnd;
#endif
};

extern struct __osHwInt __osHwIntTable[];

#if BUILD_VERSION >= VERSION_J
void __osGetHWIntrRoutine(OSHWIntr interrupt, s32 (**handler)(void), void** stackEnd) {
#else
void __osGetHWIntrRoutine(OSHWIntr interrupt, s32 (**handler)(void)) {
#endif
    *handler = __osHwIntTable[interrupt].handler;
#if BUILD_VERSION >= VERSION_J
    *stackEnd = __osHwIntTable[interrupt].stackEnd;
#endif
}