1#ifndef _DOLPHIN_OSCONTEXT_H_
2#define _DOLPHIN_OSCONTEXT_H_
4#ifdef __REVOLUTION_SDK__
13#define __OS_CONTEXT_FRAME 768
15#define OS_CONTEXT_R0 0
16#define OS_CONTEXT_R1 4
17#define OS_CONTEXT_R2 8
18#define OS_CONTEXT_R3 12
19#define OS_CONTEXT_R4 16
20#define OS_CONTEXT_R5 20
21#define OS_CONTEXT_R6 24
22#define OS_CONTEXT_R7 28
23#define OS_CONTEXT_R8 32
24#define OS_CONTEXT_R9 36
25#define OS_CONTEXT_R10 40
26#define OS_CONTEXT_R11 44
27#define OS_CONTEXT_R12 48
28#define OS_CONTEXT_R13 52
29#define OS_CONTEXT_R14 56
30#define OS_CONTEXT_R15 60
31#define OS_CONTEXT_R16 64
32#define OS_CONTEXT_R17 68
33#define OS_CONTEXT_R18 72
34#define OS_CONTEXT_R19 76
35#define OS_CONTEXT_R20 80
36#define OS_CONTEXT_R21 84
37#define OS_CONTEXT_R22 88
38#define OS_CONTEXT_R23 92
39#define OS_CONTEXT_R24 96
40#define OS_CONTEXT_R25 100
41#define OS_CONTEXT_R26 104
42#define OS_CONTEXT_R27 108
43#define OS_CONTEXT_R28 112
44#define OS_CONTEXT_R29 116
45#define OS_CONTEXT_R30 120
46#define OS_CONTEXT_R31 124
48#define OS_CONTEXT_CR 128
49#define OS_CONTEXT_LR 132
50#define OS_CONTEXT_CTR 136
51#define OS_CONTEXT_XER 140
53#define OS_CONTEXT_FPR0 144
54#define OS_CONTEXT_FPR1 152
55#define OS_CONTEXT_FPR2 160
56#define OS_CONTEXT_FPR3 168
57#define OS_CONTEXT_FPR4 176
58#define OS_CONTEXT_FPR5 184
59#define OS_CONTEXT_FPR6 192
60#define OS_CONTEXT_FPR7 200
61#define OS_CONTEXT_FPR8 208
62#define OS_CONTEXT_FPR9 216
63#define OS_CONTEXT_FPR10 224
64#define OS_CONTEXT_FPR11 232
65#define OS_CONTEXT_FPR12 240
66#define OS_CONTEXT_FPR13 248
67#define OS_CONTEXT_FPR14 256
68#define OS_CONTEXT_FPR15 264
69#define OS_CONTEXT_FPR16 272
70#define OS_CONTEXT_FPR17 280
71#define OS_CONTEXT_FPR18 288
72#define OS_CONTEXT_FPR19 296
73#define OS_CONTEXT_FPR20 304
74#define OS_CONTEXT_FPR21 312
75#define OS_CONTEXT_FPR22 320
76#define OS_CONTEXT_FPR23 328
77#define OS_CONTEXT_FPR24 336
78#define OS_CONTEXT_FPR25 344
79#define OS_CONTEXT_FPR26 352
80#define OS_CONTEXT_FPR27 360
81#define OS_CONTEXT_FPR28 368
82#define OS_CONTEXT_FPR29 376
83#define OS_CONTEXT_FPR30 384
84#define OS_CONTEXT_FPR31 392
86#define OS_CONTEXT_FPSCR 400
88#define OS_CONTEXT_SRR0 408
89#define OS_CONTEXT_SRR1 412
91#define OS_CONTEXT_MODE 416
92#define OS_CONTEXT_STATE 418
94#define OS_CONTEXT_GQR0 420
95#define OS_CONTEXT_GQR1 424
96#define OS_CONTEXT_GQR2 428
97#define OS_CONTEXT_GQR3 432
98#define OS_CONTEXT_GQR4 436
99#define OS_CONTEXT_GQR5 440
100#define OS_CONTEXT_GQR6 444
101#define OS_CONTEXT_GQR7 448
102#define __OSCONTEXT_PADDING 452
104#define OS_CONTEXT_PSF0 456
105#define OS_CONTEXT_PSF1 464
106#define OS_CONTEXT_PSF2 472
107#define OS_CONTEXT_PSF3 480
108#define OS_CONTEXT_PSF4 488
109#define OS_CONTEXT_PSF5 496
110#define OS_CONTEXT_PSF6 504
111#define OS_CONTEXT_PSF7 512
112#define OS_CONTEXT_PSF8 520
113#define OS_CONTEXT_PSF9 528
114#define OS_CONTEXT_PSF10 536
115#define OS_CONTEXT_PSF11 544
116#define OS_CONTEXT_PSF12 552
117#define OS_CONTEXT_PSF13 560
118#define OS_CONTEXT_PSF14 568
119#define OS_CONTEXT_PSF15 576
120#define OS_CONTEXT_PSF16 584
121#define OS_CONTEXT_PSF17 592
122#define OS_CONTEXT_PSF18 600
123#define OS_CONTEXT_PSF19 608
124#define OS_CONTEXT_PSF20 616
125#define OS_CONTEXT_PSF21 624
126#define OS_CONTEXT_PSF22 632
127#define OS_CONTEXT_PSF23 640
128#define OS_CONTEXT_PSF24 648
129#define OS_CONTEXT_PSF25 656
130#define OS_CONTEXT_PSF26 664
131#define OS_CONTEXT_PSF27 672
132#define OS_CONTEXT_PSF28 680
133#define OS_CONTEXT_PSF29 688
134#define OS_CONTEXT_PSF30 696
135#define OS_CONTEXT_PSF31 704
136#define OS_CONTEXT_STATE_EXC 0x02u
138#define OS_CONTEXT_STATE_FPSAVED 0x01u
static OSContext context
Definition JUTException.cpp:157
void OSLoadFPUContext(OSContext *fpucontext)
void OSSetCurrentContext(OSContext *context)
void OSFillFPUContext(OSContext *context)
u32 OSGetStackPointer(void)
Definition OSContext.c:344
void OSLoadContext(OSContext *context)
void OSClearContext(OSContext *context)
struct OSContext OSContext
Definition JUTException.h:12
void OSSaveFPUContext(OSContext *fpucontext)
int OSSwitchFiber(u32 pc, u32 newsp)
void OSDumpContext(OSContext *context)
Definition OSContext.c:442
void OSInitContext(OSContext *context, u32 pc, u32 newsp)
OSContext * OSGetCurrentContext(void)
Definition OSContext.c:232
u32 OSSaveContext(OSContext *context)
u32 OSSwitchStack(u32 newsp)
unsigned long u32
Definition types.h:12
double f64
Definition types.h:26
unsigned short int u16
Definition types.h:10
Definition OSContext.h:140
u32 lr
Definition OSContext.h:143
f64 fpr[32]
Definition OSContext.h:146
u32 cr
Definition OSContext.h:142
u32 ctr
Definition OSContext.h:144
u32 srr1
Definition OSContext.h:150
u32 srr0
Definition OSContext.h:149
u32 gpr[32]
Definition OSContext.h:141
u32 psf_pad
Definition OSContext.h:154
u16 mode
Definition OSContext.h:151
u16 state
Definition OSContext.h:152
u32 xer
Definition OSContext.h:145
u32 fpscr
Definition OSContext.h:148
f64 psf[32]
Definition OSContext.h:155
u32 gqr[8]
Definition OSContext.h:153
u32 fpscr_pad
Definition OSContext.h:147