.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