summaryrefslogtreecommitdiff
path: root/asm/Dolphin/gx/GXDraw.s
blob: 9ad6d12262c8e12b1b3a719c98f37ef7bd205126 (plain)
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
.include "macros.inc"

.section .text, "ax"  # 0x80005600 - 0x8036FBA0
.global GXDrawSphere
GXDrawSphere:
/* 800ACB88 000A9AC8  7C 08 02 A6 */	mflr r0
/* 800ACB8C 000A9ACC  90 01 00 04 */	stw r0, 4(r1)
/* 800ACB90 000A9AD0  54 80 06 3E */	clrlwi r0, r4, 0x18
/* 800ACB94 000A9AD4  94 21 FF 30 */	stwu r1, -0xd0(r1)
/* 800ACB98 000A9AD8  DB E1 00 C8 */	stfd f31, 0xc8(r1)
/* 800ACB9C 000A9ADC  DB C1 00 C0 */	stfd f30, 0xc0(r1)
/* 800ACBA0 000A9AE0  DB A1 00 B8 */	stfd f29, 0xb8(r1)
/* 800ACBA4 000A9AE4  DB 81 00 B0 */	stfd f28, 0xb0(r1)
/* 800ACBA8 000A9AE8  DB 61 00 A8 */	stfd f27, 0xa8(r1)
/* 800ACBAC 000A9AEC  DB 41 00 A0 */	stfd f26, 0xa0(r1)
/* 800ACBB0 000A9AF0  DB 21 00 98 */	stfd f25, 0x98(r1)
/* 800ACBB4 000A9AF4  DB 01 00 90 */	stfd f24, 0x90(r1)
/* 800ACBB8 000A9AF8  DA E1 00 88 */	stfd f23, 0x88(r1)
/* 800ACBBC 000A9AFC  DA C1 00 80 */	stfd f22, 0x80(r1)
/* 800ACBC0 000A9B00  DA A1 00 78 */	stfd f21, 0x78(r1)
/* 800ACBC4 000A9B04  DA 81 00 70 */	stfd f20, 0x70(r1)
/* 800ACBC8 000A9B08  DA 61 00 68 */	stfd f19, 0x68(r1)
/* 800ACBCC 000A9B0C  BE A1 00 3C */	stmw r21, 0x3c(r1)
/* 800ACBD0 000A9B10  7C 76 1B 78 */	mr r22, r3
/* 800ACBD4 000A9B14  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 800ACBD8 000A9B18  90 61 00 34 */	stw r3, 0x34(r1)
/* 800ACBDC 000A9B1C  3C 60 43 30 */	lis r3, 0x4330
/* 800ACBE0 000A9B20  7C 95 23 78 */	mr r21, r4
/* 800ACBE4 000A9B24  90 01 00 2C */	stw r0, 0x2c(r1)
/* 800ACBE8 000A9B28  3C 80 80 3F */	lis r4, vcd@ha
/* 800ACBEC 000A9B2C  3B 44 C7 18 */	addi r26, r4, vcd@l
/* 800ACBF0 000A9B30  90 61 00 30 */	stw r3, 0x30(r1)
/* 800ACBF4 000A9B34  38 81 00 10 */	addi r4, r1, 0x10
/* 800ACBF8 000A9B38  90 61 00 28 */	stw r3, 0x28(r1)
/* 800ACBFC 000A9B3C  38 60 00 0D */	li r3, 0xd
/* 800ACC00 000A9B40  C8 41 00 30 */	lfd f2, 0x30(r1)
/* 800ACC04 000A9B44  C8 01 00 28 */	lfd f0, 0x28(r1)
/* 800ACC08 000A9B48  C8 62 8B A0 */	lfd f3, "@364"@sda21(r2)
/* 800ACC0C 000A9B4C  C0 82 8B 90 */	lfs f4, "@358"@sda21(r2)
/* 800ACC10 000A9B50  EC 42 18 28 */	fsubs f2, f2, f3
/* 800ACC14 000A9B54  C0 22 8B A8 */	lfs f1, "@405"@sda21(r2)
/* 800ACC18 000A9B58  EC 00 18 28 */	fsubs f0, f0, f3
/* 800ACC1C 000A9B5C  EF 24 10 24 */	fdivs f25, f4, f2
/* 800ACC20 000A9B60  EF 01 00 24 */	fdivs f24, f1, f0
/* 800ACC24 000A9B64  4B FF A5 21 */	bl GXGetVtxDesc
/* 800ACC28 000A9B68  7F 43 D3 78 */	mr r3, r26
/* 800ACC2C 000A9B6C  4B FF A6 CD */	bl GXGetVtxDescv
/* 800ACC30 000A9B70  38 60 00 03 */	li r3, 3
/* 800ACC34 000A9B74  38 9A 00 D8 */	addi r4, r26, 0xd8
/* 800ACC38 000A9B78  4B FF B1 39 */	bl GXGetVtxAttrFmtv
/* 800ACC3C 000A9B7C  4B FF A7 2D */	bl GXClearVtxDesc
/* 800ACC40 000A9B80  38 60 00 09 */	li r3, 9
/* 800ACC44 000A9B84  38 80 00 01 */	li r4, 1
/* 800ACC48 000A9B88  4B FF 9C A1 */	bl GXSetVtxDesc
/* 800ACC4C 000A9B8C  38 60 00 0A */	li r3, 0xa
/* 800ACC50 000A9B90  38 80 00 01 */	li r4, 1
/* 800ACC54 000A9B94  4B FF 9C 95 */	bl GXSetVtxDesc
/* 800ACC58 000A9B98  38 60 00 03 */	li r3, 3
/* 800ACC5C 000A9B9C  38 80 00 09 */	li r4, 9
/* 800ACC60 000A9BA0  38 A0 00 01 */	li r5, 1
/* 800ACC64 000A9BA4  38 C0 00 04 */	li r6, 4
/* 800ACC68 000A9BA8  38 E0 00 00 */	li r7, 0
/* 800ACC6C 000A9BAC  4B FF A7 49 */	bl GXSetVtxAttrFmt
/* 800ACC70 000A9BB0  38 60 00 03 */	li r3, 3
/* 800ACC74 000A9BB4  38 80 00 0A */	li r4, 0xa
/* 800ACC78 000A9BB8  38 A0 00 00 */	li r5, 0
/* 800ACC7C 000A9BBC  38 C0 00 04 */	li r6, 4
/* 800ACC80 000A9BC0  38 E0 00 00 */	li r7, 0
/* 800ACC84 000A9BC4  4B FF A7 31 */	bl GXSetVtxAttrFmt
/* 800ACC88 000A9BC8  80 01 00 10 */	lwz r0, 0x10(r1)
/* 800ACC8C 000A9BCC  2C 00 00 00 */	cmpwi r0, 0
/* 800ACC90 000A9BD0  41 82 00 28 */	beq lbl_800ACCB8
/* 800ACC94 000A9BD4  38 60 00 0D */	li r3, 0xd
/* 800ACC98 000A9BD8  38 80 00 01 */	li r4, 1
/* 800ACC9C 000A9BDC  4B FF 9C 4D */	bl GXSetVtxDesc
/* 800ACCA0 000A9BE0  38 60 00 03 */	li r3, 3
/* 800ACCA4 000A9BE4  38 80 00 0D */	li r4, 0xd
/* 800ACCA8 000A9BE8  38 A0 00 01 */	li r5, 1
/* 800ACCAC 000A9BEC  38 C0 00 04 */	li r6, 4
/* 800ACCB0 000A9BF0  38 E0 00 00 */	li r7, 0
/* 800ACCB4 000A9BF4  4B FF A7 01 */	bl GXSetVtxAttrFmt
lbl_800ACCB8:
/* 800ACCB8 000A9BF8  56 B7 06 3E */	clrlwi r23, r21, 0x18
/* 800ACCBC 000A9BFC  CB 42 8B 98 */	lfd f26, "@362"@sda21(r2)
/* 800ACCC0 000A9C00  38 17 00 01 */	addi r0, r23, 1
/* 800ACCC4 000A9C04  C3 82 8B 8C */	lfs f28, "@357"@sda21(r2)
/* 800ACCC8 000A9C08  CB C2 8B A0 */	lfd f30, "@364"@sda21(r2)
/* 800ACCCC 000A9C0C  54 19 08 3C */	slwi r25, r0, 1
/* 800ACCD0 000A9C10  56 D8 06 3E */	clrlwi r24, r22, 0x18
/* 800ACCD4 000A9C14  3A C0 00 00 */	li r22, 0
/* 800ACCD8 000A9C18  3F A0 43 30 */	lis r29, 0x4330
/* 800ACCDC 000A9C1C  3F C0 CC 01 */	lis r30, 0xcc01
/* 800ACCE0 000A9C20  48 00 01 C0 */	b lbl_800ACEA0
lbl_800ACCE4:
/* 800ACCE4 000A9C24  6E DB 80 00 */	xoris r27, r22, 0x8000
/* 800ACCE8 000A9C28  93 61 00 2C */	stw r27, 0x2c(r1)
/* 800ACCEC 000A9C2C  93 A1 00 28 */	stw r29, 0x28(r1)
/* 800ACCF0 000A9C30  C8 01 00 28 */	lfd f0, 0x28(r1)
/* 800ACCF4 000A9C34  EC 00 D0 28 */	fsubs f0, f0, f26
/* 800ACCF8 000A9C38  EE 80 06 72 */	fmuls f20, f0, f25
/* 800ACCFC 000A9C3C  FC 20 A0 90 */	fmr f1, f20
/* 800ACD00 000A9C40  EF 74 C8 2A */	fadds f27, f20, f25
/* 800ACD04 000A9C44  4B FD A4 01 */	bl sinf
/* 800ACD08 000A9C48  EE FC 00 72 */	fmuls f23, f28, f1
/* 800ACD0C 000A9C4C  FC 20 D8 90 */	fmr f1, f27
/* 800ACD10 000A9C50  4B FD A3 F5 */	bl sinf
/* 800ACD14 000A9C54  EE DC 00 72 */	fmuls f22, f28, f1
/* 800ACD18 000A9C58  FC 20 A0 90 */	fmr f1, f20
/* 800ACD1C 000A9C5C  4B FD A2 55 */	bl cosf
/* 800ACD20 000A9C60  EE BC 00 72 */	fmuls f21, f28, f1
/* 800ACD24 000A9C64  FC 20 D8 90 */	fmr f1, f27
/* 800ACD28 000A9C68  4B FD A2 49 */	bl cosf
/* 800ACD2C 000A9C6C  EE 9C 00 72 */	fmuls f20, f28, f1
/* 800ACD30 000A9C70  57 25 04 3E */	clrlwi r5, r25, 0x10
/* 800ACD34 000A9C74  38 60 00 98 */	li r3, 0x98
/* 800ACD38 000A9C78  38 80 00 03 */	li r4, 3
/* 800ACD3C 000A9C7C  4B FF BB 6D */	bl GXBegin
/* 800ACD40 000A9C80  EF B4 E0 24 */	fdivs f29, f20, f28
/* 800ACD44 000A9C84  38 16 00 01 */	addi r0, r22, 1
/* 800ACD48 000A9C88  6C 1F 80 00 */	xoris r31, r0, 0x8000
/* 800ACD4C 000A9C8C  3A A0 00 00 */	li r21, 0
/* 800ACD50 000A9C90  EF F5 E0 24 */	fdivs f31, f21, f28
/* 800ACD54 000A9C94  48 00 01 40 */	b lbl_800ACE94
lbl_800ACD58:
/* 800ACD58 000A9C98  6E BC 80 00 */	xoris r28, r21, 0x8000
/* 800ACD5C 000A9C9C  93 81 00 2C */	stw r28, 0x2c(r1)
/* 800ACD60 000A9CA0  93 A1 00 28 */	stw r29, 0x28(r1)
/* 800ACD64 000A9CA4  C8 01 00 28 */	lfd f0, 0x28(r1)
/* 800ACD68 000A9CA8  EC 00 D0 28 */	fsubs f0, f0, f26
/* 800ACD6C 000A9CAC  EE 60 06 32 */	fmuls f19, f0, f24
/* 800ACD70 000A9CB0  FC 20 98 90 */	fmr f1, f19
/* 800ACD74 000A9CB4  4B FD A1 FD */	bl cosf
/* 800ACD78 000A9CB8  FF 60 08 90 */	fmr f27, f1
/* 800ACD7C 000A9CBC  FC 20 98 90 */	fmr f1, f19
/* 800ACD80 000A9CC0  4B FD A3 85 */	bl sinf
/* 800ACD84 000A9CC4  EC 1B 05 B2 */	fmuls f0, f27, f22
/* 800ACD88 000A9CC8  80 01 00 10 */	lwz r0, 0x10(r1)
/* 800ACD8C 000A9CCC  EC 61 05 B2 */	fmuls f3, f1, f22
/* 800ACD90 000A9CD0  2C 00 00 00 */	cmpwi r0, 0
/* 800ACD94 000A9CD4  EC 40 E0 24 */	fdivs f2, f0, f28
/* 800ACD98 000A9CD8  D0 1E 80 00 */	stfs f0, -0x8000(r30)
/* 800ACD9C 000A9CDC  D0 7E 80 00 */	stfs f3, -0x8000(r30)
/* 800ACDA0 000A9CE0  D2 9E 80 00 */	stfs f20, -0x8000(r30)
/* 800ACDA4 000A9CE4  EC 03 E0 24 */	fdivs f0, f3, f28
/* 800ACDA8 000A9CE8  D0 5E 80 00 */	stfs f2, -0x8000(r30)
/* 800ACDAC 000A9CEC  D0 1E 80 00 */	stfs f0, -0x8000(r30)
/* 800ACDB0 000A9CF0  D3 BE 80 00 */	stfs f29, -0x8000(r30)
/* 800ACDB4 000A9CF4  41 82 00 54 */	beq lbl_800ACE08
/* 800ACDB8 000A9CF8  93 81 00 2C */	stw r28, 0x2c(r1)
/* 800ACDBC 000A9CFC  92 E1 00 34 */	stw r23, 0x34(r1)
/* 800ACDC0 000A9D00  93 A1 00 28 */	stw r29, 0x28(r1)
/* 800ACDC4 000A9D04  93 A1 00 30 */	stw r29, 0x30(r1)
/* 800ACDC8 000A9D08  C8 41 00 28 */	lfd f2, 0x28(r1)
/* 800ACDCC 000A9D0C  93 E1 00 24 */	stw r31, 0x24(r1)
/* 800ACDD0 000A9D10  C8 01 00 30 */	lfd f0, 0x30(r1)
/* 800ACDD4 000A9D14  EC 42 D0 28 */	fsubs f2, f2, f26
/* 800ACDD8 000A9D18  93 01 00 1C */	stw r24, 0x1c(r1)
/* 800ACDDC 000A9D1C  EC 00 F0 28 */	fsubs f0, f0, f30
/* 800ACDE0 000A9D20  93 A1 00 20 */	stw r29, 0x20(r1)
/* 800ACDE4 000A9D24  93 A1 00 18 */	stw r29, 0x18(r1)
/* 800ACDE8 000A9D28  EC 62 00 24 */	fdivs f3, f2, f0
/* 800ACDEC 000A9D2C  C8 41 00 20 */	lfd f2, 0x20(r1)
/* 800ACDF0 000A9D30  C8 01 00 18 */	lfd f0, 0x18(r1)
/* 800ACDF4 000A9D34  EC 42 D0 28 */	fsubs f2, f2, f26
/* 800ACDF8 000A9D38  D0 7E 80 00 */	stfs f3, -0x8000(r30)
/* 800ACDFC 000A9D3C  EC 00 F0 28 */	fsubs f0, f0, f30
/* 800ACE00 000A9D40  EC 02 00 24 */	fdivs f0, f2, f0
/* 800ACE04 000A9D44  D0 1E 80 00 */	stfs f0, -0x8000(r30)
lbl_800ACE08:
/* 800ACE08 000A9D48  EC 1B 05 F2 */	fmuls f0, f27, f23
/* 800ACE0C 000A9D4C  80 01 00 10 */	lwz r0, 0x10(r1)
/* 800ACE10 000A9D50  EC 41 05 F2 */	fmuls f2, f1, f23
/* 800ACE14 000A9D54  2C 00 00 00 */	cmpwi r0, 0
/* 800ACE18 000A9D58  EC 20 E0 24 */	fdivs f1, f0, f28
/* 800ACE1C 000A9D5C  D0 1E 80 00 */	stfs f0, -0x8000(r30)
/* 800ACE20 000A9D60  D0 5E 80 00 */	stfs f2, -0x8000(r30)
/* 800ACE24 000A9D64  D2 BE 80 00 */	stfs f21, -0x8000(r30)
/* 800ACE28 000A9D68  EC 02 E0 24 */	fdivs f0, f2, f28
/* 800ACE2C 000A9D6C  D0 3E 80 00 */	stfs f1, -0x8000(r30)
/* 800ACE30 000A9D70  D0 1E 80 00 */	stfs f0, -0x8000(r30)
/* 800ACE34 000A9D74  D3 FE 80 00 */	stfs f31, -0x8000(r30)
/* 800ACE38 000A9D78  41 82 00 58 */	beq lbl_800ACE90
/* 800ACE3C 000A9D7C  6E A0 80 00 */	xoris r0, r21, 0x8000
/* 800ACE40 000A9D80  92 E1 00 24 */	stw r23, 0x24(r1)
/* 800ACE44 000A9D84  90 01 00 1C */	stw r0, 0x1c(r1)
/* 800ACE48 000A9D88  93 A1 00 18 */	stw r29, 0x18(r1)
/* 800ACE4C 000A9D8C  93 A1 00 20 */	stw r29, 0x20(r1)
/* 800ACE50 000A9D90  C8 21 00 18 */	lfd f1, 0x18(r1)
/* 800ACE54 000A9D94  93 61 00 2C */	stw r27, 0x2c(r1)
/* 800ACE58 000A9D98  C8 01 00 20 */	lfd f0, 0x20(r1)
/* 800ACE5C 000A9D9C  EC 21 D0 28 */	fsubs f1, f1, f26
/* 800ACE60 000A9DA0  93 01 00 34 */	stw r24, 0x34(r1)
/* 800ACE64 000A9DA4  EC 00 F0 28 */	fsubs f0, f0, f30
/* 800ACE68 000A9DA8  93 A1 00 28 */	stw r29, 0x28(r1)
/* 800ACE6C 000A9DAC  93 A1 00 30 */	stw r29, 0x30(r1)
/* 800ACE70 000A9DB0  EC 41 00 24 */	fdivs f2, f1, f0
/* 800ACE74 000A9DB4  C8 21 00 28 */	lfd f1, 0x28(r1)
/* 800ACE78 000A9DB8  C8 01 00 30 */	lfd f0, 0x30(r1)
/* 800ACE7C 000A9DBC  EC 21 D0 28 */	fsubs f1, f1, f26
/* 800ACE80 000A9DC0  D0 5E 80 00 */	stfs f2, -0x8000(r30)
/* 800ACE84 000A9DC4  EC 00 F0 28 */	fsubs f0, f0, f30
/* 800ACE88 000A9DC8  EC 01 00 24 */	fdivs f0, f1, f0
/* 800ACE8C 000A9DCC  D0 1E 80 00 */	stfs f0, -0x8000(r30)
lbl_800ACE90:
/* 800ACE90 000A9DD0  3A B5 00 01 */	addi r21, r21, 1
lbl_800ACE94:
/* 800ACE94 000A9DD4  7C 15 B8 00 */	cmpw r21, r23
/* 800ACE98 000A9DD8  40 81 FE C0 */	ble lbl_800ACD58
/* 800ACE9C 000A9DDC  3A D6 00 01 */	addi r22, r22, 1
lbl_800ACEA0:
/* 800ACEA0 000A9DE0  7C 16 C0 00 */	cmpw r22, r24
/* 800ACEA4 000A9DE4  41 80 FE 40 */	blt lbl_800ACCE4
/* 800ACEA8 000A9DE8  7F 43 D3 78 */	mr r3, r26
/* 800ACEAC 000A9DEC  4B FF 9D 9D */	bl GXSetVtxDescv
/* 800ACEB0 000A9DF0  38 60 00 03 */	li r3, 3
/* 800ACEB4 000A9DF4  38 9A 00 D8 */	addi r4, r26, 0xd8
/* 800ACEB8 000A9DF8  4B FF A8 59 */	bl GXSetVtxAttrFmtv
/* 800ACEBC 000A9DFC  BA A1 00 3C */	lmw r21, 0x3c(r1)
/* 800ACEC0 000A9E00  80 01 00 D4 */	lwz r0, 0xd4(r1)
/* 800ACEC4 000A9E04  CB E1 00 C8 */	lfd f31, 0xc8(r1)
/* 800ACEC8 000A9E08  CB C1 00 C0 */	lfd f30, 0xc0(r1)
/* 800ACECC 000A9E0C  CB A1 00 B8 */	lfd f29, 0xb8(r1)
/* 800ACED0 000A9E10  CB 81 00 B0 */	lfd f28, 0xb0(r1)
/* 800ACED4 000A9E14  CB 61 00 A8 */	lfd f27, 0xa8(r1)
/* 800ACED8 000A9E18  CB 41 00 A0 */	lfd f26, 0xa0(r1)
/* 800ACEDC 000A9E1C  CB 21 00 98 */	lfd f25, 0x98(r1)
/* 800ACEE0 000A9E20  CB 01 00 90 */	lfd f24, 0x90(r1)
/* 800ACEE4 000A9E24  CA E1 00 88 */	lfd f23, 0x88(r1)
/* 800ACEE8 000A9E28  CA C1 00 80 */	lfd f22, 0x80(r1)
/* 800ACEEC 000A9E2C  CA A1 00 78 */	lfd f21, 0x78(r1)
/* 800ACEF0 000A9E30  CA 81 00 70 */	lfd f20, 0x70(r1)
/* 800ACEF4 000A9E34  CA 61 00 68 */	lfd f19, 0x68(r1)
/* 800ACEF8 000A9E38  38 21 00 D0 */	addi r1, r1, 0xd0
/* 800ACEFC 000A9E3C  7C 08 03 A6 */	mtlr r0
/* 800ACF00 000A9E40  4E 80 00 20 */	blr 

