Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
OSException.h
Go to the documentation of this file.
1
#ifndef _REVOLUTION_OSEXCEPTION_H_
2
#define _REVOLUTION_OSEXCEPTION_H_
3
4
#include <
revolution/os/OSContext.h
>
5
#include <
revolution/types.h
>
6
7
#ifdef __cplusplus
8
extern
"C"
{
9
#endif
10
11
#define __OS_EXCEPTION_SYSTEM_RESET 0
12
#define __OS_EXCEPTION_MACHINE_CHECK 1
13
#define __OS_EXCEPTION_DSI 2
14
#define __OS_EXCEPTION_ISI 3
15
#define __OS_EXCEPTION_EXTERNAL_INTERRUPT 4
16
#define __OS_EXCEPTION_ALIGNMENT 5
17
#define __OS_EXCEPTION_PROGRAM 6
18
#define __OS_EXCEPTION_FLOATING_POINT 7
19
#define __OS_EXCEPTION_DECREMENTER 8
20
#define __OS_EXCEPTION_SYSTEM_CALL 9
21
#define __OS_EXCEPTION_TRACE 10
22
#define __OS_EXCEPTION_PERFORMACE_MONITOR 11
23
#define __OS_EXCEPTION_BREAKPOINT 12
24
#define __OS_EXCEPTION_SYSTEM_INTERRUPT 13
25
#define __OS_EXCEPTION_THERMAL_INTERRUPT 14
26
#define __OS_EXCEPTION_MEMORY_PROTECTION 15
27
#define __OS_EXCEPTION_FLOATING_POINT_EXCEPTION 16
28
#define __OS_EXCEPTION_MAX \
29
(__OS_EXCEPTION_THERMAL_INTERRUPT+1)
30
31
typedef
u8
__OSException
;
32
typedef
void (*
__OSExceptionHandler
)(
__OSException
exception
,
OSContext
*
context
);
33
34
__OSExceptionHandler
__OSSetExceptionHandler
(
__OSException
exception
,
__OSExceptionHandler
handler);
35
__OSExceptionHandler
__OSGetExceptionHandler
(
__OSException
exception
);
36
37
#define OS_EXCEPTION_SAVE_GPRS(context) \
38
stw r0, OS_CONTEXT_R0(context); \
39
stw r1, OS_CONTEXT_R1(context); \
40
stw r2, OS_CONTEXT_R2(context); \
41
stmw r6, OS_CONTEXT_R6(context); \
42
mfspr r0, GQR1; \
43
stw r0, OS_CONTEXT_GQR1(context); \
44
mfspr r0, GQR2; \
45
stw r0, OS_CONTEXT_GQR2(context); \
46
mfspr r0, GQR3; \
47
stw r0, OS_CONTEXT_GQR3(context); \
48
mfspr r0, GQR4; \
49
stw r0, OS_CONTEXT_GQR4(context); \
50
mfspr r0, GQR5; \
51
stw r0, OS_CONTEXT_GQR5(context); \
52
mfspr r0, GQR6; \
53
stw r0, OS_CONTEXT_GQR6(context); \
54
mfspr r0, GQR7; \
55
stw r0, OS_CONTEXT_GQR7(context);
56
57
#ifdef __cplusplus
58
}
59
#endif
60
61
#endif
// _REVOLUTION_OSEXCEPTION_H_
context
static OSContext context
Definition
JUTException.cpp:157
__OSExceptionHandler
void(* __OSExceptionHandler)(__OSException exception, OSContext *context)
Definition
OSException.h:35
__OSException
u8 __OSException
Definition
OSException.h:34
u8
unsigned char u8
Definition
types.h:8
OSContext.h
__OSGetExceptionHandler
__OSExceptionHandler __OSGetExceptionHandler(__OSException exception)
Definition
OS.c:501
__OSSetExceptionHandler
__OSExceptionHandler __OSSetExceptionHandler(__OSException exception, __OSExceptionHandler handler)
Definition
OS.c:491
types.h
OSContext
Definition
OSContext.h:140
exception
Definition
fdlibm.h:73
include
revolution
os
OSException.h
Generated by
1.12.0