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
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global __OSFPRInit
__OSFPRInit:
/* 80268398 00263FF8 7C 60 00 A6 */ mfmsr r3
/* 8026839C 00263FFC 60 63 20 00 */ ori r3, r3, 0x2000
/* 802683A0 00264000 7C 60 01 24 */ mtmsr r3
/* 802683A4 00264004 7C 78 E2 A6 */ mfspr r3, 0x398
/* 802683A8 00264008 54 63 1F FF */ rlwinm. r3, r3, 3, 0x1f, 0x1f
/* 802683AC 0026400C 41 82 00 8C */ beq lbl_80268438
/* 802683B0 00264010 3C 60 80 64 */ lis r3, lbl_8063FA40@ha
/* 802683B4 00264014 38 63 FA 40 */ addi r3, r3, lbl_8063FA40@l
/* 802683B8 00264018 E0 03 00 00 */ psq_l f0, 0(r3), 0, qr0
/* 802683BC 0026401C 10 20 00 90 */ ps_mr f1, f0
/* 802683C0 00264020 10 40 00 90 */ ps_mr f2, f0
/* 802683C4 00264024 10 60 00 90 */ ps_mr f3, f0
/* 802683C8 00264028 10 80 00 90 */ ps_mr f4, f0
/* 802683CC 0026402C 10 A0 00 90 */ ps_mr f5, f0
/* 802683D0 00264030 10 C0 00 90 */ ps_mr f6, f0
/* 802683D4 00264034 10 E0 00 90 */ ps_mr f7, f0
/* 802683D8 00264038 11 00 00 90 */ ps_mr f8, f0
/* 802683DC 0026403C 11 20 00 90 */ ps_mr f9, f0
/* 802683E0 00264040 11 40 00 90 */ ps_mr f10, f0
/* 802683E4 00264044 11 60 00 90 */ ps_mr f11, f0
/* 802683E8 00264048 11 80 00 90 */ ps_mr f12, f0
/* 802683EC 0026404C 11 A0 00 90 */ ps_mr f13, f0
/* 802683F0 00264050 11 C0 00 90 */ ps_mr f14, f0
/* 802683F4 00264054 11 E0 00 90 */ ps_mr f15, f0
/* 802683F8 00264058 12 00 00 90 */ ps_mr f16, f0
/* 802683FC 0026405C 12 20 00 90 */ ps_mr f17, f0
/* 80268400 00264060 12 40 00 90 */ ps_mr f18, f0
/* 80268404 00264064 12 60 00 90 */ ps_mr f19, f0
/* 80268408 00264068 12 80 00 90 */ ps_mr f20, f0
/* 8026840C 0026406C 12 A0 00 90 */ ps_mr f21, f0
/* 80268410 00264070 12 C0 00 90 */ ps_mr f22, f0
/* 80268414 00264074 12 E0 00 90 */ ps_mr f23, f0
/* 80268418 00264078 13 00 00 90 */ ps_mr f24, f0
/* 8026841C 0026407C 13 20 00 90 */ ps_mr f25, f0
/* 80268420 00264080 13 40 00 90 */ ps_mr f26, f0
/* 80268424 00264084 13 60 00 90 */ ps_mr f27, f0
/* 80268428 00264088 13 80 00 90 */ ps_mr f28, f0
/* 8026842C 0026408C 13 A0 00 90 */ ps_mr f29, f0
/* 80268430 00264090 13 C0 00 90 */ ps_mr f30, f0
/* 80268434 00264094 13 E0 00 90 */ ps_mr f31, f0
lbl_80268438:
/* 80268438 00264098 C8 0D A7 88 */ lfd f0, lbl_8063FA48-_SDA_BASE_(r13)
/* 8026843C 0026409C FC 20 00 90 */ fmr f1, f0
/* 80268440 002640A0 FC 40 00 90 */ fmr f2, f0
/* 80268444 002640A4 FC 60 00 90 */ fmr f3, f0
/* 80268448 002640A8 FC 80 00 90 */ fmr f4, f0
/* 8026844C 002640AC FC A0 00 90 */ fmr f5, f0
/* 80268450 002640B0 FC C0 00 90 */ fmr f6, f0
/* 80268454 002640B4 FC E0 00 90 */ fmr f7, f0
/* 80268458 002640B8 FD 00 00 90 */ fmr f8, f0
/* 8026845C 002640BC FD 20 00 90 */ fmr f9, f0
/* 80268460 002640C0 FD 40 00 90 */ fmr f10, f0
/* 80268464 002640C4 FD 60 00 90 */ fmr f11, f0
/* 80268468 002640C8 FD 80 00 90 */ fmr f12, f0
/* 8026846C 002640CC FD A0 00 90 */ fmr f13, f0
/* 80268470 002640D0 FD C0 00 90 */ fmr f14, f0
/* 80268474 002640D4 FD E0 00 90 */ fmr f15, f0
/* 80268478 002640D8 FE 00 00 90 */ fmr f16, f0
/* 8026847C 002640DC FE 20 00 90 */ fmr f17, f0
/* 80268480 002640E0 FE 40 00 90 */ fmr f18, f0
/* 80268484 002640E4 FE 60 00 90 */ fmr f19, f0
/* 80268488 002640E8 FE 80 00 90 */ fmr f20, f0
/* 8026848C 002640EC FE A0 00 90 */ fmr f21, f0
/* 80268490 002640F0 FE C0 00 90 */ fmr f22, f0
/* 80268494 002640F4 FE E0 00 90 */ fmr f23, f0
/* 80268498 002640F8 FF 00 00 90 */ fmr f24, f0
/* 8026849C 002640FC FF 20 00 90 */ fmr f25, f0
/* 802684A0 00264100 FF 40 00 90 */ fmr f26, f0
/* 802684A4 00264104 FF 60 00 90 */ fmr f27, f0
/* 802684A8 00264108 FF 80 00 90 */ fmr f28, f0
/* 802684AC 0026410C FF A0 00 90 */ fmr f29, f0
/* 802684B0 00264110 FF C0 00 90 */ fmr f30, f0
/* 802684B4 00264114 FF E0 00 90 */ fmr f31, f0
/* 802684B8 00264118 FD FE 05 8E */ mtfsf 0xff, f0
/* 802684BC 0026411C 4E 80 00 20 */ blr
.global __OSGetIOSRev
__OSGetIOSRev:
/* 802684C0 00264120 3C 80 C0 00 */ lis r4, 0xC0003144@ha
/* 802684C4 00264124 81 44 31 44 */ lwz r10, 0xC0003144@l(r4)
/* 802684C8 00264128 81 24 31 40 */ lwz r9, 0x3140(r4)
/* 802684CC 0026412C 55 40 E7 3E */ rlwinm r0, r10, 0x1c, 0x1c, 0x1f
/* 802684D0 00264130 55 46 67 3E */ rlwinm r6, r10, 0xc, 0x1c, 0x1f
/* 802684D4 00264134 1C 80 00 0A */ mulli r4, r0, 0xa
/* 802684D8 00264138 55 27 46 3E */ srwi r7, r9, 0x18
/* 802684DC 0026413C 55 40 07 3E */ clrlwi r0, r10, 0x1c
/* 802684E0 00264140 98 E3 00 00 */ stb r7, 0(r3)
/* 802684E4 00264144 55 28 86 3E */ rlwinm r8, r9, 0x10, 0x18, 0x1f
/* 802684E8 00264148 7C 80 22 14 */ add r4, r0, r4
/* 802684EC 0026414C 38 04 07 D0 */ addi r0, r4, 0x7d0
/* 802684F0 00264150 55 45 A7 3E */ rlwinm r5, r10, 0x14, 0x1c, 0x1f
/* 802684F4 00264154 1C 85 00 0A */ mulli r4, r5, 0xa
/* 802684F8 00264158 99 03 00 01 */ stb r8, 1(r3)
/* 802684FC 0026415C 55 45 C7 3E */ rlwinm r5, r10, 0x18, 0x1c, 0x1f
/* 80268500 00264160 55 28 C6 3E */ rlwinm r8, r9, 0x18, 0x18, 0x1f
/* 80268504 00264164 99 23 00 03 */ stb r9, 3(r3)
/* 80268508 00264168 7C 85 22 14 */ add r4, r5, r4
/* 8026850C 0026416C 1C C6 00 0A */ mulli r6, r6, 0xa
/* 80268510 00264170 55 47 87 3E */ rlwinm r7, r10, 0x10, 0x1c, 0x1f
/* 80268514 00264174 99 03 00 02 */ stb r8, 2(r3)
/* 80268518 00264178 7C C7 32 14 */ add r6, r7, r6
/* 8026851C 0026417C 98 83 00 05 */ stb r4, 5(r3)
/* 80268520 00264180 98 C3 00 04 */ stb r6, 4(r3)
/* 80268524 00264184 B0 03 00 06 */ sth r0, 6(r3)
/* 80268528 00264188 4E 80 00 20 */ blr
.global OSGetConsoleType
OSGetConsoleType:
/* 8026852C 0026418C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80268530 00264190 7C 08 02 A6 */ mflr r0
/* 80268534 00264194 90 01 00 14 */ stw r0, 0x14(r1)
/* 80268538 00264198 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8026853C 0026419C 80 6D A7 A0 */ lwz r3, lbl_8063FA60-_SDA_BASE_(r13)
/* 80268540 002641A0 2C 03 00 00 */ cmpwi r3, 0
/* 80268544 002641A4 41 82 00 10 */ beq lbl_80268554
/* 80268548 002641A8 80 03 00 2C */ lwz r0, 0x2c(r3)
/* 8026854C 002641AC 2C 00 00 00 */ cmpwi r0, 0
/* 80268550 002641B0 40 82 00 10 */ bne lbl_80268560
lbl_80268554:
/* 80268554 002641B4 3C 60 10 00 */ lis r3, 0x10000002@ha
/* 80268558 002641B8 38 63 00 02 */ addi r3, r3, 0x10000002@l
/* 8026855C 002641BC 48 00 02 2C */ b lbl_80268788
lbl_80268560:
/* 80268560 002641C0 3C 60 80 00 */ lis r3, 0x800030E6@ha
/* 80268564 002641C4 A0 03 30 E6 */ lhz r0, 0x800030E6@l(r3)
/* 80268568 002641C8 83 E3 31 38 */ lwz r31, 0x3138(r3)
/* 8026856C 002641CC 54 00 04 21 */ rlwinm. r0, r0, 0, 0x10, 0x10
/* 80268570 002641D0 41 82 01 28 */ beq lbl_80268698
/* 80268574 002641D4 A0 03 30 E6 */ lhz r0, 0x30e6(r3)
/* 80268578 002641D8 54 00 04 5E */ rlwinm r0, r0, 0, 0x11, 0xf
/* 8026857C 002641DC 2C 00 02 01 */ cmpwi r0, 0x201
/* 80268580 002641E0 40 80 00 18 */ bge lbl_80268598
/* 80268584 002641E4 2C 00 00 04 */ cmpwi r0, 4
/* 80268588 002641E8 40 80 01 10 */ bge lbl_80268698
/* 8026858C 002641EC 2C 00 00 02 */ cmpwi r0, 2
/* 80268590 002641F0 40 80 00 18 */ bge lbl_802685A8
/* 80268594 002641F4 48 00 01 04 */ b lbl_80268698
lbl_80268598:
/* 80268598 002641F8 2C 00 02 03 */ cmpwi r0, 0x203
/* 8026859C 002641FC 41 82 00 0C */ beq lbl_802685A8
/* 802685A0 00264200 40 80 00 F8 */ bge lbl_80268698
/* 802685A4 00264204 48 00 00 70 */ b lbl_80268614
lbl_802685A8:
/* 802685A8 00264208 2C 1F 00 02 */ cmpwi r31, 2
/* 802685AC 0026420C 41 82 00 40 */ beq lbl_802685EC
/* 802685B0 00264210 40 80 00 14 */ bge lbl_802685C4
/* 802685B4 00264214 2C 1F 00 00 */ cmpwi r31, 0
/* 802685B8 00264218 41 82 00 24 */ beq lbl_802685DC
/* 802685BC 0026421C 40 80 00 28 */ bge lbl_802685E4
/* 802685C0 00264220 48 00 00 44 */ b lbl_80268604
lbl_802685C4:
/* 802685C4 00264224 2C 1F 00 11 */ cmpwi r31, 0x11
/* 802685C8 00264228 41 82 00 34 */ beq lbl_802685FC
/* 802685CC 0026422C 40 80 00 38 */ bge lbl_80268604
/* 802685D0 00264230 2C 1F 00 10 */ cmpwi r31, 0x10
/* 802685D4 00264234 40 80 00 20 */ bge lbl_802685F4
/* 802685D8 00264238 48 00 00 2C */ b lbl_80268604
lbl_802685DC:
/* 802685DC 0026423C 38 60 00 10 */ li r3, 0x10
/* 802685E0 00264240 48 00 01 A8 */ b lbl_80268788
lbl_802685E4:
/* 802685E4 00264244 38 60 00 11 */ li r3, 0x11
/* 802685E8 00264248 48 00 01 A0 */ b lbl_80268788
lbl_802685EC:
/* 802685EC 0026424C 38 60 00 12 */ li r3, 0x12
/* 802685F0 00264250 48 00 01 98 */ b lbl_80268788
lbl_802685F4:
/* 802685F4 00264254 38 60 00 20 */ li r3, 0x20
/* 802685F8 00264258 48 00 01 90 */ b lbl_80268788
lbl_802685FC:
/* 802685FC 0026425C 38 60 00 21 */ li r3, 0x21
/* 80268600 00264260 48 00 01 88 */ b lbl_80268788
lbl_80268604:
/* 80268604 00264264 28 1F 00 11 */ cmplwi r31, 0x11
/* 80268608 00264268 40 81 00 0C */ ble lbl_80268614
/* 8026860C 0026426C 38 60 00 21 */ li r3, 0x21
/* 80268610 00264270 48 00 01 78 */ b lbl_80268788
lbl_80268614:
/* 80268614 00264274 2C 1F 00 02 */ cmpwi r31, 2
/* 80268618 00264278 41 82 00 48 */ beq lbl_80268660
/* 8026861C 0026427C 40 80 00 14 */ bge lbl_80268630
/* 80268620 00264280 2C 1F 00 00 */ cmpwi r31, 0
/* 80268624 00264284 41 82 00 24 */ beq lbl_80268648
/* 80268628 00264288 40 80 00 2C */ bge lbl_80268654
/* 8026862C 0026428C 48 00 00 58 */ b lbl_80268684
lbl_80268630:
/* 80268630 00264290 2C 1F 00 11 */ cmpwi r31, 0x11
/* 80268634 00264294 41 82 00 44 */ beq lbl_80268678
/* 80268638 00264298 40 80 00 4C */ bge lbl_80268684
/* 8026863C 0026429C 2C 1F 00 10 */ cmpwi r31, 0x10
/* 80268640 002642A0 40 80 00 2C */ bge lbl_8026866C
/* 80268644 002642A4 48 00 00 40 */ b lbl_80268684
lbl_80268648:
/* 80268648 002642A8 3C 60 10 00 */ lis r3, 0x10000010@ha
/* 8026864C 002642AC 38 63 00 10 */ addi r3, r3, 0x10000010@l
/* 80268650 002642B0 48 00 01 38 */ b lbl_80268788
lbl_80268654:
/* 80268654 002642B4 3C 60 10 00 */ lis r3, 0x10000011@ha
/* 80268658 002642B8 38 63 00 11 */ addi r3, r3, 0x10000011@l
/* 8026865C 002642BC 48 00 01 2C */ b lbl_80268788
lbl_80268660:
/* 80268660 002642C0 3C 60 10 00 */ lis r3, 0x10000012@ha
/* 80268664 002642C4 38 63 00 12 */ addi r3, r3, 0x10000012@l
/* 80268668 002642C8 48 00 01 20 */ b lbl_80268788
lbl_8026866C:
/* 8026866C 002642CC 3C 60 10 00 */ lis r3, 0x10000020@ha
/* 80268670 002642D0 38 63 00 20 */ addi r3, r3, 0x10000020@l
/* 80268674 002642D4 48 00 01 14 */ b lbl_80268788
lbl_80268678:
/* 80268678 002642D8 3C 60 10 00 */ lis r3, 0x10000021@ha
/* 8026867C 002642DC 38 63 00 21 */ addi r3, r3, 0x10000021@l
/* 80268680 002642E0 48 00 01 08 */ b lbl_80268788
lbl_80268684:
/* 80268684 002642E4 28 1F 00 11 */ cmplwi r31, 0x11
/* 80268688 002642E8 40 81 00 10 */ ble lbl_80268698
/* 8026868C 002642EC 3C 60 10 00 */ lis r3, 0x10000021@ha
/* 80268690 002642F0 38 63 00 21 */ addi r3, r3, 0x10000021@l
/* 80268694 002642F4 48 00 00 F4 */ b lbl_80268788
lbl_80268698:
/* 80268698 002642F8 48 00 6A 71 */ bl OSGetPhysicalMem2Size
/* 8026869C 002642FC 2C 1F 00 02 */ cmpwi r31, 2
/* 802686A0 00264300 41 82 00 68 */ beq lbl_80268708
/* 802686A4 00264304 40 80 00 14 */ bge lbl_802686B8
/* 802686A8 00264308 2C 1F 00 00 */ cmpwi r31, 0
/* 802686AC 0026430C 41 82 00 24 */ beq lbl_802686D0
/* 802686B0 00264310 40 80 00 3C */ bge lbl_802686EC
/* 802686B4 00264314 48 00 00 A8 */ b lbl_8026875C
lbl_802686B8:
/* 802686B8 00264318 2C 1F 00 11 */ cmpwi r31, 0x11
/* 802686BC 0026431C 41 82 00 84 */ beq lbl_80268740
/* 802686C0 00264320 40 80 00 9C */ bge lbl_8026875C
/* 802686C4 00264324 2C 1F 00 10 */ cmpwi r31, 0x10
/* 802686C8 00264328 40 80 00 5C */ bge lbl_80268724
/* 802686CC 0026432C 48 00 00 90 */ b lbl_8026875C
lbl_802686D0:
/* 802686D0 00264330 3C 03 FC 00 */ addis r0, r3, 0xfc00
/* 802686D4 00264334 3C 60 10 00 */ lis r3, 0x10000010@ha
/* 802686D8 00264338 28 00 00 00 */ cmplwi r0, 0
/* 802686DC 0026433C 38 63 00 10 */ addi r3, r3, 0x10000010@l
/* 802686E0 00264340 40 82 00 A8 */ bne lbl_80268788
/* 802686E4 00264344 38 60 00 10 */ li r3, 0x10
/* 802686E8 00264348 48 00 00 A0 */ b lbl_80268788
lbl_802686EC:
/* 802686EC 0026434C 3C 03 FC 00 */ addis r0, r3, 0xfc00
/* 802686F0 00264350 3C 60 10 00 */ lis r3, 0x10000011@ha
/* 802686F4 00264354 28 00 00 00 */ cmplwi r0, 0
/* 802686F8 00264358 38 63 00 11 */ addi r3, r3, 0x10000011@l
/* 802686FC 0026435C 40 82 00 8C */ bne lbl_80268788
/* 80268700 00264360 38 60 00 11 */ li r3, 0x11
/* 80268704 00264364 48 00 00 84 */ b lbl_80268788
lbl_80268708:
/* 80268708 00264368 3C 03 FC 00 */ addis r0, r3, 0xfc00
/* 8026870C 0026436C 3C 60 10 00 */ lis r3, 0x10000012@ha
/* 80268710 00264370 28 00 00 00 */ cmplwi r0, 0
/* 80268714 00264374 38 63 00 12 */ addi r3, r3, 0x10000012@l
/* 80268718 00264378 40 82 00 70 */ bne lbl_80268788
/* 8026871C 0026437C 38 60 00 12 */ li r3, 0x12
/* 80268720 00264380 48 00 00 68 */ b lbl_80268788
lbl_80268724:
/* 80268724 00264384 3C 03 FC 00 */ addis r0, r3, 0xfc00
/* 80268728 00264388 3C 60 10 00 */ lis r3, 0x10000020@ha
/* 8026872C 0026438C 28 00 00 00 */ cmplwi r0, 0
/* 80268730 00264390 38 63 00 20 */ addi r3, r3, 0x10000020@l
/* 80268734 00264394 40 82 00 54 */ bne lbl_80268788
/* 80268738 00264398 38 60 00 20 */ li r3, 0x20
/* 8026873C 0026439C 48 00 00 4C */ b lbl_80268788
lbl_80268740:
/* 80268740 002643A0 3C 03 FC 00 */ addis r0, r3, 0xfc00
/* 80268744 002643A4 3C 60 10 00 */ lis r3, 0x10000021@ha
/* 80268748 002643A8 28 00 00 00 */ cmplwi r0, 0
/* 8026874C 002643AC 38 63 00 21 */ addi r3, r3, 0x10000021@l
/* 80268750 002643B0 40 82 00 38 */ bne lbl_80268788
/* 80268754 002643B4 38 60 00 21 */ li r3, 0x21
/* 80268758 002643B8 48 00 00 30 */ b lbl_80268788
lbl_8026875C:
/* 8026875C 002643BC 28 1F 00 11 */ cmplwi r31, 0x11
/* 80268760 002643C0 40 81 00 20 */ ble lbl_80268780
/* 80268764 002643C4 3C 03 FC 00 */ addis r0, r3, 0xfc00
/* 80268768 002643C8 3C 60 10 00 */ lis r3, 0x10000021@ha
/* 8026876C 002643CC 28 00 00 00 */ cmplwi r0, 0
/* 80268770 002643D0 38 63 00 21 */ addi r3, r3, 0x10000021@l
/* 80268774 002643D4 40 82 00 14 */ bne lbl_80268788
/* 80268778 002643D8 38 60 00 21 */ li r3, 0x21
/* 8026877C 002643DC 48 00 00 0C */ b lbl_80268788
lbl_80268780:
/* 80268780 002643E0 80 6D A7 A0 */ lwz r3, lbl_8063FA60-_SDA_BASE_(r13)
/* 80268784 002643E4 80 63 00 2C */ lwz r3, 0x2c(r3)
lbl_80268788:
/* 80268788 002643E8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8026878C 002643EC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80268790 002643F0 7C 08 03 A6 */ mtlr r0
/* 80268794 002643F4 38 21 00 10 */ addi r1, r1, 0x10
/* 80268798 002643F8 4E 80 00 20 */ blr
.global ClearArena
ClearArena:
/* 8026879C 002643FC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802687A0 00264400 7C 08 02 A6 */ mflr r0
/* 802687A4 00264404 90 01 00 14 */ stw r0, 0x14(r1)
/* 802687A8 00264408 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802687AC 0026440C 93 C1 00 08 */ stw r30, 8(r1)
/* 802687B0 00264410 48 00 7B E1 */ bl OSGetResetCode
/* 802687B4 00264414 54 60 0F FF */ rlwinm. r0, r3, 1, 0x1f, 0x1f
/* 802687B8 00264418 40 82 00 4C */ bne lbl_80268804
/* 802687BC 0026441C 48 00 19 21 */ bl OSGetArenaHi
/* 802687C0 00264420 7C 7F 1B 78 */ mr r31, r3
/* 802687C4 00264424 48 00 19 31 */ bl OSGetArenaLo
/* 802687C8 00264428 7F E3 F8 50 */ subf r31, r3, r31
/* 802687CC 0026442C 48 00 19 29 */ bl OSGetArenaLo
/* 802687D0 00264430 3C 00 00 04 */ lis r0, 4
/* 802687D4 00264434 7C 1F 00 40 */ cmplw r31, r0
/* 802687D8 00264438 40 81 00 10 */ ble lbl_802687E8
/* 802687DC 0026443C 3F DF FF FC */ addis r30, r31, 0xfffc
/* 802687E0 00264440 7F C3 F2 14 */ add r30, r3, r30
/* 802687E4 00264444 48 00 00 08 */ b lbl_802687EC
lbl_802687E8:
/* 802687E8 00264448 7C 7E 1B 78 */ mr r30, r3
lbl_802687EC:
/* 802687EC 0026444C 7F E4 FB 78 */ mr r4, r31
/* 802687F0 00264450 48 00 1F 1D */ bl DCZeroRange
/* 802687F4 00264454 7F C3 F3 78 */ mr r3, r30
/* 802687F8 00264458 3C 80 00 04 */ lis r4, 4
/* 802687FC 0026445C 48 00 1E 59 */ bl DCFlushRange
/* 80268800 00264460 48 00 01 60 */ b lbl_80268960
lbl_80268804:
/* 80268804 00264464 3F E0 80 50 */ lis r31, lbl_80503C80@ha
/* 80268808 00264468 3B FF 3C 80 */ addi r31, r31, lbl_80503C80@l
/* 8026880C 0026446C 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80268810 00264470 2C 00 00 00 */ cmpwi r0, 0
/* 80268814 00264474 41 82 00 0C */ beq lbl_80268820
/* 80268818 00264478 54 00 00 87 */ rlwinm. r0, r0, 0, 2, 3
/* 8026881C 0026447C 41 82 00 4C */ beq lbl_80268868
lbl_80268820:
/* 80268820 00264480 48 00 18 BD */ bl OSGetArenaHi
/* 80268824 00264484 7C 7F 1B 78 */ mr r31, r3
/* 80268828 00264488 48 00 18 CD */ bl OSGetArenaLo
/* 8026882C 0026448C 7F E3 F8 50 */ subf r31, r3, r31
/* 80268830 00264490 48 00 18 C5 */ bl OSGetArenaLo
/* 80268834 00264494 3C 00 00 04 */ lis r0, 4
/* 80268838 00264498 7C 1F 00 40 */ cmplw r31, r0
/* 8026883C 0026449C 40 81 00 10 */ ble lbl_8026884C
/* 80268840 002644A0 3F DF FF FC */ addis r30, r31, 0xfffc
/* 80268844 002644A4 7F C3 F2 14 */ add r30, r3, r30
/* 80268848 002644A8 48 00 00 08 */ b lbl_80268850
lbl_8026884C:
/* 8026884C 002644AC 7C 7E 1B 78 */ mr r30, r3
lbl_80268850:
/* 80268850 002644B0 7F E4 FB 78 */ mr r4, r31
/* 80268854 002644B4 48 00 1E B9 */ bl DCZeroRange
/* 80268858 002644B8 7F C3 F3 78 */ mr r3, r30
/* 8026885C 002644BC 3C 80 00 04 */ lis r4, 4
/* 80268860 002644C0 48 00 1D F5 */ bl DCFlushRange
/* 80268864 002644C4 48 00 00 FC */ b lbl_80268960
lbl_80268868:
/* 80268868 002644C8 48 00 18 8D */ bl OSGetArenaLo
/* 8026886C 002644CC 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80268870 002644D0 7C 03 00 40 */ cmplw r3, r0
/* 80268874 002644D4 40 80 00 EC */ bge lbl_80268960
/* 80268878 002644D8 48 00 18 65 */ bl OSGetArenaHi
/* 8026887C 002644DC 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80268880 002644E0 7C 03 00 40 */ cmplw r3, r0
/* 80268884 002644E4 41 81 00 4C */ bgt lbl_802688D0
/* 80268888 002644E8 48 00 18 55 */ bl OSGetArenaHi
/* 8026888C 002644EC 7C 7F 1B 78 */ mr r31, r3
/* 80268890 002644F0 48 00 18 65 */ bl OSGetArenaLo
/* 80268894 002644F4 7F E3 F8 50 */ subf r31, r3, r31
/* 80268898 002644F8 48 00 18 5D */ bl OSGetArenaLo
/* 8026889C 002644FC 3C 00 00 04 */ lis r0, 4
/* 802688A0 00264500 7C 1F 00 40 */ cmplw r31, r0
/* 802688A4 00264504 40 81 00 10 */ ble lbl_802688B4
/* 802688A8 00264508 3F DF FF FC */ addis r30, r31, 0xfffc
/* 802688AC 0026450C 7F C3 F2 14 */ add r30, r3, r30
/* 802688B0 00264510 48 00 00 08 */ b lbl_802688B8
lbl_802688B4:
/* 802688B4 00264514 7C 7E 1B 78 */ mr r30, r3
lbl_802688B8:
/* 802688B8 00264518 7F E4 FB 78 */ mr r4, r31
/* 802688BC 0026451C 48 00 1E 51 */ bl DCZeroRange
/* 802688C0 00264520 7F C3 F3 78 */ mr r3, r30
/* 802688C4 00264524 3C 80 00 04 */ lis r4, 4
/* 802688C8 00264528 48 00 1D 8D */ bl DCFlushRange
/* 802688CC 0026452C 48 00 00 94 */ b lbl_80268960
lbl_802688D0:
/* 802688D0 00264530 48 00 18 25 */ bl OSGetArenaLo
/* 802688D4 00264534 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 802688D8 00264538 7F E3 00 50 */ subf r31, r3, r0
/* 802688DC 0026453C 48 00 18 19 */ bl OSGetArenaLo
/* 802688E0 00264540 3C 00 00 04 */ lis r0, 4
/* 802688E4 00264544 7C 1F 00 40 */ cmplw r31, r0
/* 802688E8 00264548 40 81 00 10 */ ble lbl_802688F8
/* 802688EC 0026454C 3F DF FF FC */ addis r30, r31, 0xfffc
/* 802688F0 00264550 7F C3 F2 14 */ add r30, r3, r30
/* 802688F4 00264554 48 00 00 08 */ b lbl_802688FC
lbl_802688F8:
/* 802688F8 00264558 7C 7E 1B 78 */ mr r30, r3
lbl_802688FC:
/* 802688FC 0026455C 7F E4 FB 78 */ mr r4, r31
/* 80268900 00264560 48 00 1E 0D */ bl DCZeroRange
/* 80268904 00264564 7F C3 F3 78 */ mr r3, r30
/* 80268908 00264568 3C 80 00 04 */ lis r4, 4
/* 8026890C 0026456C 48 00 1D 49 */ bl DCFlushRange
/* 80268910 00264570 3C 60 80 50 */ lis r3, lbl_80503C80@ha
/* 80268914 00264574 38 63 3C 80 */ addi r3, r3, lbl_80503C80@l
/* 80268918 00264578 83 E3 00 10 */ lwz r31, 0x10(r3)
/* 8026891C 0026457C 48 00 17 C1 */ bl OSGetArenaHi
/* 80268920 00264580 7C 03 F8 40 */ cmplw r3, r31
/* 80268924 00264584 40 81 00 3C */ ble lbl_80268960
/* 80268928 00264588 48 00 17 B5 */ bl OSGetArenaHi
/* 8026892C 0026458C 7C 9F 18 50 */ subf r4, r31, r3
/* 80268930 00264590 3C 00 00 04 */ lis r0, 4
/* 80268934 00264594 7C 04 00 40 */ cmplw r4, r0
/* 80268938 00264598 40 81 00 10 */ ble lbl_80268948
/* 8026893C 0026459C 3F C4 FF FC */ addis r30, r4, 0xfffc
/* 80268940 002645A0 7F DF F2 14 */ add r30, r31, r30
/* 80268944 002645A4 48 00 00 08 */ b lbl_8026894C
lbl_80268948:
/* 80268948 002645A8 7F FE FB 78 */ mr r30, r31
lbl_8026894C:
/* 8026894C 002645AC 7F E3 FB 78 */ mr r3, r31
/* 80268950 002645B0 48 00 1D BD */ bl DCZeroRange
/* 80268954 002645B4 7F C3 F3 78 */ mr r3, r30
/* 80268958 002645B8 3C 80 00 04 */ lis r4, 4
/* 8026895C 002645BC 48 00 1C F9 */ bl DCFlushRange
lbl_80268960:
/* 80268960 002645C0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80268964 002645C4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80268968 002645C8 83 C1 00 08 */ lwz r30, 8(r1)
/* 8026896C 002645CC 7C 08 03 A6 */ mtlr r0
/* 80268970 002645D0 38 21 00 10 */ addi r1, r1, 0x10
/* 80268974 002645D4 4E 80 00 20 */ blr
.global ClearMEM2Arena
ClearMEM2Arena:
/* 80268978 002645D8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8026897C 002645DC 7C 08 02 A6 */ mflr r0
/* 80268980 002645E0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80268984 002645E4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80268988 002645E8 93 C1 00 08 */ stw r30, 8(r1)
/* 8026898C 002645EC 48 00 7A 05 */ bl OSGetResetCode
/* 80268990 002645F0 54 60 0F FF */ rlwinm. r0, r3, 1, 0x1f, 0x1f
/* 80268994 002645F4 40 82 00 4C */ bne lbl_802689E0
/* 80268998 002645F8 48 00 17 3D */ bl OSGetMEM2ArenaHi
/* 8026899C 002645FC 7C 7F 1B 78 */ mr r31, r3
/* 802689A0 00264600 48 00 17 4D */ bl OSGetMEM2ArenaLo
/* 802689A4 00264604 7F E3 F8 50 */ subf r31, r3, r31
/* 802689A8 00264608 48 00 17 45 */ bl OSGetMEM2ArenaLo
/* 802689AC 0026460C 3C 00 00 04 */ lis r0, 4
/* 802689B0 00264610 7C 1F 00 40 */ cmplw r31, r0
/* 802689B4 00264614 40 81 00 10 */ ble lbl_802689C4
/* 802689B8 00264618 3F DF FF FC */ addis r30, r31, 0xfffc
/* 802689BC 0026461C 7F C3 F2 14 */ add r30, r3, r30
/* 802689C0 00264620 48 00 00 08 */ b lbl_802689C8
lbl_802689C4:
/* 802689C4 00264624 7C 7E 1B 78 */ mr r30, r3
lbl_802689C8:
/* 802689C8 00264628 7F E4 FB 78 */ mr r4, r31
/* 802689CC 0026462C 48 00 1D 41 */ bl DCZeroRange
/* 802689D0 00264630 7F C3 F3 78 */ mr r3, r30
/* 802689D4 00264634 3C 80 00 04 */ lis r4, 4
/* 802689D8 00264638 48 00 1C 7D */ bl DCFlushRange
/* 802689DC 0026463C 48 00 01 68 */ b lbl_80268B44
lbl_802689E0:
/* 802689E0 00264640 3F E0 80 50 */ lis r31, lbl_80503C80@ha
/* 802689E4 00264644 3B FF 3C 80 */ addi r31, r31, lbl_80503C80@l
/* 802689E8 00264648 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 802689EC 0026464C 2C 00 00 00 */ cmpwi r0, 0
/* 802689F0 00264650 41 82 00 14 */ beq lbl_80268A04
/* 802689F4 00264654 54 03 00 86 */ rlwinm r3, r0, 0, 2, 3
/* 802689F8 00264658 3C 03 F0 00 */ addis r0, r3, 0xf000
/* 802689FC 0026465C 28 00 00 00 */ cmplwi r0, 0
/* 80268A00 00264660 41 82 00 4C */ beq lbl_80268A4C
lbl_80268A04:
/* 80268A04 00264664 48 00 16 D1 */ bl OSGetMEM2ArenaHi
/* 80268A08 00264668 7C 7F 1B 78 */ mr r31, r3
/* 80268A0C 0026466C 48 00 16 E1 */ bl OSGetMEM2ArenaLo
/* 80268A10 00264670 7F E3 F8 50 */ subf r31, r3, r31
/* 80268A14 00264674 48 00 16 D9 */ bl OSGetMEM2ArenaLo
/* 80268A18 00264678 3C 00 00 04 */ lis r0, 4
/* 80268A1C 0026467C 7C 1F 00 40 */ cmplw r31, r0
/* 80268A20 00264680 40 81 00 10 */ ble lbl_80268A30
/* 80268A24 00264684 3F DF FF FC */ addis r30, r31, 0xfffc
/* 80268A28 00264688 7F C3 F2 14 */ add r30, r3, r30
/* 80268A2C 0026468C 48 00 00 08 */ b lbl_80268A34
lbl_80268A30:
/* 80268A30 00264690 7C 7E 1B 78 */ mr r30, r3
lbl_80268A34:
/* 80268A34 00264694 7F E4 FB 78 */ mr r4, r31
/* 80268A38 00264698 48 00 1C D5 */ bl DCZeroRange
/* 80268A3C 0026469C 7F C3 F3 78 */ mr r3, r30
/* 80268A40 002646A0 3C 80 00 04 */ lis r4, 4
/* 80268A44 002646A4 48 00 1C 11 */ bl DCFlushRange
/* 80268A48 002646A8 48 00 00 FC */ b lbl_80268B44
lbl_80268A4C:
/* 80268A4C 002646AC 48 00 16 A1 */ bl OSGetMEM2ArenaLo
/* 80268A50 002646B0 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80268A54 002646B4 7C 03 00 40 */ cmplw r3, r0
/* 80268A58 002646B8 40 80 00 EC */ bge lbl_80268B44
/* 80268A5C 002646BC 48 00 16 79 */ bl OSGetMEM2ArenaHi
/* 80268A60 002646C0 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80268A64 002646C4 7C 03 00 40 */ cmplw r3, r0
/* 80268A68 002646C8 41 81 00 4C */ bgt lbl_80268AB4
/* 80268A6C 002646CC 48 00 16 69 */ bl OSGetMEM2ArenaHi
/* 80268A70 002646D0 7C 7F 1B 78 */ mr r31, r3
/* 80268A74 002646D4 48 00 16 79 */ bl OSGetMEM2ArenaLo
/* 80268A78 002646D8 7F E3 F8 50 */ subf r31, r3, r31
/* 80268A7C 002646DC 48 00 16 71 */ bl OSGetMEM2ArenaLo
/* 80268A80 002646E0 3C 00 00 04 */ lis r0, 4
/* 80268A84 002646E4 7C 1F 00 40 */ cmplw r31, r0
/* 80268A88 002646E8 40 81 00 10 */ ble lbl_80268A98
/* 80268A8C 002646EC 3F DF FF FC */ addis r30, r31, 0xfffc
/* 80268A90 002646F0 7F C3 F2 14 */ add r30, r3, r30
/* 80268A94 002646F4 48 00 00 08 */ b lbl_80268A9C
lbl_80268A98:
/* 80268A98 002646F8 7C 7E 1B 78 */ mr r30, r3
lbl_80268A9C:
/* 80268A9C 002646FC 7F E4 FB 78 */ mr r4, r31
/* 80268AA0 00264700 48 00 1C 6D */ bl DCZeroRange
/* 80268AA4 00264704 7F C3 F3 78 */ mr r3, r30
/* 80268AA8 00264708 3C 80 00 04 */ lis r4, 4
/* 80268AAC 0026470C 48 00 1B A9 */ bl DCFlushRange
/* 80268AB0 00264710 48 00 00 94 */ b lbl_80268B44
lbl_80268AB4:
/* 80268AB4 00264714 48 00 16 39 */ bl OSGetMEM2ArenaLo
/* 80268AB8 00264718 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80268ABC 0026471C 7F E3 00 50 */ subf r31, r3, r0
/* 80268AC0 00264720 48 00 16 2D */ bl OSGetMEM2ArenaLo
/* 80268AC4 00264724 3C 00 00 04 */ lis r0, 4
/* 80268AC8 00264728 7C 1F 00 40 */ cmplw r31, r0
/* 80268ACC 0026472C 40 81 00 10 */ ble lbl_80268ADC
/* 80268AD0 00264730 3F DF FF FC */ addis r30, r31, 0xfffc
/* 80268AD4 00264734 7F C3 F2 14 */ add r30, r3, r30
/* 80268AD8 00264738 48 00 00 08 */ b lbl_80268AE0
lbl_80268ADC:
/* 80268ADC 0026473C 7C 7E 1B 78 */ mr r30, r3
lbl_80268AE0:
/* 80268AE0 00264740 7F E4 FB 78 */ mr r4, r31
/* 80268AE4 00264744 48 00 1C 29 */ bl DCZeroRange
/* 80268AE8 00264748 7F C3 F3 78 */ mr r3, r30
/* 80268AEC 0026474C 3C 80 00 04 */ lis r4, 4
/* 80268AF0 00264750 48 00 1B 65 */ bl DCFlushRange
/* 80268AF4 00264754 3C 60 80 50 */ lis r3, lbl_80503C80@ha
/* 80268AF8 00264758 38 63 3C 80 */ addi r3, r3, lbl_80503C80@l
/* 80268AFC 0026475C 83 E3 00 10 */ lwz r31, 0x10(r3)
/* 80268B00 00264760 48 00 15 D5 */ bl OSGetMEM2ArenaHi
/* 80268B04 00264764 7C 03 F8 40 */ cmplw r3, r31
/* 80268B08 00264768 40 81 00 3C */ ble lbl_80268B44
/* 80268B0C 0026476C 48 00 15 C9 */ bl OSGetMEM2ArenaHi
/* 80268B10 00264770 7C 9F 18 50 */ subf r4, r31, r3
/* 80268B14 00264774 3C 00 00 04 */ lis r0, 4
/* 80268B18 00264778 7C 04 00 40 */ cmplw r4, r0
/* 80268B1C 0026477C 40 81 00 10 */ ble lbl_80268B2C
/* 80268B20 00264780 3F C4 FF FC */ addis r30, r4, 0xfffc
/* 80268B24 00264784 7F DF F2 14 */ add r30, r31, r30
/* 80268B28 00264788 48 00 00 08 */ b lbl_80268B30
lbl_80268B2C:
/* 80268B2C 0026478C 7F FE FB 78 */ mr r30, r31
lbl_80268B30:
/* 80268B30 00264790 7F E3 FB 78 */ mr r3, r31
/* 80268B34 00264794 48 00 1B D9 */ bl DCZeroRange
/* 80268B38 00264798 7F C3 F3 78 */ mr r3, r30
/* 80268B3C 0026479C 3C 80 00 04 */ lis r4, 4
/* 80268B40 002647A0 48 00 1B 15 */ bl DCFlushRange
lbl_80268B44:
/* 80268B44 002647A4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80268B48 002647A8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80268B4C 002647AC 83 C1 00 08 */ lwz r30, 8(r1)
/* 80268B50 002647B0 7C 08 03 A6 */ mtlr r0
/* 80268B54 002647B4 38 21 00 10 */ addi r1, r1, 0x10
/* 80268B58 002647B8 4E 80 00 20 */ blr
.global InquiryCallback
InquiryCallback:
/* 80268B5C 002647BC 80 04 00 0C */ lwz r0, 0xc(r4)
/* 80268B60 002647C0 2C 00 00 00 */ cmpwi r0, 0
/* 80268B64 002647C4 41 82 00 08 */ beq lbl_80268B6C
/* 80268B68 002647C8 48 00 00 20 */ b lbl_80268B88
lbl_80268B6C:
/* 80268B6C 002647CC 3C 80 80 50 */ lis r4, lbl_80503CA0@ha
/* 80268B70 002647D0 3C 60 80 00 */ lis r3, 0x800030E6@ha
/* 80268B74 002647D4 38 84 3C A0 */ addi r4, r4, lbl_80503CA0@l
/* 80268B78 002647D8 A0 04 00 02 */ lhz r0, 2(r4)
/* 80268B7C 002647DC 60 00 80 00 */ ori r0, r0, 0x8000
/* 80268B80 002647E0 B0 03 30 E6 */ sth r0, 0x800030E6@l(r3)
/* 80268B84 002647E4 4E 80 00 20 */ blr
lbl_80268B88:
/* 80268B88 002647E8 38 00 00 01 */ li r0, 1
/* 80268B8C 002647EC 3C 60 80 00 */ lis r3, 0x800030E6@ha
/* 80268B90 002647F0 B0 03 30 E6 */ sth r0, 0x800030E6@l(r3)
/* 80268B94 002647F4 4E 80 00 20 */ blr
.global ReportOSInfo
ReportOSInfo:
/* 80268B98 002647F8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80268B9C 002647FC 7C 08 02 A6 */ mflr r0
/* 80268BA0 00264800 90 01 00 14 */ stw r0, 0x14(r1)
/* 80268BA4 00264804 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80268BA8 00264808 3F E0 80 42 */ lis r31, lbl_804265E0@ha
/* 80268BAC 0026480C 3B FF 65 E0 */ addi r31, r31, lbl_804265E0@l
/* 80268BB0 00264810 93 C1 00 08 */ stw r30, 8(r1)
/* 80268BB4 00264814 38 7F 00 48 */ addi r3, r31, 0x48
/* 80268BB8 00264818 4C C6 31 82 */ crclr 6
/* 80268BBC 0026481C 4B D9 EF 09 */ bl OSReport
/* 80268BC0 00264820 38 7F 00 58 */ addi r3, r31, 0x58
/* 80268BC4 00264824 38 9F 00 70 */ addi r4, r31, 0x70
/* 80268BC8 00264828 38 BF 00 7C */ addi r5, r31, 0x7c
/* 80268BCC 0026482C 4C C6 31 82 */ crclr 6
/* 80268BD0 00264830 4B D9 EE F5 */ bl OSReport
/* 80268BD4 00264834 38 7F 00 88 */ addi r3, r31, 0x88
/* 80268BD8 00264838 4C C6 31 82 */ crclr 6
/* 80268BDC 0026483C 4B D9 EE E9 */ bl OSReport
/* 80268BE0 00264840 4B FF F9 4D */ bl OSGetConsoleType
/* 80268BE4 00264844 54 64 00 06 */ rlwinm r4, r3, 0, 0, 3
/* 80268BE8 00264848 3C 00 10 00 */ lis r0, 0x1000
/* 80268BEC 0026484C 7C 04 00 00 */ cmpw r4, r0
/* 80268BF0 00264850 41 82 00 8C */ beq lbl_80268C7C
/* 80268BF4 00264854 40 80 00 10 */ bge lbl_80268C04
/* 80268BF8 00264858 2C 04 00 00 */ cmpwi r4, 0
/* 80268BFC 0026485C 41 82 00 18 */ beq lbl_80268C14
/* 80268C00 00264860 48 00 01 30 */ b lbl_80268D30
lbl_80268C04:
/* 80268C04 00264864 3C 00 20 00 */ lis r0, 0x2000
/* 80268C08 00264868 7C 04 00 00 */ cmpw r4, r0
/* 80268C0C 0026486C 41 82 01 0C */ beq lbl_80268D18
/* 80268C10 00264870 48 00 01 20 */ b lbl_80268D30
lbl_80268C14:
/* 80268C14 00264874 2C 03 00 12 */ cmpwi r3, 0x12
/* 80268C18 00264878 41 82 00 30 */ beq lbl_80268C48
/* 80268C1C 0026487C 40 80 00 10 */ bge lbl_80268C2C
/* 80268C20 00264880 2C 03 00 11 */ cmpwi r3, 0x11
/* 80268C24 00264884 40 80 00 14 */ bge lbl_80268C38
/* 80268C28 00264888 48 00 00 40 */ b lbl_80268C68
lbl_80268C2C:
/* 80268C2C 0026488C 2C 03 00 20 */ cmpwi r3, 0x20
/* 80268C30 00264890 41 82 00 28 */ beq lbl_80268C58
/* 80268C34 00264894 48 00 00 34 */ b lbl_80268C68
lbl_80268C38:
/* 80268C38 00264898 38 7F 00 98 */ addi r3, r31, 0x98
/* 80268C3C 0026489C 4C C6 31 82 */ crclr 6
/* 80268C40 002648A0 4B D9 EE 85 */ bl OSReport
/* 80268C44 002648A4 48 00 00 FC */ b lbl_80268D40
lbl_80268C48:
/* 80268C48 002648A8 38 7F 00 B0 */ addi r3, r31, 0xb0
/* 80268C4C 002648AC 4C C6 31 82 */ crclr 6
/* 80268C50 002648B0 4B D9 EE 75 */ bl OSReport
/* 80268C54 002648B4 48 00 00 EC */ b lbl_80268D40
lbl_80268C58:
/* 80268C58 002648B8 38 7F 00 CC */ addi r3, r31, 0xcc
/* 80268C5C 002648BC 4C C6 31 82 */ crclr 6
/* 80268C60 002648C0 4B D9 EE 65 */ bl OSReport
/* 80268C64 002648C4 48 00 00 DC */ b lbl_80268D40
lbl_80268C68:
/* 80268C68 002648C8 7C 64 1B 78 */ mr r4, r3
/* 80268C6C 002648CC 38 7F 00 E8 */ addi r3, r31, 0xe8
/* 80268C70 002648D0 4C C6 31 82 */ crclr 6
/* 80268C74 002648D4 4B D9 EE 51 */ bl OSReport
/* 80268C78 002648D8 48 00 00 C8 */ b lbl_80268D40
lbl_80268C7C:
/* 80268C7C 002648DC 3C A3 F0 00 */ addis r5, r3, 0xf000
/* 80268C80 002648E0 38 A5 FF F8 */ addi r5, r5, -8
/* 80268C84 002648E4 28 05 00 19 */ cmplwi r5, 0x19
/* 80268C88 002648E8 41 81 00 7C */ bgt lbl_80268D04
/* 80268C8C 002648EC 3C 80 80 42 */ lis r4, lbl_804267D0@ha
/* 80268C90 002648F0 54 A5 10 3A */ slwi r5, r5, 2
/* 80268C94 002648F4 38 84 67 D0 */ addi r4, r4, lbl_804267D0@l
/* 80268C98 002648F8 7C 84 28 2E */ lwzx r4, r4, r5
/* 80268C9C 002648FC 7C 89 03 A6 */ mtctr r4
/* 80268CA0 00264900 4E 80 04 20 */ bctr
/* 80268CA4 00264904 38 7F 00 F4 */ addi r3, r31, 0xf4
/* 80268CA8 00264908 4C C6 31 82 */ crclr 6
/* 80268CAC 0026490C 4B D9 EE 19 */ bl OSReport
/* 80268CB0 00264910 48 00 00 90 */ b lbl_80268D40
/* 80268CB4 00264914 38 7F 01 00 */ addi r3, r31, 0x100
/* 80268CB8 00264918 4C C6 31 82 */ crclr 6
/* 80268CBC 0026491C 4B D9 EE 09 */ bl OSReport
/* 80268CC0 00264920 48 00 00 80 */ b lbl_80268D40
/* 80268CC4 00264924 38 7F 01 0C */ addi r3, r31, 0x10c
/* 80268CC8 00264928 4C C6 31 82 */ crclr 6
/* 80268CCC 0026492C 4B D9 ED F9 */ bl OSReport
/* 80268CD0 00264930 48 00 00 70 */ b lbl_80268D40
/* 80268CD4 00264934 38 7F 01 18 */ addi r3, r31, 0x118
/* 80268CD8 00264938 4C C6 31 82 */ crclr 6
/* 80268CDC 0026493C 4B D9 ED E9 */ bl OSReport
/* 80268CE0 00264940 48 00 00 60 */ b lbl_80268D40
/* 80268CE4 00264944 38 7F 01 24 */ addi r3, r31, 0x124
/* 80268CE8 00264948 4C C6 31 82 */ crclr 6
/* 80268CEC 0026494C 4B D9 ED D9 */ bl OSReport
/* 80268CF0 00264950 48 00 00 50 */ b lbl_80268D40
/* 80268CF4 00264954 38 7F 01 30 */ addi r3, r31, 0x130
/* 80268CF8 00264958 4C C6 31 82 */ crclr 6
/* 80268CFC 0026495C 4B D9 ED C9 */ bl OSReport
/* 80268D00 00264960 48 00 00 40 */ b lbl_80268D40
lbl_80268D04:
/* 80268D04 00264964 7C 64 1B 78 */ mr r4, r3
/* 80268D08 00264968 38 7F 01 48 */ addi r3, r31, 0x148
/* 80268D0C 0026496C 4C C6 31 82 */ crclr 6
/* 80268D10 00264970 4B D9 ED B5 */ bl OSReport
/* 80268D14 00264974 48 00 00 2C */ b lbl_80268D40
lbl_80268D18:
/* 80268D18 00264978 54 64 01 3E */ clrlwi r4, r3, 4
/* 80268D1C 0026497C 38 7F 01 64 */ addi r3, r31, 0x164
/* 80268D20 00264980 38 84 FF FD */ addi r4, r4, -3
/* 80268D24 00264984 4C C6 31 82 */ crclr 6
/* 80268D28 00264988 4B D9 ED 9D */ bl OSReport
/* 80268D2C 0026498C 48 00 00 14 */ b lbl_80268D40
lbl_80268D30:
/* 80268D30 00264990 7C 64 1B 78 */ mr r4, r3
/* 80268D34 00264994 38 6D 87 84 */ addi r3, r13, lbl_8063DA44-_SDA_BASE_
/* 80268D38 00264998 4C C6 31 82 */ crclr 6
/* 80268D3C 0026499C 4B D9 ED 89 */ bl OSReport
lbl_80268D40:
/* 80268D40 002649A0 3C 80 C0 00 */ lis r4, 0xC0003140@ha
/* 80268D44 002649A4 38 7F 01 80 */ addi r3, r31, 0x180
/* 80268D48 002649A8 80 04 31 40 */ lwz r0, 0xC0003140@l(r4)
/* 80268D4C 002649AC 83 C4 31 44 */ lwz r30, 0x3144(r4)
/* 80268D50 002649B0 54 04 86 3E */ rlwinm r4, r0, 0x10, 0x18, 0x1f
/* 80268D54 002649B4 54 05 C6 3E */ rlwinm r5, r0, 0x18, 0x18, 0x1f
/* 80268D58 002649B8 54 06 06 3E */ clrlwi r6, r0, 0x18
/* 80268D5C 002649BC 4C C6 31 82 */ crclr 6
/* 80268D60 002649C0 4B D9 ED 65 */ bl OSReport
/* 80268D64 002649C4 57 C3 E7 3E */ rlwinm r3, r30, 0x1c, 0x1c, 0x1f
/* 80268D68 002649C8 57 C6 67 3E */ rlwinm r6, r30, 0xc, 0x1c, 0x1f
/* 80268D6C 002649CC 1C 83 00 0A */ mulli r4, r3, 0xa
/* 80268D70 002649D0 57 C5 A7 3E */ rlwinm r5, r30, 0x14, 0x1c, 0x1f
/* 80268D74 002649D4 57 C0 07 3E */ clrlwi r0, r30, 0x1c
/* 80268D78 002649D8 57 C8 87 3E */ rlwinm r8, r30, 0x10, 0x1c, 0x1f
/* 80268D7C 002649DC 7C 80 22 14 */ add r4, r0, r4
/* 80268D80 002649E0 57 C7 C7 3E */ rlwinm r7, r30, 0x18, 0x1c, 0x1f
/* 80268D84 002649E4 1C C6 00 0A */ mulli r6, r6, 0xa
/* 80268D88 002649E8 38 7F 01 9C */ addi r3, r31, 0x19c
/* 80268D8C 002649EC 38 04 07 D0 */ addi r0, r4, 0x7d0
/* 80268D90 002649F0 7C 88 32 14 */ add r4, r8, r6
/* 80268D94 002649F4 1C A5 00 0A */ mulli r5, r5, 0xa
/* 80268D98 002649F8 54 06 04 3E */ clrlwi r6, r0, 0x10
/* 80268D9C 002649FC 54 84 06 3E */ clrlwi r4, r4, 0x18
/* 80268DA0 00264A00 7C 07 2A 14 */ add r0, r7, r5
/* 80268DA4 00264A04 54 05 06 3E */ clrlwi r5, r0, 0x18
/* 80268DA8 00264A08 4C C6 31 82 */ crclr 6
/* 80268DAC 00264A0C 4B D9 ED 19 */ bl OSReport
/* 80268DB0 00264A10 48 00 63 71 */ bl OSGetConsoleSimulatedMem2Size
/* 80268DB4 00264A14 7C 7E 1B 78 */ mr r30, r3
/* 80268DB8 00264A18 48 00 63 5D */ bl OSGetConsoleSimulatedMem1Size
/* 80268DBC 00264A1C 7C 03 F2 14 */ add r0, r3, r30
/* 80268DC0 00264A20 38 7F 01 A8 */ addi r3, r31, 0x1a8
/* 80268DC4 00264A24 54 04 65 3E */ srwi r4, r0, 0x14
/* 80268DC8 00264A28 4C C6 31 82 */ crclr 6
/* 80268DCC 00264A2C 4B D9 EC F9 */ bl OSReport
/* 80268DD0 00264A30 48 00 12 FD */ bl OSGetMEM1ArenaHi
/* 80268DD4 00264A34 7C 7E 1B 78 */ mr r30, r3
/* 80268DD8 00264A38 48 00 13 0D */ bl OSGetMEM1ArenaLo
/* 80268DDC 00264A3C 7C 64 1B 78 */ mr r4, r3
/* 80268DE0 00264A40 7F C5 F3 78 */ mr r5, r30
/* 80268DE4 00264A44 38 7F 01 B8 */ addi r3, r31, 0x1b8
/* 80268DE8 00264A48 4C C6 31 82 */ crclr 6
/* 80268DEC 00264A4C 4B D9 EC D9 */ bl OSReport
/* 80268DF0 00264A50 48 00 12 E5 */ bl OSGetMEM2ArenaHi
/* 80268DF4 00264A54 7C 7E 1B 78 */ mr r30, r3
/* 80268DF8 00264A58 48 00 12 F5 */ bl OSGetMEM2ArenaLo
/* 80268DFC 00264A5C 7C 64 1B 78 */ mr r4, r3
/* 80268E00 00264A60 7F C5 F3 78 */ mr r5, r30
/* 80268E04 00264A64 38 7F 01 D4 */ addi r3, r31, 0x1d4
/* 80268E08 00264A68 4C C6 31 82 */ crclr 6
/* 80268E0C 00264A6C 4B D9 EC B9 */ bl OSReport
/* 80268E10 00264A70 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80268E14 00264A74 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80268E18 00264A78 83 C1 00 08 */ lwz r30, 8(r1)
/* 80268E1C 00264A7C 7C 08 03 A6 */ mtlr r0
/* 80268E20 00264A80 38 21 00 10 */ addi r1, r1, 0x10
/* 80268E24 00264A84 4E 80 00 20 */ blr
.global OSInit
OSInit:
/* 80268E28 00264A88 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80268E2C 00264A8C 7C 08 02 A6 */ mflr r0
/* 80268E30 00264A90 90 01 00 14 */ stw r0, 0x14(r1)
/* 80268E34 00264A94 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80268E38 00264A98 3F E0 80 42 */ lis r31, lbl_804265E0@ha
/* 80268E3C 00264A9C 3B FF 65 E0 */ addi r31, r31, lbl_804265E0@l
/* 80268E40 00264AA0 93 C1 00 08 */ stw r30, 8(r1)
/* 80268E44 00264AA4 3F C0 80 50 */ lis r30, lbl_80503C80@ha
/* 80268E48 00264AA8 3B DE 3C 80 */ addi r30, r30, lbl_80503C80@l
/* 80268E4C 00264AAC 80 0D A7 74 */ lwz r0, lbl_8063FA34-_SDA_BASE_(r13)
/* 80268E50 00264AB0 2C 00 00 00 */ cmpwi r0, 0
/* 80268E54 00264AB4 40 82 03 C0 */ bne lbl_80269214
/* 80268E58 00264AB8 38 00 00 01 */ li r0, 1
/* 80268E5C 00264ABC 90 0D A7 74 */ stw r0, lbl_8063FA34-_SDA_BASE_(r13)
/* 80268E60 00264AC0 48 00 99 79 */ bl __OSGetSystemTime
/* 80268E64 00264AC4 90 8D A7 AC */ stw r4, lbl_8063FA6C-_SDA_BASE_(r13)
/* 80268E68 00264AC8 90 6D A7 A8 */ stw r3, lbl_8063FA68-_SDA_BASE_(r13)
/* 80268E6C 00264ACC 48 00 58 F1 */ bl OSDisableInterrupts
/* 80268E70 00264AD0 38 7E 00 00 */ addi r3, r30, 0
/* 80268E74 00264AD4 48 00 2E 95 */ bl __OSGetExecParams
/* 80268E78 00264AD8 38 60 00 00 */ li r3, 0
/* 80268E7C 00264ADC 4B FF F4 01 */ bl PPCMtmmcr0
/* 80268E80 00264AE0 38 60 00 00 */ li r3, 0
/* 80268E84 00264AE4 4B FF F4 01 */ bl PPCMtmmcr1
/* 80268E88 00264AE8 38 60 00 00 */ li r3, 0
/* 80268E8C 00264AEC 4B FF F4 01 */ bl PPCMtpmc1
/* 80268E90 00264AF0 38 60 00 00 */ li r3, 0
/* 80268E94 00264AF4 4B FF F4 01 */ bl PPCMtpmc2
/* 80268E98 00264AF8 38 60 00 00 */ li r3, 0
/* 80268E9C 00264AFC 4B FF F4 01 */ bl PPCMtpmc3
/* 80268EA0 00264B00 38 60 00 00 */ li r3, 0
/* 80268EA4 00264B04 4B FF F4 01 */ bl PPCMtpmc4
/* 80268EA8 00264B08 3C 60 83 90 */ lis r3, 0x8390
/* 80268EAC 00264B0C 4B FF F4 9D */ bl PPCMthid4
/* 80268EB0 00264B10 4B FF F4 69 */ bl PPCDisableSpeculation
/* 80268EB4 00264B14 4B FF F4 8D */ bl PPCSetFpNonIEEEMode
/* 80268EB8 00264B18 38 00 00 00 */ li r0, 0
/* 80268EBC 00264B1C 3C 80 80 00 */ lis r4, 0x800000F4@ha
/* 80268EC0 00264B20 90 8D A7 A0 */ stw r4, lbl_8063FA60-_SDA_BASE_(r13)
/* 80268EC4 00264B24 90 0D A7 9C */ stw r0, lbl_8063FA5C-_SDA_BASE_(r13)
/* 80268EC8 00264B28 90 0D 88 A8 */ stw r0, lbl_8063DB68-_SDA_BASE_(r13)
/* 80268ECC 00264B2C 80 A4 00 F4 */ lwz r5, 0x800000F4@l(r4)
/* 80268ED0 00264B30 2C 05 00 00 */ cmpwi r5, 0
/* 80268ED4 00264B34 41 82 00 28 */ beq lbl_80268EFC
/* 80268ED8 00264B38 38 65 00 0C */ addi r3, r5, 0xc
/* 80268EDC 00264B3C 90 6D A7 9C */ stw r3, lbl_8063FA5C-_SDA_BASE_(r13)
/* 80268EE0 00264B40 80 05 00 24 */ lwz r0, 0x24(r5)
/* 80268EE4 00264B44 90 0D AE 30 */ stw r0, lbl_806400F0-_SDA_BASE_(r13)
/* 80268EE8 00264B48 80 05 00 0C */ lwz r0, 0xc(r5)
/* 80268EEC 00264B4C 98 04 30 E8 */ stb r0, 0x30e8(r4)
/* 80268EF0 00264B50 80 0D AE 30 */ lwz r0, lbl_806400F0-_SDA_BASE_(r13)
/* 80268EF4 00264B54 98 04 30 E9 */ stb r0, 0x30e9(r4)
/* 80268EF8 00264B58 48 00 00 28 */ b lbl_80268F20
lbl_80268EFC:
/* 80268EFC 00264B5C 80 04 00 34 */ lwz r0, 0x34(r4)
/* 80268F00 00264B60 2C 00 00 00 */ cmpwi r0, 0
/* 80268F04 00264B64 41 82 00 1C */ beq lbl_80268F20
/* 80268F08 00264B68 88 64 30 E8 */ lbz r3, 0x30e8(r4)
/* 80268F0C 00264B6C 38 0D A7 98 */ addi r0, r13, lbl_8063FA58-_SDA_BASE_
/* 80268F10 00264B70 90 6D A7 98 */ stw r3, lbl_8063FA58-_SDA_BASE_(r13)
/* 80268F14 00264B74 90 0D A7 9C */ stw r0, lbl_8063FA5C-_SDA_BASE_(r13)
/* 80268F18 00264B78 88 04 30 E9 */ lbz r0, 0x30e9(r4)
/* 80268F1C 00264B7C 90 0D AE 30 */ stw r0, lbl_806400F0-_SDA_BASE_(r13)
lbl_80268F20:
/* 80268F20 00264B80 38 00 00 01 */ li r0, 1
/* 80268F24 00264B84 3C 80 80 00 */ lis r4, 0x8000310C@ha
/* 80268F28 00264B88 90 0D 88 A8 */ stw r0, lbl_8063DB68-_SDA_BASE_(r13)
/* 80268F2C 00264B8C 80 64 31 0C */ lwz r3, 0x8000310C@l(r4)
/* 80268F30 00264B90 2C 03 00 00 */ cmpwi r3, 0
/* 80268F34 00264B94 40 82 00 6C */ bne lbl_80268FA0
/* 80268F38 00264B98 3C 60 80 65 */ lis r3, 0x80655060@ha
/* 80268F3C 00264B9C 38 63 50 60 */ addi r3, r3, 0x80655060@l
/* 80268F40 00264BA0 54 60 00 87 */ rlwinm. r0, r3, 0, 2, 3
/* 80268F44 00264BA4 40 82 00 58 */ bne lbl_80268F9C
/* 80268F48 00264BA8 80 8D A7 A0 */ lwz r4, lbl_8063FA60-_SDA_BASE_(r13)
/* 80268F4C 00264BAC 80 04 00 30 */ lwz r0, 0x30(r4)
/* 80268F50 00264BB0 2C 00 00 00 */ cmpwi r0, 0
/* 80268F54 00264BB4 40 82 00 08 */ bne lbl_80268F5C
/* 80268F58 00264BB8 48 00 00 08 */ b lbl_80268F60
lbl_80268F5C:
/* 80268F5C 00264BBC 7C 03 03 78 */ mr r3, r0
lbl_80268F60:
/* 80268F60 00264BC0 80 8D A7 A0 */ lwz r4, lbl_8063FA60-_SDA_BASE_(r13)
/* 80268F64 00264BC4 80 04 00 30 */ lwz r0, 0x30(r4)
/* 80268F68 00264BC8 2C 00 00 00 */ cmpwi r0, 0
/* 80268F6C 00264BCC 40 82 00 34 */ bne lbl_80268FA0
/* 80268F70 00264BD0 80 8D A7 9C */ lwz r4, lbl_8063FA5C-_SDA_BASE_(r13)
/* 80268F74 00264BD4 2C 04 00 00 */ cmpwi r4, 0
/* 80268F78 00264BD8 41 82 00 28 */ beq lbl_80268FA0
/* 80268F7C 00264BDC 80 04 00 00 */ lwz r0, 0(r4)
/* 80268F80 00264BE0 28 00 00 02 */ cmplwi r0, 2
/* 80268F84 00264BE4 40 80 00 1C */ bge lbl_80268FA0
/* 80268F88 00264BE8 3C 60 80 65 */ lis r3, 0x80653050@ha
/* 80268F8C 00264BEC 38 63 30 50 */ addi r3, r3, 0x80653050@l
/* 80268F90 00264BF0 38 03 00 1F */ addi r0, r3, 0x1f
/* 80268F94 00264BF4 54 03 00 34 */ rlwinm r3, r0, 0, 0, 0x1a
/* 80268F98 00264BF8 48 00 00 08 */ b lbl_80268FA0
lbl_80268F9C:
/* 80268F9C 00264BFC 38 64 40 00 */ addi r3, r4, 0x4000
lbl_80268FA0:
/* 80268FA0 00264C00 48 00 11 75 */ bl OSSetMEM1ArenaLo
/* 80268FA4 00264C04 3C 60 80 00 */ lis r3, 0x80003110@ha
/* 80268FA8 00264C08 80 63 31 10 */ lwz r3, 0x80003110@l(r3)
/* 80268FAC 00264C0C 2C 03 00 00 */ cmpwi r3, 0
/* 80268FB0 00264C10 40 82 00 1C */ bne lbl_80268FCC
/* 80268FB4 00264C14 80 6D A7 A0 */ lwz r3, lbl_8063FA60-_SDA_BASE_(r13)
/* 80268FB8 00264C18 80 63 00 34 */ lwz r3, 0x34(r3)
/* 80268FBC 00264C1C 2C 03 00 00 */ cmpwi r3, 0
/* 80268FC0 00264C20 40 82 00 0C */ bne lbl_80268FCC
/* 80268FC4 00264C24 3C 60 81 70 */ lis r3, 0x81700000@ha
/* 80268FC8 00264C28 38 63 00 00 */ addi r3, r3, 0x81700000@l
lbl_80268FCC:
/* 80268FCC 00264C2C 48 00 11 31 */ bl OSSetMEM1ArenaHi
/* 80268FD0 00264C30 3C 60 80 00 */ lis r3, 0x80003124@ha
/* 80268FD4 00264C34 80 63 31 24 */ lwz r3, 0x80003124@l(r3)
/* 80268FD8 00264C38 2C 03 00 00 */ cmpwi r3, 0
/* 80268FDC 00264C3C 41 82 00 6C */ beq lbl_80269048
/* 80268FE0 00264C40 3C A0 80 65 */ lis r5, 0x80655060@ha
/* 80268FE4 00264C44 38 A5 50 60 */ addi r5, r5, 0x80655060@l
/* 80268FE8 00264C48 54 A4 00 86 */ rlwinm r4, r5, 0, 2, 3
/* 80268FEC 00264C4C 3C 04 F0 00 */ addis r0, r4, 0xf000
/* 80268FF0 00264C50 28 00 00 00 */ cmplwi r0, 0
/* 80268FF4 00264C54 40 82 00 34 */ bne lbl_80269028
/* 80268FF8 00264C58 80 8D A7 9C */ lwz r4, lbl_8063FA5C-_SDA_BASE_(r13)
/* 80268FFC 00264C5C 7C A3 2B 78 */ mr r3, r5
/* 80269000 00264C60 2C 04 00 00 */ cmpwi r4, 0
/* 80269004 00264C64 41 82 00 40 */ beq lbl_80269044
/* 80269008 00264C68 80 04 00 00 */ lwz r0, 0(r4)
/* 8026900C 00264C6C 28 00 00 02 */ cmplwi r0, 2
/* 80269010 00264C70 40 80 00 34 */ bge lbl_80269044
/* 80269014 00264C74 3C 60 80 65 */ lis r3, 0x80653050@ha
/* 80269018 00264C78 38 63 30 50 */ addi r3, r3, 0x80653050@l
/* 8026901C 00264C7C 38 03 00 1F */ addi r0, r3, 0x1f
/* 80269020 00264C80 54 03 00 34 */ rlwinm r3, r0, 0, 0, 0x1a
/* 80269024 00264C84 48 00 00 20 */ b lbl_80269044
lbl_80269028:
/* 80269028 00264C88 3C 80 90 00 */ lis r4, 0x9000
/* 8026902C 00264C8C 7C 03 20 40 */ cmplw r3, r4
/* 80269030 00264C90 41 80 00 14 */ blt lbl_80269044
/* 80269034 00264C94 38 04 08 00 */ addi r0, r4, 0x800
/* 80269038 00264C98 7C 03 00 40 */ cmplw r3, r0
/* 8026903C 00264C9C 40 80 00 08 */ bge lbl_80269044
/* 80269040 00264CA0 7C 03 03 78 */ mr r3, r0
lbl_80269044:
/* 80269044 00264CA4 48 00 10 D9 */ bl OSSetMEM2ArenaLo
lbl_80269048:
/* 80269048 00264CA8 3C 60 80 00 */ lis r3, 0x80003128@ha
/* 8026904C 00264CAC 80 63 31 28 */ lwz r3, 0x80003128@l(r3)
/* 80269050 00264CB0 2C 03 00 00 */ cmpwi r3, 0
/* 80269054 00264CB4 41 82 00 08 */ beq lbl_8026905C
/* 80269058 00264CB8 48 00 10 AD */ bl OSSetMEM2ArenaHi
lbl_8026905C:
/* 8026905C 00264CBC 48 00 A0 59 */ bl __OSInitIPCBuffer
/* 80269060 00264CC0 48 00 01 CD */ bl OSExceptionInit
/* 80269064 00264CC4 48 00 7F 9D */ bl __OSInitSystemCall
/* 80269068 00264CC8 48 00 06 65 */ bl __OSInitAlarm
/* 8026906C 00264CCC 48 00 5E 75 */ bl __OSModuleInit
/* 80269070 00264CD0 48 00 57 5D */ bl __OSInterruptInit
/* 80269074 00264CD4 48 00 23 E1 */ bl __OSContextInit
/* 80269078 00264CD8 48 00 1A 65 */ bl __OSCacheInit
/* 8026907C 00264CDC 48 00 C6 05 */ bl EXIInit
/* 80269080 00264CE0 48 00 D9 0D */ bl SIInit
/* 80269084 00264CE4 48 00 74 91 */ bl __OSInitSram
/* 80269088 00264CE8 48 00 7F DD */ bl __OSThreadInit
/* 8026908C 00264CEC 48 00 12 F5 */ bl __OSInitAudioSystem
/* 80269090 00264CF0 4B FF F2 65 */ bl PPCMfhid2
/* 80269094 00264CF4 54 63 00 80 */ rlwinm r3, r3, 0, 2, 0
/* 80269098 00264CF8 4B FF F2 65 */ bl PPCMthid2
/* 8026909C 00264CFC 80 0D A7 68 */ lwz r0, lbl_8063FA28-_SDA_BASE_(r13)
/* 802690A0 00264D00 2C 00 00 00 */ cmpwi r0, 0
/* 802690A4 00264D04 40 82 00 08 */ bne lbl_802690AC
/* 802690A8 00264D08 48 00 67 B9 */ bl __OSInitMemoryProtection
lbl_802690AC:
/* 802690AC 00264D0C 4B FF FA ED */ bl ReportOSInfo
/* 802690B0 00264D10 80 8D 87 80 */ lwz r4, lbl_8063DA40-_SDA_BASE_(r13)
/* 802690B4 00264D14 38 6D 87 8C */ addi r3, r13, lbl_8063DA4C-_SDA_BASE_
/* 802690B8 00264D18 4C C6 31 82 */ crclr 6
/* 802690BC 00264D1C 4B D9 EA 09 */ bl OSReport
/* 802690C0 00264D20 80 6D A7 9C */ lwz r3, lbl_8063FA5C-_SDA_BASE_(r13)
/* 802690C4 00264D24 2C 03 00 00 */ cmpwi r3, 0
/* 802690C8 00264D28 41 82 00 14 */ beq lbl_802690DC
/* 802690CC 00264D2C 80 03 00 00 */ lwz r0, 0(r3)
/* 802690D0 00264D30 28 00 00 02 */ cmplwi r0, 2
/* 802690D4 00264D34 41 80 00 08 */ blt lbl_802690DC
/* 802690D8 00264D38 4B F7 03 5D */ bl EnableMetroTRKInterrupts
lbl_802690DC:
/* 802690DC 00264D3C 4B FF F6 C1 */ bl ClearArena
/* 802690E0 00264D40 4B FF F8 99 */ bl ClearMEM2Arena
/* 802690E4 00264D44 48 00 56 8D */ bl OSEnableInterrupts
/* 802690E8 00264D48 48 03 9C 59 */ bl IPCCltInit
/* 802690EC 00264D4C 80 0D A7 6C */ lwz r0, lbl_8063FA2C-_SDA_BASE_(r13)
/* 802690F0 00264D50 2C 00 00 00 */ cmpwi r0, 0
/* 802690F4 00264D54 40 82 00 28 */ bne lbl_8026911C
/* 802690F8 00264D58 80 0D A7 D0 */ lwz r0, lbl_8063FA90-_SDA_BASE_(r13)
/* 802690FC 00264D5C 2C 00 00 00 */ cmpwi r0, 0
/* 80269100 00264D60 40 82 00 1C */ bne lbl_8026911C
/* 80269104 00264D64 48 00 A1 F1 */ bl __OSInitSTM
/* 80269108 00264D68 48 08 18 45 */ bl SCInit
lbl_8026910C:
/* 8026910C 00264D6C 48 08 18 E1 */ bl SCCheckStatus
/* 80269110 00264D70 28 03 00 01 */ cmplwi r3, 1
/* 80269114 00264D74 41 82 FF F8 */ beq lbl_8026910C
/* 80269118 00264D78 48 00 AF F9 */ bl __OSInitNet
lbl_8026911C:
/* 8026911C 00264D7C 80 0D A7 68 */ lwz r0, lbl_8063FA28-_SDA_BASE_(r13)
/* 80269120 00264D80 2C 00 00 00 */ cmpwi r0, 0
/* 80269124 00264D84 40 82 00 C8 */ bne lbl_802691EC
/* 80269128 00264D88 3C 60 80 00 */ lis r3, 0x8000315C@ha
/* 8026912C 00264D8C 88 03 31 5C */ lbz r0, 0x8000315C@l(r3)
/* 80269130 00264D90 2C 00 00 81 */ cmpwi r0, 0x81
/* 80269134 00264D94 41 82 00 0C */ beq lbl_80269140
/* 80269138 00264D98 40 80 00 28 */ bge lbl_80269160
/* 8026913C 00264D9C 48 00 00 24 */ b lbl_80269160
lbl_80269140:
/* 80269140 00264DA0 38 7F 02 58 */ addi r3, r31, 0x258
/* 80269144 00264DA4 4C C6 31 82 */ crclr 6
/* 80269148 00264DA8 4B D9 E9 7D */ bl OSReport
/* 8026914C 00264DAC 38 BF 02 A8 */ addi r5, r31, 0x2a8
/* 80269150 00264DB0 38 6D 87 90 */ addi r3, r13, lbl_8063DA50-_SDA_BASE_
/* 80269154 00264DB4 38 80 04 58 */ li r4, 0x458
/* 80269158 00264DB8 4C C6 31 82 */ crclr 6
/* 8026915C 00264DBC 48 00 23 41 */ bl OSPanic
lbl_80269160:
/* 80269160 00264DC0 3C 60 80 00 */ lis r3, 0x8000315D@ha
/* 80269164 00264DC4 88 03 31 5D */ lbz r0, 0x8000315D@l(r3)
/* 80269168 00264DC8 2C 00 00 81 */ cmpwi r0, 0x81
/* 8026916C 00264DCC 41 82 00 0C */ beq lbl_80269178
/* 80269170 00264DD0 40 80 00 28 */ bge lbl_80269198
/* 80269174 00264DD4 48 00 00 24 */ b lbl_80269198
lbl_80269178:
/* 80269178 00264DD8 38 7F 02 C0 */ addi r3, r31, 0x2c0
/* 8026917C 00264DDC 4C C6 31 82 */ crclr 6
/* 80269180 00264DE0 4B D9 E9 45 */ bl OSReport
/* 80269184 00264DE4 38 BF 02 A8 */ addi r5, r31, 0x2a8
/* 80269188 00264DE8 38 6D 87 90 */ addi r3, r13, lbl_8063DA50-_SDA_BASE_
/* 8026918C 00264DEC 38 80 04 6A */ li r4, 0x46a
/* 80269190 00264DF0 4C C6 31 82 */ crclr 6
/* 80269194 00264DF4 48 00 23 09 */ bl OSPanic
lbl_80269198:
/* 80269198 00264DF8 48 01 F0 AD */ bl DVDInit
/* 8026919C 00264DFC 80 0D A7 70 */ lwz r0, lbl_8063FA30-_SDA_BASE_(r13)
/* 802691A0 00264E00 2C 00 00 00 */ cmpwi r0, 0
/* 802691A4 00264E04 41 82 00 18 */ beq lbl_802691BC
/* 802691A8 00264E08 3C 80 00 01 */ lis r4, 0x00009000@ha
/* 802691AC 00264E0C 3C 60 80 00 */ lis r3, 0x800030E6@ha
/* 802691B0 00264E10 38 04 90 00 */ addi r0, r4, 0x00009000@l
/* 802691B4 00264E14 B0 03 30 E6 */ sth r0, 0x800030E6@l(r3)
/* 802691B8 00264E18 48 00 00 34 */ b lbl_802691EC
lbl_802691BC:
/* 802691BC 00264E1C 3C 60 80 00 */ lis r3, 0x800030E6@ha
/* 802691C0 00264E20 A0 03 30 E6 */ lhz r0, 0x800030E6@l(r3)
/* 802691C4 00264E24 2C 00 00 00 */ cmpwi r0, 0
/* 802691C8 00264E28 40 82 00 24 */ bne lbl_802691EC
/* 802691CC 00264E2C 38 7E 00 20 */ addi r3, r30, 0x20
/* 802691D0 00264E30 38 80 00 20 */ li r4, 0x20
/* 802691D4 00264E34 48 00 14 55 */ bl DCInvalidateRange
/* 802691D8 00264E38 3C A0 80 27 */ lis r5, InquiryCallback@ha
/* 802691DC 00264E3C 38 7E 00 40 */ addi r3, r30, 0x40
/* 802691E0 00264E40 38 9E 00 20 */ addi r4, r30, 0x20
/* 802691E4 00264E44 38 A5 8B 5C */ addi r5, r5, InquiryCallback@l
/* 802691E8 00264E48 48 02 2B 45 */ bl DVDInquiryAsync
lbl_802691EC:
/* 802691EC 00264E4C 80 0D A7 68 */ lwz r0, lbl_8063FA28-_SDA_BASE_(r13)
/* 802691F0 00264E50 2C 00 00 00 */ cmpwi r0, 0
/* 802691F4 00264E54 40 82 00 20 */ bne lbl_80269214
/* 802691F8 00264E58 80 0D A7 6C */ lwz r0, lbl_8063FA2C-_SDA_BASE_(r13)
/* 802691FC 00264E5C 2C 00 00 00 */ cmpwi r0, 0
/* 80269200 00264E60 40 82 00 14 */ bne lbl_80269214
/* 80269204 00264E64 80 0D A7 D0 */ lwz r0, lbl_8063FA90-_SDA_BASE_(r13)
/* 80269208 00264E68 2C 00 00 00 */ cmpwi r0, 0
/* 8026920C 00264E6C 40 82 00 08 */ bne lbl_80269214
/* 80269210 00264E70 48 00 AA B9 */ bl __OSStartPlayRecord
lbl_80269214:
/* 80269214 00264E74 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80269218 00264E78 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8026921C 00264E7C 83 C1 00 08 */ lwz r30, 8(r1)
/* 80269220 00264E80 7C 08 03 A6 */ mtlr r0
/* 80269224 00264E84 38 21 00 10 */ addi r1, r1, 0x10
/* 80269228 00264E88 4E 80 00 20 */ blr
.global OSExceptionInit
OSExceptionInit:
/* 8026922C 00264E8C 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80269230 00264E90 7C 08 02 A6 */ mflr r0
/* 80269234 00264E94 90 01 00 44 */ stw r0, 0x44(r1)
/* 80269238 00264E98 39 61 00 40 */ addi r11, r1, 0x40
/* 8026923C 00264E9C 4B F5 DE D1 */ bl _savegpr_20
/* 80269240 00264EA0 3E C0 80 00 */ lis r22, 0x80000060@ha
/* 80269244 00264EA4 3F 40 80 27 */ lis r26, OSExceptionVector@ha
/* 80269248 00264EA8 80 16 00 60 */ lwz r0, 0x80000060@l(r22)
/* 8026924C 00264EAC 3C 60 80 27 */ lis r3, lbl_80269590@ha
/* 80269250 00264EB0 3F 80 80 27 */ lis r28, 0x8027
/* 80269254 00264EB4 3F C0 80 42 */ lis r30, lbl_804265E0@ha
/* 80269258 00264EB8 2C 00 00 00 */ cmpwi r0, 0
/* 8026925C 00264EBC 3B 5A 94 F8 */ addi r26, r26, OSExceptionVector@l
/* 80269260 00264EC0 38 63 95 90 */ addi r3, r3, lbl_80269590@l
/* 80269264 00264EC4 87 7C 95 60 */ lwzu r27, -0x6aa0(r28)
/* 80269268 00264EC8 3B DE 65 E0 */ addi r30, r30, lbl_804265E0@l
/* 8026926C 00264ECC 7F 3A 18 50 */ subf r25, r26, r3
/* 80269270 00264ED0 40 82 00 4C */ bne lbl_802692BC
/* 80269274 00264ED4 38 7E 03 54 */ addi r3, r30, 0x354
/* 80269278 00264ED8 4C C6 31 82 */ crclr 6
/* 8026927C 00264EDC 48 00 E1 CD */ bl DBPrintf
/* 80269280 00264EE0 3C 80 80 27 */ lis r4, __OSDBIntegrator@ha
/* 80269284 00264EE4 3C A0 80 27 */ lis r5, __OSDBJump@ha
/* 80269288 00264EE8 38 84 94 AC */ addi r4, r4, __OSDBIntegrator@l
/* 8026928C 00264EEC 38 76 00 60 */ addi r3, r22, 0x60
/* 80269290 00264EF0 38 A5 94 D0 */ addi r5, r5, __OSDBJump@l
/* 80269294 00264EF4 7E A4 28 50 */ subf r21, r4, r5
/* 80269298 00264EF8 7E A5 AB 78 */ mr r5, r21
/* 8026929C 00264EFC 4B D9 AD 65 */ bl memcpy
/* 802692A0 00264F00 7E A4 AB 78 */ mr r4, r21
/* 802692A4 00264F04 38 76 00 60 */ addi r3, r22, 0x60
/* 802692A8 00264F08 48 00 14 0D */ bl DCFlushRangeNoSync
/* 802692AC 00264F0C 7C 00 04 AC */ sync 0
/* 802692B0 00264F10 7E A4 AB 78 */ mr r4, r21
/* 802692B4 00264F14 38 76 00 60 */ addi r3, r22, 0x60
/* 802692B8 00264F18 48 00 14 81 */ bl ICInvalidateRange
lbl_802692BC:
/* 802692BC 00264F1C 3F E0 80 27 */ lis r31, __OSDBJump@ha
/* 802692C0 00264F20 3C 60 80 27 */ lis r3, __OSSetExceptionHandler@ha
/* 802692C4 00264F24 38 1F 94 D0 */ addi r0, r31, __OSDBJump@l
/* 802692C8 00264F28 3B 1E 03 18 */ addi r24, r30, 0x318
/* 802692CC 00264F2C 38 63 94 D4 */ addi r3, r3, __OSSetExceptionHandler@l
/* 802692D0 00264F30 3B A0 00 00 */ li r29, 0
/* 802692D4 00264F34 7E A0 18 50 */ subf r21, r0, r3
/* 802692D8 00264F38 3E E0 60 00 */ lis r23, 0x6000
/* 802692DC 00264F3C 3E C0 80 27 */ lis r22, 0x8027
lbl_802692E0:
/* 802692E0 00264F40 80 6D A7 9C */ lwz r3, lbl_8063FA5C-_SDA_BASE_(r13)
/* 802692E4 00264F44 2C 03 00 00 */ cmpwi r3, 0
/* 802692E8 00264F48 41 82 00 34 */ beq lbl_8026931C
/* 802692EC 00264F4C 80 03 00 00 */ lwz r0, 0(r3)
/* 802692F0 00264F50 28 00 00 02 */ cmplwi r0, 2
/* 802692F4 00264F54 41 80 00 28 */ blt lbl_8026931C
/* 802692F8 00264F58 57 A3 06 3E */ clrlwi r3, r29, 0x18
/* 802692FC 00264F5C 48 00 E1 35 */ bl __DBIsExceptionMarked
/* 80269300 00264F60 2C 03 00 00 */ cmpwi r3, 0
/* 80269304 00264F64 41 82 00 18 */ beq lbl_8026931C
/* 80269308 00264F68 38 7E 03 70 */ addi r3, r30, 0x370
/* 8026930C 00264F6C 57 A4 06 3E */ clrlwi r4, r29, 0x18
/* 80269310 00264F70 4C C6 31 82 */ crclr 6
/* 80269314 00264F74 48 00 E1 35 */ bl DBPrintf
/* 80269318 00264F78 48 00 00 D8 */ b lbl_802693F0
lbl_8026931C:
/* 8026931C 00264F7C 57 A3 06 3E */ clrlwi r3, r29, 0x18
/* 80269320 00264F80 7F 60 1B 78 */ or r0, r27, r3
/* 80269324 00264F84 90 1C 00 00 */ stw r0, 0(r28)
/* 80269328 00264F88 48 00 E1 09 */ bl __DBIsExceptionMarked
/* 8026932C 00264F8C 2C 03 00 00 */ cmpwi r3, 0
/* 80269330 00264F90 41 82 00 28 */ beq lbl_80269358
/* 80269334 00264F94 38 7E 03 A0 */ addi r3, r30, 0x3a0
/* 80269338 00264F98 57 A4 06 3E */ clrlwi r4, r29, 0x18
/* 8026933C 00264F9C 4C C6 31 82 */ crclr 6
/* 80269340 00264FA0 48 00 E1 09 */ bl DBPrintf
/* 80269344 00264FA4 7E A5 AB 78 */ mr r5, r21
/* 80269348 00264FA8 38 76 95 50 */ addi r3, r22, -27312
/* 8026934C 00264FAC 38 9F 94 D0 */ addi r4, r31, -27440
/* 80269350 00264FB0 4B D9 AC B1 */ bl memcpy
/* 80269354 00264FB4 48 00 00 64 */ b lbl_802693B8
lbl_80269358:
/* 80269358 00264FB8 28 15 00 00 */ cmplwi r21, 0
/* 8026935C 00264FBC 38 75 00 03 */ addi r3, r21, 3
/* 80269360 00264FC0 38 96 95 50 */ addi r4, r22, -27312
/* 80269364 00264FC4 54 63 F0 BE */ srwi r3, r3, 2
/* 80269368 00264FC8 40 81 00 50 */ ble lbl_802693B8
/* 8026936C 00264FCC 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 80269370 00264FD0 7C 09 03 A6 */ mtctr r0
/* 80269374 00264FD4 41 82 00 34 */ beq lbl_802693A8
lbl_80269378:
/* 80269378 00264FD8 92 E4 00 00 */ stw r23, 0(r4)
/* 8026937C 00264FDC 92 E4 00 04 */ stw r23, 4(r4)
/* 80269380 00264FE0 92 E4 00 08 */ stw r23, 8(r4)
/* 80269384 00264FE4 92 E4 00 0C */ stw r23, 0xc(r4)
/* 80269388 00264FE8 92 E4 00 10 */ stw r23, 0x10(r4)
/* 8026938C 00264FEC 92 E4 00 14 */ stw r23, 0x14(r4)
/* 80269390 00264FF0 92 E4 00 18 */ stw r23, 0x18(r4)
/* 80269394 00264FF4 92 E4 00 1C */ stw r23, 0x1c(r4)
/* 80269398 00264FF8 38 84 00 20 */ addi r4, r4, 0x20
/* 8026939C 00264FFC 42 00 FF DC */ bdnz lbl_80269378
/* 802693A0 00265000 70 63 00 07 */ andi. r3, r3, 7
/* 802693A4 00265004 41 82 00 14 */ beq lbl_802693B8
lbl_802693A8:
/* 802693A8 00265008 7C 69 03 A6 */ mtctr r3
lbl_802693AC:
/* 802693AC 0026500C 92 E4 00 00 */ stw r23, 0(r4)
/* 802693B0 00265010 38 84 00 04 */ addi r4, r4, 4
/* 802693B4 00265014 42 00 FF F8 */ bdnz lbl_802693AC
lbl_802693B8:
/* 802693B8 00265018 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d
/* 802693BC 0026501C 7F 44 D3 78 */ mr r4, r26
/* 802693C0 00265020 7C 78 00 2E */ lwzx r3, r24, r0
/* 802693C4 00265024 7F 25 CB 78 */ mr r5, r25
/* 802693C8 00265028 3E 83 80 00 */ addis r20, r3, 0x8000
/* 802693CC 0026502C 7E 83 A3 78 */ mr r3, r20
/* 802693D0 00265030 4B D9 AC 31 */ bl memcpy
/* 802693D4 00265034 7E 83 A3 78 */ mr r3, r20
/* 802693D8 00265038 7F 24 CB 78 */ mr r4, r25
/* 802693DC 0026503C 48 00 12 D9 */ bl DCFlushRangeNoSync
/* 802693E0 00265040 7C 00 04 AC */ sync 0
/* 802693E4 00265044 7E 83 A3 78 */ mr r3, r20
/* 802693E8 00265048 7F 24 CB 78 */ mr r4, r25
/* 802693EC 0026504C 48 00 13 4D */ bl ICInvalidateRange
lbl_802693F0:
/* 802693F0 00265050 3B BD 00 01 */ addi r29, r29, 1
/* 802693F4 00265054 28 1D 00 0F */ cmplwi r29, 0xf
/* 802693F8 00265058 41 80 FE E8 */ blt lbl_802692E0
/* 802693FC 0026505C 3C 60 80 00 */ lis r3, 0x80003000@ha
/* 80269400 00265060 3C A0 80 27 */ lis r5, OSDefaultExceptionHandler@ha
/* 80269404 00265064 38 83 30 00 */ addi r4, r3, 0x80003000@l
/* 80269408 00265068 90 8D A7 78 */ stw r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 8026940C 0026506C 38 A5 95 94 */ addi r5, r5, OSDefaultExceptionHandler@l
/* 80269410 00265070 38 7E 03 D0 */ addi r3, r30, 0x3d0
/* 80269414 00265074 90 A4 00 00 */ stw r5, 0(r4)
/* 80269418 00265078 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 8026941C 0026507C 90 A4 00 04 */ stw r5, 4(r4)
/* 80269420 00265080 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 80269424 00265084 90 A4 00 08 */ stw r5, 8(r4)
/* 80269428 00265088 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 8026942C 0026508C 90 A4 00 0C */ stw r5, 0xc(r4)
/* 80269430 00265090 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 80269434 00265094 90 A4 00 10 */ stw r5, 0x10(r4)
/* 80269438 00265098 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 8026943C 0026509C 90 A4 00 14 */ stw r5, 0x14(r4)
/* 80269440 002650A0 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 80269444 002650A4 90 A4 00 18 */ stw r5, 0x18(r4)
/* 80269448 002650A8 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 8026944C 002650AC 90 A4 00 1C */ stw r5, 0x1c(r4)
/* 80269450 002650B0 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 80269454 002650B4 90 A4 00 20 */ stw r5, 0x20(r4)
/* 80269458 002650B8 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 8026945C 002650BC 90 A4 00 24 */ stw r5, 0x24(r4)
/* 80269460 002650C0 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 80269464 002650C4 90 A4 00 28 */ stw r5, 0x28(r4)
/* 80269468 002650C8 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 8026946C 002650CC 90 A4 00 2C */ stw r5, 0x2c(r4)
/* 80269470 002650D0 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 80269474 002650D4 90 A4 00 30 */ stw r5, 0x30(r4)
/* 80269478 002650D8 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 8026947C 002650DC 90 A4 00 34 */ stw r5, 0x34(r4)
/* 80269480 002650E0 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 80269484 002650E4 90 A4 00 38 */ stw r5, 0x38(r4)
/* 80269488 002650E8 93 7C 00 00 */ stw r27, 0(r28)
/* 8026948C 002650EC 4C C6 31 82 */ crclr 6
/* 80269490 002650F0 48 00 DF B9 */ bl DBPrintf
/* 80269494 002650F4 39 61 00 40 */ addi r11, r1, 0x40
/* 80269498 002650F8 4B F5 DC C1 */ bl _restgpr_20
/* 8026949C 002650FC 80 01 00 44 */ lwz r0, 0x44(r1)
/* 802694A0 00265100 7C 08 03 A6 */ mtlr r0
/* 802694A4 00265104 38 21 00 40 */ addi r1, r1, 0x40
/* 802694A8 00265108 4E 80 00 20 */ blr
.global __OSDBIntegrator
__OSDBIntegrator:
/* 802694AC 0026510C 38 A0 00 40 */ li r5, 0x40
/* 802694B0 00265110 7C 68 02 A6 */ mflr r3
/* 802694B4 00265114 90 65 00 0C */ stw r3, 0xc(r5)
/* 802694B8 00265118 80 65 00 08 */ lwz r3, 8(r5)
/* 802694BC 0026511C 64 63 80 00 */ oris r3, r3, 0x8000
/* 802694C0 00265120 7C 68 03 A6 */ mtlr r3
/* 802694C4 00265124 38 60 00 30 */ li r3, 0x30
/* 802694C8 00265128 7C 60 01 24 */ mtmsr r3
/* 802694CC 0026512C 4E 80 00 20 */ blr
.global __OSDBJump
__OSDBJump:
/* 802694D0 00265130 48 00 00 61 */ bl lbl_80269530
.global __OSSetExceptionHandler
__OSSetExceptionHandler:
/* 802694D4 00265134 80 AD A7 78 */ lwz r5, lbl_8063FA38-_SDA_BASE_(r13)
/* 802694D8 00265138 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d
/* 802694DC 0026513C 7C 65 00 2E */ lwzx r3, r5, r0
/* 802694E0 00265140 7C 85 01 2E */ stwx r4, r5, r0
/* 802694E4 00265144 4E 80 00 20 */ blr
.global __OSGetExceptionHandler
__OSGetExceptionHandler:
/* 802694E8 00265148 80 8D A7 78 */ lwz r4, lbl_8063FA38-_SDA_BASE_(r13)
/* 802694EC 0026514C 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d
/* 802694F0 00265150 7C 64 00 2E */ lwzx r3, r4, r0
/* 802694F4 00265154 4E 80 00 20 */ blr
.global OSExceptionVector
OSExceptionVector:
/* 802694F8 00265158 7C 90 43 A6 */ mtspr 0x110, r4
/* 802694FC 0026515C 80 80 00 C0 */ lwz r4, 0xc0(0)
/* 80269500 00265160 90 64 00 0C */ stw r3, 0xc(r4)
/* 80269504 00265164 7C 70 42 A6 */ mfspr r3, 0x110
/* 80269508 00265168 90 64 00 10 */ stw r3, 0x10(r4)
/* 8026950C 0026516C 90 A4 00 14 */ stw r5, 0x14(r4)
/* 80269510 00265170 A0 64 01 A2 */ lhz r3, 0x1a2(r4)
/* 80269514 00265174 60 63 00 02 */ ori r3, r3, 2
/* 80269518 00265178 B0 64 01 A2 */ sth r3, 0x1a2(r4)
/* 8026951C 0026517C 7C 60 00 26 */ mfcr r3
/* 80269520 00265180 90 64 00 80 */ stw r3, 0x80(r4)
/* 80269524 00265184 7C 68 02 A6 */ mflr r3
/* 80269528 00265188 90 64 00 84 */ stw r3, 0x84(r4)
/* 8026952C 0026518C 7C 69 02 A6 */ mfctr r3
lbl_80269530:
/* 80269530 00265190 90 64 00 88 */ stw r3, 0x88(r4)
/* 80269534 00265194 7C 61 02 A6 */ mfxer r3
/* 80269538 00265198 90 64 00 8C */ stw r3, 0x8c(r4)
/* 8026953C 0026519C 7C 7A 02 A6 */ mfspr r3, 0x1a
/* 80269540 002651A0 90 64 01 98 */ stw r3, 0x198(r4)
/* 80269544 002651A4 7C 7B 02 A6 */ mfspr r3, 0x1b
/* 80269548 002651A8 90 64 01 9C */ stw r3, 0x19c(r4)
/* 8026954C 002651AC 7C 65 1B 78 */ mr r5, r3
/* 80269550 002651B0 60 00 00 00 */ nop
/* 80269554 002651B4 7C 60 00 A6 */ mfmsr r3
/* 80269558 002651B8 60 63 00 30 */ ori r3, r3, 0x30
/* 8026955C 002651BC 7C 7B 03 A6 */ mtspr 0x1b, r3
/* 80269560 002651C0 38 60 00 00 */ li r3, 0
/* 80269564 002651C4 80 80 00 D4 */ lwz r4, 0xd4(0)
/* 80269568 002651C8 54 A5 07 BD */ rlwinm. r5, r5, 0, 0x1e, 0x1e
/* 8026956C 002651CC 40 82 00 14 */ bne lbl_80269580
/* 80269570 002651D0 3C A0 80 27 */ lis r5, OSDefaultExceptionHandler@ha
/* 80269574 002651D4 38 A5 95 94 */ addi r5, r5, OSDefaultExceptionHandler@l
/* 80269578 002651D8 7C BA 03 A6 */ mtspr 0x1a, r5
/* 8026957C 002651DC 4C 00 00 64 */ rfi
lbl_80269580:
/* 80269580 002651E0 54 65 15 BA */ rlwinm r5, r3, 2, 0x16, 0x1d
/* 80269584 002651E4 80 A5 30 00 */ lwz r5, 0x3000(r5)
/* 80269588 002651E8 7C BA 03 A6 */ mtspr 0x1a, r5
/* 8026958C 002651EC 4C 00 00 64 */ rfi
lbl_80269590:
/* 80269590 002651F0 60 00 00 00 */ nop
.global OSDefaultExceptionHandler
OSDefaultExceptionHandler:
/* 80269594 002651F4 90 04 00 00 */ stw r0, 0(r4)
/* 80269598 002651F8 90 24 00 04 */ stw r1, 4(r4)
/* 8026959C 002651FC 90 44 00 08 */ stw r2, 8(r4)
/* 802695A0 00265200 BC C4 00 18 */ stmw r6, 0x18(r4)
/* 802695A4 00265204 7C 11 E2 A6 */ mfspr r0, 0x391
/* 802695A8 00265208 90 04 01 A8 */ stw r0, 0x1a8(r4)
/* 802695AC 0026520C 7C 12 E2 A6 */ mfspr r0, 0x392
/* 802695B0 00265210 90 04 01 AC */ stw r0, 0x1ac(r4)
/* 802695B4 00265214 7C 13 E2 A6 */ mfspr r0, 0x393
/* 802695B8 00265218 90 04 01 B0 */ stw r0, 0x1b0(r4)
/* 802695BC 0026521C 7C 14 E2 A6 */ mfspr r0, 0x394
/* 802695C0 00265220 90 04 01 B4 */ stw r0, 0x1b4(r4)
/* 802695C4 00265224 7C 15 E2 A6 */ mfspr r0, 0x395
/* 802695C8 00265228 90 04 01 B8 */ stw r0, 0x1b8(r4)
/* 802695CC 0026522C 7C 16 E2 A6 */ mfspr r0, 0x396
/* 802695D0 00265230 90 04 01 BC */ stw r0, 0x1bc(r4)
/* 802695D4 00265234 7C 17 E2 A6 */ mfspr r0, 0x397
/* 802695D8 00265238 90 04 01 C0 */ stw r0, 0x1c0(r4)
/* 802695DC 0026523C 7C B2 02 A6 */ mfdsisr r5
/* 802695E0 00265240 7C D3 02 A6 */ mfdar r6
/* 802695E4 00265244 94 21 FF F8 */ stwu r1, -8(r1)
/* 802695E8 00265248 48 00 22 68 */ b __OSUnhandledException
.global __OSPSInit
__OSPSInit:
/* 802695EC 0026524C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802695F0 00265250 7C 08 02 A6 */ mflr r0
/* 802695F4 00265254 90 01 00 14 */ stw r0, 0x14(r1)
/* 802695F8 00265258 4B FF EC FD */ bl PPCMfhid2
/* 802695FC 0026525C 64 63 A0 00 */ oris r3, r3, 0xa000
/* 80269600 00265260 4B FF EC FD */ bl PPCMthid2
/* 80269604 00265264 48 00 11 69 */ bl ICFlashInvalidate
/* 80269608 00265268 7C 00 04 AC */ sync 0
/* 8026960C 0026526C 38 60 00 00 */ li r3, 0
/* 80269610 00265270 7C 70 E3 A6 */ mtspr 0x390, r3
/* 80269614 00265274 7C 71 E3 A6 */ mtspr 0x391, r3
/* 80269618 00265278 7C 72 E3 A6 */ mtspr 0x392, r3
/* 8026961C 0026527C 7C 73 E3 A6 */ mtspr 0x393, r3
/* 80269620 00265280 7C 74 E3 A6 */ mtspr 0x394, r3
/* 80269624 00265284 7C 75 E3 A6 */ mtspr 0x395, r3
/* 80269628 00265288 7C 76 E3 A6 */ mtspr 0x396, r3
/* 8026962C 0026528C 7C 77 E3 A6 */ mtspr 0x397, r3
/* 80269630 00265290 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80269634 00265294 7C 08 03 A6 */ mtlr r0
/* 80269638 00265298 38 21 00 10 */ addi r1, r1, 0x10
/* 8026963C 0026529C 4E 80 00 20 */ blr
.global __OSGetDIConfig
__OSGetDIConfig:
/* 80269640 002652A0 3C 60 CD 00 */ lis r3, 0xCD006024@ha
/* 80269644 002652A4 80 03 60 24 */ lwz r0, 0xCD006024@l(r3)
/* 80269648 002652A8 54 03 06 3E */ clrlwi r3, r0, 0x18
/* 8026964C 002652AC 4E 80 00 20 */ blr
.global OSRegisterVersion
OSRegisterVersion:
/* 80269650 002652B0 7C 64 1B 78 */ mr r4, r3
/* 80269654 002652B4 38 6D 87 8C */ addi r3, r13, lbl_8063DA4C-_SDA_BASE_
/* 80269658 002652B8 4C C6 31 82 */ crclr 6
/* 8026965C 002652BC 4B D9 E4 68 */ b OSReport
.global OSGetAppGamename
OSGetAppGamename:
/* 80269660 002652C0 80 0D A7 68 */ lwz r0, lbl_8063FA28-_SDA_BASE_(r13)
/* 80269664 002652C4 3C 60 80 00 */ lis r3, 0x80003180@ha
/* 80269668 002652C8 38 C3 31 80 */ addi r6, r3, 0x80003180@l
/* 8026966C 002652CC 2C 00 00 00 */ cmpwi r0, 0
/* 80269670 002652D0 41 82 00 08 */ beq lbl_80269678
/* 80269674 002652D4 80 CD 87 A0 */ lwz r6, lbl_8063DA60-_SDA_BASE_(r13)
lbl_80269678:
/* 80269678 002652D8 88 86 00 00 */ lbz r4, 0(r6)
/* 8026967C 002652DC 38 AD A7 90 */ addi r5, r13, lbl_8063FA50-_SDA_BASE_
/* 80269680 002652E0 38 00 00 00 */ li r0, 0
/* 80269684 002652E4 38 6D A7 90 */ addi r3, r13, lbl_8063FA50-_SDA_BASE_
/* 80269688 002652E8 98 8D A7 90 */ stb r4, lbl_8063FA50-_SDA_BASE_(r13)
/* 8026968C 002652EC 88 86 00 01 */ lbz r4, 1(r6)
/* 80269690 002652F0 98 85 00 01 */ stb r4, 1(r5)
/* 80269694 002652F4 88 86 00 02 */ lbz r4, 2(r6)
/* 80269698 002652F8 98 85 00 02 */ stb r4, 2(r5)
/* 8026969C 002652FC 88 86 00 03 */ lbz r4, 3(r6)
/* 802696A0 00265300 98 85 00 03 */ stb r4, 3(r5)
/* 802696A4 00265304 98 05 00 04 */ stb r0, 4(r5)
/* 802696A8 00265308 4E 80 00 20 */ blr
.global OSGetAppType
OSGetAppType:
/* 802696AC 0026530C 80 0D A7 68 */ lwz r0, lbl_8063FA28-_SDA_BASE_(r13)
/* 802696B0 00265310 2C 00 00 00 */ cmpwi r0, 0
/* 802696B4 00265314 41 82 00 0C */ beq lbl_802696C0
/* 802696B8 00265318 38 60 00 40 */ li r3, 0x40
/* 802696BC 0026531C 4E 80 00 20 */ blr
lbl_802696C0:
/* 802696C0 00265320 3C 60 80 00 */ lis r3, 0x80003184@ha
/* 802696C4 00265324 88 63 31 84 */ lbz r3, 0x80003184@l(r3)
/* 802696C8 00265328 4E 80 00 20 */ blr
|