.global GXDrawCubeFace
GXDrawCubeFace:
/* 800ACF04 000A9E44  94 21 FF A8 */	stwu r1, -0x58(r1)
/* 800ACF08 000A9E48  ED 22 28 2A */	fadds f9, f2, f5
/* 800ACF0C 000A9E4C  EC 01 20 2A */	fadds f0, f1, f4
/* 800ACF10 000A9E50  3C A0 CC 01 */	lis r5, 0xCC008000@ha
/* 800ACF14 000A9E54  DB E1 00 50 */	stfd f31, 0x50(r1)
/* 800ACF18 000A9E58  ED 43 30 2A */	fadds f10, f3, f6
/* 800ACF1C 000A9E5C  DB C1 00 48 */	stfd f30, 0x48(r1)
/* 800ACF20 000A9E60  C1 61 00 60 */	lfs f11, 0x60(r1)
/* 800ACF24 000A9E64  EF C7 00 2A */	fadds f30, f7, f0
/* 800ACF28 000A9E68  DB A1 00 40 */	stfd f29, 0x40(r1)
/* 800ACF2C 000A9E6C  ED A8 48 2A */	fadds f13, f8, f9
/* 800ACF30 000A9E70  2C 03 00 00 */	cmpwi r3, 0
/* 800ACF34 000A9E74  DB 81 00 38 */	stfd f28, 0x38(r1)
/* 800ACF38 000A9E78  ED 8B 50 2A */	fadds f12, f11, f10
/* 800ACF3C 000A9E7C  DB 61 00 30 */	stfd f27, 0x30(r1)
/* 800ACF40 000A9E80  C3 E2 8B AC */	lfs f31, "@493"@sda21(r2)
/* 800ACF44 000A9E84  EF DF 07 B2 */	fmuls f30, f31, f30
/* 800ACF48 000A9E88  ED BF 03 72 */	fmuls f13, f31, f13
/* 800ACF4C 000A9E8C  ED 9F 03 32 */	fmuls f12, f31, f12
/* 800ACF50 000A9E90  D3 C5 80 00 */	stfs f30, 0xCC008000@l(r5)
/* 800ACF54 000A9E94  D1 A5 80 00 */	stfs f13, -0x8000(r5)
/* 800ACF58 000A9E98  D1 85 80 00 */	stfs f12, -0x8000(r5)
/* 800ACF5C 000A9E9C  D0 25 80 00 */	stfs f1, -0x8000(r5)
/* 800ACF60 000A9EA0  D0 45 80 00 */	stfs f2, -0x8000(r5)
/* 800ACF64 000A9EA4  D0 65 80 00 */	stfs f3, -0x8000(r5)
/* 800ACF68 000A9EA8  41 82 00 1C */	beq lbl_800ACF84
/* 800ACF6C 000A9EAC  D0 85 80 00 */	stfs f4, -0x8000(r5)
/* 800ACF70 000A9EB0  D0 A5 80 00 */	stfs f5, -0x8000(r5)
/* 800ACF74 000A9EB4  D0 C5 80 00 */	stfs f6, -0x8000(r5)
/* 800ACF78 000A9EB8  D0 E5 80 00 */	stfs f7, -0x8000(r5)
/* 800ACF7C 000A9EBC  D1 05 80 00 */	stfs f8, -0x8000(r5)
/* 800ACF80 000A9EC0  D1 65 80 00 */	stfs f11, -0x8000(r5)
lbl_800ACF84:
/* 800ACF84 000A9EC4  2C 04 00 00 */	cmpwi r4, 0
/* 800ACF88 000A9EC8  41 82 00 14 */	beq lbl_800ACF9C
/* 800ACF8C 000A9ECC  38 00 00 01 */	li r0, 1
/* 800ACF90 000A9ED0  3C A0 CC 01 */	lis r5, 0xCC008000@ha
/* 800ACF94 000A9ED4  98 05 80 00 */	stb r0, 0xCC008000@l(r5)
/* 800ACF98 000A9ED8  98 05 80 00 */	stb r0, -0x8000(r5)
lbl_800ACF9C:
/* 800ACF9C 000A9EDC  EF A1 20 28 */	fsubs f29, f1, f4
/* 800ACFA0 000A9EE0  C3 E2 8B AC */	lfs f31, "@493"@sda21(r2)
/* 800ACFA4 000A9EE4  EF 82 28 28 */	fsubs f28, f2, f5
/* 800ACFA8 000A9EE8  3C A0 CC 01 */	lis r5, 0xCC008000@ha
/* 800ACFAC 000A9EEC  EF 63 30 28 */	fsubs f27, f3, f6
/* 800ACFB0 000A9EF0  EF C7 E8 2A */	fadds f30, f7, f29
/* 800ACFB4 000A9EF4  2C 03 00 00 */	cmpwi r3, 0
/* 800ACFB8 000A9EF8  ED A8 E0 2A */	fadds f13, f8, f28
/* 800ACFBC 000A9EFC  ED 8B D8 2A */	fadds f12, f11, f27
/* 800ACFC0 000A9F00  EF DF 07 B2 */	fmuls f30, f31, f30
/* 800ACFC4 000A9F04  ED BF 03 72 */	fmuls f13, f31, f13
/* 800ACFC8 000A9F08  ED 9F 03 32 */	fmuls f12, f31, f12
/* 800ACFCC 000A9F0C  D3 C5 80 00 */	stfs f30, 0xCC008000@l(r5)
/* 800ACFD0 000A9F10  D1 A5 80 00 */	stfs f13, -0x8000(r5)
/* 800ACFD4 000A9F14  D1 85 80 00 */	stfs f12, -0x8000(r5)
/* 800ACFD8 000A9F18  D0 25 80 00 */	stfs f1, -0x8000(r5)
/* 800ACFDC 000A9F1C  D0 45 80 00 */	stfs f2, -0x8000(r5)
/* 800ACFE0 000A9F20  D0 65 80 00 */	stfs f3, -0x8000(r5)
/* 800ACFE4 000A9F24  41 82 00 1C */	beq lbl_800AD000
/* 800ACFE8 000A9F28  D0 85 80 00 */	stfs f4, -0x8000(r5)
/* 800ACFEC 000A9F2C  D0 A5 80 00 */	stfs f5, -0x8000(r5)
/* 800ACFF0 000A9F30  D0 C5 80 00 */	stfs f6, -0x8000(r5)
/* 800ACFF4 000A9F34  D0 E5 80 00 */	stfs f7, -0x8000(r5)
/* 800ACFF8 000A9F38  D1 05 80 00 */	stfs f8, -0x8000(r5)
/* 800ACFFC 000A9F3C  D1 65 80 00 */	stfs f11, -0x8000(r5)
lbl_800AD000:
/* 800AD000 000A9F40  2C 04 00 00 */	cmpwi r4, 0
/* 800AD004 000A9F44  41 82 00 18 */	beq lbl_800AD01C
/* 800AD008 000A9F48  38 00 00 00 */	li r0, 0
/* 800AD00C 000A9F4C  3C A0 CC 01 */	lis r5, 0xCC008000@ha
/* 800AD010 000A9F50  98 05 80 00 */	stb r0, 0xCC008000@l(r5)
/* 800AD014 000A9F54  38 00 00 01 */	li r0, 1
/* 800AD018 000A9F58  98 05 80 00 */	stb r0, -0x8000(r5)
lbl_800AD01C:
/* 800AD01C 000A9F5C  EF FD 38 28 */	fsubs f31, f29, f7
/* 800AD020 000A9F60  C3 C2 8B AC */	lfs f30, "@493"@sda21(r2)
/* 800AD024 000A9F64  ED BC 40 28 */	fsubs f13, f28, f8
/* 800AD028 000A9F68  3C A0 CC 01 */	lis r5, 0xCC008000@ha
/* 800AD02C 000A9F6C  ED 9B 58 28 */	fsubs f12, f27, f11
/* 800AD030 000A9F70  EF FE 07 F2 */	fmuls f31, f30, f31
/* 800AD034 000A9F74  2C 03 00 00 */	cmpwi r3, 0
/* 800AD038 000A9F78  ED BE 03 72 */	fmuls f13, f30, f13
/* 800AD03C 000A9F7C  ED 9E 03 32 */	fmuls f12, f30, f12
/* 800AD040 000A9F80  D3 E5 80 00 */	stfs f31, 0xCC008000@l(r5)
/* 800AD044 000A9F84  D1 A5 80 00 */	stfs f13, -0x8000(r5)
/* 800AD048 000A9F88  D1 85 80 00 */	stfs f12, -0x8000(r5)
/* 800AD04C 000A9F8C  D0 25 80 00 */	stfs f1, -0x8000(r5)
/* 800AD050 000A9F90  D0 45 80 00 */	stfs f2, -0x8000(r5)
/* 800AD054 000A9F94  D0 65 80 00 */	stfs f3, -0x8000(r5)
/* 800AD058 000A9F98  41 82 00 1C */	beq lbl_800AD074
/* 800AD05C 000A9F9C  D0 85 80 00 */	stfs f4, -0x8000(r5)
/* 800AD060 000A9FA0  D0 A5 80 00 */	stfs f5, -0x8000(r5)
/* 800AD064 000A9FA4  D0 C5 80 00 */	stfs f6, -0x8000(r5)
/* 800AD068 000A9FA8  D0 E5 80 00 */	stfs f7, -0x8000(r5)
/* 800AD06C 000A9FAC  D1 05 80 00 */	stfs f8, -0x8000(r5)
/* 800AD070 000A9FB0  D1 65 80 00 */	stfs f11, -0x8000(r5)
lbl_800AD074:
/* 800AD074 000A9FB4  2C 04 00 00 */	cmpwi r4, 0
/* 800AD078 000A9FB8  41 82 00 14 */	beq lbl_800AD08C
/* 800AD07C 000A9FBC  38 00 00 00 */	li r0, 0
/* 800AD080 000A9FC0  3C A0 CC 01 */	lis r5, 0xCC008000@ha
/* 800AD084 000A9FC4  98 05 80 00 */	stb r0, 0xCC008000@l(r5)
/* 800AD088 000A9FC8  98 05 80 00 */	stb r0, -0x8000(r5)
lbl_800AD08C:
/* 800AD08C 000A9FCC  ED 80 38 28 */	fsubs f12, f0, f7
/* 800AD090 000A9FD0  C1 A2 8B AC */	lfs f13, "@493"@sda21(r2)
/* 800AD094 000A9FD4  ED 29 40 28 */	fsubs f9, f9, f8
/* 800AD098 000A9FD8  3C A0 CC 01 */	lis r5, 0xCC008000@ha
/* 800AD09C 000A9FDC  EC 0A 58 28 */	fsubs f0, f10, f11
/* 800AD0A0 000A9FE0  ED 4D 03 32 */	fmuls f10, f13, f12
/* 800AD0A4 000A9FE4  2C 03 00 00 */	cmpwi r3, 0
/* 800AD0A8 000A9FE8  ED 2D 02 72 */	fmuls f9, f13, f9
/* 800AD0AC 000A9FEC  EC 0D 00 32 */	fmuls f0, f13, f0
/* 800AD0B0 000A9FF0  D1 45 80 00 */	stfs f10, 0xCC008000@l(r5)
/* 800AD0B4 000A9FF4  D1 25 80 00 */	stfs f9, -0x8000(r5)
/* 800AD0B8 000A9FF8  D0 05 80 00 */	stfs f0, -0x8000(r5)
/* 800AD0BC 000A9FFC  D0 25 80 00 */	stfs f1, -0x8000(r5)
/* 800AD0C0 000AA000  D0 45 80 00 */	stfs f2, -0x8000(r5)
/* 800AD0C4 000AA004  D0 65 80 00 */	stfs f3, -0x8000(r5)
/* 800AD0C8 000AA008  41 82 00 1C */	beq lbl_800AD0E4
/* 800AD0CC 000AA00C  D0 85 80 00 */	stfs f4, -0x8000(r5)
/* 800AD0D0 000AA010  D0 A5 80 00 */	stfs f5, -0x8000(r5)
/* 800AD0D4 000AA014  D0 C5 80 00 */	stfs f6, -0x8000(r5)
/* 800AD0D8 000AA018  D0 E5 80 00 */	stfs f7, -0x8000(r5)
/* 800AD0DC 000AA01C  D1 05 80 00 */	stfs f8, -0x8000(r5)
/* 800AD0E0 000AA020  D1 65 80 00 */	stfs f11, -0x8000(r5)
lbl_800AD0E4:
/* 800AD0E4 000AA024  2C 04 00 00 */	cmpwi r4, 0
/* 800AD0E8 000AA028  41 82 00 18 */	beq lbl_800AD100
/* 800AD0EC 000AA02C  38 00 00 01 */	li r0, 1
/* 800AD0F0 000AA030  3C 60 CC 01 */	lis r3, 0xCC008000@ha
/* 800AD0F4 000AA034  98 03 80 00 */	stb r0, 0xCC008000@l(r3)
/* 800AD0F8 000AA038  38 00 00 00 */	li r0, 0
/* 800AD0FC 000AA03C  98 03 80 00 */	stb r0, -0x8000(r3)
lbl_800AD100:
/* 800AD100 000AA040  CB E1 00 50 */	lfd f31, 0x50(r1)
/* 800AD104 000AA044  CB C1 00 48 */	lfd f30, 0x48(r1)
/* 800AD108 000AA048  CB A1 00 40 */	lfd f29, 0x40(r1)
/* 800AD10C 000AA04C  CB 81 00 38 */	lfd f28, 0x38(r1)
/* 800AD110 000AA050  CB 61 00 30 */	lfd f27, 0x30(r1)
/* 800AD114 000AA054  38 21 00 58 */	addi r1, r1, 0x58
/* 800AD118 000AA058  4E 80 00 20 */	blr 

