1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global OSDisableInterrupts
OSDisableInterrupts:
/* 8026E75C 0026A3BC 7C 60 00 A6 */ mfmsr r3
/* 8026E760 0026A3C0 54 64 04 5E */ rlwinm r4, r3, 0, 0x11, 0xf
/* 8026E764 0026A3C4 7C 80 01 24 */ mtmsr r4
.global __RAS_OSDisableInterrupts_end
__RAS_OSDisableInterrupts_end:
/* 8026E768 0026A3C8 54 63 8F FE */ rlwinm r3, r3, 0x11, 0x1f, 0x1f
/* 8026E76C 0026A3CC 4E 80 00 20 */ blr
.global OSEnableInterrupts
OSEnableInterrupts:
/* 8026E770 0026A3D0 7C 60 00 A6 */ mfmsr r3
/* 8026E774 0026A3D4 60 64 80 00 */ ori r4, r3, 0x8000
/* 8026E778 0026A3D8 7C 80 01 24 */ mtmsr r4
/* 8026E77C 0026A3DC 54 63 8F FE */ rlwinm r3, r3, 0x11, 0x1f, 0x1f
/* 8026E780 0026A3E0 4E 80 00 20 */ blr
.global OSRestoreInterrupts
OSRestoreInterrupts:
/* 8026E784 0026A3E4 2C 03 00 00 */ cmpwi r3, 0
/* 8026E788 0026A3E8 7C 80 00 A6 */ mfmsr r4
/* 8026E78C 0026A3EC 41 82 00 0C */ beq lbl_8026E798
/* 8026E790 0026A3F0 60 85 80 00 */ ori r5, r4, 0x8000
/* 8026E794 0026A3F4 48 00 00 08 */ b lbl_8026E79C
lbl_8026E798:
/* 8026E798 0026A3F8 54 85 04 5E */ rlwinm r5, r4, 0, 0x11, 0xf
lbl_8026E79C:
/* 8026E79C 0026A3FC 7C A0 01 24 */ mtmsr r5
/* 8026E7A0 0026A400 54 83 8F FE */ rlwinm r3, r4, 0x11, 0x1f, 0x1f
/* 8026E7A4 0026A404 4E 80 00 20 */ blr
.global __OSSetInterruptHandler
__OSSetInterruptHandler:
/* 8026E7A8 0026A408 80 AD A8 08 */ lwz r5, lbl_8063FAC8-_SDA_BASE_(r13)
/* 8026E7AC 0026A40C 54 60 10 3A */ slwi r0, r3, 2
/* 8026E7B0 0026A410 7C 65 00 2E */ lwzx r3, r5, r0
/* 8026E7B4 0026A414 7C 85 01 2E */ stwx r4, r5, r0
/* 8026E7B8 0026A418 4E 80 00 20 */ blr
.global __OSGetInterruptHandler
__OSGetInterruptHandler:
/* 8026E7BC 0026A41C 80 8D A8 08 */ lwz r4, lbl_8063FAC8-_SDA_BASE_(r13)
/* 8026E7C0 0026A420 54 60 10 3A */ slwi r0, r3, 2
/* 8026E7C4 0026A424 7C 64 00 2E */ lwzx r3, r4, r0
/* 8026E7C8 0026A428 4E 80 00 20 */ blr
.global __OSInterruptInit
__OSInterruptInit:
/* 8026E7CC 0026A42C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8026E7D0 0026A430 7C 08 02 A6 */ mflr r0
/* 8026E7D4 0026A434 38 80 00 00 */ li r4, 0
/* 8026E7D8 0026A438 38 A0 00 80 */ li r5, 0x80
/* 8026E7DC 0026A43C 90 01 00 24 */ stw r0, 0x24(r1)
/* 8026E7E0 0026A440 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8026E7E4 0026A444 3F E0 80 00 */ lis r31, 0x80003040@ha
/* 8026E7E8 0026A448 38 7F 30 40 */ addi r3, r31, 0x80003040@l
/* 8026E7EC 0026A44C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8026E7F0 0026A450 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8026E7F4 0026A454 90 6D A8 08 */ stw r3, lbl_8063FAC8-_SDA_BASE_(r13)
/* 8026E7F8 0026A458 4B D9 59 0D */ bl memset
/* 8026E7FC 0026A45C 38 C0 00 00 */ li r6, 0
/* 8026E800 0026A460 38 A0 00 F0 */ li r5, 0xf0
/* 8026E804 0026A464 90 DF 00 C4 */ stw r6, 0xc4(r31)
/* 8026E808 0026A468 3C 80 CC 00 */ lis r4, 0xCC003004@ha
/* 8026E80C 0026A46C 3C 00 40 00 */ lis r0, 0x4000
/* 8026E810 0026A470 3C 60 CD 00 */ lis r3, 0xCD000034@ha
/* 8026E814 0026A474 90 DF 00 C8 */ stw r6, 0xc8(r31)
/* 8026E818 0026A478 3B C0 FF F0 */ li r30, -16
/* 8026E81C 0026A47C 90 A4 30 04 */ stw r5, 0xCC003004@l(r4)
/* 8026E820 0026A480 90 03 00 34 */ stw r0, 0xCD000034@l(r3)
/* 8026E824 0026A484 4B FF FF 39 */ bl OSDisableInterrupts
/* 8026E828 0026A488 80 1F 00 C4 */ lwz r0, 0xc4(r31)
/* 8026E82C 0026A48C 7C 7D 1B 78 */ mr r29, r3
/* 8026E830 0026A490 80 9F 00 C8 */ lwz r4, 0xc8(r31)
/* 8026E834 0026A494 7F DE 03 78 */ or r30, r30, r0
/* 8026E838 0026A498 7C 00 20 F8 */ nor r0, r0, r4
/* 8026E83C 0026A49C 93 DF 00 C4 */ stw r30, 0xc4(r31)
/* 8026E840 0026A4A0 54 03 00 36 */ rlwinm r3, r0, 0, 0, 0x1b
/* 8026E844 0026A4A4 7F DE 23 78 */ or r30, r30, r4
/* 8026E848 0026A4A8 48 00 00 0C */ b lbl_8026E854
lbl_8026E84C:
/* 8026E84C 0026A4AC 7F C4 F3 78 */ mr r4, r30
/* 8026E850 0026A4B0 48 00 00 41 */ bl SetInterruptMask
lbl_8026E854:
/* 8026E854 0026A4B4 2C 03 00 00 */ cmpwi r3, 0
/* 8026E858 0026A4B8 40 82 FF F4 */ bne lbl_8026E84C
/* 8026E85C 0026A4BC 7F A3 EB 78 */ mr r3, r29
/* 8026E860 0026A4C0 4B FF FF 25 */ bl OSRestoreInterrupts
/* 8026E864 0026A4C4 3C 80 80 27 */ lis r4, ExternalInterruptHandler@ha
/* 8026E868 0026A4C8 38 60 00 04 */ li r3, 4
/* 8026E86C 0026A4CC 38 84 EE 90 */ addi r4, r4, ExternalInterruptHandler@l
/* 8026E870 0026A4D0 4B FF AC 65 */ bl __OSSetExceptionHandler
/* 8026E874 0026A4D4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8026E878 0026A4D8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8026E87C 0026A4DC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8026E880 0026A4E0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8026E884 0026A4E4 7C 08 03 A6 */ mtlr r0
/* 8026E888 0026A4E8 38 21 00 20 */ addi r1, r1, 0x20
/* 8026E88C 0026A4EC 4E 80 00 20 */ blr
.global SetInterruptMask
SetInterruptMask:
/* 8026E890 0026A4F0 7C 60 00 34 */ cntlzw r0, r3
/* 8026E894 0026A4F4 2C 00 00 0C */ cmpwi r0, 0xc
/* 8026E898 0026A4F8 40 80 00 24 */ bge lbl_8026E8BC
/* 8026E89C 0026A4FC 2C 00 00 08 */ cmpwi r0, 8
/* 8026E8A0 0026A500 41 82 00 CC */ beq lbl_8026E96C
/* 8026E8A4 0026A504 40 80 00 F4 */ bge lbl_8026E998
/* 8026E8A8 0026A508 2C 00 00 05 */ cmpwi r0, 5
/* 8026E8AC 0026A50C 40 80 00 80 */ bge lbl_8026E92C
/* 8026E8B0 0026A510 2C 00 00 00 */ cmpwi r0, 0
/* 8026E8B4 0026A514 40 80 00 28 */ bge lbl_8026E8DC
/* 8026E8B8 0026A518 4E 80 00 20 */ blr
lbl_8026E8BC:
/* 8026E8BC 0026A51C 2C 00 00 11 */ cmpwi r0, 0x11
/* 8026E8C0 0026A520 40 80 00 10 */ bge lbl_8026E8D0
/* 8026E8C4 0026A524 2C 00 00 0F */ cmpwi r0, 0xf
/* 8026E8C8 0026A528 40 80 01 58 */ bge lbl_8026EA20
/* 8026E8CC 0026A52C 48 00 01 10 */ b lbl_8026E9DC
lbl_8026E8D0:
/* 8026E8D0 0026A530 2C 00 00 1C */ cmpwi r0, 0x1c
/* 8026E8D4 0026A534 4C 80 00 20 */ bgelr
/* 8026E8D8 0026A538 48 00 01 7C */ b lbl_8026EA54
lbl_8026E8DC:
/* 8026E8DC 0026A53C 54 80 00 01 */ rlwinm. r0, r4, 0, 0, 0
/* 8026E8E0 0026A540 38 A0 00 00 */ li r5, 0
/* 8026E8E4 0026A544 40 82 00 08 */ bne lbl_8026E8EC
/* 8026E8E8 0026A548 60 A5 00 01 */ ori r5, r5, 1
lbl_8026E8EC:
/* 8026E8EC 0026A54C 54 80 00 43 */ rlwinm. r0, r4, 0, 1, 1
/* 8026E8F0 0026A550 40 82 00 08 */ bne lbl_8026E8F8
/* 8026E8F4 0026A554 60 A5 00 02 */ ori r5, r5, 2
lbl_8026E8F8:
/* 8026E8F8 0026A558 54 80 00 85 */ rlwinm. r0, r4, 0, 2, 2
/* 8026E8FC 0026A55C 40 82 00 08 */ bne lbl_8026E904
/* 8026E900 0026A560 60 A5 00 04 */ ori r5, r5, 4
lbl_8026E904:
/* 8026E904 0026A564 54 80 00 C7 */ rlwinm. r0, r4, 0, 3, 3
/* 8026E908 0026A568 40 82 00 08 */ bne lbl_8026E910
/* 8026E90C 0026A56C 60 A5 00 08 */ ori r5, r5, 8
lbl_8026E910:
/* 8026E910 0026A570 54 80 01 09 */ rlwinm. r0, r4, 0, 4, 4
/* 8026E914 0026A574 40 82 00 08 */ bne lbl_8026E91C
/* 8026E918 0026A578 60 A5 00 10 */ ori r5, r5, 0x10
lbl_8026E91C:
/* 8026E91C 0026A57C 3C 80 CC 00 */ lis r4, 0xCC00401C@ha
/* 8026E920 0026A580 54 63 01 7E */ clrlwi r3, r3, 5
/* 8026E924 0026A584 B0 A4 40 1C */ sth r5, 0xCC00401C@l(r4)
/* 8026E928 0026A588 4E 80 00 20 */ blr
lbl_8026E92C:
/* 8026E92C 0026A58C 3C A0 CC 00 */ lis r5, 0xCC00500A@ha
/* 8026E930 0026A590 54 80 01 4B */ rlwinm. r0, r4, 0, 5, 5
/* 8026E934 0026A594 A0 A5 50 0A */ lhz r5, 0xCC00500A@l(r5)
/* 8026E938 0026A598 54 A5 07 6C */ rlwinm r5, r5, 0, 0x1d, 0x16
/* 8026E93C 0026A59C 40 82 00 08 */ bne lbl_8026E944
/* 8026E940 0026A5A0 60 A5 00 10 */ ori r5, r5, 0x10
lbl_8026E944:
/* 8026E944 0026A5A4 54 80 01 8D */ rlwinm. r0, r4, 0, 6, 6
/* 8026E948 0026A5A8 40 82 00 08 */ bne lbl_8026E950
/* 8026E94C 0026A5AC 60 A5 00 40 */ ori r5, r5, 0x40
lbl_8026E950:
/* 8026E950 0026A5B0 54 80 01 CF */ rlwinm. r0, r4, 0, 7, 7
/* 8026E954 0026A5B4 40 82 00 08 */ bne lbl_8026E95C
/* 8026E958 0026A5B8 60 A5 01 00 */ ori r5, r5, 0x100
lbl_8026E95C:
/* 8026E95C 0026A5BC 3C 80 CC 00 */ lis r4, 0xCC00500A@ha
/* 8026E960 0026A5C0 54 63 02 08 */ rlwinm r3, r3, 0, 8, 4
/* 8026E964 0026A5C4 B0 A4 50 0A */ sth r5, 0xCC00500A@l(r4)
/* 8026E968 0026A5C8 4E 80 00 20 */ blr
lbl_8026E96C:
/* 8026E96C 0026A5CC 54 80 02 11 */ rlwinm. r0, r4, 0, 8, 8
/* 8026E970 0026A5D0 3C 80 CD 00 */ lis r4, 0xCD006C00@ha
/* 8026E974 0026A5D4 80 A4 6C 00 */ lwz r5, 0xCD006C00@l(r4)
/* 8026E978 0026A5D8 38 00 FF D3 */ li r0, -45
/* 8026E97C 0026A5DC 7C A5 00 38 */ and r5, r5, r0
/* 8026E980 0026A5E0 40 82 00 08 */ bne lbl_8026E988
/* 8026E984 0026A5E4 60 A5 00 04 */ ori r5, r5, 4
lbl_8026E988:
/* 8026E988 0026A5E8 3C 80 CD 00 */ lis r4, 0xCD006C00@ha
/* 8026E98C 0026A5EC 54 63 02 4E */ rlwinm r3, r3, 0, 9, 7
/* 8026E990 0026A5F0 90 A4 6C 00 */ stw r5, 0xCD006C00@l(r4)
/* 8026E994 0026A5F4 4E 80 00 20 */ blr
lbl_8026E998:
/* 8026E998 0026A5F8 54 80 02 53 */ rlwinm. r0, r4, 0, 9, 9
/* 8026E99C 0026A5FC 3C A0 CD 00 */ lis r5, 0xCD006800@ha
/* 8026E9A0 0026A600 80 A5 68 00 */ lwz r5, 0xCD006800@l(r5)
/* 8026E9A4 0026A604 38 00 D3 F0 */ li r0, -11280
/* 8026E9A8 0026A608 7C A5 00 38 */ and r5, r5, r0
/* 8026E9AC 0026A60C 40 82 00 08 */ bne lbl_8026E9B4
/* 8026E9B0 0026A610 60 A5 00 01 */ ori r5, r5, 1
lbl_8026E9B4:
/* 8026E9B4 0026A614 54 80 02 95 */ rlwinm. r0, r4, 0, 0xa, 0xa
/* 8026E9B8 0026A618 40 82 00 08 */ bne lbl_8026E9C0
/* 8026E9BC 0026A61C 60 A5 00 04 */ ori r5, r5, 4
lbl_8026E9C0:
/* 8026E9C0 0026A620 54 80 02 D7 */ rlwinm. r0, r4, 0, 0xb, 0xb
/* 8026E9C4 0026A624 40 82 00 08 */ bne lbl_8026E9CC
/* 8026E9C8 0026A628 60 A5 04 00 */ ori r5, r5, 0x400
lbl_8026E9CC:
/* 8026E9CC 0026A62C 3C 80 CD 00 */ lis r4, 0xCD006800@ha
/* 8026E9D0 0026A630 54 63 03 10 */ rlwinm r3, r3, 0, 0xc, 8
/* 8026E9D4 0026A634 90 A4 68 00 */ stw r5, 0xCD006800@l(r4)
/* 8026E9D8 0026A638 4E 80 00 20 */ blr
lbl_8026E9DC:
/* 8026E9DC 0026A63C 54 80 03 19 */ rlwinm. r0, r4, 0, 0xc, 0xc
/* 8026E9E0 0026A640 3C A0 CD 00 */ lis r5, 0xCD006814@ha
/* 8026E9E4 0026A644 80 A5 68 14 */ lwz r5, 0xCD006814@l(r5)
/* 8026E9E8 0026A648 38 00 F3 F0 */ li r0, -3088
/* 8026E9EC 0026A64C 7C A5 00 38 */ and r5, r5, r0
/* 8026E9F0 0026A650 40 82 00 08 */ bne lbl_8026E9F8
/* 8026E9F4 0026A654 60 A5 00 01 */ ori r5, r5, 1
lbl_8026E9F8:
/* 8026E9F8 0026A658 54 80 03 5B */ rlwinm. r0, r4, 0, 0xd, 0xd
/* 8026E9FC 0026A65C 40 82 00 08 */ bne lbl_8026EA04
/* 8026EA00 0026A660 60 A5 00 04 */ ori r5, r5, 4
lbl_8026EA04:
/* 8026EA04 0026A664 54 80 03 9D */ rlwinm. r0, r4, 0, 0xe, 0xe
/* 8026EA08 0026A668 40 82 00 08 */ bne lbl_8026EA10
/* 8026EA0C 0026A66C 60 A5 04 00 */ ori r5, r5, 0x400
lbl_8026EA10:
/* 8026EA10 0026A670 3C 80 CD 00 */ lis r4, 0xCD006814@ha
/* 8026EA14 0026A674 54 63 03 D6 */ rlwinm r3, r3, 0, 0xf, 0xb
/* 8026EA18 0026A678 90 A4 68 14 */ stw r5, 0xCD006814@l(r4)
/* 8026EA1C 0026A67C 4E 80 00 20 */ blr
lbl_8026EA20:
/* 8026EA20 0026A680 3C A0 CD 00 */ lis r5, 0xCD006828@ha
/* 8026EA24 0026A684 54 80 03 DF */ rlwinm. r0, r4, 0, 0xf, 0xf
/* 8026EA28 0026A688 80 A5 68 28 */ lwz r5, 0xCD006828@l(r5)
/* 8026EA2C 0026A68C 54 A5 00 36 */ rlwinm r5, r5, 0, 0, 0x1b
/* 8026EA30 0026A690 40 82 00 08 */ bne lbl_8026EA38
/* 8026EA34 0026A694 60 A5 00 01 */ ori r5, r5, 1
lbl_8026EA38:
/* 8026EA38 0026A698 54 80 04 21 */ rlwinm. r0, r4, 0, 0x10, 0x10
/* 8026EA3C 0026A69C 40 82 00 08 */ bne lbl_8026EA44
/* 8026EA40 0026A6A0 60 A5 00 04 */ ori r5, r5, 4
lbl_8026EA44:
/* 8026EA44 0026A6A4 3C 80 CD 00 */ lis r4, 0xCD006828@ha
/* 8026EA48 0026A6A8 54 63 04 5C */ rlwinm r3, r3, 0, 0x11, 0xe
/* 8026EA4C 0026A6AC 90 A4 68 28 */ stw r5, 0xCD006828@l(r4)
/* 8026EA50 0026A6B0 4E 80 00 20 */ blr
lbl_8026EA54:
/* 8026EA54 0026A6B4 54 80 04 63 */ rlwinm. r0, r4, 0, 0x11, 0x11
/* 8026EA58 0026A6B8 38 A0 00 F0 */ li r5, 0xf0
/* 8026EA5C 0026A6BC 40 82 00 08 */ bne lbl_8026EA64
/* 8026EA60 0026A6C0 60 A5 08 00 */ ori r5, r5, 0x800
lbl_8026EA64:
/* 8026EA64 0026A6C4 54 80 05 29 */ rlwinm. r0, r4, 0, 0x14, 0x14
/* 8026EA68 0026A6C8 40 82 00 08 */ bne lbl_8026EA70
/* 8026EA6C 0026A6CC 60 A5 00 08 */ ori r5, r5, 8
lbl_8026EA70:
/* 8026EA70 0026A6D0 54 80 05 6B */ rlwinm. r0, r4, 0, 0x15, 0x15
/* 8026EA74 0026A6D4 40 82 00 08 */ bne lbl_8026EA7C
/* 8026EA78 0026A6D8 60 A5 00 04 */ ori r5, r5, 4
lbl_8026EA7C:
/* 8026EA7C 0026A6DC 54 80 05 AD */ rlwinm. r0, r4, 0, 0x16, 0x16
/* 8026EA80 0026A6E0 40 82 00 08 */ bne lbl_8026EA88
/* 8026EA84 0026A6E4 60 A5 00 02 */ ori r5, r5, 2
lbl_8026EA88:
/* 8026EA88 0026A6E8 54 80 05 EF */ rlwinm. r0, r4, 0, 0x17, 0x17
/* 8026EA8C 0026A6EC 40 82 00 08 */ bne lbl_8026EA94
/* 8026EA90 0026A6F0 60 A5 00 01 */ ori r5, r5, 1
lbl_8026EA94:
/* 8026EA94 0026A6F4 54 80 06 31 */ rlwinm. r0, r4, 0, 0x18, 0x18
/* 8026EA98 0026A6F8 40 82 00 08 */ bne lbl_8026EAA0
/* 8026EA9C 0026A6FC 60 A5 01 00 */ ori r5, r5, 0x100
lbl_8026EAA0:
/* 8026EAA0 0026A700 54 80 06 73 */ rlwinm. r0, r4, 0, 0x19, 0x19
/* 8026EAA4 0026A704 40 82 00 08 */ bne lbl_8026EAAC
/* 8026EAA8 0026A708 60 A5 10 00 */ ori r5, r5, 0x1000
lbl_8026EAAC:
/* 8026EAAC 0026A70C 54 80 04 A5 */ rlwinm. r0, r4, 0, 0x12, 0x12
/* 8026EAB0 0026A710 40 82 00 08 */ bne lbl_8026EAB8
/* 8026EAB4 0026A714 60 A5 02 00 */ ori r5, r5, 0x200
lbl_8026EAB8:
/* 8026EAB8 0026A718 54 80 04 E7 */ rlwinm. r0, r4, 0, 0x13, 0x13
/* 8026EABC 0026A71C 40 82 00 08 */ bne lbl_8026EAC4
/* 8026EAC0 0026A720 60 A5 04 00 */ ori r5, r5, 0x400
lbl_8026EAC4:
/* 8026EAC4 0026A724 54 80 06 B5 */ rlwinm. r0, r4, 0, 0x1a, 0x1a
/* 8026EAC8 0026A728 40 82 00 08 */ bne lbl_8026EAD0
/* 8026EACC 0026A72C 60 A5 20 00 */ ori r5, r5, 0x2000
lbl_8026EAD0:
/* 8026EAD0 0026A730 54 80 06 F7 */ rlwinm. r0, r4, 0, 0x1b, 0x1b
/* 8026EAD4 0026A734 40 82 00 08 */ bne lbl_8026EADC
/* 8026EAD8 0026A738 60 A5 40 00 */ ori r5, r5, 0x4000
lbl_8026EADC:
/* 8026EADC 0026A73C 3C 80 CC 00 */ lis r4, 0xCC003004@ha
/* 8026EAE0 0026A740 54 63 07 20 */ rlwinm r3, r3, 0, 0x1c, 0x10
/* 8026EAE4 0026A744 90 A4 30 04 */ stw r5, 0xCC003004@l(r4)
/* 8026EAE8 0026A748 4E 80 00 20 */ blr
.global __OSMaskInterrupts
__OSMaskInterrupts:
/* 8026EAEC 0026A74C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8026EAF0 0026A750 7C 08 02 A6 */ mflr r0
/* 8026EAF4 0026A754 90 01 00 24 */ stw r0, 0x24(r1)
/* 8026EAF8 0026A758 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8026EAFC 0026A75C 7C 7F 1B 78 */ mr r31, r3
/* 8026EB00 0026A760 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8026EB04 0026A764 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8026EB08 0026A768 4B FF FC 55 */ bl OSDisableInterrupts
/* 8026EB0C 0026A76C 3C 80 80 00 */ lis r4, 0x800000C4@ha
/* 8026EB10 0026A770 7C 7E 1B 78 */ mr r30, r3
/* 8026EB14 0026A774 83 A4 00 C4 */ lwz r29, 0x800000C4@l(r4)
/* 8026EB18 0026A778 80 A4 00 C8 */ lwz r5, 0xc8(r4)
/* 8026EB1C 0026A77C 7F A0 2B 78 */ or r0, r29, r5
/* 8026EB20 0026A780 7F E3 00 78 */ andc r3, r31, r0
/* 8026EB24 0026A784 7F FF EB 78 */ or r31, r31, r29
/* 8026EB28 0026A788 93 E4 00 C4 */ stw r31, 0xc4(r4)
/* 8026EB2C 0026A78C 7F FF 2B 78 */ or r31, r31, r5
/* 8026EB30 0026A790 48 00 00 0C */ b lbl_8026EB3C
lbl_8026EB34:
/* 8026EB34 0026A794 7F E4 FB 78 */ mr r4, r31
/* 8026EB38 0026A798 4B FF FD 59 */ bl SetInterruptMask
lbl_8026EB3C:
/* 8026EB3C 0026A79C 2C 03 00 00 */ cmpwi r3, 0
/* 8026EB40 0026A7A0 40 82 FF F4 */ bne lbl_8026EB34
/* 8026EB44 0026A7A4 7F C3 F3 78 */ mr r3, r30
/* 8026EB48 0026A7A8 4B FF FC 3D */ bl OSRestoreInterrupts
/* 8026EB4C 0026A7AC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8026EB50 0026A7B0 7F A3 EB 78 */ mr r3, r29
/* 8026EB54 0026A7B4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8026EB58 0026A7B8 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8026EB5C 0026A7BC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8026EB60 0026A7C0 7C 08 03 A6 */ mtlr r0
/* 8026EB64 0026A7C4 38 21 00 20 */ addi r1, r1, 0x20
/* 8026EB68 0026A7C8 4E 80 00 20 */ blr
.global __OSUnmaskInterrupts
__OSUnmaskInterrupts:
/* 8026EB6C 0026A7CC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8026EB70 0026A7D0 7C 08 02 A6 */ mflr r0
/* 8026EB74 0026A7D4 90 01 00 24 */ stw r0, 0x24(r1)
/* 8026EB78 0026A7D8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8026EB7C 0026A7DC 7C 7F 1B 78 */ mr r31, r3
/* 8026EB80 0026A7E0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8026EB84 0026A7E4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8026EB88 0026A7E8 4B FF FB D5 */ bl OSDisableInterrupts
/* 8026EB8C 0026A7EC 3C 80 80 00 */ lis r4, 0x800000C4@ha
/* 8026EB90 0026A7F0 7C 7E 1B 78 */ mr r30, r3
/* 8026EB94 0026A7F4 83 A4 00 C4 */ lwz r29, 0x800000C4@l(r4)
/* 8026EB98 0026A7F8 80 A4 00 C8 */ lwz r5, 0xc8(r4)
/* 8026EB9C 0026A7FC 7F A0 2B 78 */ or r0, r29, r5
/* 8026EBA0 0026A800 7F E3 00 38 */ and r3, r31, r0
/* 8026EBA4 0026A804 7F BF F8 78 */ andc r31, r29, r31
/* 8026EBA8 0026A808 93 E4 00 C4 */ stw r31, 0xc4(r4)
/* 8026EBAC 0026A80C 7F FF 2B 78 */ or r31, r31, r5
/* 8026EBB0 0026A810 48 00 00 0C */ b lbl_8026EBBC
lbl_8026EBB4:
/* 8026EBB4 0026A814 7F E4 FB 78 */ mr r4, r31
/* 8026EBB8 0026A818 4B FF FC D9 */ bl SetInterruptMask
lbl_8026EBBC:
/* 8026EBBC 0026A81C 2C 03 00 00 */ cmpwi r3, 0
/* 8026EBC0 0026A820 40 82 FF F4 */ bne lbl_8026EBB4
/* 8026EBC4 0026A824 7F C3 F3 78 */ mr r3, r30
/* 8026EBC8 0026A828 4B FF FB BD */ bl OSRestoreInterrupts
/* 8026EBCC 0026A82C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8026EBD0 0026A830 7F A3 EB 78 */ mr r3, r29
/* 8026EBD4 0026A834 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8026EBD8 0026A838 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8026EBDC 0026A83C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8026EBE0 0026A840 7C 08 03 A6 */ mtlr r0
/* 8026EBE4 0026A844 38 21 00 20 */ addi r1, r1, 0x20
/* 8026EBE8 0026A848 4E 80 00 20 */ blr
.global __OSDispatchInterrupt
__OSDispatchInterrupt:
/* 8026EBEC 0026A84C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8026EBF0 0026A850 7C 08 02 A6 */ mflr r0
/* 8026EBF4 0026A854 3C 60 CC 00 */ lis r3, 0xCC003000@ha
/* 8026EBF8 0026A858 90 01 00 24 */ stw r0, 0x24(r1)
/* 8026EBFC 0026A85C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8026EC00 0026A860 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8026EC04 0026A864 7C 9E 23 78 */ mr r30, r4
/* 8026EC08 0026A868 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8026EC0C 0026A86C 83 E3 30 00 */ lwz r31, 0xCC003000@l(r3)
/* 8026EC10 0026A870 80 03 30 04 */ lwz r0, 0x3004(r3)
/* 8026EC14 0026A874 57 FF 04 1D */ rlwinm. r31, r31, 0, 0x10, 0xe
/* 8026EC18 0026A878 41 82 00 0C */ beq lbl_8026EC24
/* 8026EC1C 0026A87C 7F E0 00 39 */ and. r0, r31, r0
/* 8026EC20 0026A880 40 82 00 0C */ bne lbl_8026EC2C
lbl_8026EC24:
/* 8026EC24 0026A884 7F C3 F3 78 */ mr r3, r30
/* 8026EC28 0026A888 4B FF C3 29 */ bl OSLoadContext
lbl_8026EC2C:
/* 8026EC2C 0026A88C 57 E0 06 31 */ rlwinm. r0, r31, 0, 0x18, 0x18
/* 8026EC30 0026A890 38 00 00 00 */ li r0, 0
/* 8026EC34 0026A894 41 82 00 48 */ beq lbl_8026EC7C
/* 8026EC38 0026A898 3C 60 CC 00 */ lis r3, 0xCC00401E@ha
/* 8026EC3C 0026A89C A0 83 40 1E */ lhz r4, 0xCC00401E@l(r3)
/* 8026EC40 0026A8A0 54 83 07 FF */ clrlwi. r3, r4, 0x1f
/* 8026EC44 0026A8A4 41 82 00 08 */ beq lbl_8026EC4C
/* 8026EC48 0026A8A8 64 00 80 00 */ oris r0, r0, 0x8000
lbl_8026EC4C:
/* 8026EC4C 0026A8AC 54 83 07 BD */ rlwinm. r3, r4, 0, 0x1e, 0x1e
/* 8026EC50 0026A8B0 41 82 00 08 */ beq lbl_8026EC58
/* 8026EC54 0026A8B4 64 00 40 00 */ oris r0, r0, 0x4000
lbl_8026EC58:
/* 8026EC58 0026A8B8 54 83 07 7B */ rlwinm. r3, r4, 0, 0x1d, 0x1d
/* 8026EC5C 0026A8BC 41 82 00 08 */ beq lbl_8026EC64
/* 8026EC60 0026A8C0 64 00 20 00 */ oris r0, r0, 0x2000
lbl_8026EC64:
/* 8026EC64 0026A8C4 54 83 07 39 */ rlwinm. r3, r4, 0, 0x1c, 0x1c
/* 8026EC68 0026A8C8 41 82 00 08 */ beq lbl_8026EC70
/* 8026EC6C 0026A8CC 64 00 10 00 */ oris r0, r0, 0x1000
lbl_8026EC70:
/* 8026EC70 0026A8D0 54 83 06 F7 */ rlwinm. r3, r4, 0, 0x1b, 0x1b
/* 8026EC74 0026A8D4 41 82 00 08 */ beq lbl_8026EC7C
/* 8026EC78 0026A8D8 64 00 08 00 */ oris r0, r0, 0x800
lbl_8026EC7C:
/* 8026EC7C 0026A8DC 57 E3 06 73 */ rlwinm. r3, r31, 0, 0x19, 0x19
/* 8026EC80 0026A8E0 41 82 00 30 */ beq lbl_8026ECB0
/* 8026EC84 0026A8E4 3C 60 CC 00 */ lis r3, 0xCC00500A@ha
/* 8026EC88 0026A8E8 A0 83 50 0A */ lhz r4, 0xCC00500A@l(r3)
/* 8026EC8C 0026A8EC 54 83 07 39 */ rlwinm. r3, r4, 0, 0x1c, 0x1c
/* 8026EC90 0026A8F0 41 82 00 08 */ beq lbl_8026EC98
/* 8026EC94 0026A8F4 64 00 04 00 */ oris r0, r0, 0x400
lbl_8026EC98:
/* 8026EC98 0026A8F8 54 83 06 B5 */ rlwinm. r3, r4, 0, 0x1a, 0x1a
/* 8026EC9C 0026A8FC 41 82 00 08 */ beq lbl_8026ECA4
/* 8026ECA0 0026A900 64 00 02 00 */ oris r0, r0, 0x200
lbl_8026ECA4:
/* 8026ECA4 0026A904 54 83 06 31 */ rlwinm. r3, r4, 0, 0x18, 0x18
/* 8026ECA8 0026A908 41 82 00 08 */ beq lbl_8026ECB0
/* 8026ECAC 0026A90C 64 00 01 00 */ oris r0, r0, 0x100
lbl_8026ECB0:
/* 8026ECB0 0026A910 57 E3 06 B5 */ rlwinm. r3, r31, 0, 0x1a, 0x1a
/* 8026ECB4 0026A914 41 82 00 18 */ beq lbl_8026ECCC
/* 8026ECB8 0026A918 3C 60 CD 00 */ lis r3, 0xCD006C00@ha
/* 8026ECBC 0026A91C 80 63 6C 00 */ lwz r3, 0xCD006C00@l(r3)
/* 8026ECC0 0026A920 54 63 07 39 */ rlwinm. r3, r3, 0, 0x1c, 0x1c
/* 8026ECC4 0026A924 41 82 00 08 */ beq lbl_8026ECCC
/* 8026ECC8 0026A928 64 00 00 80 */ oris r0, r0, 0x80
lbl_8026ECCC:
/* 8026ECCC 0026A92C 57 E3 06 F7 */ rlwinm. r3, r31, 0, 0x1b, 0x1b
/* 8026ECD0 0026A930 41 82 00 7C */ beq lbl_8026ED4C
/* 8026ECD4 0026A934 3C 60 CD 00 */ lis r3, 0xCD006800@ha
/* 8026ECD8 0026A938 80 83 68 00 */ lwz r4, 0xCD006800@l(r3)
/* 8026ECDC 0026A93C 54 83 07 BD */ rlwinm. r3, r4, 0, 0x1e, 0x1e
/* 8026ECE0 0026A940 41 82 00 08 */ beq lbl_8026ECE8
/* 8026ECE4 0026A944 64 00 00 40 */ oris r0, r0, 0x40
lbl_8026ECE8:
/* 8026ECE8 0026A948 54 83 07 39 */ rlwinm. r3, r4, 0, 0x1c, 0x1c
/* 8026ECEC 0026A94C 41 82 00 08 */ beq lbl_8026ECF4
/* 8026ECF0 0026A950 64 00 00 20 */ oris r0, r0, 0x20
lbl_8026ECF4:
/* 8026ECF4 0026A954 54 83 05 29 */ rlwinm. r3, r4, 0, 0x14, 0x14
/* 8026ECF8 0026A958 41 82 00 08 */ beq lbl_8026ED00
/* 8026ECFC 0026A95C 64 00 00 10 */ oris r0, r0, 0x10
lbl_8026ED00:
/* 8026ED00 0026A960 3C 60 CD 00 */ lis r3, 0xCD006814@ha
/* 8026ED04 0026A964 80 83 68 14 */ lwz r4, 0xCD006814@l(r3)
/* 8026ED08 0026A968 54 83 07 BD */ rlwinm. r3, r4, 0, 0x1e, 0x1e
/* 8026ED0C 0026A96C 41 82 00 08 */ beq lbl_8026ED14
/* 8026ED10 0026A970 64 00 00 08 */ oris r0, r0, 8
lbl_8026ED14:
/* 8026ED14 0026A974 54 83 07 39 */ rlwinm. r3, r4, 0, 0x1c, 0x1c
/* 8026ED18 0026A978 41 82 00 08 */ beq lbl_8026ED20
/* 8026ED1C 0026A97C 64 00 00 04 */ oris r0, r0, 4
lbl_8026ED20:
/* 8026ED20 0026A980 54 83 05 29 */ rlwinm. r3, r4, 0, 0x14, 0x14
/* 8026ED24 0026A984 41 82 00 08 */ beq lbl_8026ED2C
/* 8026ED28 0026A988 64 00 00 02 */ oris r0, r0, 2
lbl_8026ED2C:
/* 8026ED2C 0026A98C 3C 60 CD 00 */ lis r3, 0xCD006828@ha
/* 8026ED30 0026A990 80 83 68 28 */ lwz r4, 0xCD006828@l(r3)
/* 8026ED34 0026A994 54 83 07 BD */ rlwinm. r3, r4, 0, 0x1e, 0x1e
/* 8026ED38 0026A998 41 82 00 08 */ beq lbl_8026ED40
/* 8026ED3C 0026A99C 64 00 00 01 */ oris r0, r0, 1
lbl_8026ED40:
/* 8026ED40 0026A9A0 54 83 07 39 */ rlwinm. r3, r4, 0, 0x1c, 0x1c
/* 8026ED44 0026A9A4 41 82 00 08 */ beq lbl_8026ED4C
/* 8026ED48 0026A9A8 60 00 80 00 */ ori r0, r0, 0x8000
lbl_8026ED4C:
/* 8026ED4C 0026A9AC 57 E3 04 A5 */ rlwinm. r3, r31, 0, 0x12, 0x12
/* 8026ED50 0026A9B0 41 82 00 08 */ beq lbl_8026ED58
/* 8026ED54 0026A9B4 60 00 00 20 */ ori r0, r0, 0x20
lbl_8026ED58:
/* 8026ED58 0026A9B8 57 E3 04 E7 */ rlwinm. r3, r31, 0, 0x13, 0x13
/* 8026ED5C 0026A9BC 41 82 00 08 */ beq lbl_8026ED64
/* 8026ED60 0026A9C0 60 00 00 40 */ ori r0, r0, 0x40
lbl_8026ED64:
/* 8026ED64 0026A9C4 57 E3 05 6B */ rlwinm. r3, r31, 0, 0x15, 0x15
/* 8026ED68 0026A9C8 41 82 00 08 */ beq lbl_8026ED70
/* 8026ED6C 0026A9CC 60 00 10 00 */ ori r0, r0, 0x1000
lbl_8026ED70:
/* 8026ED70 0026A9D0 57 E3 05 AD */ rlwinm. r3, r31, 0, 0x16, 0x16
/* 8026ED74 0026A9D4 41 82 00 08 */ beq lbl_8026ED7C
/* 8026ED78 0026A9D8 60 00 20 00 */ ori r0, r0, 0x2000
lbl_8026ED7C:
/* 8026ED7C 0026A9DC 57 E3 05 EF */ rlwinm. r3, r31, 0, 0x17, 0x17
/* 8026ED80 0026A9E0 41 82 00 08 */ beq lbl_8026ED88
/* 8026ED84 0026A9E4 60 00 00 80 */ ori r0, r0, 0x80
lbl_8026ED88:
/* 8026ED88 0026A9E8 57 E3 07 39 */ rlwinm. r3, r31, 0, 0x1c, 0x1c
/* 8026ED8C 0026A9EC 41 82 00 08 */ beq lbl_8026ED94
/* 8026ED90 0026A9F0 60 00 08 00 */ ori r0, r0, 0x800
lbl_8026ED94:
/* 8026ED94 0026A9F4 57 E3 07 7B */ rlwinm. r3, r31, 0, 0x1d, 0x1d
/* 8026ED98 0026A9F8 41 82 00 08 */ beq lbl_8026EDA0
/* 8026ED9C 0026A9FC 60 00 04 00 */ ori r0, r0, 0x400
lbl_8026EDA0:
/* 8026EDA0 0026AA00 57 E3 07 BD */ rlwinm. r3, r31, 0, 0x1e, 0x1e
/* 8026EDA4 0026AA04 41 82 00 08 */ beq lbl_8026EDAC
/* 8026EDA8 0026AA08 60 00 02 00 */ ori r0, r0, 0x200
lbl_8026EDAC:
/* 8026EDAC 0026AA0C 57 E3 05 29 */ rlwinm. r3, r31, 0, 0x14, 0x14
/* 8026EDB0 0026AA10 41 82 00 08 */ beq lbl_8026EDB8
/* 8026EDB4 0026AA14 60 00 40 00 */ ori r0, r0, 0x4000
lbl_8026EDB8:
/* 8026EDB8 0026AA18 57 E3 07 FF */ clrlwi. r3, r31, 0x1f
/* 8026EDBC 0026AA1C 41 82 00 08 */ beq lbl_8026EDC4
/* 8026EDC0 0026AA20 60 00 01 00 */ ori r0, r0, 0x100
lbl_8026EDC4:
/* 8026EDC4 0026AA24 57 E3 04 63 */ rlwinm. r3, r31, 0, 0x11, 0x11
/* 8026EDC8 0026AA28 41 82 00 08 */ beq lbl_8026EDD0
/* 8026EDCC 0026AA2C 60 00 00 10 */ ori r0, r0, 0x10
lbl_8026EDD0:
/* 8026EDD0 0026AA30 3C 60 80 00 */ lis r3, 0x800000C4@ha
/* 8026EDD4 0026AA34 80 83 00 C4 */ lwz r4, 0x800000C4@l(r3)
/* 8026EDD8 0026AA38 80 63 00 C8 */ lwz r3, 0xc8(r3)
/* 8026EDDC 0026AA3C 7C 83 1B 78 */ or r3, r4, r3
/* 8026EDE0 0026AA40 7C 03 18 79 */ andc. r3, r0, r3
/* 8026EDE4 0026AA44 41 82 00 88 */ beq lbl_8026EE6C
/* 8026EDE8 0026AA48 3C 80 80 42 */ lis r4, lbl_80427CD8@ha
/* 8026EDEC 0026AA4C 38 84 7C D8 */ addi r4, r4, lbl_80427CD8@l
lbl_8026EDF0:
/* 8026EDF0 0026AA50 80 04 00 00 */ lwz r0, 0(r4)
/* 8026EDF4 0026AA54 7C 60 00 39 */ and. r0, r3, r0
/* 8026EDF8 0026AA58 41 82 00 10 */ beq lbl_8026EE08
/* 8026EDFC 0026AA5C 7C 00 00 34 */ cntlzw r0, r0
/* 8026EE00 0026AA60 7C 1D 07 34 */ extsh r29, r0
/* 8026EE04 0026AA64 48 00 00 0C */ b lbl_8026EE10
lbl_8026EE08:
/* 8026EE08 0026AA68 38 84 00 04 */ addi r4, r4, 4
/* 8026EE0C 0026AA6C 4B FF FF E4 */ b lbl_8026EDF0
lbl_8026EE10:
/* 8026EE10 0026AA70 80 6D A8 08 */ lwz r3, lbl_8063FAC8-_SDA_BASE_(r13)
/* 8026EE14 0026AA74 57 A0 10 3A */ slwi r0, r29, 2
/* 8026EE18 0026AA78 7F E3 00 2E */ lwzx r31, r3, r0
/* 8026EE1C 0026AA7C 2C 1F 00 00 */ cmpwi r31, 0
/* 8026EE20 0026AA80 41 82 00 4C */ beq lbl_8026EE6C
/* 8026EE24 0026AA84 2C 1D 00 04 */ cmpwi r29, 4
/* 8026EE28 0026AA88 40 81 00 1C */ ble lbl_8026EE44
/* 8026EE2C 0026AA8C B3 AD A7 FC */ sth r29, lbl_8063FABC-_SDA_BASE_(r13)
/* 8026EE30 0026AA90 48 00 39 89 */ bl OSGetTime
/* 8026EE34 0026AA94 90 8D A8 04 */ stw r4, lbl_8063FAC4-_SDA_BASE_(r13)
/* 8026EE38 0026AA98 90 6D A8 00 */ stw r3, lbl_8063FAC0-_SDA_BASE_(r13)
/* 8026EE3C 0026AA9C 80 1E 01 98 */ lwz r0, 0x198(r30)
/* 8026EE40 0026AAA0 90 0D A7 F8 */ stw r0, lbl_8063FAB8-_SDA_BASE_(r13)
lbl_8026EE44:
/* 8026EE44 0026AAA4 48 00 25 01 */ bl OSDisableScheduler
/* 8026EE48 0026AAA8 7F EC FB 78 */ mr r12, r31
/* 8026EE4C 0026AAAC 7F A3 EB 78 */ mr r3, r29
/* 8026EE50 0026AAB0 7F C4 F3 78 */ mr r4, r30
/* 8026EE54 0026AAB4 7D 89 03 A6 */ mtctr r12
/* 8026EE58 0026AAB8 4E 80 04 21 */ bctrl
/* 8026EE5C 0026AABC 48 00 25 25 */ bl OSEnableScheduler
/* 8026EE60 0026AAC0 48 00 2A 2D */ bl __OSReschedule
/* 8026EE64 0026AAC4 7F C3 F3 78 */ mr r3, r30
/* 8026EE68 0026AAC8 4B FF C0 E9 */ bl OSLoadContext
lbl_8026EE6C:
/* 8026EE6C 0026AACC 7F C3 F3 78 */ mr r3, r30
/* 8026EE70 0026AAD0 4B FF C0 E1 */ bl OSLoadContext
/* 8026EE74 0026AAD4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8026EE78 0026AAD8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8026EE7C 0026AADC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8026EE80 0026AAE0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8026EE84 0026AAE4 7C 08 03 A6 */ mtlr r0
/* 8026EE88 0026AAE8 38 21 00 20 */ addi r1, r1, 0x20
/* 8026EE8C 0026AAEC 4E 80 00 20 */ blr
.global ExternalInterruptHandler
ExternalInterruptHandler:
/* 8026EE90 0026AAF0 90 04 00 00 */ stw r0, 0(r4)
/* 8026EE94 0026AAF4 90 24 00 04 */ stw r1, 4(r4)
/* 8026EE98 0026AAF8 90 44 00 08 */ stw r2, 8(r4)
/* 8026EE9C 0026AAFC BC C4 00 18 */ stmw r6, 0x18(r4)
/* 8026EEA0 0026AB00 7C 11 E2 A6 */ mfspr r0, 0x391
/* 8026EEA4 0026AB04 90 04 01 A8 */ stw r0, 0x1a8(r4)
/* 8026EEA8 0026AB08 7C 12 E2 A6 */ mfspr r0, 0x392
/* 8026EEAC 0026AB0C 90 04 01 AC */ stw r0, 0x1ac(r4)
/* 8026EEB0 0026AB10 7C 13 E2 A6 */ mfspr r0, 0x393
/* 8026EEB4 0026AB14 90 04 01 B0 */ stw r0, 0x1b0(r4)
/* 8026EEB8 0026AB18 7C 14 E2 A6 */ mfspr r0, 0x394
/* 8026EEBC 0026AB1C 90 04 01 B4 */ stw r0, 0x1b4(r4)
/* 8026EEC0 0026AB20 7C 15 E2 A6 */ mfspr r0, 0x395
/* 8026EEC4 0026AB24 90 04 01 B8 */ stw r0, 0x1b8(r4)
/* 8026EEC8 0026AB28 7C 16 E2 A6 */ mfspr r0, 0x396
/* 8026EECC 0026AB2C 90 04 01 BC */ stw r0, 0x1bc(r4)
/* 8026EED0 0026AB30 7C 17 E2 A6 */ mfspr r0, 0x397
/* 8026EED4 0026AB34 90 04 01 C0 */ stw r0, 0x1c0(r4)
/* 8026EED8 0026AB38 94 21 FF F8 */ stwu r1, -8(r1)
/* 8026EEDC 0026AB3C 4B FF FD 10 */ b __OSDispatchInterrupt
|