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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global MPSetUserGameInfo
MPSetUserGameInfo:
/* 802F1234 002ECE94 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802F1238 002ECE98 7C 08 02 A6 */ mflr r0
/* 802F123C 002ECE9C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802F1240 002ECEA0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802F1244 002ECEA4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802F1248 002ECEA8 7C 9E 23 78 */ mr r30, r4
/* 802F124C 002ECEAC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802F1250 002ECEB0 7C 7D 1B 78 */ mr r29, r3
/* 802F1254 002ECEB4 80 0D AF 38 */ lwz r0, lbl_806401F8-_SDA_BASE_(r13)
/* 802F1258 002ECEB8 2C 00 00 00 */ cmpwi r0, 0
/* 802F125C 002ECEBC 40 82 00 0C */ bne lbl_802F1268
/* 802F1260 002ECEC0 38 60 FF 14 */ li r3, -236
/* 802F1264 002ECEC4 48 00 00 88 */ b lbl_802F12EC
lbl_802F1268:
/* 802F1268 002ECEC8 80 0D AF 3C */ lwz r0, lbl_806401FC-_SDA_BASE_(r13)
/* 802F126C 002ECECC 2C 00 00 00 */ cmpwi r0, 0
/* 802F1270 002ECED0 41 82 00 0C */ beq lbl_802F127C
/* 802F1274 002ECED4 38 60 FF FF */ li r3, -1
/* 802F1278 002ECED8 48 00 00 74 */ b lbl_802F12EC
lbl_802F127C:
/* 802F127C 002ECEDC 28 04 00 70 */ cmplwi r4, 0x70
/* 802F1280 002ECEE0 40 81 00 0C */ ble lbl_802F128C
/* 802F1284 002ECEE4 38 60 FF 01 */ li r3, -255
/* 802F1288 002ECEE8 48 00 00 64 */ b lbl_802F12EC
lbl_802F128C:
/* 802F128C 002ECEEC 38 00 00 00 */ li r0, 0
/* 802F1290 002ECEF0 7C 03 00 40 */ cmplw r3, r0
/* 802F1294 002ECEF4 40 82 00 0C */ bne lbl_802F12A0
/* 802F1298 002ECEF8 38 60 FF 01 */ li r3, -255
/* 802F129C 002ECEFC 48 00 00 50 */ b lbl_802F12EC
lbl_802F12A0:
/* 802F12A0 002ECF00 4B F7 D4 BD */ bl OSDisableInterrupts
/* 802F12A4 002ECF04 80 C2 AA 30 */ lwz r6, lbl_80643030-_SDA2_BASE_(r2)
/* 802F12A8 002ECF08 7C 7F 1B 78 */ mr r31, r3
/* 802F12AC 002ECF0C 7F A4 EB 78 */ mr r4, r29
/* 802F12B0 002ECF10 7F C5 F3 78 */ mr r5, r30
/* 802F12B4 002ECF14 93 C6 00 3C */ stw r30, 0x3c(r6)
/* 802F12B8 002ECF18 38 66 00 40 */ addi r3, r6, 0x40
/* 802F12BC 002ECF1C 4B D1 2D 45 */ bl memcpy
/* 802F12C0 002ECF20 28 1E 00 70 */ cmplwi r30, 0x70
/* 802F12C4 002ECF24 40 80 00 1C */ bge lbl_802F12E0
/* 802F12C8 002ECF28 80 02 AA 30 */ lwz r0, lbl_80643030-_SDA2_BASE_(r2)
/* 802F12CC 002ECF2C 20 BE 00 70 */ subfic r5, r30, 0x70
/* 802F12D0 002ECF30 38 80 00 00 */ li r4, 0
/* 802F12D4 002ECF34 7C 60 F2 14 */ add r3, r0, r30
/* 802F12D8 002ECF38 38 63 00 40 */ addi r3, r3, 0x40
/* 802F12DC 002ECF3C 4B D1 2E 29 */ bl memset
lbl_802F12E0:
/* 802F12E0 002ECF40 7F E3 FB 78 */ mr r3, r31
/* 802F12E4 002ECF44 4B F7 D4 A1 */ bl OSRestoreInterrupts
/* 802F12E8 002ECF48 38 60 00 00 */ li r3, 0
lbl_802F12EC:
/* 802F12EC 002ECF4C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802F12F0 002ECF50 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802F12F4 002ECF54 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802F12F8 002ECF58 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802F12FC 002ECF5C 7C 08 03 A6 */ mtlr r0
/* 802F1300 002ECF60 38 21 00 20 */ addi r1, r1, 0x20
/* 802F1304 002ECF64 4E 80 00 20 */ blr
.global MPSetEntryFlag
MPSetEntryFlag:
/* 802F1308 002ECF68 80 0D AF 38 */ lwz r0, lbl_806401F8-_SDA_BASE_(r13)
/* 802F130C 002ECF6C 2C 00 00 00 */ cmpwi r0, 0
/* 802F1310 002ECF70 40 82 00 0C */ bne lbl_802F131C
/* 802F1314 002ECF74 38 60 FF 14 */ li r3, -236
/* 802F1318 002ECF78 4E 80 00 20 */ blr
lbl_802F131C:
/* 802F131C 002ECF7C 80 0D AF 3C */ lwz r0, lbl_806401FC-_SDA_BASE_(r13)
/* 802F1320 002ECF80 2C 00 00 00 */ cmpwi r0, 0
/* 802F1324 002ECF84 41 82 00 0C */ beq lbl_802F1330
/* 802F1328 002ECF88 38 60 FF FF */ li r3, -1
/* 802F132C 002ECF8C 4E 80 00 20 */ blr
lbl_802F1330:
/* 802F1330 002ECF90 2C 03 00 00 */ cmpwi r3, 0
/* 802F1334 002ECF94 41 82 00 0C */ beq lbl_802F1340
/* 802F1338 002ECF98 38 00 00 01 */ li r0, 1
/* 802F133C 002ECF9C 48 00 00 08 */ b lbl_802F1344
lbl_802F1340:
/* 802F1340 002ECFA0 38 00 00 00 */ li r0, 0
lbl_802F1344:
/* 802F1344 002ECFA4 80 82 AA 30 */ lwz r4, lbl_80643030-_SDA2_BASE_(r2)
/* 802F1348 002ECFA8 38 60 00 00 */ li r3, 0
/* 802F134C 002ECFAC 90 04 00 30 */ stw r0, 0x30(r4)
/* 802F1350 002ECFB0 4E 80 00 20 */ blr
.global MPiSetMultiBootFlag
MPiSetMultiBootFlag:
/* 802F1354 002ECFB4 80 0D AF 38 */ lwz r0, lbl_806401F8-_SDA_BASE_(r13)
/* 802F1358 002ECFB8 2C 00 00 00 */ cmpwi r0, 0
/* 802F135C 002ECFBC 40 82 00 0C */ bne lbl_802F1368
/* 802F1360 002ECFC0 38 60 FF 14 */ li r3, -236
/* 802F1364 002ECFC4 4E 80 00 20 */ blr
lbl_802F1368:
/* 802F1368 002ECFC8 80 0D AF 3C */ lwz r0, lbl_806401FC-_SDA_BASE_(r13)
/* 802F136C 002ECFCC 2C 00 00 00 */ cmpwi r0, 0
/* 802F1370 002ECFD0 41 82 00 0C */ beq lbl_802F137C
/* 802F1374 002ECFD4 38 60 FF FF */ li r3, -1
/* 802F1378 002ECFD8 4E 80 00 20 */ blr
lbl_802F137C:
/* 802F137C 002ECFDC 2C 03 00 00 */ cmpwi r3, 0
/* 802F1380 002ECFE0 41 82 00 0C */ beq lbl_802F138C
/* 802F1384 002ECFE4 38 00 00 01 */ li r0, 1
/* 802F1388 002ECFE8 48 00 00 08 */ b lbl_802F1390
lbl_802F138C:
/* 802F138C 002ECFEC 38 00 00 00 */ li r0, 0
lbl_802F1390:
/* 802F1390 002ECFF0 80 82 AA 30 */ lwz r4, lbl_80643030-_SDA2_BASE_(r2)
/* 802F1394 002ECFF4 38 60 00 00 */ li r3, 0
/* 802F1398 002ECFF8 90 04 00 34 */ stw r0, 0x34(r4)
/* 802F139C 002ECFFC 4E 80 00 20 */ blr
|