.global GXDrawCube
GXDrawCube:
/* 800AD11C 000AA05C  7C 08 02 A6 */	mflr r0
/* 800AD120 000AA060  3C 60 80 3F */	lis r3, vcd@ha
/* 800AD124 000AA064  90 01 00 04 */	stw r0, 4(r1)
/* 800AD128 000AA068  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800AD12C 000AA06C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800AD130 000AA070  3B E3 C7 18 */	addi r31, r3, vcd@l
/* 800AD134 000AA074  38 81 00 14 */	addi r4, r1, 0x14
/* 800AD138 000AA078  38 60 00 19 */	li r3, 0x19
/* 800AD13C 000AA07C  4B FF A0 09 */	bl GXGetVtxDesc
/* 800AD140 000AA080  38 60 00 0D */	li r3, 0xd
/* 800AD144 000AA084  38 81 00 10 */	addi r4, r1, 0x10
/* 800AD148 000AA088  4B FF 9F FD */	bl GXGetVtxDesc
/* 800AD14C 000AA08C  7F E3 FB 78 */	mr r3, r31
/* 800AD150 000AA090  4B FF A1 A9 */	bl GXGetVtxDescv
/* 800AD154 000AA094  38 60 00 03 */	li r3, 3
/* 800AD158 000AA098  38 9F 00 D8 */	addi r4, r31, 0xd8
/* 800AD15C 000AA09C  4B FF AC 15 */	bl GXGetVtxAttrFmtv
/* 800AD160 000AA0A0  4B FF A2 09 */	bl GXClearVtxDesc
/* 800AD164 000AA0A4  38 60 00 09 */	li r3, 9
/* 800AD168 000AA0A8  38 80 00 01 */	li r4, 1
/* 800AD16C 000AA0AC  4B FF 97 7D */	bl GXSetVtxDesc
/* 800AD170 000AA0B0  38 60 00 0A */	li r3, 0xa
/* 800AD174 000AA0B4  38 80 00 01 */	li r4, 1
/* 800AD178 000AA0B8  4B FF 97 71 */	bl GXSetVtxDesc
/* 800AD17C 000AA0BC  38 60 00 03 */	li r3, 3
/* 800AD180 000AA0C0  38 80 00 09 */	li r4, 9
/* 800AD184 000AA0C4  38 A0 00 01 */	li r5, 1
/* 800AD188 000AA0C8  38 C0 00 04 */	li r6, 4
/* 800AD18C 000AA0CC  38 E0 00 00 */	li r7, 0
/* 800AD190 000AA0D0  4B FF A2 25 */	bl GXSetVtxAttrFmt
/* 800AD194 000AA0D4  38 60 00 03 */	li r3, 3
/* 800AD198 000AA0D8  38 80 00 0A */	li r4, 0xa
/* 800AD19C 000AA0DC  38 A0 00 00 */	li r5, 0
/* 800AD1A0 000AA0E0  38 C0 00 04 */	li r6, 4
/* 800AD1A4 000AA0E4  38 E0 00 00 */	li r7, 0
/* 800AD1A8 000AA0E8  4B FF A2 0D */	bl GXSetVtxAttrFmt
/* 800AD1AC 000AA0EC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800AD1B0 000AA0F0  2C 00 00 00 */	cmpwi r0, 0
/* 800AD1B4 000AA0F4  41 82 00 28 */	beq lbl_800AD1DC
/* 800AD1B8 000AA0F8  38 60 00 19 */	li r3, 0x19
/* 800AD1BC 000AA0FC  38 80 00 01 */	li r4, 1
/* 800AD1C0 000AA100  4B FF 97 29 */	bl GXSetVtxDesc
/* 800AD1C4 000AA104  38 60 00 03 */	li r3, 3
/* 800AD1C8 000AA108  38 80 00 19 */	li r4, 0x19
/* 800AD1CC 000AA10C  38 A0 00 01 */	li r5, 1
/* 800AD1D0 000AA110  38 C0 00 04 */	li r6, 4
/* 800AD1D4 000AA114  38 E0 00 00 */	li r7, 0
/* 800AD1D8 000AA118  4B FF A1 DD */	bl GXSetVtxAttrFmt
lbl_800AD1DC:
/* 800AD1DC 000AA11C  80 01 00 10 */	lwz r0, 0x10(r1)
/* 800AD1E0 000AA120  2C 00 00 00 */	cmpwi r0, 0
/* 800AD1E4 000AA124  41 82 00 28 */	beq lbl_800AD20C
/* 800AD1E8 000AA128  38 60 00 0D */	li r3, 0xd
/* 800AD1EC 000AA12C  38 80 00 01 */	li r4, 1
/* 800AD1F0 000AA130  4B FF 96 F9 */	bl GXSetVtxDesc
/* 800AD1F4 000AA134  38 60 00 03 */	li r3, 3
/* 800AD1F8 000AA138  38 80 00 0D */	li r4, 0xd
/* 800AD1FC 000AA13C  38 A0 00 01 */	li r5, 1
/* 800AD200 000AA140  38 C0 00 01 */	li r6, 1
/* 800AD204 000AA144  38 E0 00 00 */	li r7, 0
/* 800AD208 000AA148  4B FF A1 AD */	bl GXSetVtxAttrFmt
lbl_800AD20C:
/* 800AD20C 000AA14C  38 60 00 80 */	li r3, 0x80
/* 800AD210 000AA150  38 80 00 03 */	li r4, 3
/* 800AD214 000AA154  38 A0 00 18 */	li r5, 0x18
/* 800AD218 000AA158  4B FF B6 91 */	bl GXBegin
/* 800AD21C 000AA15C  C0 42 8B 88 */	lfs f2, "@133"@sda21(r2)
/* 800AD220 000AA160  D0 41 00 08 */	stfs f2, 8(r1)
/* 800AD224 000AA164  FC 60 10 90 */	fmr f3, f2
/* 800AD228 000AA168  FC 80 10 90 */	fmr f4, f2
/* 800AD22C 000AA16C  C0 22 8B 94 */	lfs f1, "@360"@sda21(r2)
/* 800AD230 000AA170  FC A0 10 90 */	fmr f5, f2
/* 800AD234 000AA174  FC E0 10 90 */	fmr f7, f2
/* 800AD238 000AA178  FC C0 08 90 */	fmr f6, f1
/* 800AD23C 000AA17C  C1 02 8B 8C */	lfs f8, "@357"@sda21(r2)
/* 800AD240 000AA180  80 61 00 14 */	lwz r3, 0x14(r1)
/* 800AD244 000AA184  80 81 00 10 */	lwz r4, 0x10(r1)
/* 800AD248 000AA188  4B FF FC BD */	bl GXDrawCubeFace
/* 800AD24C 000AA18C  C0 02 8B 94 */	lfs f0, "@360"@sda21(r2)
/* 800AD250 000AA190  D0 01 00 08 */	stfs f0, 8(r1)
/* 800AD254 000AA194  C0 42 8B 88 */	lfs f2, "@133"@sda21(r2)
/* 800AD258 000AA198  C0 22 8B 8C */	lfs f1, "@357"@sda21(r2)
/* 800AD25C 000AA19C  FC 60 10 90 */	fmr f3, f2
/* 800AD260 000AA1A0  80 61 00 14 */	lwz r3, 0x14(r1)
/* 800AD264 000AA1A4  FC 80 10 90 */	fmr f4, f2
/* 800AD268 000AA1A8  80 81 00 10 */	lwz r4, 0x10(r1)
/* 800AD26C 000AA1AC  FC A0 08 90 */	fmr f5, f1
/* 800AD270 000AA1B0  FC C0 10 90 */	fmr f6, f2
/* 800AD274 000AA1B4  FC E0 10 90 */	fmr f7, f2
/* 800AD278 000AA1B8  FD 00 10 90 */	fmr f8, f2
/* 800AD27C 000AA1BC  4B FF FC 89 */	bl GXDrawCubeFace
/* 800AD280 000AA1C0  C0 02 8B 8C */	lfs f0, "@357"@sda21(r2)
/* 800AD284 000AA1C4  D0 01 00 08 */	stfs f0, 8(r1)
/* 800AD288 000AA1C8  C0 22 8B 88 */	lfs f1, "@133"@sda21(r2)
/* 800AD28C 000AA1CC  C0 42 8B 94 */	lfs f2, "@360"@sda21(r2)
/* 800AD290 000AA1D0  FC 60 08 90 */	fmr f3, f1
/* 800AD294 000AA1D4  80 61 00 14 */	lwz r3, 0x14(r1)
/* 800AD298 000AA1D8  FC 80 10 90 */	fmr f4, f2
/* 800AD29C 000AA1DC  80 81 00 10 */	lwz r4, 0x10(r1)
/* 800AD2A0 000AA1E0  FC A0 08 90 */	fmr f5, f1
/* 800AD2A4 000AA1E4  FC C0 08 90 */	fmr f6, f1
/* 800AD2A8 000AA1E8  FC E0 08 90 */	fmr f7, f1
/* 800AD2AC 000AA1EC  FD 00 08 90 */	fmr f8, f1
/* 800AD2B0 000AA1F0  4B FF FC 55 */	bl GXDrawCubeFace
/* 800AD2B4 000AA1F4  C0 22 8B 88 */	lfs f1, "@133"@sda21(r2)
/* 800AD2B8 000AA1F8  D0 21 00 08 */	stfs f1, 8(r1)
/* 800AD2BC 000AA1FC  FC 60 08 90 */	fmr f3, f1
/* 800AD2C0 000AA200  FC 80 08 90 */	fmr f4, f1
/* 800AD2C4 000AA204  C0 42 8B 8C */	lfs f2, "@357"@sda21(r2)
/* 800AD2C8 000AA208  FC A0 08 90 */	fmr f5, f1
/* 800AD2CC 000AA20C  FD 00 08 90 */	fmr f8, f1
/* 800AD2D0 000AA210  FC C0 10 90 */	fmr f6, f2
/* 800AD2D4 000AA214  C0 E2 8B 94 */	lfs f7, "@360"@sda21(r2)
/* 800AD2D8 000AA218  80 61 00 14 */	lwz r3, 0x14(r1)
/* 800AD2DC 000AA21C  80 81 00 10 */	lwz r4, 0x10(r1)
/* 800AD2E0 000AA220  4B FF FC 25 */	bl GXDrawCubeFace
/* 800AD2E4 000AA224  C0 22 8B 88 */	lfs f1, "@133"@sda21(r2)
/* 800AD2E8 000AA228  D0 21 00 08 */	stfs f1, 8(r1)
/* 800AD2EC 000AA22C  FC 40 08 90 */	fmr f2, f1
/* 800AD2F0 000AA230  FC 80 08 90 */	fmr f4, f1
/* 800AD2F4 000AA234  C0 62 8B 94 */	lfs f3, "@360"@sda21(r2)
/* 800AD2F8 000AA238  FC C0 08 90 */	fmr f6, f1
/* 800AD2FC 000AA23C  FD 00 08 90 */	fmr f8, f1
/* 800AD300 000AA240  FC A0 18 90 */	fmr f5, f3
/* 800AD304 000AA244  C0 E2 8B 8C */	lfs f7, "@357"@sda21(r2)
/* 800AD308 000AA248  80 61 00 14 */	lwz r3, 0x14(r1)
/* 800AD30C 000AA24C  80 81 00 10 */	lwz r4, 0x10(r1)
/* 800AD310 000AA250  4B FF FB F5 */	bl GXDrawCubeFace
/* 800AD314 000AA254  C0 22 8B 88 */	lfs f1, "@133"@sda21(r2)
/* 800AD318 000AA258  D0 21 00 08 */	stfs f1, 8(r1)
/* 800AD31C 000AA25C  FC 40 08 90 */	fmr f2, f1
/* 800AD320 000AA260  FC A0 08 90 */	fmr f5, f1
/* 800AD324 000AA264  C0 62 8B 8C */	lfs f3, "@357"@sda21(r2)
/* 800AD328 000AA268  FC C0 08 90 */	fmr f6, f1
/* 800AD32C 000AA26C  FC E0 08 90 */	fmr f7, f1
/* 800AD330 000AA270  FC 80 18 90 */	fmr f4, f3
/* 800AD334 000AA274  C1 02 8B 94 */	lfs f8, "@360"@sda21(r2)
/* 800AD338 000AA278  80 61 00 14 */	lwz r3, 0x14(r1)
/* 800AD33C 000AA27C  80 81 00 10 */	lwz r4, 0x10(r1)
/* 800AD340 000AA280  4B FF FB C5 */	bl GXDrawCubeFace
/* 800AD344 000AA284  7F E3 FB 78 */	mr r3, r31
/* 800AD348 000AA288  4B FF 99 01 */	bl GXSetVtxDescv
/* 800AD34C 000AA28C  38 60 00 03 */	li r3, 3
/* 800AD350 000AA290  38 9F 00 D8 */	addi r4, r31, 0xd8
/* 800AD354 000AA294  4B FF A3 BD */	bl GXSetVtxAttrFmtv
/* 800AD358 000AA298  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800AD35C 000AA29C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800AD360 000AA2A0  38 21 00 20 */	addi r1, r1, 0x20
/* 800AD364 000AA2A4  7C 08 03 A6 */	mtlr r0
/* 800AD368 000AA2A8  4E 80 00 20 */	blr 

.section .sdata2, "a"  # 0x8040B460 - 0x80414020
.balign 8
"@133":
  .4byte 0
"@357":
	.4byte 0x3F800000
"@358":
	.4byte 0x40490FDB
"@360":
	.4byte 0xBF800000
"@362":
	.4byte 0x43300000
	.4byte 0x80000000
"@364":
	.4byte 0x43300000
	.4byte 0
"@405":
	.4byte 0x40C90FDB
"@493":
	.4byte 0x3F13CD3A

.section .bss, "wa"  # 0x803E6000 - 0x80408AC0
vcd:
	.skip 0xD8
vat:
	.skip 0x1B0