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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global __AXOutNewFrame
__AXOutNewFrame:
/* 802907F0 0028C450 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802907F4 0028C454 7C 08 02 A6 */ mflr r0
/* 802907F8 0028C458 90 01 00 34 */ stw r0, 0x34(r1)
/* 802907FC 0028C45C 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80290800 0028C460 3F E0 80 52 */ lis r31, lbl_8051EC40@ha
/* 80290804 0028C464 3B FF EC 40 */ addi r31, r31, lbl_8051EC40@l
/* 80290808 0028C468 93 C1 00 28 */ stw r30, 0x28(r1)
/* 8029080C 0028C46C 93 A1 00 24 */ stw r29, 0x24(r1)
/* 80290810 0028C470 4B FE 1F A9 */ bl OSGetTime
/* 80290814 0028C474 38 BF 00 00 */ addi r5, r31, 0
/* 80290818 0028C478 90 7F 00 00 */ stw r3, 0(r31)
/* 8029081C 0028C47C 90 85 00 04 */ stw r4, 4(r5)
/* 80290820 0028C480 4B FF E3 B9 */ bl AIGetDMABytesLeft
/* 80290824 0028C484 54 63 F0 BE */ srwi r3, r3, 2
/* 80290828 0028C488 80 0D AB 98 */ lwz r0, lbl_8063FE58-_SDA_BASE_(r13)
/* 8029082C 0028C48C 20 63 00 60 */ subfic r3, r3, 0x60
/* 80290830 0028C490 28 00 00 01 */ cmplwi r0, 1
/* 80290834 0028C494 1F C3 0E D5 */ mulli r30, r3, 0xed5
/* 80290838 0028C498 40 82 00 10 */ bne lbl_80290848
/* 8029083C 0028C49C 38 60 00 00 */ li r3, 0
/* 80290840 0028C4A0 48 00 11 15 */ bl __AXSyncPBs
/* 80290844 0028C4A4 48 00 00 0C */ b lbl_80290850
lbl_80290848:
/* 80290848 0028C4A8 38 60 5F 50 */ li r3, 0x5f50
/* 8029084C 0028C4AC 48 00 11 09 */ bl __AXSyncPBs
lbl_80290850:
/* 80290850 0028C4B0 48 00 08 71 */ bl __AXPrintStudio
/* 80290854 0028C4B4 4B FF F5 19 */ bl __AXGetCommandListAddress
/* 80290858 0028C4B8 3C 80 BA BE */ lis r4, 0xBABE0080@ha
/* 8029085C 0028C4BC 7C 7D 1B 78 */ mr r29, r3
/* 80290860 0028C4C0 38 64 00 80 */ addi r3, r4, 0xBABE0080@l
/* 80290864 0028C4C4 48 00 A5 C9 */ bl DSPSendMailToDSP
lbl_80290868:
/* 80290868 0028C4C8 48 00 A5 91 */ bl DSPCheckMailToDSP
/* 8029086C 0028C4CC 2C 03 00 00 */ cmpwi r3, 0
/* 80290870 0028C4D0 40 82 FF F8 */ bne lbl_80290868
/* 80290874 0028C4D4 7F A3 EB 78 */ mr r3, r29
/* 80290878 0028C4D8 48 00 A5 B5 */ bl DSPSendMailToDSP
lbl_8029087C:
/* 8029087C 0028C4DC 48 00 A5 7D */ bl DSPCheckMailToDSP
/* 80290880 0028C4E0 2C 03 00 00 */ cmpwi r3, 0
/* 80290884 0028C4E4 40 82 FF F8 */ bne lbl_8029087C
/* 80290888 0028C4E8 4B FF E8 21 */ bl __AXServiceCallbackStack
/* 8029088C 0028C4EC 4B FE 1F 2D */ bl OSGetTime
/* 80290890 0028C4F0 3B BF 00 00 */ addi r29, r31, 0
/* 80290894 0028C4F4 90 9D 00 0C */ stw r4, 0xc(r29)
/* 80290898 0028C4F8 90 7D 00 08 */ stw r3, 8(r29)
/* 8029089C 0028C4FC 4B FF EF B5 */ bl __AXProcessAux
/* 802908A0 0028C500 4B FE 1F 19 */ bl OSGetTime
/* 802908A4 0028C504 90 9D 00 14 */ stw r4, 0x14(r29)
/* 802908A8 0028C508 90 7D 00 10 */ stw r3, 0x10(r29)
/* 802908AC 0028C50C 4B FE 1F 0D */ bl OSGetTime
/* 802908B0 0028C510 81 8D AB B4 */ lwz r12, lbl_8063FE74-_SDA_BASE_(r13)
/* 802908B4 0028C514 90 9D 00 1C */ stw r4, 0x1c(r29)
/* 802908B8 0028C518 2C 0C 00 00 */ cmpwi r12, 0
/* 802908BC 0028C51C 90 7D 00 18 */ stw r3, 0x18(r29)
/* 802908C0 0028C520 41 82 00 0C */ beq lbl_802908CC
/* 802908C4 0028C524 7D 89 03 A6 */ mtctr r12
/* 802908C8 0028C528 4E 80 04 21 */ bctrl
lbl_802908CC:
/* 802908CC 0028C52C 4B FE 1E ED */ bl OSGetTime
/* 802908D0 0028C530 80 ED AB 90 */ lwz r7, lbl_8063FE50-_SDA_BASE_(r13)
/* 802908D4 0028C534 39 1F 00 00 */ addi r8, r31, 0
/* 802908D8 0028C538 38 BF 00 40 */ addi r5, r31, 0x40
/* 802908DC 0028C53C 80 0D AB 94 */ lwz r0, lbl_8063FE54-_SDA_BASE_(r13)
/* 802908E0 0028C540 54 E6 08 3C */ slwi r6, r7, 1
/* 802908E4 0028C544 38 E7 00 12 */ addi r7, r7, 0x12
/* 802908E8 0028C548 7C C5 32 14 */ add r6, r5, r6
/* 802908EC 0028C54C 90 88 00 24 */ stw r4, 0x24(r8)
/* 802908F0 0028C550 38 A6 01 68 */ addi r5, r6, 0x168
/* 802908F4 0028C554 7C 07 00 00 */ cmpw r7, r0
/* 802908F8 0028C558 38 86 02 D0 */ addi r4, r6, 0x2d0
/* 802908FC 0028C55C 38 06 04 38 */ addi r0, r6, 0x438
/* 80290900 0028C560 90 68 00 20 */ stw r3, 0x20(r8)
/* 80290904 0028C564 90 C1 00 08 */ stw r6, 8(r1)
/* 80290908 0028C568 90 A1 00 0C */ stw r5, 0xc(r1)
/* 8029090C 0028C56C 90 81 00 10 */ stw r4, 0x10(r1)
/* 80290910 0028C570 90 01 00 14 */ stw r0, 0x14(r1)
/* 80290914 0028C574 41 80 00 08 */ blt lbl_8029091C
/* 80290918 0028C578 38 E0 00 00 */ li r7, 0
lbl_8029091C:
/* 8029091C 0028C57C 80 8D AB 8C */ lwz r4, lbl_8063FE4C-_SDA_BASE_(r13)
/* 80290920 0028C580 80 6D AB 90 */ lwz r3, lbl_8063FE50-_SDA_BASE_(r13)
/* 80290924 0028C584 7C 04 18 00 */ cmpw r4, r3
/* 80290928 0028C588 41 80 00 14 */ blt lbl_8029093C
/* 8029092C 0028C58C 38 03 00 12 */ addi r0, r3, 0x12
/* 80290930 0028C590 7C 04 00 00 */ cmpw r4, r0
/* 80290934 0028C594 40 80 00 08 */ bge lbl_8029093C
/* 80290938 0028C598 90 ED AB 8C */ stw r7, lbl_8063FE4C-_SDA_BASE_(r13)
lbl_8029093C:
/* 8029093C 0028C59C 80 0D AB C0 */ lwz r0, lbl_8063FE80-_SDA_BASE_(r13)
/* 80290940 0028C5A0 3B BF 08 E0 */ addi r29, r31, 0x8e0
/* 80290944 0028C5A4 90 ED AB 90 */ stw r7, lbl_8063FE50-_SDA_BASE_(r13)
/* 80290948 0028C5A8 38 7F 05 E0 */ addi r3, r31, 0x5e0
/* 8029094C 0028C5AC 1C 00 01 80 */ mulli r0, r0, 0x180
/* 80290950 0028C5B0 38 A1 00 08 */ addi r5, r1, 8
/* 80290954 0028C5B4 7C 9D 02 14 */ add r4, r29, r0
/* 80290958 0028C5B8 4B FF F4 45 */ bl __AXNextFrame
/* 8029095C 0028C5BC 80 6D AB C0 */ lwz r3, lbl_8063FE80-_SDA_BASE_(r13)
/* 80290960 0028C5C0 80 0D AB 98 */ lwz r0, lbl_8063FE58-_SDA_BASE_(r13)
/* 80290964 0028C5C4 38 63 00 01 */ addi r3, r3, 1
/* 80290968 0028C5C8 28 00 00 01 */ cmplwi r0, 1
/* 8029096C 0028C5CC 90 6D AB C0 */ stw r3, lbl_8063FE80-_SDA_BASE_(r13)
/* 80290970 0028C5D0 40 82 00 28 */ bne lbl_80290998
/* 80290974 0028C5D4 3C 60 AA AB */ lis r3, 0xAAAAAAAB@ha
/* 80290978 0028C5D8 80 8D AB C0 */ lwz r4, lbl_8063FE80-_SDA_BASE_(r13)
/* 8029097C 0028C5DC 38 03 AA AB */ addi r0, r3, 0xAAAAAAAB@l
/* 80290980 0028C5E0 7C 00 20 16 */ mulhwu r0, r0, r4
/* 80290984 0028C5E4 54 00 F8 7E */ srwi r0, r0, 1
/* 80290988 0028C5E8 1C 00 00 03 */ mulli r0, r0, 3
/* 8029098C 0028C5EC 7C 00 20 50 */ subf r0, r0, r4
/* 80290990 0028C5F0 90 0D AB C0 */ stw r0, lbl_8063FE80-_SDA_BASE_(r13)
/* 80290994 0028C5F4 48 00 00 24 */ b lbl_802909B8
lbl_80290998:
/* 80290998 0028C5F8 80 0D AB C0 */ lwz r0, lbl_8063FE80-_SDA_BASE_(r13)
/* 8029099C 0028C5FC 38 80 01 80 */ li r4, 0x180
/* 802909A0 0028C600 54 00 07 FE */ clrlwi r0, r0, 0x1f
/* 802909A4 0028C604 90 0D AB C0 */ stw r0, lbl_8063FE80-_SDA_BASE_(r13)
/* 802909A8 0028C608 80 0D AB C0 */ lwz r0, lbl_8063FE80-_SDA_BASE_(r13)
/* 802909AC 0028C60C 1C 00 01 80 */ mulli r0, r0, 0x180
/* 802909B0 0028C610 7C 7D 02 14 */ add r3, r29, r0
/* 802909B4 0028C614 4B FF E1 95 */ bl AIInitDMA
lbl_802909B8:
/* 802909B8 0028C618 4B FE 1E 01 */ bl OSGetTime
/* 802909BC 0028C61C 3B BF 00 00 */ addi r29, r31, 0
/* 802909C0 0028C620 90 9D 00 2C */ stw r4, 0x2c(r29)
/* 802909C4 0028C624 90 7D 00 28 */ stw r3, 0x28(r29)
/* 802909C8 0028C628 48 00 0A 35 */ bl __AXGetNumVoices
/* 802909CC 0028C62C 90 7D 00 30 */ stw r3, 0x30(r29)
/* 802909D0 0028C630 48 00 19 55 */ bl __AXGetCurrentProfile
/* 802909D4 0028C634 2C 03 00 00 */ cmpwi r3, 0
/* 802909D8 0028C638 41 82 00 58 */ beq lbl_80290A30
/* 802909DC 0028C63C 38 00 00 07 */ li r0, 7
/* 802909E0 0028C640 7C 09 03 A6 */ mtctr r0
lbl_802909E4:
/* 802909E4 0028C644 88 1D 00 00 */ lbz r0, 0(r29)
/* 802909E8 0028C648 98 03 00 00 */ stb r0, 0(r3)
/* 802909EC 0028C64C 88 1D 00 01 */ lbz r0, 1(r29)
/* 802909F0 0028C650 98 03 00 01 */ stb r0, 1(r3)
/* 802909F4 0028C654 88 1D 00 02 */ lbz r0, 2(r29)
/* 802909F8 0028C658 98 03 00 02 */ stb r0, 2(r3)
/* 802909FC 0028C65C 88 1D 00 03 */ lbz r0, 3(r29)
/* 80290A00 0028C660 98 03 00 03 */ stb r0, 3(r3)
/* 80290A04 0028C664 88 1D 00 04 */ lbz r0, 4(r29)
/* 80290A08 0028C668 98 03 00 04 */ stb r0, 4(r3)
/* 80290A0C 0028C66C 88 1D 00 05 */ lbz r0, 5(r29)
/* 80290A10 0028C670 98 03 00 05 */ stb r0, 5(r3)
/* 80290A14 0028C674 88 1D 00 06 */ lbz r0, 6(r29)
/* 80290A18 0028C678 98 03 00 06 */ stb r0, 6(r3)
/* 80290A1C 0028C67C 88 1D 00 07 */ lbz r0, 7(r29)
/* 80290A20 0028C680 3B BD 00 08 */ addi r29, r29, 8
/* 80290A24 0028C684 98 03 00 07 */ stb r0, 7(r3)
/* 80290A28 0028C688 38 63 00 08 */ addi r3, r3, 8
/* 80290A2C 0028C68C 42 00 FF B8 */ bdnz lbl_802909E4
lbl_80290A30:
/* 80290A30 0028C690 7F C3 F3 78 */ mr r3, r30
/* 80290A34 0028C694 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80290A38 0028C698 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80290A3C 0028C69C 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 80290A40 0028C6A0 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80290A44 0028C6A4 7C 08 03 A6 */ mtlr r0
/* 80290A48 0028C6A8 38 21 00 30 */ addi r1, r1, 0x30
/* 80290A4C 0028C6AC 4E 80 00 20 */ blr
__AXOutAiCallback:
/* 80290A50 0028C6B0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80290A54 0028C6B4 7C 08 02 A6 */ mflr r0
/* 80290A58 0028C6B8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80290A5C 0028C6BC 80 0D AB B8 */ lwz r0, lbl_8063FE78-_SDA_BASE_(r13)
/* 80290A60 0028C6C0 28 00 00 01 */ cmplwi r0, 1
/* 80290A64 0028C6C4 40 82 00 14 */ bne lbl_80290A78
/* 80290A68 0028C6C8 38 00 00 00 */ li r0, 0
/* 80290A6C 0028C6CC 90 0D AB B8 */ stw r0, lbl_8063FE78-_SDA_BASE_(r13)
/* 80290A70 0028C6D0 4B FF FD 81 */ bl __AXOutNewFrame
/* 80290A74 0028C6D4 48 00 00 18 */ b lbl_80290A8C
lbl_80290A78:
/* 80290A78 0028C6D8 38 00 00 02 */ li r0, 2
/* 80290A7C 0028C6DC 3C 60 80 52 */ lis r3, lbl_8051F9A0@ha
/* 80290A80 0028C6E0 90 0D AB B8 */ stw r0, lbl_8063FE78-_SDA_BASE_(r13)
/* 80290A84 0028C6E4 38 63 F9 A0 */ addi r3, r3, lbl_8051F9A0@l
/* 80290A88 0028C6E8 48 00 A4 F1 */ bl DSPAssertTask
lbl_80290A8C:
/* 80290A8C 0028C6EC 80 0D AB 98 */ lwz r0, lbl_8063FE58-_SDA_BASE_(r13)
/* 80290A90 0028C6F0 28 00 00 01 */ cmplwi r0, 1
/* 80290A94 0028C6F4 40 82 00 50 */ bne lbl_80290AE4
/* 80290A98 0028C6F8 80 0D AB BC */ lwz r0, lbl_8063FE7C-_SDA_BASE_(r13)
/* 80290A9C 0028C6FC 3C 60 80 52 */ lis r3, lbl_8051F520@ha
/* 80290AA0 0028C700 38 63 F5 20 */ addi r3, r3, lbl_8051F520@l
/* 80290AA4 0028C704 38 80 01 80 */ li r4, 0x180
/* 80290AA8 0028C708 1C 00 01 80 */ mulli r0, r0, 0x180
/* 80290AAC 0028C70C 7C 63 02 14 */ add r3, r3, r0
/* 80290AB0 0028C710 4B FF E0 99 */ bl AIInitDMA
/* 80290AB4 0028C714 80 8D AB BC */ lwz r4, lbl_8063FE7C-_SDA_BASE_(r13)
/* 80290AB8 0028C718 3C 60 AA AB */ lis r3, 0xAAAAAAAB@ha
/* 80290ABC 0028C71C 38 63 AA AB */ addi r3, r3, 0xAAAAAAAB@l
/* 80290AC0 0028C720 80 0D AB C0 */ lwz r0, lbl_8063FE80-_SDA_BASE_(r13)
/* 80290AC4 0028C724 38 84 00 01 */ addi r4, r4, 1
/* 80290AC8 0028C728 7C 63 20 16 */ mulhwu r3, r3, r4
/* 80290ACC 0028C72C 54 63 F8 7E */ srwi r3, r3, 1
/* 80290AD0 0028C730 1C 63 00 03 */ mulli r3, r3, 3
/* 80290AD4 0028C734 7C 83 20 50 */ subf r4, r3, r4
/* 80290AD8 0028C738 7C 04 00 40 */ cmplw r4, r0
/* 80290ADC 0028C73C 41 82 00 08 */ beq lbl_80290AE4
/* 80290AE0 0028C740 90 8D AB BC */ stw r4, lbl_8063FE7C-_SDA_BASE_(r13)
lbl_80290AE4:
/* 80290AE4 0028C744 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80290AE8 0028C748 7C 08 03 A6 */ mtlr r0
/* 80290AEC 0028C74C 38 21 00 10 */ addi r1, r1, 0x10
/* 80290AF0 0028C750 4E 80 00 20 */ blr
__AXDSPInitCallback:
/* 80290AF4 0028C754 38 00 00 01 */ li r0, 1
/* 80290AF8 0028C758 90 0D AB B0 */ stw r0, lbl_8063FE70-_SDA_BASE_(r13)
/* 80290AFC 0028C75C 4E 80 00 20 */ blr
__AXDSPResumeCallback:
/* 80290B00 0028C760 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80290B04 0028C764 7C 08 02 A6 */ mflr r0
/* 80290B08 0028C768 90 01 00 14 */ stw r0, 0x14(r1)
/* 80290B0C 0028C76C 80 0D AB B8 */ lwz r0, lbl_8063FE78-_SDA_BASE_(r13)
/* 80290B10 0028C770 28 00 00 02 */ cmplwi r0, 2
/* 80290B14 0028C774 40 82 00 28 */ bne lbl_80290B3C
/* 80290B18 0028C778 38 00 00 00 */ li r0, 0
/* 80290B1C 0028C77C 90 0D AB B8 */ stw r0, lbl_8063FE78-_SDA_BASE_(r13)
/* 80290B20 0028C780 4B FF FC D1 */ bl __AXOutNewFrame
/* 80290B24 0028C784 81 8D AB 88 */ lwz r12, lbl_8063FE48-_SDA_BASE_(r13)
/* 80290B28 0028C788 2C 0C 00 00 */ cmpwi r12, 0
/* 80290B2C 0028C78C 41 82 00 18 */ beq lbl_80290B44
/* 80290B30 0028C790 7D 89 03 A6 */ mtctr r12
/* 80290B34 0028C794 4E 80 04 21 */ bctrl
/* 80290B38 0028C798 48 00 00 0C */ b lbl_80290B44
lbl_80290B3C:
/* 80290B3C 0028C79C 38 00 00 01 */ li r0, 1
/* 80290B40 0028C7A0 90 0D AB B8 */ stw r0, lbl_8063FE78-_SDA_BASE_(r13)
lbl_80290B44:
/* 80290B44 0028C7A4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80290B48 0028C7A8 7C 08 03 A6 */ mtlr r0
/* 80290B4C 0028C7AC 38 21 00 10 */ addi r1, r1, 0x10
/* 80290B50 0028C7B0 4E 80 00 20 */ blr
__AXDSPDoneCallback:
/* 80290B54 0028C7B4 38 00 00 01 */ li r0, 1
/* 80290B58 0028C7B8 38 6D AB A0 */ addi r3, r13, lbl_8063FE60-_SDA_BASE_
/* 80290B5C 0028C7BC 90 0D AB AC */ stw r0, lbl_8063FE6C-_SDA_BASE_(r13)
/* 80290B60 0028C7C0 4B FE 19 00 */ b OSWakeupThread
__AXDSPRequestCallback:
/* 80290B64 0028C7C4 4E 80 00 20 */ blr
.global __AXOutInitDSP
__AXOutInitDSP:
/* 80290B68 0028C7C8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80290B6C 0028C7CC 7C 08 02 A6 */ mflr r0
/* 80290B70 0028C7D0 3D 60 80 52 */ lis r11, lbl_8051FA00@ha
/* 80290B74 0028C7D4 3C E0 80 29 */ lis r7, __AXDSPInitCallback@ha
/* 80290B78 0028C7D8 90 01 00 24 */ stw r0, 0x24(r1)
/* 80290B7C 0028C7DC 3C C0 80 29 */ lis r6, __AXDSPResumeCallback@ha
/* 80290B80 0028C7E0 3C A0 80 29 */ lis r5, __AXDSPDoneCallback@ha
/* 80290B84 0028C7E4 3C 80 80 29 */ lis r4, __AXDSPRequestCallback@ha
/* 80290B88 0028C7E8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80290B8C 0028C7EC 39 80 00 00 */ li r12, 0
/* 80290B90 0028C7F0 39 6B FA 00 */ addi r11, r11, lbl_8051FA00@l
/* 80290B94 0028C7F4 38 E7 0A F4 */ addi r7, r7, __AXDSPInitCallback@l
/* 80290B98 0028C7F8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80290B9C 0028C7FC 3F C0 80 52 */ lis r30, lbl_8051F9A0@ha
/* 80290BA0 0028C800 3B DE F9 A0 */ addi r30, r30, lbl_8051F9A0@l
/* 80290BA4 0028C804 38 C6 0B 00 */ addi r6, r6, __AXDSPResumeCallback@l
/* 80290BA8 0028C808 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80290BAC 0028C80C 3F A0 80 44 */ lis r29, lbl_80438380@ha
/* 80290BB0 0028C810 3B BD 83 80 */ addi r29, r29, lbl_80438380@l
/* 80290BB4 0028C814 38 A5 0B 54 */ addi r5, r5, __AXDSPDoneCallback@l
/* 80290BB8 0028C818 A3 ED 88 F4 */ lhz r31, lbl_8063DBB4-_SDA_BASE_(r13)
/* 80290BBC 0028C81C 38 84 0B 64 */ addi r4, r4, __AXDSPRequestCallback@l
/* 80290BC0 0028C820 A1 0D 88 F0 */ lhz r8, lbl_8063DBB0-_SDA_BASE_(r13)
/* 80290BC4 0028C824 39 40 00 40 */ li r10, 0x40
/* 80290BC8 0028C828 A0 0D 88 F2 */ lhz r0, lbl_8063DBB2-_SDA_BASE_(r13)
/* 80290BCC 0028C82C 39 20 0C D2 */ li r9, 0xcd2
/* 80290BD0 0028C830 91 9E 00 04 */ stw r12, 4(r30)
/* 80290BD4 0028C834 38 6D AB A0 */ addi r3, r13, lbl_8063FE60-_SDA_BASE_
/* 80290BD8 0028C838 91 8D AB B0 */ stw r12, lbl_8063FE70-_SDA_BASE_(r13)
/* 80290BDC 0028C83C 93 BE 00 0C */ stw r29, 0xc(r30)
/* 80290BE0 0028C840 93 FE 00 10 */ stw r31, 0x10(r30)
/* 80290BE4 0028C844 91 9E 00 14 */ stw r12, 0x14(r30)
/* 80290BE8 0028C848 91 7E 00 18 */ stw r11, 0x18(r30)
/* 80290BEC 0028C84C 91 5E 00 1C */ stw r10, 0x1c(r30)
/* 80290BF0 0028C850 91 3E 00 20 */ stw r9, 0x20(r30)
/* 80290BF4 0028C854 B1 1E 00 24 */ sth r8, 0x24(r30)
/* 80290BF8 0028C858 B0 1E 00 26 */ sth r0, 0x26(r30)
/* 80290BFC 0028C85C 90 FE 00 28 */ stw r7, 0x28(r30)
/* 80290C00 0028C860 90 DE 00 2C */ stw r6, 0x2c(r30)
/* 80290C04 0028C864 90 BE 00 30 */ stw r5, 0x30(r30)
/* 80290C08 0028C868 90 9E 00 34 */ stw r4, 0x34(r30)
/* 80290C0C 0028C86C 91 8D AB AC */ stw r12, lbl_8063FE6C-_SDA_BASE_(r13)
/* 80290C10 0028C870 4B FE 06 D9 */ bl OSInitThreadQueue
/* 80290C14 0028C874 48 00 A2 ED */ bl DSPCheckInit
/* 80290C18 0028C878 2C 03 00 00 */ cmpwi r3, 0
/* 80290C1C 0028C87C 40 82 00 08 */ bne lbl_80290C24
/* 80290C20 0028C880 48 00 A2 21 */ bl DSPInit
lbl_80290C24:
/* 80290C24 0028C884 3C 60 80 52 */ lis r3, lbl_8051F9A0@ha
/* 80290C28 0028C888 38 63 F9 A0 */ addi r3, r3, lbl_8051F9A0@l
/* 80290C2C 0028C88C 48 00 A2 DD */ bl DSPAddTask
lbl_80290C30:
/* 80290C30 0028C890 80 0D AB B0 */ lwz r0, lbl_8063FE70-_SDA_BASE_(r13)
/* 80290C34 0028C894 2C 00 00 00 */ cmpwi r0, 0
/* 80290C38 0028C898 41 82 FF F8 */ beq lbl_80290C30
/* 80290C3C 0028C89C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80290C40 0028C8A0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80290C44 0028C8A4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80290C48 0028C8A8 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80290C4C 0028C8AC 7C 08 03 A6 */ mtlr r0
/* 80290C50 0028C8B0 38 21 00 20 */ addi r1, r1, 0x20
/* 80290C54 0028C8B4 4E 80 00 20 */ blr
.global __AXOutInit
__AXOutInit:
/* 80290C58 0028C8B8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80290C5C 0028C8BC 7C 08 02 A6 */ mflr r0
/* 80290C60 0028C8C0 38 80 00 00 */ li r4, 0
/* 80290C64 0028C8C4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80290C68 0028C8C8 38 00 00 20 */ li r0, 0x20
/* 80290C6C 0028C8CC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80290C70 0028C8D0 3F E0 80 52 */ lis r31, lbl_8051EC40@ha
/* 80290C74 0028C8D4 3B FF EC 40 */ addi r31, r31, lbl_8051EC40@l
/* 80290C78 0028C8D8 90 8D AB C0 */ stw r4, lbl_8063FE80-_SDA_BASE_(r13)
/* 80290C7C 0028C8DC 38 BF 08 E0 */ addi r5, r31, 0x8e0
/* 80290C80 0028C8E0 90 8D AB BC */ stw r4, lbl_8063FE7C-_SDA_BASE_(r13)
/* 80290C84 0028C8E4 90 6D AB 98 */ stw r3, lbl_8063FE58-_SDA_BASE_(r13)
/* 80290C88 0028C8E8 90 8D AB A8 */ stw r4, lbl_8063FE68-_SDA_BASE_(r13)
/* 80290C8C 0028C8EC 7C 09 03 A6 */ mtctr r0
lbl_80290C90:
/* 80290C90 0028C8F0 90 85 00 00 */ stw r4, 0(r5)
/* 80290C94 0028C8F4 90 85 00 04 */ stw r4, 4(r5)
/* 80290C98 0028C8F8 90 85 00 08 */ stw r4, 8(r5)
/* 80290C9C 0028C8FC 90 85 00 0C */ stw r4, 0xc(r5)
/* 80290CA0 0028C900 90 85 00 10 */ stw r4, 0x10(r5)
/* 80290CA4 0028C904 90 85 00 14 */ stw r4, 0x14(r5)
/* 80290CA8 0028C908 90 85 00 18 */ stw r4, 0x18(r5)
/* 80290CAC 0028C90C 90 85 00 1C */ stw r4, 0x1c(r5)
/* 80290CB0 0028C910 90 85 00 20 */ stw r4, 0x20(r5)
/* 80290CB4 0028C914 38 A5 00 24 */ addi r5, r5, 0x24
/* 80290CB8 0028C918 42 00 FF D8 */ bdnz lbl_80290C90
/* 80290CBC 0028C91C 38 7F 08 E0 */ addi r3, r31, 0x8e0
/* 80290CC0 0028C920 38 80 04 80 */ li r4, 0x480
/* 80290CC4 0028C924 4B FD 99 91 */ bl DCFlushRange
/* 80290CC8 0028C928 38 00 00 18 */ li r0, 0x18
/* 80290CCC 0028C92C 38 9F 05 E0 */ addi r4, r31, 0x5e0
/* 80290CD0 0028C930 38 60 00 00 */ li r3, 0
/* 80290CD4 0028C934 7C 09 03 A6 */ mtctr r0
lbl_80290CD8:
/* 80290CD8 0028C938 90 64 00 00 */ stw r3, 0(r4)
/* 80290CDC 0028C93C 90 64 00 04 */ stw r3, 4(r4)
/* 80290CE0 0028C940 90 64 00 08 */ stw r3, 8(r4)
/* 80290CE4 0028C944 90 64 00 0C */ stw r3, 0xc(r4)
/* 80290CE8 0028C948 90 64 00 10 */ stw r3, 0x10(r4)
/* 80290CEC 0028C94C 90 64 00 14 */ stw r3, 0x14(r4)
/* 80290CF0 0028C950 90 64 00 18 */ stw r3, 0x18(r4)
/* 80290CF4 0028C954 90 64 00 1C */ stw r3, 0x1c(r4)
/* 80290CF8 0028C958 38 84 00 20 */ addi r4, r4, 0x20
/* 80290CFC 0028C95C 42 00 FF DC */ bdnz lbl_80290CD8
/* 80290D00 0028C960 38 7F 05 E0 */ addi r3, r31, 0x5e0
/* 80290D04 0028C964 38 80 03 00 */ li r4, 0x300
/* 80290D08 0028C968 4B FD 99 4D */ bl DCFlushRange
/* 80290D0C 0028C96C 38 00 00 24 */ li r0, 0x24
/* 80290D10 0028C970 38 9F 00 40 */ addi r4, r31, 0x40
/* 80290D14 0028C974 38 60 00 00 */ li r3, 0
/* 80290D18 0028C978 7C 09 03 A6 */ mtctr r0
lbl_80290D1C:
/* 80290D1C 0028C97C 90 64 00 00 */ stw r3, 0(r4)
/* 80290D20 0028C980 90 64 00 04 */ stw r3, 4(r4)
/* 80290D24 0028C984 90 64 00 08 */ stw r3, 8(r4)
/* 80290D28 0028C988 90 64 00 0C */ stw r3, 0xc(r4)
/* 80290D2C 0028C98C 90 64 00 10 */ stw r3, 0x10(r4)
/* 80290D30 0028C990 90 64 00 14 */ stw r3, 0x14(r4)
/* 80290D34 0028C994 90 64 00 18 */ stw r3, 0x18(r4)
/* 80290D38 0028C998 90 64 00 1C */ stw r3, 0x1c(r4)
/* 80290D3C 0028C99C 90 64 00 20 */ stw r3, 0x20(r4)
/* 80290D40 0028C9A0 90 64 00 24 */ stw r3, 0x24(r4)
/* 80290D44 0028C9A4 38 84 00 28 */ addi r4, r4, 0x28
/* 80290D48 0028C9A8 42 00 FF D4 */ bdnz lbl_80290D1C
/* 80290D4C 0028C9AC 38 7F 00 40 */ addi r3, r31, 0x40
/* 80290D50 0028C9B0 38 80 05 A0 */ li r4, 0x5a0
/* 80290D54 0028C9B4 4B FD 99 01 */ bl DCFlushRange
/* 80290D58 0028C9B8 4B FF FE 11 */ bl __AXOutInitDSP
/* 80290D5C 0028C9BC 3C 60 80 29 */ lis r3, __AXOutAiCallback@ha
/* 80290D60 0028C9C0 38 63 0A 50 */ addi r3, r3, __AXOutAiCallback@l
/* 80290D64 0028C9C4 4B FF DD A1 */ bl AIRegisterDMACallback
/* 80290D68 0028C9C8 80 0D AB 98 */ lwz r0, lbl_8063FE58-_SDA_BASE_(r13)
/* 80290D6C 0028C9CC 39 1F 00 40 */ addi r8, r31, 0x40
/* 80290D70 0028C9D0 38 80 00 12 */ li r4, 0x12
/* 80290D74 0028C9D4 38 60 00 B4 */ li r3, 0xb4
/* 80290D78 0028C9D8 38 E8 01 68 */ addi r7, r8, 0x168
/* 80290D7C 0028C9DC 38 C8 02 D0 */ addi r6, r8, 0x2d0
/* 80290D80 0028C9E0 38 A8 04 38 */ addi r5, r8, 0x438
/* 80290D84 0028C9E4 28 00 00 01 */ cmplwi r0, 1
/* 80290D88 0028C9E8 91 01 00 08 */ stw r8, 8(r1)
/* 80290D8C 0028C9EC 90 E1 00 0C */ stw r7, 0xc(r1)
/* 80290D90 0028C9F0 90 C1 00 10 */ stw r6, 0x10(r1)
/* 80290D94 0028C9F4 90 A1 00 14 */ stw r5, 0x14(r1)
/* 80290D98 0028C9F8 90 8D AB 8C */ stw r4, lbl_8063FE4C-_SDA_BASE_(r13)
/* 80290D9C 0028C9FC 90 8D AB 90 */ stw r4, lbl_8063FE50-_SDA_BASE_(r13)
/* 80290DA0 0028CA00 90 6D AB 94 */ stw r3, lbl_8063FE54-_SDA_BASE_(r13)
/* 80290DA4 0028CA04 40 82 00 1C */ bne lbl_80290DC0
/* 80290DA8 0028CA08 38 9F 08 E0 */ addi r4, r31, 0x8e0
/* 80290DAC 0028CA0C 38 7F 05 E0 */ addi r3, r31, 0x5e0
/* 80290DB0 0028CA10 38 84 03 00 */ addi r4, r4, 0x300
/* 80290DB4 0028CA14 38 A1 00 08 */ addi r5, r1, 8
/* 80290DB8 0028CA18 4B FF EF E5 */ bl __AXNextFrame
/* 80290DBC 0028CA1C 48 00 00 18 */ b lbl_80290DD4
lbl_80290DC0:
/* 80290DC0 0028CA20 38 9F 08 E0 */ addi r4, r31, 0x8e0
/* 80290DC4 0028CA24 38 7F 05 E0 */ addi r3, r31, 0x5e0
/* 80290DC8 0028CA28 38 84 01 80 */ addi r4, r4, 0x180
/* 80290DCC 0028CA2C 38 A1 00 08 */ addi r5, r1, 8
/* 80290DD0 0028CA30 4B FF EF CD */ bl __AXNextFrame
lbl_80290DD4:
/* 80290DD4 0028CA34 80 0D AB 98 */ lwz r0, lbl_8063FE58-_SDA_BASE_(r13)
/* 80290DD8 0028CA38 38 80 00 01 */ li r4, 1
/* 80290DDC 0028CA3C 38 60 00 00 */ li r3, 0
/* 80290DE0 0028CA40 90 8D AB B8 */ stw r4, lbl_8063FE78-_SDA_BASE_(r13)
/* 80290DE4 0028CA44 28 00 00 01 */ cmplwi r0, 1
/* 80290DE8 0028CA48 90 6D AB B4 */ stw r3, lbl_8063FE74-_SDA_BASE_(r13)
/* 80290DEC 0028CA4C 40 82 00 2C */ bne lbl_80290E18
/* 80290DF0 0028CA50 80 6D AB BC */ lwz r3, lbl_8063FE7C-_SDA_BASE_(r13)
/* 80290DF4 0028CA54 38 1F 08 E0 */ addi r0, r31, 0x8e0
/* 80290DF8 0028CA58 38 80 01 80 */ li r4, 0x180
/* 80290DFC 0028CA5C 1C 63 01 80 */ mulli r3, r3, 0x180
/* 80290E00 0028CA60 7C 60 1A 14 */ add r3, r0, r3
/* 80290E04 0028CA64 4B FF DD 45 */ bl AIInitDMA
/* 80290E08 0028CA68 80 6D AB BC */ lwz r3, lbl_8063FE7C-_SDA_BASE_(r13)
/* 80290E0C 0028CA6C 38 03 00 01 */ addi r0, r3, 1
/* 80290E10 0028CA70 90 0D AB BC */ stw r0, lbl_8063FE7C-_SDA_BASE_(r13)
/* 80290E14 0028CA74 48 00 00 1C */ b lbl_80290E30
lbl_80290E18:
/* 80290E18 0028CA78 80 6D AB C0 */ lwz r3, lbl_8063FE80-_SDA_BASE_(r13)
/* 80290E1C 0028CA7C 38 1F 08 E0 */ addi r0, r31, 0x8e0
/* 80290E20 0028CA80 38 80 01 80 */ li r4, 0x180
/* 80290E24 0028CA84 1C 63 01 80 */ mulli r3, r3, 0x180
/* 80290E28 0028CA88 7C 60 1A 14 */ add r3, r0, r3
/* 80290E2C 0028CA8C 4B FF DD 1D */ bl AIInitDMA
lbl_80290E30:
/* 80290E30 0028CA90 4B FF DD 95 */ bl AIStartDMA
/* 80290E34 0028CA94 38 00 00 00 */ li r0, 0
/* 80290E38 0028CA98 90 0D AB 88 */ stw r0, lbl_8063FE48-_SDA_BASE_(r13)
/* 80290E3C 0028CA9C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80290E40 0028CAA0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80290E44 0028CAA4 7C 08 03 A6 */ mtlr r0
/* 80290E48 0028CAA8 38 21 00 20 */ addi r1, r1, 0x20
/* 80290E4C 0028CAAC 4E 80 00 20 */ blr
.global AXRegisterCallback
AXRegisterCallback:
/* 80290E50 0028CAB0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80290E54 0028CAB4 7C 08 02 A6 */ mflr r0
/* 80290E58 0028CAB8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80290E5C 0028CABC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80290E60 0028CAC0 93 C1 00 08 */ stw r30, 8(r1)
/* 80290E64 0028CAC4 7C 7E 1B 78 */ mr r30, r3
/* 80290E68 0028CAC8 83 ED AB B4 */ lwz r31, lbl_8063FE74-_SDA_BASE_(r13)
/* 80290E6C 0028CACC 4B FD D8 F1 */ bl OSDisableInterrupts
/* 80290E70 0028CAD0 93 CD AB B4 */ stw r30, lbl_8063FE74-_SDA_BASE_(r13)
/* 80290E74 0028CAD4 4B FD D9 11 */ bl OSRestoreInterrupts
/* 80290E78 0028CAD8 7F E3 FB 78 */ mr r3, r31
/* 80290E7C 0028CADC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80290E80 0028CAE0 83 C1 00 08 */ lwz r30, 8(r1)
/* 80290E84 0028CAE4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80290E88 0028CAE8 7C 08 03 A6 */ mtlr r0
/* 80290E8C 0028CAEC 38 21 00 10 */ addi r1, r1, 0x10
/* 80290E90 0028CAF0 4E 80 00 20 */ blr
.global AXRmtGetSamplesLeft
AXRmtGetSamplesLeft:
/* 80290E94 0028CAF4 80 6D AB 90 */ lwz r3, lbl_8063FE50-_SDA_BASE_(r13)
/* 80290E98 0028CAF8 34 63 FF DC */ addic. r3, r3, -36
/* 80290E9C 0028CAFC 40 80 00 0C */ bge lbl_80290EA8
/* 80290EA0 0028CB00 80 0D AB 94 */ lwz r0, lbl_8063FE54-_SDA_BASE_(r13)
/* 80290EA4 0028CB04 7C 63 02 14 */ add r3, r3, r0
lbl_80290EA8:
/* 80290EA8 0028CB08 80 0D AB 8C */ lwz r0, lbl_8063FE4C-_SDA_BASE_(r13)
/* 80290EAC 0028CB0C 7C 60 18 51 */ subf. r3, r0, r3
/* 80290EB0 0028CB10 4C 80 00 20 */ bgelr
/* 80290EB4 0028CB14 80 0D AB 94 */ lwz r0, lbl_8063FE54-_SDA_BASE_(r13)
/* 80290EB8 0028CB18 7C 63 02 14 */ add r3, r3, r0
/* 80290EBC 0028CB1C 4E 80 00 20 */ blr
.global AXRmtGetSamples
AXRmtGetSamples:
/* 80290EC0 0028CB20 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80290EC4 0028CB24 7C 08 02 A6 */ mflr r0
/* 80290EC8 0028CB28 90 01 00 14 */ stw r0, 0x14(r1)
/* 80290ECC 0028CB2C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80290ED0 0028CB30 80 CD AB 90 */ lwz r6, lbl_8063FE50-_SDA_BASE_(r13)
/* 80290ED4 0028CB34 37 E6 FF DC */ addic. r31, r6, -36
/* 80290ED8 0028CB38 40 80 00 0C */ bge lbl_80290EE4
/* 80290EDC 0028CB3C 80 0D AB 94 */ lwz r0, lbl_8063FE54-_SDA_BASE_(r13)
/* 80290EE0 0028CB40 7F FF 02 14 */ add r31, r31, r0
lbl_80290EE4:
/* 80290EE4 0028CB44 80 0D AB 8C */ lwz r0, lbl_8063FE4C-_SDA_BASE_(r13)
/* 80290EE8 0028CB48 7F E0 F8 51 */ subf. r31, r0, r31
/* 80290EEC 0028CB4C 40 80 00 0C */ bge lbl_80290EF8
/* 80290EF0 0028CB50 80 0D AB 94 */ lwz r0, lbl_8063FE54-_SDA_BASE_(r13)
/* 80290EF4 0028CB54 7F FF 02 14 */ add r31, r31, r0
lbl_80290EF8:
/* 80290EF8 0028CB58 7C 05 F8 00 */ cmpw r5, r31
/* 80290EFC 0028CB5C 40 81 00 08 */ ble lbl_80290F04
/* 80290F00 0028CB60 48 00 00 08 */ b lbl_80290F08
lbl_80290F04:
/* 80290F04 0028CB64 7C BF 2B 78 */ mr r31, r5
lbl_80290F08:
/* 80290F08 0028CB68 1C 03 01 68 */ mulli r0, r3, 0x168
/* 80290F0C 0028CB6C 3C A0 80 52 */ lis r5, lbl_8051EC80@ha
/* 80290F10 0028CB70 80 ED AB 8C */ lwz r7, lbl_8063FE4C-_SDA_BASE_(r13)
/* 80290F14 0028CB74 38 A5 EC 80 */ addi r5, r5, lbl_8051EC80@l
/* 80290F18 0028CB78 7C A5 02 14 */ add r5, r5, r0
/* 80290F1C 0028CB7C 7F E9 03 A6 */ mtctr r31
/* 80290F20 0028CB80 2C 1F 00 00 */ cmpwi r31, 0
/* 80290F24 0028CB84 40 81 00 2C */ ble lbl_80290F50
lbl_80290F28:
/* 80290F28 0028CB88 54 E6 08 3C */ slwi r6, r7, 1
/* 80290F2C 0028CB8C 38 E7 00 01 */ addi r7, r7, 1
/* 80290F30 0028CB90 7C 06 2A AE */ lhax r0, r6, r5
/* 80290F34 0028CB94 B0 04 00 00 */ sth r0, 0(r4)
/* 80290F38 0028CB98 38 84 00 02 */ addi r4, r4, 2
/* 80290F3C 0028CB9C 80 0D AB 94 */ lwz r0, lbl_8063FE54-_SDA_BASE_(r13)
/* 80290F40 0028CBA0 7C 07 00 00 */ cmpw r7, r0
/* 80290F44 0028CBA4 41 80 00 08 */ blt lbl_80290F4C
/* 80290F48 0028CBA8 38 E0 00 00 */ li r7, 0
lbl_80290F4C:
/* 80290F4C 0028CBAC 42 00 FF DC */ bdnz lbl_80290F28
lbl_80290F50:
/* 80290F50 0028CBB0 1C A3 01 68 */ mulli r5, r3, 0x168
/* 80290F54 0028CBB4 80 0D AB 94 */ lwz r0, lbl_8063FE54-_SDA_BASE_(r13)
/* 80290F58 0028CBB8 3C 60 80 52 */ lis r3, lbl_8051EC80@ha
/* 80290F5C 0028CBBC 54 04 08 3C */ slwi r4, r0, 1
/* 80290F60 0028CBC0 38 63 EC 80 */ addi r3, r3, lbl_8051EC80@l
/* 80290F64 0028CBC4 7C 63 2A 14 */ add r3, r3, r5
/* 80290F68 0028CBC8 4B FD 96 C1 */ bl DCInvalidateRange
/* 80290F6C 0028CBCC 7F E3 FB 78 */ mr r3, r31
/* 80290F70 0028CBD0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80290F74 0028CBD4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80290F78 0028CBD8 7C 08 03 A6 */ mtlr r0
/* 80290F7C 0028CBDC 38 21 00 10 */ addi r1, r1, 0x10
/* 80290F80 0028CBE0 4E 80 00 20 */ blr
.global AXRmtAdvancePtr
AXRmtAdvancePtr:
/* 80290F84 0028CBE4 80 8D AB 90 */ lwz r4, lbl_8063FE50-_SDA_BASE_(r13)
/* 80290F88 0028CBE8 34 84 FF DC */ addic. r4, r4, -36
/* 80290F8C 0028CBEC 40 80 00 0C */ bge lbl_80290F98
/* 80290F90 0028CBF0 80 0D AB 94 */ lwz r0, lbl_8063FE54-_SDA_BASE_(r13)
/* 80290F94 0028CBF4 7C 84 02 14 */ add r4, r4, r0
lbl_80290F98:
/* 80290F98 0028CBF8 80 0D AB 8C */ lwz r0, lbl_8063FE4C-_SDA_BASE_(r13)
/* 80290F9C 0028CBFC 7C 80 20 51 */ subf. r4, r0, r4
/* 80290FA0 0028CC00 40 80 00 0C */ bge lbl_80290FAC
/* 80290FA4 0028CC04 80 0D AB 94 */ lwz r0, lbl_8063FE54-_SDA_BASE_(r13)
/* 80290FA8 0028CC08 7C 84 02 14 */ add r4, r4, r0
lbl_80290FAC:
/* 80290FAC 0028CC0C 7C 03 20 00 */ cmpw r3, r4
/* 80290FB0 0028CC10 40 81 00 08 */ ble lbl_80290FB8
/* 80290FB4 0028CC14 7C 83 23 78 */ mr r3, r4
lbl_80290FB8:
/* 80290FB8 0028CC18 80 0D AB 8C */ lwz r0, lbl_8063FE4C-_SDA_BASE_(r13)
/* 80290FBC 0028CC1C 80 8D AB 94 */ lwz r4, lbl_8063FE54-_SDA_BASE_(r13)
/* 80290FC0 0028CC20 7C 00 1A 14 */ add r0, r0, r3
/* 80290FC4 0028CC24 7C 00 20 00 */ cmpw r0, r4
/* 80290FC8 0028CC28 90 0D AB 8C */ stw r0, lbl_8063FE4C-_SDA_BASE_(r13)
/* 80290FCC 0028CC2C 4D 80 00 20 */ bltlr
/* 80290FD0 0028CC30 7C 04 00 50 */ subf r0, r4, r0
/* 80290FD4 0028CC34 90 0D AB 8C */ stw r0, lbl_8063FE4C-_SDA_BASE_(r13)
/* 80290FD8 0028CC38 4E 80 00 20 */ blr
|