.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global AXFXReverbStdExpGetMemSize AXFXReverbStdExpGetMemSize: /* 80294C48 002908A8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80294C4C 002908AC 3C 80 80 44 */ lis r4, lbl_8043A6E0@ha /* 80294C50 002908B0 3C C0 80 44 */ lis r6, lbl_8043A700@ha /* 80294C54 002908B4 C0 22 A2 E0 */ lfs f1, lbl_806428E0-_SDA2_BASE_(r2) /* 80294C58 002908B8 C0 03 00 B8 */ lfs f0, 0xb8(r3) /* 80294C5C 002908BC 38 C6 A7 00 */ addi r6, r6, lbl_8043A700@l /* 80294C60 002908C0 38 84 A6 E0 */ addi r4, r4, lbl_8043A6E0@l /* 80294C64 002908C4 80 A6 00 60 */ lwz r5, 0x60(r6) /* 80294C68 002908C8 EC 01 00 32 */ fmuls f0, f1, f0 /* 80294C6C 002908CC 80 E4 00 1C */ lwz r7, 0x1c(r4) /* 80294C70 002908D0 80 86 00 64 */ lwz r4, 0x64(r6) /* 80294C74 002908D4 80 66 00 68 */ lwz r3, 0x68(r6) /* 80294C78 002908D8 FC 00 00 1E */ fctiwz f0, f0 /* 80294C7C 002908DC 80 06 00 6C */ lwz r0, 0x6c(r6) /* 80294C80 002908E0 D8 01 00 08 */ stfd f0, 8(r1) /* 80294C84 002908E4 80 C1 00 0C */ lwz r6, 0xc(r1) /* 80294C88 002908E8 7C C7 32 14 */ add r6, r7, r6 /* 80294C8C 002908EC 7C C6 2A 14 */ add r6, r6, r5 /* 80294C90 002908F0 7C C6 22 14 */ add r6, r6, r4 /* 80294C94 002908F4 7C C6 1A 14 */ add r6, r6, r3 /* 80294C98 002908F8 7C C6 02 14 */ add r6, r6, r0 /* 80294C9C 002908FC 1C 66 00 0C */ mulli r3, r6, 0xc /* 80294CA0 00290900 38 21 00 10 */ addi r1, r1, 0x10 /* 80294CA4 00290904 4E 80 00 20 */ blr .global AXFXReverbStdExpInit AXFXReverbStdExpInit: /* 80294CA8 00290908 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80294CAC 0029090C 7C 08 02 A6 */ mflr r0 /* 80294CB0 00290910 90 01 00 24 */ stw r0, 0x24(r1) /* 80294CB4 00290914 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80294CB8 00290918 93 C1 00 18 */ stw r30, 0x18(r1) /* 80294CBC 0029091C 7C 7E 1B 78 */ mr r30, r3 /* 80294CC0 00290920 93 A1 00 14 */ stw r29, 0x14(r1) /* 80294CC4 00290924 4B FD 9A 99 */ bl OSDisableInterrupts /* 80294CC8 00290928 C0 3E 00 B8 */ lfs f1, 0xb8(r30) /* 80294CCC 0029092C 38 00 00 01 */ li r0, 1 /* 80294CD0 00290930 C0 02 A2 E4 */ lfs f0, lbl_806428E4-_SDA2_BASE_(r2) /* 80294CD4 00290934 7C 7F 1B 78 */ mr r31, r3 /* 80294CD8 00290938 90 1E 00 B0 */ stw r0, 0xb0(r30) /* 80294CDC 0029093C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80294CE0 00290940 40 80 00 38 */ bge lbl_80294D18 /* 80294CE4 00290944 4B FD 9A 79 */ bl OSDisableInterrupts /* 80294CE8 00290948 80 1E 00 B0 */ lwz r0, 0xb0(r30) /* 80294CEC 0029094C 7C 7D 1B 78 */ mr r29, r3 /* 80294CF0 00290950 7F C3 F3 78 */ mr r3, r30 /* 80294CF4 00290954 60 00 00 01 */ ori r0, r0, 1 /* 80294CF8 00290958 90 1E 00 B0 */ stw r0, 0xb0(r30) /* 80294CFC 0029095C 48 00 07 FD */ bl __FreeDelayLine /* 80294D00 00290960 7F A3 EB 78 */ mr r3, r29 /* 80294D04 00290964 4B FD 9A 81 */ bl OSRestoreInterrupts /* 80294D08 00290968 7F E3 FB 78 */ mr r3, r31 /* 80294D0C 0029096C 4B FD 9A 79 */ bl OSRestoreInterrupts /* 80294D10 00290970 38 60 00 00 */ li r3, 0 /* 80294D14 00290974 48 00 00 F4 */ b lbl_80294E08 lbl_80294D18: /* 80294D18 00290978 3C 60 80 44 */ lis r3, lbl_8043A6E0@ha /* 80294D1C 0029097C C0 02 A2 E0 */ lfs f0, lbl_806428E0-_SDA2_BASE_(r2) /* 80294D20 00290980 38 63 A6 E0 */ addi r3, r3, lbl_8043A6E0@l /* 80294D24 00290984 80 03 00 1C */ lwz r0, 0x1c(r3) /* 80294D28 00290988 EC 20 00 72 */ fmuls f1, f0, f1 /* 80294D2C 0029098C 90 1E 00 14 */ stw r0, 0x14(r30) /* 80294D30 00290990 4B F3 22 D1 */ bl __cvt_fp2unsigned /* 80294D34 00290994 90 7E 00 30 */ stw r3, 0x30(r30) /* 80294D38 00290998 3C 80 80 44 */ lis r4, lbl_8043A700@ha /* 80294D3C 0029099C 38 84 A7 00 */ addi r4, r4, lbl_8043A700@l /* 80294D40 002909A0 7F C3 F3 78 */ mr r3, r30 /* 80294D44 002909A4 80 04 00 60 */ lwz r0, 0x60(r4) /* 80294D48 002909A8 90 1E 00 5C */ stw r0, 0x5c(r30) /* 80294D4C 002909AC 80 04 00 64 */ lwz r0, 0x64(r4) /* 80294D50 002909B0 90 1E 00 60 */ stw r0, 0x60(r30) /* 80294D54 002909B4 80 04 00 68 */ lwz r0, 0x68(r4) /* 80294D58 002909B8 90 1E 00 94 */ stw r0, 0x94(r30) /* 80294D5C 002909BC 80 04 00 6C */ lwz r0, 0x6c(r4) /* 80294D60 002909C0 90 1E 00 98 */ stw r0, 0x98(r30) /* 80294D64 002909C4 48 00 05 51 */ bl __AllocDelayLine /* 80294D68 002909C8 2C 03 00 00 */ cmpwi r3, 0 /* 80294D6C 002909CC 40 82 00 38 */ bne lbl_80294DA4 /* 80294D70 002909D0 4B FD 99 ED */ bl OSDisableInterrupts /* 80294D74 002909D4 80 1E 00 B0 */ lwz r0, 0xb0(r30) /* 80294D78 002909D8 7C 7D 1B 78 */ mr r29, r3 /* 80294D7C 002909DC 7F C3 F3 78 */ mr r3, r30 /* 80294D80 002909E0 60 00 00 01 */ ori r0, r0, 1 /* 80294D84 002909E4 90 1E 00 B0 */ stw r0, 0xb0(r30) /* 80294D88 002909E8 48 00 07 71 */ bl __FreeDelayLine /* 80294D8C 002909EC 7F A3 EB 78 */ mr r3, r29 /* 80294D90 002909F0 4B FD 99 F5 */ bl OSRestoreInterrupts /* 80294D94 002909F4 7F E3 FB 78 */ mr r3, r31 /* 80294D98 002909F8 4B FD 99 ED */ bl OSRestoreInterrupts /* 80294D9C 002909FC 38 60 00 00 */ li r3, 0 /* 80294DA0 00290A00 48 00 00 68 */ b lbl_80294E08 lbl_80294DA4: /* 80294DA4 00290A04 7F C3 F3 78 */ mr r3, r30 /* 80294DA8 00290A08 48 00 06 51 */ bl __BzeroDelayLines /* 80294DAC 00290A0C 7F C3 F3 78 */ mr r3, r30 /* 80294DB0 00290A10 48 00 08 39 */ bl __InitParams /* 80294DB4 00290A14 2C 03 00 00 */ cmpwi r3, 0 /* 80294DB8 00290A18 40 82 00 38 */ bne lbl_80294DF0 /* 80294DBC 00290A1C 4B FD 99 A1 */ bl OSDisableInterrupts /* 80294DC0 00290A20 80 1E 00 B0 */ lwz r0, 0xb0(r30) /* 80294DC4 00290A24 7C 7D 1B 78 */ mr r29, r3 /* 80294DC8 00290A28 7F C3 F3 78 */ mr r3, r30 /* 80294DCC 00290A2C 60 00 00 01 */ ori r0, r0, 1 /* 80294DD0 00290A30 90 1E 00 B0 */ stw r0, 0xb0(r30) /* 80294DD4 00290A34 48 00 07 25 */ bl __FreeDelayLine /* 80294DD8 00290A38 7F A3 EB 78 */ mr r3, r29 /* 80294DDC 00290A3C 4B FD 99 A9 */ bl OSRestoreInterrupts /* 80294DE0 00290A40 7F E3 FB 78 */ mr r3, r31 /* 80294DE4 00290A44 4B FD 99 A1 */ bl OSRestoreInterrupts /* 80294DE8 00290A48 38 60 00 00 */ li r3, 0 /* 80294DEC 00290A4C 48 00 00 1C */ b lbl_80294E08 lbl_80294DF0: /* 80294DF0 00290A50 80 1E 00 B0 */ lwz r0, 0xb0(r30) /* 80294DF4 00290A54 7F E3 FB 78 */ mr r3, r31 /* 80294DF8 00290A58 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e /* 80294DFC 00290A5C 90 1E 00 B0 */ stw r0, 0xb0(r30) /* 80294E00 00290A60 4B FD 99 85 */ bl OSRestoreInterrupts /* 80294E04 00290A64 38 60 00 01 */ li r3, 1 lbl_80294E08: /* 80294E08 00290A68 80 01 00 24 */ lwz r0, 0x24(r1) /* 80294E0C 00290A6C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80294E10 00290A70 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80294E14 00290A74 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80294E18 00290A78 7C 08 03 A6 */ mtlr r0 /* 80294E1C 00290A7C 38 21 00 20 */ addi r1, r1, 0x20 /* 80294E20 00290A80 4E 80 00 20 */ blr .global AXFXReverbStdExpSettings AXFXReverbStdExpSettings: /* 80294E24 00290A84 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80294E28 00290A88 7C 08 02 A6 */ mflr r0 /* 80294E2C 00290A8C 90 01 00 24 */ stw r0, 0x24(r1) /* 80294E30 00290A90 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80294E34 00290A94 93 C1 00 18 */ stw r30, 0x18(r1) /* 80294E38 00290A98 93 A1 00 14 */ stw r29, 0x14(r1) /* 80294E3C 00290A9C 7C 7D 1B 78 */ mr r29, r3 /* 80294E40 00290AA0 4B FD 99 1D */ bl OSDisableInterrupts /* 80294E44 00290AA4 80 1D 00 B0 */ lwz r0, 0xb0(r29) /* 80294E48 00290AA8 7C 7E 1B 78 */ mr r30, r3 /* 80294E4C 00290AAC 60 00 00 01 */ ori r0, r0, 1 /* 80294E50 00290AB0 90 1D 00 B0 */ stw r0, 0xb0(r29) /* 80294E54 00290AB4 4B FD 99 09 */ bl OSDisableInterrupts /* 80294E58 00290AB8 80 1D 00 B0 */ lwz r0, 0xb0(r29) /* 80294E5C 00290ABC 7C 7F 1B 78 */ mr r31, r3 /* 80294E60 00290AC0 7F A3 EB 78 */ mr r3, r29 /* 80294E64 00290AC4 60 00 00 01 */ ori r0, r0, 1 /* 80294E68 00290AC8 90 1D 00 B0 */ stw r0, 0xb0(r29) /* 80294E6C 00290ACC 48 00 06 8D */ bl __FreeDelayLine /* 80294E70 00290AD0 7F E3 FB 78 */ mr r3, r31 /* 80294E74 00290AD4 4B FD 99 11 */ bl OSRestoreInterrupts /* 80294E78 00290AD8 7F A3 EB 78 */ mr r3, r29 /* 80294E7C 00290ADC 4B FF FE 2D */ bl AXFXReverbStdExpInit /* 80294E80 00290AE0 2C 03 00 00 */ cmpwi r3, 0 /* 80294E84 00290AE4 40 82 00 38 */ bne lbl_80294EBC /* 80294E88 00290AE8 4B FD 98 D5 */ bl OSDisableInterrupts /* 80294E8C 00290AEC 80 1D 00 B0 */ lwz r0, 0xb0(r29) /* 80294E90 00290AF0 7C 7F 1B 78 */ mr r31, r3 /* 80294E94 00290AF4 7F A3 EB 78 */ mr r3, r29 /* 80294E98 00290AF8 60 00 00 01 */ ori r0, r0, 1 /* 80294E9C 00290AFC 90 1D 00 B0 */ stw r0, 0xb0(r29) /* 80294EA0 00290B00 48 00 06 59 */ bl __FreeDelayLine /* 80294EA4 00290B04 7F E3 FB 78 */ mr r3, r31 /* 80294EA8 00290B08 4B FD 98 DD */ bl OSRestoreInterrupts /* 80294EAC 00290B0C 7F C3 F3 78 */ mr r3, r30 /* 80294EB0 00290B10 4B FD 98 D5 */ bl OSRestoreInterrupts /* 80294EB4 00290B14 38 60 00 00 */ li r3, 0 /* 80294EB8 00290B18 48 00 00 20 */ b lbl_80294ED8 lbl_80294EBC: /* 80294EBC 00290B1C 80 1D 00 B0 */ lwz r0, 0xb0(r29) /* 80294EC0 00290B20 7F C3 F3 78 */ mr r3, r30 /* 80294EC4 00290B24 60 00 00 02 */ ori r0, r0, 2 /* 80294EC8 00290B28 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e /* 80294ECC 00290B2C 90 1D 00 B0 */ stw r0, 0xb0(r29) /* 80294ED0 00290B30 4B FD 98 B5 */ bl OSRestoreInterrupts /* 80294ED4 00290B34 38 60 00 01 */ li r3, 1 lbl_80294ED8: /* 80294ED8 00290B38 80 01 00 24 */ lwz r0, 0x24(r1) /* 80294EDC 00290B3C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80294EE0 00290B40 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80294EE4 00290B44 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80294EE8 00290B48 7C 08 03 A6 */ mtlr r0 /* 80294EEC 00290B4C 38 21 00 20 */ addi r1, r1, 0x20 /* 80294EF0 00290B50 4E 80 00 20 */ blr .global AXFXReverbStdExpShutdown AXFXReverbStdExpShutdown: /* 80294EF4 00290B54 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80294EF8 00290B58 7C 08 02 A6 */ mflr r0 /* 80294EFC 00290B5C 90 01 00 14 */ stw r0, 0x14(r1) /* 80294F00 00290B60 93 E1 00 0C */ stw r31, 0xc(r1) /* 80294F04 00290B64 93 C1 00 08 */ stw r30, 8(r1) /* 80294F08 00290B68 7C 7E 1B 78 */ mr r30, r3 /* 80294F0C 00290B6C 4B FD 98 51 */ bl OSDisableInterrupts /* 80294F10 00290B70 80 1E 00 B0 */ lwz r0, 0xb0(r30) /* 80294F14 00290B74 7C 7F 1B 78 */ mr r31, r3 /* 80294F18 00290B78 7F C3 F3 78 */ mr r3, r30 /* 80294F1C 00290B7C 60 00 00 01 */ ori r0, r0, 1 /* 80294F20 00290B80 90 1E 00 B0 */ stw r0, 0xb0(r30) /* 80294F24 00290B84 48 00 05 D5 */ bl __FreeDelayLine /* 80294F28 00290B88 7F E3 FB 78 */ mr r3, r31 /* 80294F2C 00290B8C 4B FD 98 59 */ bl OSRestoreInterrupts /* 80294F30 00290B90 80 01 00 14 */ lwz r0, 0x14(r1) /* 80294F34 00290B94 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80294F38 00290B98 83 C1 00 08 */ lwz r30, 8(r1) /* 80294F3C 00290B9C 7C 08 03 A6 */ mtlr r0 /* 80294F40 00290BA0 38 21 00 10 */ addi r1, r1, 0x10 /* 80294F44 00290BA4 4E 80 00 20 */ blr .global AXFXReverbStdExpCallback AXFXReverbStdExpCallback: /* 80294F48 00290BA8 94 21 FF A0 */ stwu r1, -0x60(r1) /* 80294F4C 00290BAC 7C 08 02 A6 */ mflr r0 /* 80294F50 00290BB0 90 01 00 64 */ stw r0, 0x64(r1) /* 80294F54 00290BB4 39 61 00 60 */ addi r11, r1, 0x60 /* 80294F58 00290BB8 4B F3 21 C5 */ bl _savegpr_24 /* 80294F5C 00290BBC 80 04 00 B0 */ lwz r0, 0xb0(r4) /* 80294F60 00290BC0 2C 00 00 00 */ cmpwi r0, 0 /* 80294F64 00290BC4 41 82 00 10 */ beq lbl_80294F74 /* 80294F68 00290BC8 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 80294F6C 00290BCC 90 04 00 B0 */ stw r0, 0xb0(r4) /* 80294F70 00290BD0 48 00 03 2C */ b lbl_8029529C lbl_80294F74: /* 80294F74 00290BD4 80 E4 00 D8 */ lwz r7, 0xd8(r4) /* 80294F78 00290BD8 80 C3 00 00 */ lwz r6, 0(r3) /* 80294F7C 00290BDC 80 A3 00 04 */ lwz r5, 4(r3) /* 80294F80 00290BE0 2C 07 00 00 */ cmpwi r7, 0 /* 80294F84 00290BE4 80 03 00 08 */ lwz r0, 8(r3) /* 80294F88 00290BE8 90 C1 00 20 */ stw r6, 0x20(r1) /* 80294F8C 00290BEC 90 A1 00 24 */ stw r5, 0x24(r1) /* 80294F90 00290BF0 90 01 00 28 */ stw r0, 0x28(r1) /* 80294F94 00290BF4 41 82 00 1C */ beq lbl_80294FB0 /* 80294F98 00290BF8 80 A7 00 00 */ lwz r5, 0(r7) /* 80294F9C 00290BFC 80 67 00 04 */ lwz r3, 4(r7) /* 80294FA0 00290C00 80 07 00 08 */ lwz r0, 8(r7) /* 80294FA4 00290C04 90 A1 00 14 */ stw r5, 0x14(r1) /* 80294FA8 00290C08 90 61 00 18 */ stw r3, 0x18(r1) /* 80294FAC 00290C0C 90 01 00 1C */ stw r0, 0x1c(r1) lbl_80294FB0: /* 80294FB0 00290C10 80 C4 00 DC */ lwz r6, 0xdc(r4) /* 80294FB4 00290C14 2C 06 00 00 */ cmpwi r6, 0 /* 80294FB8 00290C18 41 82 00 1C */ beq lbl_80294FD4 /* 80294FBC 00290C1C 80 A6 00 00 */ lwz r5, 0(r6) /* 80294FC0 00290C20 80 66 00 04 */ lwz r3, 4(r6) /* 80294FC4 00290C24 80 06 00 08 */ lwz r0, 8(r6) /* 80294FC8 00290C28 90 A1 00 08 */ stw r5, 8(r1) /* 80294FCC 00290C2C 90 61 00 0C */ stw r3, 0xc(r1) /* 80294FD0 00290C30 90 01 00 10 */ stw r0, 0x10(r1) lbl_80294FD4: /* 80294FD4 00290C34 C0 42 A2 E8 */ lfs f2, lbl_806428E8-_SDA2_BASE_(r2) /* 80294FD8 00290C38 3B 80 00 00 */ li r28, 0 /* 80294FDC 00290C3C C0 04 00 AC */ lfs f0, 0xac(r4) /* 80294FE0 00290C40 3C 60 43 30 */ lis r3, 0x4330 /* 80294FE4 00290C44 C0 62 A2 EC */ lfs f3, lbl_806428EC-_SDA2_BASE_(r2) /* 80294FE8 00290C48 38 00 00 00 */ li r0, 0 /* 80294FEC 00290C4C C0 24 00 D0 */ lfs f1, 0xd0(r4) /* 80294FF0 00290C50 EC A2 00 28 */ fsubs f5, f2, f0 /* 80294FF4 00290C54 C0 44 00 D4 */ lfs f2, 0xd4(r4) /* 80294FF8 00290C58 3B 60 00 03 */ li r27, 3 /* 80294FFC 00290C5C EC C3 00 72 */ fmuls f6, f3, f1 /* 80295000 00290C60 C0 24 00 18 */ lfs f1, 0x18(r4) /* 80295004 00290C64 EC E3 00 B2 */ fmuls f7, f3, f2 /* 80295008 00290C68 C0 44 00 64 */ lfs f2, 0x64(r4) /* 8029500C 00290C6C C0 64 00 68 */ lfs f3, 0x68(r4) /* 80295010 00290C70 C0 84 00 9C */ lfs f4, 0x9c(r4) /* 80295014 00290C74 C9 62 A2 F0 */ lfd f11, lbl_806428F0-_SDA2_BASE_(r2) lbl_80295018: /* 80295018 00290C78 81 44 00 0C */ lwz r10, 0xc(r4) /* 8029501C 00290C7C 7C 87 23 78 */ mr r7, r4 /* 80295020 00290C80 81 64 00 28 */ lwz r11, 0x28(r4) /* 80295024 00290C84 7C 88 23 78 */ mr r8, r4 /* 80295028 00290C88 81 84 00 4C */ lwz r12, 0x4c(r4) /* 8029502C 00290C8C 38 A1 00 14 */ addi r5, r1, 0x14 /* 80295030 00290C90 83 44 00 50 */ lwz r26, 0x50(r4) /* 80295034 00290C94 38 C1 00 20 */ addi r6, r1, 0x20 /* 80295038 00290C98 83 24 00 84 */ lwz r25, 0x84(r4) /* 8029503C 00290C9C 39 21 00 08 */ addi r9, r1, 8 /* 80295040 00290CA0 83 04 00 88 */ lwz r24, 0x88(r4) /* 80295044 00290CA4 55 4A 10 3A */ slwi r10, r10, 2 /* 80295048 00290CA8 55 6B 10 3A */ slwi r11, r11, 2 /* 8029504C 00290CAC 55 8C 10 3A */ slwi r12, r12, 2 /* 80295050 00290CB0 57 5F 10 3A */ slwi r31, r26, 2 /* 80295054 00290CB4 57 3E 10 3A */ slwi r30, r25, 2 /* 80295058 00290CB8 57 1D 10 3A */ slwi r29, r24, 2 /* 8029505C 00290CBC 7F 69 03 A6 */ mtctr r27 lbl_80295060: /* 80295060 00290CC0 83 04 00 D8 */ lwz r24, 0xd8(r4) /* 80295064 00290CC4 2C 18 00 00 */ cmpwi r24, 0 /* 80295068 00290CC8 41 82 00 38 */ beq lbl_802950A0 /* 8029506C 00290CCC 83 25 00 00 */ lwz r25, 0(r5) /* 80295070 00290CD0 83 46 00 00 */ lwz r26, 0(r6) /* 80295074 00290CD4 83 19 00 00 */ lwz r24, 0(r25) /* 80295078 00290CD8 3B 39 00 04 */ addi r25, r25, 4 /* 8029507C 00290CDC 83 5A 00 00 */ lwz r26, 0(r26) /* 80295080 00290CE0 90 61 00 30 */ stw r3, 0x30(r1) /* 80295084 00290CE4 7F 1A C2 14 */ add r24, r26, r24 /* 80295088 00290CE8 6F 18 80 00 */ xoris r24, r24, 0x8000 /* 8029508C 00290CEC 93 25 00 00 */ stw r25, 0(r5) /* 80295090 00290CF0 93 01 00 34 */ stw r24, 0x34(r1) /* 80295094 00290CF4 C9 01 00 30 */ lfd f8, 0x30(r1) /* 80295098 00290CF8 ED 28 58 28 */ fsubs f9, f8, f11 /* 8029509C 00290CFC 48 00 00 20 */ b lbl_802950BC lbl_802950A0: /* 802950A0 00290D00 83 06 00 00 */ lwz r24, 0(r6) /* 802950A4 00290D04 90 61 00 38 */ stw r3, 0x38(r1) /* 802950A8 00290D08 83 18 00 00 */ lwz r24, 0(r24) /* 802950AC 00290D0C 6F 18 80 00 */ xoris r24, r24, 0x8000 /* 802950B0 00290D10 93 01 00 3C */ stw r24, 0x3c(r1) /* 802950B4 00290D14 C9 01 00 38 */ lfd f8, 0x38(r1) /* 802950B8 00290D18 ED 28 58 28 */ fsubs f9, f8, f11 lbl_802950BC: /* 802950BC 00290D1C 83 07 00 00 */ lwz r24, 0(r7) /* 802950C0 00290D20 7D 4A C4 2E */ lfsx f10, r10, r24 /* 802950C4 00290D24 ED 0A 00 72 */ fmuls f8, f10, f1 /* 802950C8 00290D28 ED 09 40 2A */ fadds f8, f9, f8 /* 802950CC 00290D2C 7D 0A C5 2E */ stfsx f8, r10, r24 /* 802950D0 00290D30 83 04 00 2C */ lwz r24, 0x2c(r4) /* 802950D4 00290D34 2C 18 00 00 */ cmpwi r24, 0 /* 802950D8 00290D38 41 82 00 14 */ beq lbl_802950EC /* 802950DC 00290D3C 83 07 00 1C */ lwz r24, 0x1c(r7) /* 802950E0 00290D40 7D 8B C4 2E */ lfsx f12, r11, r24 /* 802950E4 00290D44 7D 2B C5 2E */ stfsx f9, r11, r24 /* 802950E8 00290D48 48 00 00 08 */ b lbl_802950F0 lbl_802950EC: /* 802950EC 00290D4C FD 80 48 90 */ fmr f12, f9 lbl_802950F0: /* 802950F0 00290D50 83 08 00 34 */ lwz r24, 0x34(r8) /* 802950F4 00290D54 ED 4A 01 B2 */ fmuls f10, f10, f6 /* 802950F8 00290D58 83 46 00 00 */ lwz r26, 0(r6) /* 802950FC 00290D5C 7D 2C C4 2E */ lfsx f9, r12, r24 /* 80295100 00290D60 3B 3A 00 04 */ addi r25, r26, 4 /* 80295104 00290D64 ED 09 00 B2 */ fmuls f8, f9, f2 /* 80295108 00290D68 93 26 00 00 */ stw r25, 0(r6) /* 8029510C 00290D6C ED 0C 40 2A */ fadds f8, f12, f8 /* 80295110 00290D70 7D 0C C5 2E */ stfsx f8, r12, r24 /* 80295114 00290D74 83 28 00 38 */ lwz r25, 0x38(r8) /* 80295118 00290D78 7D BF CC 2E */ lfsx f13, r31, r25 /* 8029511C 00290D7C ED 0D 00 F2 */ fmuls f8, f13, f3 /* 80295120 00290D80 ED 29 68 2A */ fadds f9, f9, f13 /* 80295124 00290D84 ED 0C 40 2A */ fadds f8, f12, f8 /* 80295128 00290D88 7D 1F CD 2E */ stfsx f8, r31, r25 /* 8029512C 00290D8C 83 08 00 6C */ lwz r24, 0x6c(r8) /* 80295130 00290D90 7D 9E C4 2E */ lfsx f12, r30, r24 /* 80295134 00290D94 ED 0C 01 32 */ fmuls f8, f12, f4 /* 80295138 00290D98 ED 09 40 2A */ fadds f8, f9, f8 /* 8029513C 00290D9C ED 28 01 32 */ fmuls f9, f8, f4 /* 80295140 00290DA0 7D 1E C5 2E */ stfsx f8, r30, r24 /* 80295144 00290DA4 C1 07 00 A0 */ lfs f8, 0xa0(r7) /* 80295148 00290DA8 ED 2C 48 28 */ fsubs f9, f12, f9 /* 8029514C 00290DAC ED 00 02 32 */ fmuls f8, f0, f8 /* 80295150 00290DB0 ED 25 02 72 */ fmuls f9, f5, f9 /* 80295154 00290DB4 ED 29 40 2A */ fadds f9, f9, f8 /* 80295158 00290DB8 D1 27 00 A0 */ stfs f9, 0xa0(r7) /* 8029515C 00290DBC 83 28 00 70 */ lwz r25, 0x70(r8) /* 80295160 00290DC0 7D 9D CC 2E */ lfsx f12, r29, r25 /* 80295164 00290DC4 ED 0C 01 32 */ fmuls f8, f12, f4 /* 80295168 00290DC8 ED 09 40 2A */ fadds f8, f9, f8 /* 8029516C 00290DCC ED 28 01 32 */ fmuls f9, f8, f4 /* 80295170 00290DD0 7D 1D CD 2E */ stfsx f8, r29, r25 /* 80295174 00290DD4 C1 04 00 E0 */ lfs f8, 0xe0(r4) /* 80295178 00290DD8 ED 2C 48 28 */ fsubs f9, f12, f9 /* 8029517C 00290DDC ED 29 01 F2 */ fmuls f9, f9, f7 /* 80295180 00290DE0 ED 2A 48 2A */ fadds f9, f10, f9 /* 80295184 00290DE4 ED 09 02 32 */ fmuls f8, f9, f8 /* 80295188 00290DE8 FD 00 40 1E */ fctiwz f8, f8 /* 8029518C 00290DEC D9 01 00 38 */ stfd f8, 0x38(r1) /* 80295190 00290DF0 83 21 00 3C */ lwz r25, 0x3c(r1) /* 80295194 00290DF4 93 3A 00 00 */ stw r25, 0(r26) /* 80295198 00290DF8 83 24 00 DC */ lwz r25, 0xdc(r4) /* 8029519C 00290DFC 2C 19 00 00 */ cmpwi r25, 0 /* 802951A0 00290E00 41 82 00 28 */ beq lbl_802951C8 /* 802951A4 00290E04 C1 04 00 E4 */ lfs f8, 0xe4(r4) /* 802951A8 00290E08 83 29 00 00 */ lwz r25, 0(r9) /* 802951AC 00290E0C ED 09 02 32 */ fmuls f8, f9, f8 /* 802951B0 00290E10 3B 59 00 04 */ addi r26, r25, 4 /* 802951B4 00290E14 93 49 00 00 */ stw r26, 0(r9) /* 802951B8 00290E18 FD 00 40 1E */ fctiwz f8, f8 /* 802951BC 00290E1C D9 01 00 38 */ stfd f8, 0x38(r1) /* 802951C0 00290E20 83 41 00 3C */ lwz r26, 0x3c(r1) /* 802951C4 00290E24 93 59 00 00 */ stw r26, 0(r25) lbl_802951C8: /* 802951C8 00290E28 38 A5 00 04 */ addi r5, r5, 4 /* 802951CC 00290E2C 38 C6 00 04 */ addi r6, r6, 4 /* 802951D0 00290E30 38 E7 00 04 */ addi r7, r7, 4 /* 802951D4 00290E34 39 08 00 08 */ addi r8, r8, 8 /* 802951D8 00290E38 39 29 00 04 */ addi r9, r9, 4 /* 802951DC 00290E3C 42 00 FE 84 */ bdnz lbl_80295060 /* 802951E0 00290E40 80 C4 00 0C */ lwz r6, 0xc(r4) /* 802951E4 00290E44 80 A4 00 10 */ lwz r5, 0x10(r4) /* 802951E8 00290E48 38 C6 00 01 */ addi r6, r6, 1 /* 802951EC 00290E4C 7C 06 28 40 */ cmplw r6, r5 /* 802951F0 00290E50 90 C4 00 0C */ stw r6, 0xc(r4) /* 802951F4 00290E54 41 80 00 08 */ blt lbl_802951FC /* 802951F8 00290E58 90 04 00 0C */ stw r0, 0xc(r4) lbl_802951FC: /* 802951FC 00290E5C 80 C4 00 2C */ lwz r6, 0x2c(r4) /* 80295200 00290E60 2C 06 00 00 */ cmpwi r6, 0 /* 80295204 00290E64 41 82 00 1C */ beq lbl_80295220 /* 80295208 00290E68 80 A4 00 28 */ lwz r5, 0x28(r4) /* 8029520C 00290E6C 38 A5 00 01 */ addi r5, r5, 1 /* 80295210 00290E70 7C 05 30 40 */ cmplw r5, r6 /* 80295214 00290E74 90 A4 00 28 */ stw r5, 0x28(r4) /* 80295218 00290E78 41 80 00 08 */ blt lbl_80295220 /* 8029521C 00290E7C 90 04 00 28 */ stw r0, 0x28(r4) lbl_80295220: /* 80295220 00290E80 80 C4 00 4C */ lwz r6, 0x4c(r4) /* 80295224 00290E84 80 A4 00 54 */ lwz r5, 0x54(r4) /* 80295228 00290E88 38 C6 00 01 */ addi r6, r6, 1 /* 8029522C 00290E8C 7C 06 28 40 */ cmplw r6, r5 /* 80295230 00290E90 90 C4 00 4C */ stw r6, 0x4c(r4) /* 80295234 00290E94 41 80 00 08 */ blt lbl_8029523C /* 80295238 00290E98 90 04 00 4C */ stw r0, 0x4c(r4) lbl_8029523C: /* 8029523C 00290E9C 80 C4 00 50 */ lwz r6, 0x50(r4) /* 80295240 00290EA0 80 A4 00 58 */ lwz r5, 0x58(r4) /* 80295244 00290EA4 38 C6 00 01 */ addi r6, r6, 1 /* 80295248 00290EA8 7C 06 28 40 */ cmplw r6, r5 /* 8029524C 00290EAC 90 C4 00 50 */ stw r6, 0x50(r4) /* 80295250 00290EB0 41 80 00 08 */ blt lbl_80295258 /* 80295254 00290EB4 90 04 00 50 */ stw r0, 0x50(r4) lbl_80295258: /* 80295258 00290EB8 80 C4 00 84 */ lwz r6, 0x84(r4) /* 8029525C 00290EBC 80 A4 00 8C */ lwz r5, 0x8c(r4) /* 80295260 00290EC0 38 C6 00 01 */ addi r6, r6, 1 /* 80295264 00290EC4 7C 06 28 40 */ cmplw r6, r5 /* 80295268 00290EC8 90 C4 00 84 */ stw r6, 0x84(r4) /* 8029526C 00290ECC 41 80 00 08 */ blt lbl_80295274 /* 80295270 00290ED0 90 04 00 84 */ stw r0, 0x84(r4) lbl_80295274: /* 80295274 00290ED4 80 C4 00 88 */ lwz r6, 0x88(r4) /* 80295278 00290ED8 80 A4 00 90 */ lwz r5, 0x90(r4) /* 8029527C 00290EDC 38 C6 00 01 */ addi r6, r6, 1 /* 80295280 00290EE0 7C 06 28 40 */ cmplw r6, r5 /* 80295284 00290EE4 90 C4 00 88 */ stw r6, 0x88(r4) /* 80295288 00290EE8 41 80 00 08 */ blt lbl_80295290 /* 8029528C 00290EEC 90 04 00 88 */ stw r0, 0x88(r4) lbl_80295290: /* 80295290 00290EF0 3B 9C 00 01 */ addi r28, r28, 1 /* 80295294 00290EF4 28 1C 00 60 */ cmplwi r28, 0x60 /* 80295298 00290EF8 41 80 FD 80 */ blt lbl_80295018 lbl_8029529C: /* 8029529C 00290EFC 39 61 00 60 */ addi r11, r1, 0x60 /* 802952A0 00290F00 4B F3 1E C9 */ bl _restgpr_24 /* 802952A4 00290F04 80 01 00 64 */ lwz r0, 0x64(r1) /* 802952A8 00290F08 7C 08 03 A6 */ mtlr r0 /* 802952AC 00290F0C 38 21 00 60 */ addi r1, r1, 0x60 /* 802952B0 00290F10 4E 80 00 20 */ blr __AllocDelayLine: /* 802952B4 00290F14 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802952B8 00290F18 7C 08 02 A6 */ mflr r0 /* 802952BC 00290F1C 90 01 00 34 */ stw r0, 0x34(r1) /* 802952C0 00290F20 39 61 00 30 */ addi r11, r1, 0x30 /* 802952C4 00290F24 4B F3 1E 59 */ bl _savegpr_24 /* 802952C8 00290F28 7C 78 1B 78 */ mr r24, r3 /* 802952CC 00290F2C 3B 20 00 00 */ li r25, 0 /* 802952D0 00290F30 7F 1E C3 78 */ mr r30, r24 /* 802952D4 00290F34 3B E0 00 00 */ li r31, 0 /* 802952D8 00290F38 7F 1D C3 78 */ mr r29, r24 lbl_802952DC: /* 802952DC 00290F3C 80 18 00 14 */ lwz r0, 0x14(r24) /* 802952E0 00290F40 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13) /* 802952E4 00290F44 54 03 10 3A */ slwi r3, r0, 2 /* 802952E8 00290F48 7D 89 03 A6 */ mtctr r12 /* 802952EC 00290F4C 4E 80 04 21 */ bctrl /* 802952F0 00290F50 2C 03 00 00 */ cmpwi r3, 0 /* 802952F4 00290F54 90 7E 00 00 */ stw r3, 0(r30) /* 802952F8 00290F58 40 82 00 0C */ bne lbl_80295304 /* 802952FC 00290F5C 38 60 00 00 */ li r3, 0 /* 80295300 00290F60 48 00 00 E0 */ b lbl_802953E0 lbl_80295304: /* 80295304 00290F64 80 18 00 30 */ lwz r0, 0x30(r24) /* 80295308 00290F68 2C 00 00 00 */ cmpwi r0, 0 /* 8029530C 00290F6C 41 82 00 28 */ beq lbl_80295334 /* 80295310 00290F70 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13) /* 80295314 00290F74 54 03 10 3A */ slwi r3, r0, 2 /* 80295318 00290F78 7D 89 03 A6 */ mtctr r12 /* 8029531C 00290F7C 4E 80 04 21 */ bctrl /* 80295320 00290F80 2C 03 00 00 */ cmpwi r3, 0 /* 80295324 00290F84 90 7E 00 1C */ stw r3, 0x1c(r30) /* 80295328 00290F88 40 82 00 10 */ bne lbl_80295338 /* 8029532C 00290F8C 38 60 00 00 */ li r3, 0 /* 80295330 00290F90 48 00 00 B0 */ b lbl_802953E0 lbl_80295334: /* 80295334 00290F94 93 FE 00 1C */ stw r31, 0x1c(r30) lbl_80295338: /* 80295338 00290F98 7F 1B C3 78 */ mr r27, r24 /* 8029533C 00290F9C 7F BC EB 78 */ mr r28, r29 /* 80295340 00290FA0 3B 40 00 00 */ li r26, 0 lbl_80295344: /* 80295344 00290FA4 80 1B 00 5C */ lwz r0, 0x5c(r27) /* 80295348 00290FA8 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13) /* 8029534C 00290FAC 54 03 10 3A */ slwi r3, r0, 2 /* 80295350 00290FB0 7D 89 03 A6 */ mtctr r12 /* 80295354 00290FB4 4E 80 04 21 */ bctrl /* 80295358 00290FB8 2C 03 00 00 */ cmpwi r3, 0 /* 8029535C 00290FBC 90 7C 00 34 */ stw r3, 0x34(r28) /* 80295360 00290FC0 40 82 00 0C */ bne lbl_8029536C /* 80295364 00290FC4 38 60 00 00 */ li r3, 0 /* 80295368 00290FC8 48 00 00 78 */ b lbl_802953E0 lbl_8029536C: /* 8029536C 00290FCC 3B 5A 00 01 */ addi r26, r26, 1 /* 80295370 00290FD0 3B 9C 00 04 */ addi r28, r28, 4 /* 80295374 00290FD4 28 1A 00 02 */ cmplwi r26, 2 /* 80295378 00290FD8 3B 7B 00 04 */ addi r27, r27, 4 /* 8029537C 00290FDC 41 80 FF C8 */ blt lbl_80295344 /* 80295380 00290FE0 7F 1C C3 78 */ mr r28, r24 /* 80295384 00290FE4 7F BB EB 78 */ mr r27, r29 /* 80295388 00290FE8 3B 40 00 00 */ li r26, 0 lbl_8029538C: /* 8029538C 00290FEC 80 1C 00 94 */ lwz r0, 0x94(r28) /* 80295390 00290FF0 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13) /* 80295394 00290FF4 54 03 10 3A */ slwi r3, r0, 2 /* 80295398 00290FF8 7D 89 03 A6 */ mtctr r12 /* 8029539C 00290FFC 4E 80 04 21 */ bctrl /* 802953A0 00291000 2C 03 00 00 */ cmpwi r3, 0 /* 802953A4 00291004 90 7B 00 6C */ stw r3, 0x6c(r27) /* 802953A8 00291008 40 82 00 0C */ bne lbl_802953B4 /* 802953AC 0029100C 38 60 00 00 */ li r3, 0 /* 802953B0 00291010 48 00 00 30 */ b lbl_802953E0 lbl_802953B4: /* 802953B4 00291014 3B 5A 00 01 */ addi r26, r26, 1 /* 802953B8 00291018 3B 7B 00 04 */ addi r27, r27, 4 /* 802953BC 0029101C 28 1A 00 02 */ cmplwi r26, 2 /* 802953C0 00291020 3B 9C 00 04 */ addi r28, r28, 4 /* 802953C4 00291024 41 80 FF C8 */ blt lbl_8029538C /* 802953C8 00291028 3B 39 00 01 */ addi r25, r25, 1 /* 802953CC 0029102C 3B BD 00 08 */ addi r29, r29, 8 /* 802953D0 00291030 28 19 00 03 */ cmplwi r25, 3 /* 802953D4 00291034 3B DE 00 04 */ addi r30, r30, 4 /* 802953D8 00291038 41 80 FF 04 */ blt lbl_802952DC /* 802953DC 0029103C 38 60 00 01 */ li r3, 1 lbl_802953E0: /* 802953E0 00291040 39 61 00 30 */ addi r11, r1, 0x30 /* 802953E4 00291044 4B F3 1D 85 */ bl _restgpr_24 /* 802953E8 00291048 80 01 00 34 */ lwz r0, 0x34(r1) /* 802953EC 0029104C 7C 08 03 A6 */ mtlr r0 /* 802953F0 00291050 38 21 00 30 */ addi r1, r1, 0x30 /* 802953F4 00291054 4E 80 00 20 */ blr __BzeroDelayLines: /* 802953F8 00291058 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802953FC 0029105C 7C 08 02 A6 */ mflr r0 /* 80295400 00291060 90 01 00 34 */ stw r0, 0x34(r1) /* 80295404 00291064 39 61 00 30 */ addi r11, r1, 0x30 /* 80295408 00291068 4B F3 1D 19 */ bl _savegpr_25 /* 8029540C 0029106C 7C 79 1B 78 */ mr r25, r3 /* 80295410 00291070 3B 40 00 00 */ li r26, 0 /* 80295414 00291074 7F 3F CB 78 */ mr r31, r25 /* 80295418 00291078 7F 3E CB 78 */ mr r30, r25 lbl_8029541C: /* 8029541C 0029107C 80 7F 00 00 */ lwz r3, 0(r31) /* 80295420 00291080 2C 03 00 00 */ cmpwi r3, 0 /* 80295424 00291084 41 82 00 14 */ beq lbl_80295438 /* 80295428 00291088 80 19 00 14 */ lwz r0, 0x14(r25) /* 8029542C 0029108C 38 80 00 00 */ li r4, 0 /* 80295430 00291090 54 05 10 3A */ slwi r5, r0, 2 /* 80295434 00291094 4B D6 EC D1 */ bl memset lbl_80295438: /* 80295438 00291098 80 7F 00 1C */ lwz r3, 0x1c(r31) /* 8029543C 0029109C 2C 03 00 00 */ cmpwi r3, 0 /* 80295440 002910A0 41 82 00 14 */ beq lbl_80295454 /* 80295444 002910A4 80 19 00 30 */ lwz r0, 0x30(r25) /* 80295448 002910A8 38 80 00 00 */ li r4, 0 /* 8029544C 002910AC 54 05 10 3A */ slwi r5, r0, 2 /* 80295450 002910B0 4B D6 EC B5 */ bl memset lbl_80295454: /* 80295454 002910B4 7F DC F3 78 */ mr r28, r30 /* 80295458 002910B8 7F 3D CB 78 */ mr r29, r25 /* 8029545C 002910BC 3B 60 00 00 */ li r27, 0 lbl_80295460: /* 80295460 002910C0 80 7C 00 34 */ lwz r3, 0x34(r28) /* 80295464 002910C4 2C 03 00 00 */ cmpwi r3, 0 /* 80295468 002910C8 41 82 00 14 */ beq lbl_8029547C /* 8029546C 002910CC 80 1D 00 5C */ lwz r0, 0x5c(r29) /* 80295470 002910D0 38 80 00 00 */ li r4, 0 /* 80295474 002910D4 54 05 10 3A */ slwi r5, r0, 2 /* 80295478 002910D8 4B D6 EC 8D */ bl memset lbl_8029547C: /* 8029547C 002910DC 3B 7B 00 01 */ addi r27, r27, 1 /* 80295480 002910E0 3B BD 00 04 */ addi r29, r29, 4 /* 80295484 002910E4 28 1B 00 02 */ cmplwi r27, 2 /* 80295488 002910E8 3B 9C 00 04 */ addi r28, r28, 4 /* 8029548C 002910EC 41 80 FF D4 */ blt lbl_80295460 /* 80295490 002910F0 7F DD F3 78 */ mr r29, r30 /* 80295494 002910F4 7F 3C CB 78 */ mr r28, r25 /* 80295498 002910F8 3B 60 00 00 */ li r27, 0 lbl_8029549C: /* 8029549C 002910FC 80 7D 00 6C */ lwz r3, 0x6c(r29) /* 802954A0 00291100 2C 03 00 00 */ cmpwi r3, 0 /* 802954A4 00291104 41 82 00 14 */ beq lbl_802954B8 /* 802954A8 00291108 80 1C 00 94 */ lwz r0, 0x94(r28) /* 802954AC 0029110C 38 80 00 00 */ li r4, 0 /* 802954B0 00291110 54 05 10 3A */ slwi r5, r0, 2 /* 802954B4 00291114 4B D6 EC 51 */ bl memset lbl_802954B8: /* 802954B8 00291118 3B 7B 00 01 */ addi r27, r27, 1 /* 802954BC 0029111C 3B 9C 00 04 */ addi r28, r28, 4 /* 802954C0 00291120 28 1B 00 02 */ cmplwi r27, 2 /* 802954C4 00291124 3B BD 00 04 */ addi r29, r29, 4 /* 802954C8 00291128 41 80 FF D4 */ blt lbl_8029549C /* 802954CC 0029112C 3B 5A 00 01 */ addi r26, r26, 1 /* 802954D0 00291130 3B DE 00 08 */ addi r30, r30, 8 /* 802954D4 00291134 28 1A 00 03 */ cmplwi r26, 3 /* 802954D8 00291138 3B FF 00 04 */ addi r31, r31, 4 /* 802954DC 0029113C 41 80 FF 40 */ blt lbl_8029541C /* 802954E0 00291140 39 61 00 30 */ addi r11, r1, 0x30 /* 802954E4 00291144 4B F3 1C 89 */ bl _restgpr_25 /* 802954E8 00291148 80 01 00 34 */ lwz r0, 0x34(r1) /* 802954EC 0029114C 7C 08 03 A6 */ mtlr r0 /* 802954F0 00291150 38 21 00 30 */ addi r1, r1, 0x30 /* 802954F4 00291154 4E 80 00 20 */ blr __FreeDelayLine: /* 802954F8 00291158 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802954FC 0029115C 7C 08 02 A6 */ mflr r0 /* 80295500 00291160 90 01 00 24 */ stw r0, 0x24(r1) /* 80295504 00291164 39 61 00 20 */ addi r11, r1, 0x20 /* 80295508 00291168 4B F3 1C 1D */ bl _savegpr_26 /* 8029550C 0029116C 3B 40 00 00 */ li r26, 0 /* 80295510 00291170 7C 7E 1B 78 */ mr r30, r3 /* 80295514 00291174 3B E0 00 00 */ li r31, 0 /* 80295518 00291178 7C 7D 1B 78 */ mr r29, r3 lbl_8029551C: /* 8029551C 0029117C 80 7E 00 00 */ lwz r3, 0(r30) /* 80295520 00291180 2C 03 00 00 */ cmpwi r3, 0 /* 80295524 00291184 41 82 00 14 */ beq lbl_80295538 /* 80295528 00291188 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13) /* 8029552C 0029118C 7D 89 03 A6 */ mtctr r12 /* 80295530 00291190 4E 80 04 21 */ bctrl /* 80295534 00291194 93 FE 00 00 */ stw r31, 0(r30) lbl_80295538: /* 80295538 00291198 80 7E 00 1C */ lwz r3, 0x1c(r30) /* 8029553C 0029119C 2C 03 00 00 */ cmpwi r3, 0 /* 80295540 002911A0 41 82 00 14 */ beq lbl_80295554 /* 80295544 002911A4 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13) /* 80295548 002911A8 7D 89 03 A6 */ mtctr r12 /* 8029554C 002911AC 4E 80 04 21 */ bctrl /* 80295550 002911B0 93 FE 00 1C */ stw r31, 0x1c(r30) lbl_80295554: /* 80295554 002911B4 7F BC EB 78 */ mr r28, r29 /* 80295558 002911B8 3B 60 00 00 */ li r27, 0 lbl_8029555C: /* 8029555C 002911BC 80 7C 00 34 */ lwz r3, 0x34(r28) /* 80295560 002911C0 2C 03 00 00 */ cmpwi r3, 0 /* 80295564 002911C4 41 82 00 14 */ beq lbl_80295578 /* 80295568 002911C8 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13) /* 8029556C 002911CC 7D 89 03 A6 */ mtctr r12 /* 80295570 002911D0 4E 80 04 21 */ bctrl /* 80295574 002911D4 93 FC 00 34 */ stw r31, 0x34(r28) lbl_80295578: /* 80295578 002911D8 3B 7B 00 01 */ addi r27, r27, 1 /* 8029557C 002911DC 3B 9C 00 04 */ addi r28, r28, 4 /* 80295580 002911E0 28 1B 00 02 */ cmplwi r27, 2 /* 80295584 002911E4 41 80 FF D8 */ blt lbl_8029555C /* 80295588 002911E8 7F BC EB 78 */ mr r28, r29 /* 8029558C 002911EC 3B 60 00 00 */ li r27, 0 lbl_80295590: /* 80295590 002911F0 80 7C 00 6C */ lwz r3, 0x6c(r28) /* 80295594 002911F4 2C 03 00 00 */ cmpwi r3, 0 /* 80295598 002911F8 41 82 00 14 */ beq lbl_802955AC /* 8029559C 002911FC 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13) /* 802955A0 00291200 7D 89 03 A6 */ mtctr r12 /* 802955A4 00291204 4E 80 04 21 */ bctrl /* 802955A8 00291208 93 FC 00 6C */ stw r31, 0x6c(r28) lbl_802955AC: /* 802955AC 0029120C 3B 7B 00 01 */ addi r27, r27, 1 /* 802955B0 00291210 3B 9C 00 04 */ addi r28, r28, 4 /* 802955B4 00291214 28 1B 00 02 */ cmplwi r27, 2 /* 802955B8 00291218 41 80 FF D8 */ blt lbl_80295590 /* 802955BC 0029121C 3B 5A 00 01 */ addi r26, r26, 1 /* 802955C0 00291220 3B BD 00 08 */ addi r29, r29, 8 /* 802955C4 00291224 28 1A 00 03 */ cmplwi r26, 3 /* 802955C8 00291228 3B DE 00 04 */ addi r30, r30, 4 /* 802955CC 0029122C 41 80 FF 50 */ blt lbl_8029551C /* 802955D0 00291230 39 61 00 20 */ addi r11, r1, 0x20 /* 802955D4 00291234 4B F3 1B 9D */ bl _restgpr_26 /* 802955D8 00291238 80 01 00 24 */ lwz r0, 0x24(r1) /* 802955DC 0029123C 7C 08 03 A6 */ mtlr r0 /* 802955E0 00291240 38 21 00 20 */ addi r1, r1, 0x20 /* 802955E4 00291244 4E 80 00 20 */ blr __InitParams: /* 802955E8 00291248 94 21 FF A0 */ stwu r1, -0x60(r1) /* 802955EC 0029124C 7C 08 02 A6 */ mflr r0 /* 802955F0 00291250 90 01 00 64 */ stw r0, 0x64(r1) /* 802955F4 00291254 DB E1 00 50 */ stfd f31, 0x50(r1) /* 802955F8 00291258 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 /* 802955FC 0029125C DB C1 00 40 */ stfd f30, 0x40(r1) /* 80295600 00291260 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 /* 80295604 00291264 DB A1 00 30 */ stfd f29, 0x30(r1) /* 80295608 00291268 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 /* 8029560C 0029126C 39 61 00 30 */ addi r11, r1, 0x30 /* 80295610 00291270 4B F3 1B 11 */ bl _savegpr_25 /* 80295614 00291274 80 A3 00 B4 */ lwz r5, 0xb4(r3) /* 80295618 00291278 7C 7F 1B 78 */ mr r31, r3 /* 8029561C 0029127C 28 05 00 08 */ cmplwi r5, 8 /* 80295620 00291280 41 80 00 0C */ blt lbl_8029562C /* 80295624 00291284 38 60 00 00 */ li r3, 0 /* 80295628 00291288 48 00 02 3C */ b lbl_80295864 lbl_8029562C: /* 8029562C 0029128C C0 23 00 BC */ lfs f1, 0xbc(r3) /* 80295630 00291290 C0 42 A2 E4 */ lfs f2, lbl_806428E4-_SDA2_BASE_(r2) /* 80295634 00291294 FC 01 10 40 */ fcmpo cr0, f1, f2 /* 80295638 00291298 41 80 00 10 */ blt lbl_80295648 /* 8029563C 0029129C C0 03 00 B8 */ lfs f0, 0xb8(r3) /* 80295640 002912A0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80295644 002912A4 40 81 00 0C */ ble lbl_80295650 lbl_80295648: /* 80295648 002912A8 38 60 00 00 */ li r3, 0 /* 8029564C 002912AC 48 00 02 18 */ b lbl_80295864 lbl_80295650: /* 80295650 002912B0 80 03 00 C0 */ lwz r0, 0xc0(r3) /* 80295654 002912B4 28 00 00 06 */ cmplwi r0, 6 /* 80295658 002912B8 41 80 00 0C */ blt lbl_80295664 /* 8029565C 002912BC 38 60 00 00 */ li r3, 0 /* 80295660 002912C0 48 00 02 04 */ b lbl_80295864 lbl_80295664: /* 80295664 002912C4 C0 03 00 C4 */ lfs f0, 0xc4(r3) /* 80295668 002912C8 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8029566C 002912CC 40 80 00 0C */ bge lbl_80295678 /* 80295670 002912D0 38 60 00 00 */ li r3, 0 /* 80295674 002912D4 48 00 01 F0 */ b lbl_80295864 lbl_80295678: /* 80295678 002912D8 C0 03 00 C8 */ lfs f0, 0xc8(r3) /* 8029567C 002912DC FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80295680 002912E0 41 80 00 10 */ blt lbl_80295690 /* 80295684 002912E4 C0 22 A2 E8 */ lfs f1, lbl_806428E8-_SDA2_BASE_(r2) /* 80295688 002912E8 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 8029568C 002912EC 40 81 00 0C */ ble lbl_80295698 lbl_80295690: /* 80295690 002912F0 38 60 00 00 */ li r3, 0 /* 80295694 002912F4 48 00 01 D0 */ b lbl_80295864 lbl_80295698: /* 80295698 002912F8 C0 03 00 CC */ lfs f0, 0xcc(r3) /* 8029569C 002912FC FC 00 10 40 */ fcmpo cr0, f0, f2 /* 802956A0 00291300 41 80 00 0C */ blt lbl_802956AC /* 802956A4 00291304 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 802956A8 00291308 40 81 00 0C */ ble lbl_802956B4 lbl_802956AC: /* 802956AC 0029130C 38 60 00 00 */ li r3, 0 /* 802956B0 00291310 48 00 01 B4 */ b lbl_80295864 lbl_802956B4: /* 802956B4 00291314 C0 03 00 D0 */ lfs f0, 0xd0(r3) /* 802956B8 00291318 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 802956BC 0029131C 41 80 00 0C */ blt lbl_802956C8 /* 802956C0 00291320 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 802956C4 00291324 40 81 00 0C */ ble lbl_802956D0 lbl_802956C8: /* 802956C8 00291328 38 60 00 00 */ li r3, 0 /* 802956CC 0029132C 48 00 01 98 */ b lbl_80295864 lbl_802956D0: /* 802956D0 00291330 C0 03 00 D4 */ lfs f0, 0xd4(r3) /* 802956D4 00291334 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 802956D8 00291338 41 80 00 0C */ blt lbl_802956E4 /* 802956DC 0029133C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 802956E0 00291340 40 81 00 0C */ ble lbl_802956EC lbl_802956E4: /* 802956E4 00291344 38 60 00 00 */ li r3, 0 /* 802956E8 00291348 48 00 01 7C */ b lbl_80295864 lbl_802956EC: /* 802956EC 0029134C C0 03 00 E0 */ lfs f0, 0xe0(r3) /* 802956F0 00291350 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 802956F4 00291354 41 80 00 0C */ blt lbl_80295700 /* 802956F8 00291358 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 802956FC 0029135C 40 81 00 0C */ ble lbl_80295708 lbl_80295700: /* 80295700 00291360 38 60 00 00 */ li r3, 0 /* 80295704 00291364 48 00 01 60 */ b lbl_80295864 lbl_80295708: /* 80295708 00291368 C0 03 00 E4 */ lfs f0, 0xe4(r3) /* 8029570C 0029136C FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80295710 00291370 41 80 00 0C */ blt lbl_8029571C /* 80295714 00291374 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80295718 00291378 40 81 00 0C */ ble lbl_80295724 lbl_8029571C: /* 8029571C 0029137C 38 60 00 00 */ li r3, 0 /* 80295720 00291380 48 00 01 44 */ b lbl_80295864 lbl_80295724: /* 80295724 00291384 38 00 00 00 */ li r0, 0 /* 80295728 00291388 3C 80 80 44 */ lis r4, lbl_8043A6E0@ha /* 8029572C 0029138C 90 03 00 0C */ stw r0, 0xc(r3) /* 80295730 00291390 54 A0 10 3A */ slwi r0, r5, 2 /* 80295734 00291394 38 84 A6 E0 */ addi r4, r4, lbl_8043A6E0@l /* 80295738 00291398 28 05 00 03 */ cmplwi r5, 3 /* 8029573C 0029139C 7C 04 00 2E */ lwzx r0, r4, r0 /* 80295740 002913A0 90 03 00 10 */ stw r0, 0x10(r3) /* 80295744 002913A4 41 81 00 10 */ bgt lbl_80295754 /* 80295748 002913A8 C0 02 A2 F8 */ lfs f0, lbl_806428F8-_SDA2_BASE_(r2) /* 8029574C 002913AC D0 03 00 18 */ stfs f0, 0x18(r3) /* 80295750 002913B0 48 00 00 0C */ b lbl_8029575C lbl_80295754: /* 80295754 002913B4 C0 02 A2 FC */ lfs f0, lbl_806428FC-_SDA2_BASE_(r2) /* 80295758 002913B8 D0 03 00 18 */ stfs f0, 0x18(r3) lbl_8029575C: /* 8029575C 002913BC C0 22 A2 E0 */ lfs f1, lbl_806428E0-_SDA2_BASE_(r2) /* 80295760 002913C0 3B 80 00 00 */ li r28, 0 /* 80295764 002913C4 C0 03 00 BC */ lfs f0, 0xbc(r3) /* 80295768 002913C8 93 83 00 28 */ stw r28, 0x28(r3) /* 8029576C 002913CC EC 21 00 32 */ fmuls f1, f1, f0 /* 80295770 002913D0 4B F3 18 91 */ bl __cvt_fp2unsigned /* 80295774 002913D4 3F A0 80 44 */ lis r29, lbl_8043A700@ha /* 80295778 002913D8 90 7F 00 2C */ stw r3, 0x2c(r31) /* 8029577C 002913DC CB A2 A3 18 */ lfd f29, lbl_80642918-_SDA2_BASE_(r2) /* 80295780 002913E0 7F FB FB 78 */ mr r27, r31 /* 80295784 002913E4 C3 C2 A3 00 */ lfs f30, lbl_80642900-_SDA2_BASE_(r2) /* 80295788 002913E8 3B BD A7 00 */ addi r29, r29, lbl_8043A700@l /* 8029578C 002913EC C3 E2 A2 E0 */ lfs f31, lbl_806428E0-_SDA2_BASE_(r2) /* 80295790 002913F0 3B 20 00 00 */ li r25, 0 /* 80295794 002913F4 3B 40 00 00 */ li r26, 0 /* 80295798 002913F8 3F C0 43 30 */ lis r30, 0x4330 lbl_8029579C: /* 8029579C 002913FC 93 9B 00 4C */ stw r28, 0x4c(r27) /* 802957A0 00291400 C8 22 A3 08 */ lfd f1, lbl_80642908-_SDA2_BASE_(r2) /* 802957A4 00291404 80 1F 00 C0 */ lwz r0, 0xc0(r31) /* 802957A8 00291408 93 C1 00 08 */ stw r30, 8(r1) /* 802957AC 0029140C 54 00 20 36 */ slwi r0, r0, 4 /* 802957B0 00291410 7C 1A 02 14 */ add r0, r26, r0 /* 802957B4 00291414 7C 1D 00 2E */ lwzx r0, r29, r0 /* 802957B8 00291418 90 01 00 0C */ stw r0, 0xc(r1) /* 802957BC 0029141C C8 01 00 08 */ lfd f0, 8(r1) /* 802957C0 00291420 90 1B 00 54 */ stw r0, 0x54(r27) /* 802957C4 00291424 EC 40 E8 28 */ fsubs f2, f0, f29 /* 802957C8 00291428 C0 1F 00 C4 */ lfs f0, 0xc4(r31) /* 802957CC 0029142C EC 5E 00 B2 */ fmuls f2, f30, f2 /* 802957D0 00291430 EC 1F 00 32 */ fmuls f0, f31, f0 /* 802957D4 00291434 EC 42 00 24 */ fdivs f2, f2, f0 /* 802957D8 00291438 4B F3 EE 0D */ bl pow /* 802957DC 0029143C FC 00 08 18 */ frsp f0, f1 /* 802957E0 00291440 3B 39 00 01 */ addi r25, r25, 1 /* 802957E4 00291444 28 19 00 02 */ cmplwi r25, 2 /* 802957E8 00291448 3B 5A 00 04 */ addi r26, r26, 4 /* 802957EC 0029144C D0 1B 00 64 */ stfs f0, 0x64(r27) /* 802957F0 00291450 3B 7B 00 04 */ addi r27, r27, 4 /* 802957F4 00291454 41 80 FF A8 */ blt lbl_8029579C /* 802957F8 00291458 80 1F 00 C0 */ lwz r0, 0xc0(r31) /* 802957FC 0029145C 38 80 00 00 */ li r4, 0 /* 80295800 00291460 3C 60 80 44 */ lis r3, lbl_8043A700@ha /* 80295804 00291464 90 9F 00 84 */ stw r4, 0x84(r31) /* 80295808 00291468 38 63 A7 00 */ addi r3, r3, lbl_8043A700@l /* 8029580C 0029146C 54 00 20 36 */ slwi r0, r0, 4 /* 80295810 00291470 7C 63 02 14 */ add r3, r3, r0 /* 80295814 00291474 C0 22 A2 E8 */ lfs f1, lbl_806428E8-_SDA2_BASE_(r2) /* 80295818 00291478 80 03 00 08 */ lwz r0, 8(r3) /* 8029581C 0029147C C0 1F 00 CC */ lfs f0, 0xcc(r31) /* 80295820 00291480 90 1F 00 8C */ stw r0, 0x8c(r31) /* 80295824 00291484 EC 21 00 28 */ fsubs f1, f1, f0 /* 80295828 00291488 C0 02 A3 10 */ lfs f0, lbl_80642910-_SDA2_BASE_(r2) /* 8029582C 0029148C 90 9F 00 88 */ stw r4, 0x88(r31) /* 80295830 00291490 C0 5F 00 C8 */ lfs f2, 0xc8(r31) /* 80295834 00291494 80 03 00 0C */ lwz r0, 0xc(r3) /* 80295838 00291498 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8029583C 0029149C 90 1F 00 90 */ stw r0, 0x90(r31) /* 80295840 002914A0 D0 5F 00 9C */ stfs f2, 0x9c(r31) /* 80295844 002914A4 D0 3F 00 AC */ stfs f1, 0xac(r31) /* 80295848 002914A8 40 81 00 08 */ ble lbl_80295850 /* 8029584C 002914AC D0 1F 00 AC */ stfs f0, 0xac(r31) lbl_80295850: /* 80295850 002914B0 C0 02 A2 E4 */ lfs f0, lbl_806428E4-_SDA2_BASE_(r2) /* 80295854 002914B4 38 60 00 01 */ li r3, 1 /* 80295858 002914B8 D0 1F 00 A0 */ stfs f0, 0xa0(r31) /* 8029585C 002914BC D0 1F 00 A4 */ stfs f0, 0xa4(r31) /* 80295860 002914C0 D0 1F 00 A8 */ stfs f0, 0xa8(r31) lbl_80295864: /* 80295864 002914C4 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 /* 80295868 002914C8 CB E1 00 50 */ lfd f31, 0x50(r1) /* 8029586C 002914CC E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 /* 80295870 002914D0 CB C1 00 40 */ lfd f30, 0x40(r1) /* 80295874 002914D4 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 /* 80295878 002914D8 39 61 00 30 */ addi r11, r1, 0x30 /* 8029587C 002914DC CB A1 00 30 */ lfd f29, 0x30(r1) /* 80295880 002914E0 4B F3 18 ED */ bl _restgpr_25 /* 80295884 002914E4 80 01 00 64 */ lwz r0, 0x64(r1) /* 80295888 002914E8 7C 08 03 A6 */ mtlr r0 /* 8029588C 002914EC 38 21 00 60 */ addi r1, r1, 0x60 /* 80295890 002914F0 4E 80 00 20 */ blr