-
Notifications
You must be signed in to change notification settings - Fork 2
/
hud.asm
198 lines (190 loc) · 3.18 KB
/
hud.asm
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
; unpatch previous garbage
.orga 0x91BCB
.db 0x0f
.orga 0x91C66
.dh 0x1000
.orga 0x91DB2
.dh 0x1AC0
.orga 0x9DDA7
.db 0x0F
.orga 0x9DE3E
.dh 0x1000
.orga 0x9E09A
.dh 0x1000
.orga 0x9EAA2
.dh 0x1AC0
.orga 0x9EBAE
.dh 0x1AC0
.orga 0x91C88
ADDIU SP, SP, 0xFFB8
SW RA, 0x0044 (SP)
SW S8, 0x0040 (SP)
SW S7, 0x003C (SP)
SW S6, 0x0038 (SP)
SW S5, 0x0034 (SP)
SW S4, 0x0030 (SP)
SW S3, 0x002C (SP)
SW S2, 0x0028 (SP)
SW S1, 0x0024 (SP)
SW S0, 0x0020 (SP)
LUI S0, 0x0201
JAL 0x00277F50
ORI A0, S0, 0x1AC0
ORI AT, S0, 0x1B88
LUI V1, 0xBA00
ORI V1, V1, 0x0C02
ADDIU A0, R0, 0x2000
SW A0, 0x0094 (V0)
SW V1, 0x0090 (V0)
SW AT, 0x0034 (V0)
LUI AT, 0x0601
SW AT, 0x0030 (V0)
LUI AT, 0xB900
ORI AT, AT, 0x031D
SW AT, 0x0028 (V0)
SW R0, 0x002C (V0)
LUI AT, 0x8033
LHU AT, 0x1360 (AT)
BEQ AT, R0, ehd
NOP
JAL 0x00278F2C
ADDIU A0, R0, 0x0040
BEQ V0, R0, L1
NOP
OR S0, V0, R0
LUI AT, 0x4120
LUI V0, 0x3F80
SW V0, 0x001C (SP)
SW AT, 0x0018 (SP)
LUI AT, 0xC120
SW AT, 0x0014 (SP)
LUI AT, 0x4370
SW AT, 0x0010 (SP)
ADDIU S1, R0, 0x0000
OR A0, S0, R0
ADDIU A1, R0, 0x0000
LUI A2, 0x43A0
JAL 0x00324D74
ADDIU A3, R0, 0x0000
LUI S2, 0x8034
LW AT, 0xB06C (S2)
ADDIU V0, AT, 0x0008
LUI V1, 0x1FFF
SW V0, 0xB06C (S2)
ORI V0, V1, 0xFFFF
LUI V1, 0xBC00
ORI A0, R0, 0xFFFF
LUI A1, 0x0103
LUI A2, 0x0201
AND V0, S0, V0
ORI A2, A2, 0x1AC0
ORI A1, A1, 0x0040
LUI S5, 0x8033
LUI S4, 0x0600
SW A0, 0x0004 (AT)
ORI V1, V1, 0x000E
SW V1, 0x0000 (AT)
LW AT, 0xB06C (S2)
ADDIU V1, AT, 0x0008
SW V1, 0xB06C (S2)
SW V0, 0x0004 (AT)
SW A1, 0x0000 (AT)
LW AT, 0xB06C (S2)
ADDIU A3, R0, 0x0000
LUI S2, 0x8034
LW AT, 0xB06C (S2)
ADDIU V0, AT, 0x0008
LUI V1, 0x1FFF
SW V0, 0xB06C (S2)
ORI V0, V1, 0xFFFF
LUI V1, 0xBC00
ORI A0, R0, 0xFFFF
LUI A1, 0x0103
LUI A2, 0x0201
AND V0, S0, V0
ORI A2, A2, 0x1AC0
ORI A1, A1, 0x0040
LUI S5, 0x8033
LUI S4, 0x0600
SW A0, 0x0004 (AT)
ORI V1, V1, 0x000E
SW V1, 0x0000 (AT)
LW AT, 0xB06C (S2)
ADDIU V1, AT, 0x0008
SW V1, 0xB06C (S2)
SW V0, 0x0004 (AT)
SW A1, 0x0000 (AT)
LW AT, 0xB06C (S2)
ADDIU V0, AT, 0x0008
SW V0, 0xB06C (S2)
SW A2, 0x0004 (AT)
SW S4, 0x0000 (AT)
LH AT, 0x1360 (S5)
BLEZ AT, L2
NOP
LUI AT, 0x8036
ADDIU S6, AT, 0x1320
ADDIU S7, R0, 0xFFFF
LUI S8, 0x8034
L6:
SLL AT, S1, 0x2
ADDU S3, S6, AT
LW A1, 0x0000 (S3)
LH AT, 0x0008 (A1)
BLEZ AT, L3
NOP
ADDIU S0, R0, 0x0000
L5:
ADDU AT, A1, S0
LB A0, 0x000A (AT)
JAL 0x002D6858
NOP
BEQ V0, S7, L4
NOP
JAL 0x002D69F8
OR A0, V0, R0
LW AT, 0x0000 (S3)
LW A1, 0x0004 (AT)
LW A0, 0x0000 (AT)
JAL 0x002D6B3C
OR A2, S0, R0
L4:
ADDIU S0, S0, 0x0001
LW A1, 0x0000 (S3)
LH AT, 0x0008 (A1)
SLT AT, S0, AT
BNEZ AT, L5
NOP
L3:
JAL 0x00278D74
LW A0, 0xB494 (S8)
ADDIU S1, S1, 0x0001
LH AT, 0x1360 (S5)
SLT AT, S1, AT
BNEZ AT, L6
NOP
L2:
LW AT, 0xB06C (S2)
ADDIU V0, AT, 0x0008
SW V0, 0xB06C (S2)
LUI V0, 0x0201
ORI V0, V0, 0x1B28
SW V0, 0x0004 (AT)
SW S4, 0x0000 (AT)
L1:
LUI AT, 0x8033
SH R0, 0x1360 (AT)
ehd:
LW S0, 0x0020 (SP)
LW S1, 0x0024 (SP)
LW S2, 0x0028 (SP)
LW S3, 0x002C (SP)
LW S4, 0x0030 (SP)
LW S5, 0x0034 (SP)
LW S6, 0x0038 (SP)
LW S7, 0x003C (SP)
LW S8, 0x0040 (SP)
LW RA, 0x0044 (SP)
JR RA
ADDIU SP, SP, 0x0048
NOP