.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global __AXGetNumVoices __AXGetNumVoices: /* 802913FC 0028D05C 80 6D AC 28 */ lwz r3, lbl_8063FEE8-_SDA_BASE_(r13) /* 80291400 0028D060 4E 80 00 20 */ blr .global __AXServiceVPB __AXServiceVPB: /* 80291404 0028D064 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80291408 0028D068 7C 08 02 A6 */ mflr r0 /* 8029140C 0028D06C 90 01 00 24 */ stw r0, 0x24(r1) /* 80291410 0028D070 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80291414 0028D074 93 C1 00 18 */ stw r30, 0x18(r1) /* 80291418 0028D078 3B C3 00 28 */ addi r30, r3, 0x28 /* 8029141C 0028D07C 93 A1 00 14 */ stw r29, 0x14(r1) /* 80291420 0028D080 93 81 00 10 */ stw r28, 0x10(r1) /* 80291424 0028D084 7C 7C 1B 78 */ mr r28, r3 /* 80291428 0028D088 80 AD AC 28 */ lwz r5, lbl_8063FEE8-_SDA_BASE_(r13) /* 8029142C 0028D08C 80 8D AC 18 */ lwz r4, lbl_8063FED8-_SDA_BASE_(r13) /* 80291430 0028D090 38 05 00 01 */ addi r0, r5, 1 /* 80291434 0028D094 90 0D AC 28 */ stw r0, lbl_8063FEE8-_SDA_BASE_(r13) /* 80291438 0028D098 80 03 00 18 */ lwz r0, 0x18(r3) /* 8029143C 0028D09C 83 A3 00 1C */ lwz r29, 0x1c(r3) /* 80291440 0028D0A0 1C 00 01 40 */ mulli r0, r0, 0x140 /* 80291444 0028D0A4 2C 1D 00 00 */ cmpwi r29, 0 /* 80291448 0028D0A8 7F E4 02 14 */ add r31, r4, r0 /* 8029144C 0028D0AC 40 82 00 28 */ bne lbl_80291474 /* 80291450 0028D0B0 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 80291454 0028D0B4 B0 1E 00 10 */ sth r0, 0x10(r30) /* 80291458 0028D0B8 A0 1F 00 6A */ lhz r0, 0x6a(r31) /* 8029145C 0028D0BC B0 1E 00 6A */ sth r0, 0x6a(r30) /* 80291460 0028D0C0 A0 1F 00 7A */ lhz r0, 0x7a(r31) /* 80291464 0028D0C4 B0 1E 00 7A */ sth r0, 0x7a(r30) /* 80291468 0028D0C8 A0 1F 00 7C */ lhz r0, 0x7c(r31) /* 8029146C 0028D0CC B0 1E 00 7C */ sth r0, 0x7c(r30) /* 80291470 0028D0D0 48 00 04 C4 */ b lbl_80291934 lbl_80291474: /* 80291474 0028D0D4 57 A0 00 01 */ rlwinm. r0, r29, 0, 0, 0 /* 80291478 0028D0D8 41 82 00 18 */ beq lbl_80291490 /* 8029147C 0028D0DC 7F E3 FB 78 */ mr r3, r31 /* 80291480 0028D0E0 7F C4 F3 78 */ mr r4, r30 /* 80291484 0028D0E4 38 A0 01 40 */ li r5, 0x140 /* 80291488 0028D0E8 4B D7 2B 79 */ bl memcpy /* 8029148C 0028D0EC 48 00 04 A8 */ b lbl_80291934 lbl_80291490: /* 80291490 0028D0F0 57 A0 07 FF */ clrlwi. r0, r29, 0x1f /* 80291494 0028D0F4 41 82 00 14 */ beq lbl_802914A8 /* 80291498 0028D0F8 A0 1E 00 08 */ lhz r0, 8(r30) /* 8029149C 0028D0FC B0 1F 00 08 */ sth r0, 8(r31) /* 802914A0 0028D100 A0 1E 00 0A */ lhz r0, 0xa(r30) /* 802914A4 0028D104 B0 1F 00 0A */ sth r0, 0xa(r31) lbl_802914A8: /* 802914A8 0028D108 57 A0 07 BD */ rlwinm. r0, r29, 0, 0x1e, 0x1e /* 802914AC 0028D10C 41 82 00 0C */ beq lbl_802914B8 /* 802914B0 0028D110 80 1E 00 0C */ lwz r0, 0xc(r30) /* 802914B4 0028D114 90 1F 00 0C */ stw r0, 0xc(r31) lbl_802914B8: /* 802914B8 0028D118 57 A0 07 7B */ rlwinm. r0, r29, 0, 0x1d, 0x1d /* 802914BC 0028D11C 41 82 00 10 */ beq lbl_802914CC /* 802914C0 0028D120 A0 1E 00 10 */ lhz r0, 0x10(r30) /* 802914C4 0028D124 B0 1F 00 10 */ sth r0, 0x10(r31) /* 802914C8 0028D128 48 00 00 0C */ b lbl_802914D4 lbl_802914CC: /* 802914CC 0028D12C A0 1F 00 10 */ lhz r0, 0x10(r31) /* 802914D0 0028D130 B0 1E 00 10 */ sth r0, 0x10(r30) lbl_802914D4: /* 802914D4 0028D134 57 A0 07 39 */ rlwinm. r0, r29, 0, 0x1c, 0x1c /* 802914D8 0028D138 41 82 00 0C */ beq lbl_802914E4 /* 802914DC 0028D13C A0 1E 00 12 */ lhz r0, 0x12(r30) /* 802914E0 0028D140 B0 1F 00 12 */ sth r0, 0x12(r31) lbl_802914E4: /* 802914E4 0028D144 57 A0 06 F7 */ rlwinm. r0, r29, 0, 0x1b, 0x1b /* 802914E8 0028D148 41 82 00 14 */ beq lbl_802914FC /* 802914EC 0028D14C 38 7F 00 14 */ addi r3, r31, 0x14 /* 802914F0 0028D150 38 9E 00 14 */ addi r4, r30, 0x14 /* 802914F4 0028D154 38 A0 00 30 */ li r5, 0x30 /* 802914F8 0028D158 4B D7 2B 09 */ bl memcpy lbl_802914FC: /* 802914FC 0028D15C 57 A0 06 73 */ rlwinm. r0, r29, 0, 0x19, 0x19 /* 80291500 0028D160 41 82 00 18 */ beq lbl_80291518 /* 80291504 0028D164 A0 1E 00 4E */ lhz r0, 0x4e(r30) /* 80291508 0028D168 B0 1F 00 4E */ sth r0, 0x4e(r31) /* 8029150C 0028D16C A0 1E 00 50 */ lhz r0, 0x50(r30) /* 80291510 0028D170 B0 1F 00 50 */ sth r0, 0x50(r31) /* 80291514 0028D174 48 00 00 8C */ b lbl_802915A0 lbl_80291518: /* 80291518 0028D178 57 A0 06 B5 */ rlwinm. r0, r29, 0, 0x1a, 0x1a /* 8029151C 0028D17C 41 82 00 84 */ beq lbl_802915A0 /* 80291520 0028D180 A0 7E 00 44 */ lhz r3, 0x44(r30) /* 80291524 0028D184 38 00 00 00 */ li r0, 0 /* 80291528 0028D188 B0 7F 00 44 */ sth r3, 0x44(r31) /* 8029152C 0028D18C A0 7E 00 46 */ lhz r3, 0x46(r30) /* 80291530 0028D190 B0 7F 00 46 */ sth r3, 0x46(r31) /* 80291534 0028D194 A0 7E 00 48 */ lhz r3, 0x48(r30) /* 80291538 0028D198 B0 7F 00 48 */ sth r3, 0x48(r31) /* 8029153C 0028D19C A0 7E 00 4A */ lhz r3, 0x4a(r30) /* 80291540 0028D1A0 B0 7F 00 4A */ sth r3, 0x4a(r31) /* 80291544 0028D1A4 A0 7E 00 4C */ lhz r3, 0x4c(r30) /* 80291548 0028D1A8 B0 7F 00 4C */ sth r3, 0x4c(r31) /* 8029154C 0028D1AC A0 7E 00 4E */ lhz r3, 0x4e(r30) /* 80291550 0028D1B0 B0 7F 00 4E */ sth r3, 0x4e(r31) /* 80291554 0028D1B4 A0 7E 00 50 */ lhz r3, 0x50(r30) /* 80291558 0028D1B8 B0 7F 00 50 */ sth r3, 0x50(r31) /* 8029155C 0028D1BC 80 7C 00 24 */ lwz r3, 0x24(r28) /* 80291560 0028D1C0 90 03 00 00 */ stw r0, 0(r3) /* 80291564 0028D1C4 90 03 00 04 */ stw r0, 4(r3) /* 80291568 0028D1C8 90 03 00 08 */ stw r0, 8(r3) /* 8029156C 0028D1CC 90 03 00 0C */ stw r0, 0xc(r3) /* 80291570 0028D1D0 90 03 00 10 */ stw r0, 0x10(r3) /* 80291574 0028D1D4 90 03 00 14 */ stw r0, 0x14(r3) /* 80291578 0028D1D8 90 03 00 18 */ stw r0, 0x18(r3) /* 8029157C 0028D1DC 90 03 00 1C */ stw r0, 0x1c(r3) /* 80291580 0028D1E0 90 03 00 20 */ stw r0, 0x20(r3) /* 80291584 0028D1E4 90 03 00 24 */ stw r0, 0x24(r3) /* 80291588 0028D1E8 90 03 00 28 */ stw r0, 0x28(r3) /* 8029158C 0028D1EC 90 03 00 2C */ stw r0, 0x2c(r3) /* 80291590 0028D1F0 90 03 00 30 */ stw r0, 0x30(r3) /* 80291594 0028D1F4 90 03 00 34 */ stw r0, 0x34(r3) /* 80291598 0028D1F8 90 03 00 38 */ stw r0, 0x38(r3) /* 8029159C 0028D1FC 90 03 00 3C */ stw r0, 0x3c(r3) lbl_802915A0: /* 802915A0 0028D200 57 A0 06 31 */ rlwinm. r0, r29, 0, 0x18, 0x18 /* 802915A4 0028D204 41 82 00 14 */ beq lbl_802915B8 /* 802915A8 0028D208 38 7F 00 52 */ addi r3, r31, 0x52 /* 802915AC 0028D20C 38 9E 00 52 */ addi r4, r30, 0x52 /* 802915B0 0028D210 38 A0 00 18 */ li r5, 0x18 /* 802915B4 0028D214 4B D7 2A 4D */ bl memcpy lbl_802915B8: /* 802915B8 0028D218 57 A0 05 AD */ rlwinm. r0, r29, 0, 0x16, 0x16 /* 802915BC 0028D21C 41 82 00 18 */ beq lbl_802915D4 /* 802915C0 0028D220 A0 7F 00 6A */ lhz r3, 0x6a(r31) /* 802915C4 0028D224 A8 1E 00 6C */ lha r0, 0x6c(r30) /* 802915C8 0028D228 B0 7E 00 6A */ sth r3, 0x6a(r30) /* 802915CC 0028D22C B0 1F 00 6C */ sth r0, 0x6c(r31) /* 802915D0 0028D230 48 00 00 1C */ b lbl_802915EC lbl_802915D4: /* 802915D4 0028D234 57 A0 05 EF */ rlwinm. r0, r29, 0, 0x17, 0x17 /* 802915D8 0028D238 41 82 00 14 */ beq lbl_802915EC /* 802915DC 0028D23C A0 1E 00 6A */ lhz r0, 0x6a(r30) /* 802915E0 0028D240 B0 1F 00 6A */ sth r0, 0x6a(r31) /* 802915E4 0028D244 A8 1E 00 6C */ lha r0, 0x6c(r30) /* 802915E8 0028D248 B0 1F 00 6C */ sth r0, 0x6c(r31) lbl_802915EC: /* 802915EC 0028D24C 57 A0 04 69 */ rlwinm. r0, r29, 0, 0x11, 0x14 /* 802915F0 0028D250 41 82 00 54 */ beq lbl_80291644 /* 802915F4 0028D254 57 A0 05 29 */ rlwinm. r0, r29, 0, 0x14, 0x14 /* 802915F8 0028D258 41 82 00 0C */ beq lbl_80291604 /* 802915FC 0028D25C A0 1E 00 6E */ lhz r0, 0x6e(r30) /* 80291600 0028D260 B0 1F 00 6E */ sth r0, 0x6e(r31) lbl_80291604: /* 80291604 0028D264 57 A0 04 E7 */ rlwinm. r0, r29, 0, 0x13, 0x13 /* 80291608 0028D268 41 82 00 0C */ beq lbl_80291614 /* 8029160C 0028D26C 80 1E 00 72 */ lwz r0, 0x72(r30) /* 80291610 0028D270 90 1F 00 72 */ stw r0, 0x72(r31) lbl_80291614: /* 80291614 0028D274 57 A0 04 A5 */ rlwinm. r0, r29, 0, 0x12, 0x12 /* 80291618 0028D278 41 82 00 0C */ beq lbl_80291624 /* 8029161C 0028D27C 80 1E 00 76 */ lwz r0, 0x76(r30) /* 80291620 0028D280 90 1F 00 76 */ stw r0, 0x76(r31) lbl_80291624: /* 80291624 0028D284 57 A0 04 63 */ rlwinm. r0, r29, 0, 0x11, 0x11 /* 80291628 0028D288 41 82 00 10 */ beq lbl_80291638 /* 8029162C 0028D28C 80 1E 00 7A */ lwz r0, 0x7a(r30) /* 80291630 0028D290 90 1F 00 7A */ stw r0, 0x7a(r31) /* 80291634 0028D294 48 00 00 4C */ b lbl_80291680 lbl_80291638: /* 80291638 0028D298 80 1F 00 7A */ lwz r0, 0x7a(r31) /* 8029163C 0028D29C 90 1E 00 7A */ stw r0, 0x7a(r30) /* 80291640 0028D2A0 48 00 00 40 */ b lbl_80291680 lbl_80291644: /* 80291644 0028D2A4 57 A0 05 6B */ rlwinm. r0, r29, 0, 0x15, 0x15 /* 80291648 0028D2A8 41 82 00 28 */ beq lbl_80291670 /* 8029164C 0028D2AC 80 1E 00 6E */ lwz r0, 0x6e(r30) /* 80291650 0028D2B0 90 1F 00 6E */ stw r0, 0x6e(r31) /* 80291654 0028D2B4 80 1E 00 72 */ lwz r0, 0x72(r30) /* 80291658 0028D2B8 90 1F 00 72 */ stw r0, 0x72(r31) /* 8029165C 0028D2BC 80 1E 00 76 */ lwz r0, 0x76(r30) /* 80291660 0028D2C0 90 1F 00 76 */ stw r0, 0x76(r31) /* 80291664 0028D2C4 80 1E 00 7A */ lwz r0, 0x7a(r30) /* 80291668 0028D2C8 90 1F 00 7A */ stw r0, 0x7a(r31) /* 8029166C 0028D2CC 48 00 00 14 */ b lbl_80291680 lbl_80291670: /* 80291670 0028D2D0 A0 1F 00 7A */ lhz r0, 0x7a(r31) /* 80291674 0028D2D4 B0 1E 00 7A */ sth r0, 0x7a(r30) /* 80291678 0028D2D8 A0 1F 00 7C */ lhz r0, 0x7c(r31) /* 8029167C 0028D2DC B0 1E 00 7C */ sth r0, 0x7c(r30) lbl_80291680: /* 80291680 0028D2E0 57 A0 04 21 */ rlwinm. r0, r29, 0, 0x10, 0x10 /* 80291684 0028D2E4 41 82 00 54 */ beq lbl_802916D8 /* 80291688 0028D2E8 80 1E 00 7E */ lwz r0, 0x7e(r30) /* 8029168C 0028D2EC 90 1F 00 7E */ stw r0, 0x7e(r31) /* 80291690 0028D2F0 80 1E 00 82 */ lwz r0, 0x82(r30) /* 80291694 0028D2F4 90 1F 00 82 */ stw r0, 0x82(r31) /* 80291698 0028D2F8 80 1E 00 86 */ lwz r0, 0x86(r30) /* 8029169C 0028D2FC 90 1F 00 86 */ stw r0, 0x86(r31) /* 802916A0 0028D300 80 1E 00 8A */ lwz r0, 0x8a(r30) /* 802916A4 0028D304 90 1F 00 8A */ stw r0, 0x8a(r31) /* 802916A8 0028D308 80 1E 00 8E */ lwz r0, 0x8e(r30) /* 802916AC 0028D30C 90 1F 00 8E */ stw r0, 0x8e(r31) /* 802916B0 0028D310 80 1E 00 92 */ lwz r0, 0x92(r30) /* 802916B4 0028D314 90 1F 00 92 */ stw r0, 0x92(r31) /* 802916B8 0028D318 80 1E 00 96 */ lwz r0, 0x96(r30) /* 802916BC 0028D31C 90 1F 00 96 */ stw r0, 0x96(r31) /* 802916C0 0028D320 80 1E 00 9A */ lwz r0, 0x9a(r30) /* 802916C4 0028D324 90 1F 00 9A */ stw r0, 0x9a(r31) /* 802916C8 0028D328 80 1E 00 9E */ lwz r0, 0x9e(r30) /* 802916CC 0028D32C 90 1F 00 9E */ stw r0, 0x9e(r31) /* 802916D0 0028D330 80 1E 00 A2 */ lwz r0, 0xa2(r30) /* 802916D4 0028D334 90 1F 00 A2 */ stw r0, 0xa2(r31) lbl_802916D8: /* 802916D8 0028D338 57 A0 03 9D */ rlwinm. r0, r29, 0, 0xe, 0xe /* 802916DC 0028D33C 41 82 00 18 */ beq lbl_802916F4 /* 802916E0 0028D340 A0 1E 00 A6 */ lhz r0, 0xa6(r30) /* 802916E4 0028D344 B0 1F 00 A6 */ sth r0, 0xa6(r31) /* 802916E8 0028D348 A0 1E 00 A8 */ lhz r0, 0xa8(r30) /* 802916EC 0028D34C B0 1F 00 A8 */ sth r0, 0xa8(r31) /* 802916F0 0028D350 48 00 00 44 */ b lbl_80291734 lbl_802916F4: /* 802916F4 0028D354 57 A0 03 DF */ rlwinm. r0, r29, 0, 0xf, 0xf /* 802916F8 0028D358 41 82 00 3C */ beq lbl_80291734 /* 802916FC 0028D35C A0 1E 00 A6 */ lhz r0, 0xa6(r30) /* 80291700 0028D360 B0 1F 00 A6 */ sth r0, 0xa6(r31) /* 80291704 0028D364 A0 1E 00 A8 */ lhz r0, 0xa8(r30) /* 80291708 0028D368 B0 1F 00 A8 */ sth r0, 0xa8(r31) /* 8029170C 0028D36C A0 1E 00 AA */ lhz r0, 0xaa(r30) /* 80291710 0028D370 B0 1F 00 AA */ sth r0, 0xaa(r31) /* 80291714 0028D374 A0 1E 00 AC */ lhz r0, 0xac(r30) /* 80291718 0028D378 B0 1F 00 AC */ sth r0, 0xac(r31) /* 8029171C 0028D37C A0 1E 00 AE */ lhz r0, 0xae(r30) /* 80291720 0028D380 B0 1F 00 AE */ sth r0, 0xae(r31) /* 80291724 0028D384 A0 1E 00 B0 */ lhz r0, 0xb0(r30) /* 80291728 0028D388 B0 1F 00 B0 */ sth r0, 0xb0(r31) /* 8029172C 0028D38C A0 1E 00 B2 */ lhz r0, 0xb2(r30) /* 80291730 0028D390 B0 1F 00 B2 */ sth r0, 0xb2(r31) lbl_80291734: /* 80291734 0028D394 57 A0 03 5B */ rlwinm. r0, r29, 0, 0xd, 0xd /* 80291738 0028D398 41 82 00 1C */ beq lbl_80291754 /* 8029173C 0028D39C A0 1E 00 B4 */ lhz r0, 0xb4(r30) /* 80291740 0028D3A0 B0 1F 00 B4 */ sth r0, 0xb4(r31) /* 80291744 0028D3A4 A0 1E 00 B6 */ lhz r0, 0xb6(r30) /* 80291748 0028D3A8 B0 1F 00 B6 */ sth r0, 0xb6(r31) /* 8029174C 0028D3AC A0 1E 00 B8 */ lhz r0, 0xb8(r30) /* 80291750 0028D3B0 B0 1F 00 B8 */ sth r0, 0xb8(r31) lbl_80291754: /* 80291754 0028D3B4 57 A0 02 D7 */ rlwinm. r0, r29, 0, 0xb, 0xb /* 80291758 0028D3B8 41 82 00 18 */ beq lbl_80291770 /* 8029175C 0028D3BC A0 1E 00 BE */ lhz r0, 0xbe(r30) /* 80291760 0028D3C0 B0 1F 00 BE */ sth r0, 0xbe(r31) /* 80291764 0028D3C4 A0 1E 00 C0 */ lhz r0, 0xc0(r30) /* 80291768 0028D3C8 B0 1F 00 C0 */ sth r0, 0xc0(r31) /* 8029176C 0028D3CC 48 00 00 2C */ b lbl_80291798 lbl_80291770: /* 80291770 0028D3D0 57 A0 03 19 */ rlwinm. r0, r29, 0, 0xc, 0xc /* 80291774 0028D3D4 41 82 00 24 */ beq lbl_80291798 /* 80291778 0028D3D8 A0 1E 00 BA */ lhz r0, 0xba(r30) /* 8029177C 0028D3DC B0 1F 00 BA */ sth r0, 0xba(r31) /* 80291780 0028D3E0 A0 1E 00 BC */ lhz r0, 0xbc(r30) /* 80291784 0028D3E4 B0 1F 00 BC */ sth r0, 0xbc(r31) /* 80291788 0028D3E8 A0 1E 00 BE */ lhz r0, 0xbe(r30) /* 8029178C 0028D3EC B0 1F 00 BE */ sth r0, 0xbe(r31) /* 80291790 0028D3F0 A0 1E 00 C0 */ lhz r0, 0xc0(r30) /* 80291794 0028D3F4 B0 1F 00 C0 */ sth r0, 0xc0(r31) lbl_80291798: /* 80291798 0028D3F8 57 A0 02 53 */ rlwinm. r0, r29, 0, 9, 9 /* 8029179C 0028D3FC 41 82 00 30 */ beq lbl_802917CC /* 802917A0 0028D400 A0 1E 00 CC */ lhz r0, 0xcc(r30) /* 802917A4 0028D404 B0 1F 00 CC */ sth r0, 0xcc(r31) /* 802917A8 0028D408 A0 1E 00 CE */ lhz r0, 0xce(r30) /* 802917AC 0028D40C B0 1F 00 CE */ sth r0, 0xce(r31) /* 802917B0 0028D410 A0 1E 00 D0 */ lhz r0, 0xd0(r30) /* 802917B4 0028D414 B0 1F 00 D0 */ sth r0, 0xd0(r31) /* 802917B8 0028D418 A0 1E 00 D2 */ lhz r0, 0xd2(r30) /* 802917BC 0028D41C B0 1F 00 D2 */ sth r0, 0xd2(r31) /* 802917C0 0028D420 A0 1E 00 D4 */ lhz r0, 0xd4(r30) /* 802917C4 0028D424 B0 1F 00 D4 */ sth r0, 0xd4(r31) /* 802917C8 0028D428 48 00 00 5C */ b lbl_80291824 lbl_802917CC: /* 802917CC 0028D42C 57 A0 02 95 */ rlwinm. r0, r29, 0, 0xa, 0xa /* 802917D0 0028D430 41 82 00 54 */ beq lbl_80291824 /* 802917D4 0028D434 A0 1E 00 C2 */ lhz r0, 0xc2(r30) /* 802917D8 0028D438 B0 1F 00 C2 */ sth r0, 0xc2(r31) /* 802917DC 0028D43C A0 1E 00 C4 */ lhz r0, 0xc4(r30) /* 802917E0 0028D440 B0 1F 00 C4 */ sth r0, 0xc4(r31) /* 802917E4 0028D444 A0 1E 00 C6 */ lhz r0, 0xc6(r30) /* 802917E8 0028D448 B0 1F 00 C6 */ sth r0, 0xc6(r31) /* 802917EC 0028D44C A0 1E 00 C8 */ lhz r0, 0xc8(r30) /* 802917F0 0028D450 B0 1F 00 C8 */ sth r0, 0xc8(r31) /* 802917F4 0028D454 A0 1E 00 CA */ lhz r0, 0xca(r30) /* 802917F8 0028D458 B0 1F 00 CA */ sth r0, 0xca(r31) /* 802917FC 0028D45C A0 1E 00 CC */ lhz r0, 0xcc(r30) /* 80291800 0028D460 B0 1F 00 CC */ sth r0, 0xcc(r31) /* 80291804 0028D464 A0 1E 00 CE */ lhz r0, 0xce(r30) /* 80291808 0028D468 B0 1F 00 CE */ sth r0, 0xce(r31) /* 8029180C 0028D46C A0 1E 00 D0 */ lhz r0, 0xd0(r30) /* 80291810 0028D470 B0 1F 00 D0 */ sth r0, 0xd0(r31) /* 80291814 0028D474 A0 1E 00 D2 */ lhz r0, 0xd2(r30) /* 80291818 0028D478 B0 1F 00 D2 */ sth r0, 0xd2(r31) /* 8029181C 0028D47C A0 1E 00 D4 */ lhz r0, 0xd4(r30) /* 80291820 0028D480 B0 1F 00 D4 */ sth r0, 0xd4(r31) lbl_80291824: /* 80291824 0028D484 57 A0 02 11 */ rlwinm. r0, r29, 0, 8, 8 /* 80291828 0028D488 41 82 00 0C */ beq lbl_80291834 /* 8029182C 0028D48C A0 1E 00 D6 */ lhz r0, 0xd6(r30) /* 80291830 0028D490 B0 1F 00 D6 */ sth r0, 0xd6(r31) lbl_80291834: /* 80291834 0028D494 57 A0 01 CF */ rlwinm. r0, r29, 0, 7, 7 /* 80291838 0028D498 41 82 00 0C */ beq lbl_80291844 /* 8029183C 0028D49C A0 1E 00 D8 */ lhz r0, 0xd8(r30) /* 80291840 0028D4A0 B0 1F 00 D8 */ sth r0, 0xd8(r31) lbl_80291844: /* 80291844 0028D4A4 57 A0 01 8D */ rlwinm. r0, r29, 0, 6, 6 /* 80291848 0028D4A8 41 82 00 14 */ beq lbl_8029185C /* 8029184C 0028D4AC 38 7F 00 DA */ addi r3, r31, 0xda /* 80291850 0028D4B0 38 9E 00 DA */ addi r4, r30, 0xda /* 80291854 0028D4B4 38 A0 00 20 */ li r5, 0x20 /* 80291858 0028D4B8 4B D7 27 A9 */ bl memcpy lbl_8029185C: /* 8029185C 0028D4BC 57 A0 01 4B */ rlwinm. r0, r29, 0, 5, 5 /* 80291860 0028D4C0 41 82 00 14 */ beq lbl_80291874 /* 80291864 0028D4C4 38 7F 00 FA */ addi r3, r31, 0xfa /* 80291868 0028D4C8 38 9E 00 FA */ addi r4, r30, 0xfa /* 8029186C 0028D4CC 38 A0 00 10 */ li r5, 0x10 /* 80291870 0028D4D0 4B D7 27 91 */ bl memcpy lbl_80291874: /* 80291874 0028D4D4 57 A0 01 09 */ rlwinm. r0, r29, 0, 4, 4 /* 80291878 0028D4D8 41 82 00 14 */ beq lbl_8029188C /* 8029187C 0028D4DC 38 7F 01 0A */ addi r3, r31, 0x10a /* 80291880 0028D4E0 38 9E 01 0A */ addi r4, r30, 0x10a /* 80291884 0028D4E4 38 A0 00 0A */ li r5, 0xa /* 80291888 0028D4E8 4B D7 27 79 */ bl memcpy lbl_8029188C: /* 8029188C 0028D4EC 57 A0 00 85 */ rlwinm. r0, r29, 0, 2, 2 /* 80291890 0028D4F0 41 82 00 18 */ beq lbl_802918A8 /* 80291894 0028D4F4 A0 1E 01 18 */ lhz r0, 0x118(r30) /* 80291898 0028D4F8 B0 1F 01 18 */ sth r0, 0x118(r31) /* 8029189C 0028D4FC A0 1E 01 1A */ lhz r0, 0x11a(r30) /* 802918A0 0028D500 B0 1F 01 1A */ sth r0, 0x11a(r31) /* 802918A4 0028D504 48 00 00 90 */ b lbl_80291934 lbl_802918A8: /* 802918A8 0028D508 57 A0 00 43 */ rlwinm. r0, r29, 0, 1, 1 /* 802918AC 0028D50C 41 82 00 30 */ beq lbl_802918DC /* 802918B0 0028D510 A0 1E 01 1E */ lhz r0, 0x11e(r30) /* 802918B4 0028D514 B0 1F 01 1E */ sth r0, 0x11e(r31) /* 802918B8 0028D518 A0 1E 01 20 */ lhz r0, 0x120(r30) /* 802918BC 0028D51C B0 1F 01 20 */ sth r0, 0x120(r31) /* 802918C0 0028D520 A0 1E 01 22 */ lhz r0, 0x122(r30) /* 802918C4 0028D524 B0 1F 01 22 */ sth r0, 0x122(r31) /* 802918C8 0028D528 A0 1E 01 24 */ lhz r0, 0x124(r30) /* 802918CC 0028D52C B0 1F 01 24 */ sth r0, 0x124(r31) /* 802918D0 0028D530 A0 1E 01 26 */ lhz r0, 0x126(r30) /* 802918D4 0028D534 B0 1F 01 26 */ sth r0, 0x126(r31) /* 802918D8 0028D538 48 00 00 5C */ b lbl_80291934 lbl_802918DC: /* 802918DC 0028D53C 57 A0 00 C7 */ rlwinm. r0, r29, 0, 3, 3 /* 802918E0 0028D540 41 82 00 54 */ beq lbl_80291934 /* 802918E4 0028D544 A0 1E 01 14 */ lhz r0, 0x114(r30) /* 802918E8 0028D548 B0 1F 01 14 */ sth r0, 0x114(r31) /* 802918EC 0028D54C A0 1E 01 16 */ lhz r0, 0x116(r30) /* 802918F0 0028D550 B0 1F 01 16 */ sth r0, 0x116(r31) /* 802918F4 0028D554 A0 1E 01 18 */ lhz r0, 0x118(r30) /* 802918F8 0028D558 B0 1F 01 18 */ sth r0, 0x118(r31) /* 802918FC 0028D55C A0 1E 01 1A */ lhz r0, 0x11a(r30) /* 80291900 0028D560 B0 1F 01 1A */ sth r0, 0x11a(r31) /* 80291904 0028D564 A0 1E 01 1C */ lhz r0, 0x11c(r30) /* 80291908 0028D568 B0 1F 01 1C */ sth r0, 0x11c(r31) /* 8029190C 0028D56C A0 1E 01 1E */ lhz r0, 0x11e(r30) /* 80291910 0028D570 B0 1F 01 1E */ sth r0, 0x11e(r31) /* 80291914 0028D574 A0 1E 01 20 */ lhz r0, 0x120(r30) /* 80291918 0028D578 B0 1F 01 20 */ sth r0, 0x120(r31) /* 8029191C 0028D57C A0 1E 01 22 */ lhz r0, 0x122(r30) /* 80291920 0028D580 B0 1F 01 22 */ sth r0, 0x122(r31) /* 80291924 0028D584 A0 1E 01 24 */ lhz r0, 0x124(r30) /* 80291928 0028D588 B0 1F 01 24 */ sth r0, 0x124(r31) /* 8029192C 0028D58C A0 1E 01 26 */ lhz r0, 0x126(r30) /* 80291930 0028D590 B0 1F 01 26 */ sth r0, 0x126(r31) lbl_80291934: /* 80291934 0028D594 80 01 00 24 */ lwz r0, 0x24(r1) /* 80291938 0028D598 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8029193C 0028D59C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80291940 0028D5A0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80291944 0028D5A4 83 81 00 10 */ lwz r28, 0x10(r1) /* 80291948 0028D5A8 7C 08 03 A6 */ mtlr r0 /* 8029194C 0028D5AC 38 21 00 20 */ addi r1, r1, 0x20 /* 80291950 0028D5B0 4E 80 00 20 */ blr .global __AXSyncPBs __AXSyncPBs: /* 80291954 0028D5B4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80291958 0028D5B8 7C 08 02 A6 */ mflr r0 /* 8029195C 0028D5BC 90 01 00 34 */ stw r0, 0x34(r1) /* 80291960 0028D5C0 39 61 00 30 */ addi r11, r1, 0x30 /* 80291964 0028D5C4 4B F3 57 BD */ bl _savegpr_25 /* 80291968 0028D5C8 80 0D AC 24 */ lwz r0, lbl_8063FEE4-_SDA_BASE_(r13) /* 8029196C 0028D5CC 3B A0 00 00 */ li r29, 0 /* 80291970 0028D5D0 7C 79 1B 78 */ mr r25, r3 /* 80291974 0028D5D4 93 AD AC 28 */ stw r29, lbl_8063FEE8-_SDA_BASE_(r13) /* 80291978 0028D5D8 1C 80 01 40 */ mulli r4, r0, 0x140 /* 8029197C 0028D5DC 80 6D AC 18 */ lwz r3, lbl_8063FED8-_SDA_BASE_(r13) /* 80291980 0028D5E0 4B FD 8C A9 */ bl DCInvalidateRange /* 80291984 0028D5E4 80 0D AC 24 */ lwz r0, lbl_8063FEE4-_SDA_BASE_(r13) /* 80291988 0028D5E8 80 6D AC 1C */ lwz r3, lbl_8063FEDC-_SDA_BASE_(r13) /* 8029198C 0028D5EC 54 04 30 32 */ slwi r4, r0, 6 /* 80291990 0028D5F0 4B FD 8C 99 */ bl DCInvalidateRange /* 80291994 0028D5F4 4B FF E3 D1 */ bl __AXGetCommandListCycles /* 80291998 0028D5F8 80 0D AC 24 */ lwz r0, lbl_8063FEE4-_SDA_BASE_(r13) /* 8029199C 0028D5FC 3F E0 80 43 */ lis r31, lbl_804373A8@ha /* 802919A0 0028D600 3F C0 80 43 */ lis r30, lbl_80437328@ha /* 802919A4 0028D604 3B 60 00 1F */ li r27, 0x1f /* 802919A8 0028D608 1C 00 02 58 */ mulli r0, r0, 0x258 /* 802919AC 0028D60C 3B FF 73 A8 */ addi r31, r31, lbl_804373A8@l /* 802919B0 0028D610 3B DE 73 28 */ addi r30, r30, lbl_80437328@l /* 802919B4 0028D614 7C 03 02 14 */ add r0, r3, r0 /* 802919B8 0028D618 7C 60 CA 14 */ add r3, r0, r25 /* 802919BC 0028D61C 3B 83 00 20 */ addi r28, r3, 0x20 lbl_802919C0: /* 802919C0 0028D620 7F 63 DB 78 */ mr r3, r27 /* 802919C4 0028D624 4B FF D6 D1 */ bl __AXGetStackHead /* 802919C8 0028D628 7C 7A 1B 78 */ mr r26, r3 /* 802919CC 0028D62C 48 00 01 F4 */ b lbl_80291BC0 lbl_802919D0: /* 802919D0 0028D630 A0 1A 00 6C */ lhz r0, 0x6c(r26) /* 802919D4 0028D634 28 00 00 01 */ cmplwi r0, 1 /* 802919D8 0028D638 40 82 00 08 */ bne lbl_802919E0 /* 802919DC 0028D63C 3B 9C 00 81 */ addi r28, r28, 0x81 lbl_802919E0: /* 802919E0 0028D640 80 1A 00 20 */ lwz r0, 0x20(r26) /* 802919E4 0028D644 2C 00 00 00 */ cmpwi r0, 0 /* 802919E8 0028D648 41 82 00 18 */ beq lbl_80291A00 /* 802919EC 0028D64C 80 1A 00 18 */ lwz r0, 0x18(r26) /* 802919F0 0028D650 80 6D AC 18 */ lwz r3, lbl_8063FED8-_SDA_BASE_(r13) /* 802919F4 0028D654 1C 00 01 40 */ mulli r0, r0, 0x140 /* 802919F8 0028D658 7C 63 02 14 */ add r3, r3, r0 /* 802919FC 0028D65C 4B FF F8 95 */ bl __AXDepopVoice lbl_80291A00: /* 80291A00 0028D660 A0 1A 00 38 */ lhz r0, 0x38(r26) /* 80291A04 0028D664 28 00 00 01 */ cmplwi r0, 1 /* 80291A08 0028D668 40 82 01 A4 */ bne lbl_80291BAC /* 80291A0C 0028D66C A0 1A 00 E2 */ lhz r0, 0xe2(r26) /* 80291A10 0028D670 3B 9C 01 83 */ addi r28, r28, 0x183 /* 80291A14 0028D674 2C 00 00 00 */ cmpwi r0, 0 /* 80291A18 0028D678 41 82 00 08 */ beq lbl_80291A20 /* 80291A1C 0028D67C 3B 9C 01 35 */ addi r28, r28, 0x135 lbl_80291A20: /* 80291A20 0028D680 A0 1A 00 EA */ lhz r0, 0xea(r26) /* 80291A24 0028D684 2C 00 00 00 */ cmpwi r0, 0 /* 80291A28 0028D688 41 82 00 08 */ beq lbl_80291A30 /* 80291A2C 0028D68C 3B 9C 04 00 */ addi r28, r28, 0x400 lbl_80291A30: /* 80291A30 0028D690 A0 1A 00 6C */ lhz r0, 0x6c(r26) /* 80291A34 0028D694 28 00 00 01 */ cmplwi r0, 1 /* 80291A38 0028D698 40 82 00 08 */ bne lbl_80291A40 /* 80291A3C 0028D69C 3B 9C 00 1B */ addi r28, r28, 0x1b lbl_80291A40: /* 80291A40 0028D6A0 A0 7A 00 30 */ lhz r3, 0x30(r26) /* 80291A44 0028D6A4 A0 1A 00 CE */ lhz r0, 0xce(r26) /* 80291A48 0028D6A8 2C 03 00 00 */ cmpwi r3, 0 /* 80291A4C 0028D6AC A0 9A 00 D0 */ lhz r4, 0xd0(r26) /* 80291A50 0028D6B0 50 04 80 1E */ rlwimi r4, r0, 0x10, 0, 0xf /* 80291A54 0028D6B4 40 82 00 1C */ bne lbl_80291A70 /* 80291A58 0028D6B8 54 83 48 2C */ slwi r3, r4, 9 /* 80291A5C 0028D6BC 3C 63 00 01 */ addis r3, r3, 1 /* 80291A60 0028D6C0 38 03 80 00 */ addi r0, r3, -32768 /* 80291A64 0028D6C4 54 03 84 3E */ srwi r3, r0, 0x10 /* 80291A68 0028D6C8 38 03 06 19 */ addi r0, r3, 0x619 /* 80291A6C 0028D6CC 48 00 00 24 */ b lbl_80291A90 lbl_80291A70: /* 80291A70 0028D6D0 28 03 00 01 */ cmplwi r3, 1 /* 80291A74 0028D6D4 38 00 02 5D */ li r0, 0x25d /* 80291A78 0028D6D8 40 82 00 18 */ bne lbl_80291A90 /* 80291A7C 0028D6DC 54 83 48 2C */ slwi r3, r4, 9 /* 80291A80 0028D6E0 3C 63 00 01 */ addis r3, r3, 1 /* 80291A84 0028D6E4 38 03 80 00 */ addi r0, r3, -32768 /* 80291A88 0028D6E8 54 03 84 3E */ srwi r3, r0, 0x10 /* 80291A8C 0028D6EC 38 03 05 BA */ addi r0, r3, 0x5ba lbl_80291A90: /* 80291A90 0028D6F0 80 9A 00 34 */ lwz r4, 0x34(r26) /* 80291A94 0028D6F4 7F 9C 02 14 */ add r28, r28, r0 /* 80291A98 0028D6F8 A0 1A 00 FE */ lhz r0, 0xfe(r26) /* 80291A9C 0028D6FC 54 85 6E 7A */ rlwinm r5, r4, 0xd, 0x19, 0x1d /* 80291AA0 0028D700 54 83 16 7A */ rlwinm r3, r4, 2, 0x19, 0x1d /* 80291AA4 0028D704 54 86 46 7A */ rlwinm r6, r4, 8, 0x19, 0x1d /* 80291AA8 0028D708 54 84 96 7A */ rlwinm r4, r4, 0x12, 0x19, 0x1d /* 80291AAC 0028D70C 28 00 00 01 */ cmplwi r0, 1 /* 80291AB0 0028D710 7C BE 28 2E */ lwzx r5, r30, r5 /* 80291AB4 0028D714 7C 1E 18 2E */ lwzx r0, r30, r3 /* 80291AB8 0028D718 7C DE 30 2E */ lwzx r6, r30, r6 /* 80291ABC 0028D71C 7C 9E 20 2E */ lwzx r4, r30, r4 /* 80291AC0 0028D720 7C 05 02 14 */ add r0, r5, r0 /* 80291AC4 0028D724 7C 7C 32 14 */ add r3, r28, r6 /* 80291AC8 0028D728 7C 04 02 14 */ add r0, r4, r0 /* 80291ACC 0028D72C 7F 83 02 14 */ add r28, r3, r0 /* 80291AD0 0028D730 40 82 00 8C */ bne lbl_80291B5C /* 80291AD4 0028D734 A0 1A 01 3C */ lhz r0, 0x13c(r26) /* 80291AD8 0028D738 3B 9C 02 65 */ addi r28, r28, 0x265 /* 80291ADC 0028D73C 28 00 00 01 */ cmplwi r0, 1 /* 80291AE0 0028D740 40 82 00 0C */ bne lbl_80291AEC /* 80291AE4 0028D744 3B 9C 00 76 */ addi r28, r28, 0x76 /* 80291AE8 0028D748 48 00 00 10 */ b lbl_80291AF8 lbl_80291AEC: /* 80291AEC 0028D74C 28 00 00 02 */ cmplwi r0, 2 /* 80291AF0 0028D750 40 82 00 08 */ bne lbl_80291AF8 /* 80291AF4 0028D754 3B 9C 03 42 */ addi r28, r28, 0x342 lbl_80291AF8: /* 80291AF8 0028D758 A0 7A 01 00 */ lhz r3, 0x100(r26) /* 80291AFC 0028D75C 54 64 F7 3A */ rlwinm r4, r3, 0x1e, 0x1c, 0x1d /* 80291B00 0028D760 54 60 17 3A */ rlwinm r0, r3, 2, 0x1c, 0x1d /* 80291B04 0028D764 7C 9F 20 2E */ lwzx r4, r31, r4 /* 80291B08 0028D768 54 69 A7 3A */ rlwinm r9, r3, 0x14, 0x1c, 0x1d /* 80291B0C 0028D76C 7C 1F 00 2E */ lwzx r0, r31, r0 /* 80291B10 0028D770 54 68 B7 3A */ rlwinm r8, r3, 0x16, 0x1c, 0x1d /* 80291B14 0028D774 54 67 C7 3A */ rlwinm r7, r3, 0x18, 0x1c, 0x1d /* 80291B18 0028D778 54 66 D7 3A */ rlwinm r6, r3, 0x1a, 0x1c, 0x1d /* 80291B1C 0028D77C 54 65 E7 3A */ rlwinm r5, r3, 0x1c, 0x1c, 0x1d /* 80291B20 0028D780 54 63 07 3A */ rlwinm r3, r3, 0, 0x1c, 0x1d /* 80291B24 0028D784 7C FF 38 2E */ lwzx r7, r31, r7 /* 80291B28 0028D788 7C 04 02 14 */ add r0, r4, r0 /* 80291B2C 0028D78C 7C 7F 18 2E */ lwzx r3, r31, r3 /* 80291B30 0028D790 7D 3F 48 2E */ lwzx r9, r31, r9 /* 80291B34 0028D794 7C FC 3A 14 */ add r7, r28, r7 /* 80291B38 0028D798 7D 1F 40 2E */ lwzx r8, r31, r8 /* 80291B3C 0028D79C 7C 03 02 14 */ add r0, r3, r0 /* 80291B40 0028D7A0 7C DF 30 2E */ lwzx r6, r31, r6 /* 80291B44 0028D7A4 7C 9F 28 2E */ lwzx r4, r31, r5 /* 80291B48 0028D7A8 7D 09 42 14 */ add r8, r9, r8 /* 80291B4C 0028D7AC 7C 68 3A 14 */ add r3, r8, r7 /* 80291B50 0028D7B0 7C 86 22 14 */ add r4, r6, r4 /* 80291B54 0028D7B4 7C 04 02 14 */ add r0, r4, r0 /* 80291B58 0028D7B8 7F 83 02 14 */ add r28, r3, r0 lbl_80291B5C: /* 80291B5C 0028D7BC 80 0D AC 30 */ lwz r0, lbl_8063FEF0-_SDA_BASE_(r13) /* 80291B60 0028D7C0 7C 00 E0 40 */ cmplw r0, r28 /* 80291B64 0028D7C4 40 81 00 10 */ ble lbl_80291B74 /* 80291B68 0028D7C8 7F 43 D3 78 */ mr r3, r26 /* 80291B6C 0028D7CC 4B FF F8 99 */ bl __AXServiceVPB /* 80291B70 0028D7D0 48 00 00 44 */ b lbl_80291BB4 lbl_80291B74: /* 80291B74 0028D7D4 80 1A 00 18 */ lwz r0, 0x18(r26) /* 80291B78 0028D7D8 80 6D AC 18 */ lwz r3, lbl_8063FED8-_SDA_BASE_(r13) /* 80291B7C 0028D7DC 1C 00 01 40 */ mulli r0, r0, 0x140 /* 80291B80 0028D7E0 7F 23 02 14 */ add r25, r3, r0 /* 80291B84 0028D7E4 A0 19 00 10 */ lhz r0, 0x10(r25) /* 80291B88 0028D7E8 28 00 00 01 */ cmplwi r0, 1 /* 80291B8C 0028D7EC 40 82 00 0C */ bne lbl_80291B98 /* 80291B90 0028D7F0 7F 23 CB 78 */ mr r3, r25 /* 80291B94 0028D7F4 4B FF F6 FD */ bl __AXDepopVoice lbl_80291B98: /* 80291B98 0028D7F8 B3 BA 00 38 */ sth r29, 0x38(r26) /* 80291B9C 0028D7FC 7F 43 D3 78 */ mr r3, r26 /* 80291BA0 0028D800 B3 B9 00 10 */ sth r29, 0x10(r25) /* 80291BA4 0028D804 4B FF D6 7D */ bl __AXPushCallbackStack /* 80291BA8 0028D808 48 00 00 0C */ b lbl_80291BB4 lbl_80291BAC: /* 80291BAC 0028D80C 7F 43 D3 78 */ mr r3, r26 /* 80291BB0 0028D810 4B FF F8 55 */ bl __AXServiceVPB lbl_80291BB4: /* 80291BB4 0028D814 93 BA 00 1C */ stw r29, 0x1c(r26) /* 80291BB8 0028D818 93 BA 00 20 */ stw r29, 0x20(r26) /* 80291BBC 0028D81C 83 5A 00 00 */ lwz r26, 0(r26) lbl_80291BC0: /* 80291BC0 0028D820 2C 1A 00 00 */ cmpwi r26, 0 /* 80291BC4 0028D824 40 82 FE 0C */ bne lbl_802919D0 /* 80291BC8 0028D828 37 7B FF FF */ addic. r27, r27, -1 /* 80291BCC 0028D82C 40 82 FD F4 */ bne lbl_802919C0 /* 80291BD0 0028D830 93 8D AC 2C */ stw r28, lbl_8063FEEC-_SDA_BASE_(r13) /* 80291BD4 0028D834 38 60 00 00 */ li r3, 0 /* 80291BD8 0028D838 4B FF D4 BD */ bl __AXGetStackHead /* 80291BDC 0028D83C 7C 79 1B 78 */ mr r25, r3 /* 80291BE0 0028D840 3B 40 00 00 */ li r26, 0 /* 80291BE4 0028D844 48 00 00 40 */ b lbl_80291C24 lbl_80291BE8: /* 80291BE8 0028D848 80 19 00 20 */ lwz r0, 0x20(r25) /* 80291BEC 0028D84C 2C 00 00 00 */ cmpwi r0, 0 /* 80291BF0 0028D850 41 82 00 18 */ beq lbl_80291C08 /* 80291BF4 0028D854 80 19 00 18 */ lwz r0, 0x18(r25) /* 80291BF8 0028D858 80 6D AC 18 */ lwz r3, lbl_8063FED8-_SDA_BASE_(r13) /* 80291BFC 0028D85C 1C 00 01 40 */ mulli r0, r0, 0x140 /* 80291C00 0028D860 7C 63 02 14 */ add r3, r3, r0 /* 80291C04 0028D864 4B FF F6 8D */ bl __AXDepopVoice lbl_80291C08: /* 80291C08 0028D868 93 59 00 20 */ stw r26, 0x20(r25) /* 80291C0C 0028D86C 80 19 00 18 */ lwz r0, 0x18(r25) /* 80291C10 0028D870 80 6D AC 18 */ lwz r3, lbl_8063FED8-_SDA_BASE_(r13) /* 80291C14 0028D874 1C 00 01 40 */ mulli r0, r0, 0x140 /* 80291C18 0028D878 7C 63 02 14 */ add r3, r3, r0 /* 80291C1C 0028D87C B3 43 00 10 */ sth r26, 0x10(r3) /* 80291C20 0028D880 83 39 00 00 */ lwz r25, 0(r25) lbl_80291C24: /* 80291C24 0028D884 2C 19 00 00 */ cmpwi r25, 0 /* 80291C28 0028D888 40 82 FF C0 */ bne lbl_80291BE8 /* 80291C2C 0028D88C 80 0D AC 24 */ lwz r0, lbl_8063FEE4-_SDA_BASE_(r13) /* 80291C30 0028D890 80 6D AC 18 */ lwz r3, lbl_8063FED8-_SDA_BASE_(r13) /* 80291C34 0028D894 1C 80 01 40 */ mulli r4, r0, 0x140 /* 80291C38 0028D898 4B FD 8A 1D */ bl DCFlushRange /* 80291C3C 0028D89C 80 0D AC 24 */ lwz r0, lbl_8063FEE4-_SDA_BASE_(r13) /* 80291C40 0028D8A0 80 6D AC 1C */ lwz r3, lbl_8063FEDC-_SDA_BASE_(r13) /* 80291C44 0028D8A4 54 04 30 32 */ slwi r4, r0, 6 /* 80291C48 0028D8A8 4B FD 8A 0D */ bl DCFlushRange /* 80291C4C 0028D8AC 39 61 00 30 */ addi r11, r1, 0x30 /* 80291C50 0028D8B0 4B F3 55 1D */ bl _restgpr_25 /* 80291C54 0028D8B4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80291C58 0028D8B8 7C 08 03 A6 */ mtlr r0 /* 80291C5C 0028D8BC 38 21 00 30 */ addi r1, r1, 0x30 /* 80291C60 0028D8C0 4E 80 00 20 */ blr .global __AXGetPBs __AXGetPBs: /* 80291C64 0028D8C4 80 6D AC 18 */ lwz r3, lbl_8063FED8-_SDA_BASE_(r13) /* 80291C68 0028D8C8 4E 80 00 20 */ blr .global __AXSetPBDefault __AXSetPBDefault: /* 80291C6C 0028D8CC 3C 80 18 A8 */ lis r4, 0x18A80024@ha /* 80291C70 0028D8D0 38 A0 00 00 */ li r5, 0 /* 80291C74 0028D8D4 38 04 00 24 */ addi r0, r4, 0x18A80024@l /* 80291C78 0028D8D8 B0 A3 00 38 */ sth r5, 0x38(r3) /* 80291C7C 0028D8DC B0 A3 00 6C */ sth r5, 0x6c(r3) /* 80291C80 0028D8E0 90 03 00 1C */ stw r0, 0x1c(r3) /* 80291C84 0028D8E4 B0 A3 00 E2 */ sth r5, 0xe2(r3) /* 80291C88 0028D8E8 B0 A3 00 EA */ sth r5, 0xea(r3) /* 80291C8C 0028D8EC B0 A3 00 FE */ sth r5, 0xfe(r3) /* 80291C90 0028D8F0 B0 A3 01 3C */ sth r5, 0x13c(r3) /* 80291C94 0028D8F4 B0 A3 01 32 */ sth r5, 0x132(r3) /* 80291C98 0028D8F8 B0 A3 01 34 */ sth r5, 0x134(r3) /* 80291C9C 0028D8FC B0 A3 01 36 */ sth r5, 0x136(r3) /* 80291CA0 0028D900 B0 A3 01 38 */ sth r5, 0x138(r3) /* 80291CA4 0028D904 B0 A3 01 3A */ sth r5, 0x13a(r3) /* 80291CA8 0028D908 4E 80 00 20 */ blr .global __AXVPBInit __AXVPBInit: /* 80291CAC 0028D90C 3C A0 80 52 */ lis r5, lbl_8051FAC0@ha /* 80291CB0 0028D910 3C 80 80 52 */ lis r4, lbl_805272C0@ha /* 80291CB4 0028D914 3C 60 80 53 */ lis r3, lbl_80528AC0@ha /* 80291CB8 0028D918 38 00 00 60 */ li r0, 0x60 /* 80291CBC 0028D91C 38 A5 FA C0 */ addi r5, r5, lbl_8051FAC0@l /* 80291CC0 0028D920 38 84 72 C0 */ addi r4, r4, lbl_805272C0@l /* 80291CC4 0028D924 38 63 8A C0 */ addi r3, r3, lbl_80528AC0@l /* 80291CC8 0028D928 90 0D AC 24 */ stw r0, lbl_8063FEE4-_SDA_BASE_(r13) /* 80291CCC 0028D92C 90 AD AC 18 */ stw r5, lbl_8063FED8-_SDA_BASE_(r13) /* 80291CD0 0028D930 90 8D AC 1C */ stw r4, lbl_8063FEDC-_SDA_BASE_(r13) /* 80291CD4 0028D934 90 6D AC 20 */ stw r3, lbl_8063FEE0-_SDA_BASE_(r13) /* 80291CD8 0028D938 48 00 00 04 */ b __AXVPBInitCommon __AXVPBInitCommon: /* 80291CDC 0028D93C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80291CE0 0028D940 7C 08 02 A6 */ mflr r0 /* 80291CE4 0028D944 90 01 00 34 */ stw r0, 0x34(r1) /* 80291CE8 0028D948 39 61 00 30 */ addi r11, r1, 0x30 /* 80291CEC 0028D94C 4B F3 54 35 */ bl _savegpr_25 /* 80291CF0 0028D950 3C 80 80 00 */ lis r4, 0x800000F8@ha /* 80291CF4 0028D954 3C 60 89 05 */ lis r3, 0x8904FD51@ha /* 80291CF8 0028D958 80 84 00 F8 */ lwz r4, 0x800000F8@l(r4) /* 80291CFC 0028D95C 38 A3 FD 51 */ addi r5, r3, 0x8904FD51@l /* 80291D00 0028D960 80 0D AC 24 */ lwz r0, lbl_8063FEE4-_SDA_BASE_(r13) /* 80291D04 0028D964 38 60 00 00 */ li r3, 0 /* 80291D08 0028D968 7C A5 20 16 */ mulhwu r5, r5, r4 /* 80291D0C 0028D96C 90 6D AC 2C */ stw r3, lbl_8063FEEC-_SDA_BASE_(r13) /* 80291D10 0028D970 80 ED AC 18 */ lwz r7, lbl_8063FED8-_SDA_BASE_(r13) /* 80291D14 0028D974 1C C0 00 50 */ mulli r6, r0, 0x50 /* 80291D18 0028D978 7C 05 20 50 */ subf r0, r5, r4 /* 80291D1C 0028D97C 54 00 F8 7E */ srwi r0, r0, 1 /* 80291D20 0028D980 7C 00 2A 14 */ add r0, r0, r5 /* 80291D24 0028D984 2C 06 00 00 */ cmpwi r6, 0 /* 80291D28 0028D988 54 00 BA 7E */ srwi r0, r0, 9 /* 80291D2C 0028D98C 90 0D AC 30 */ stw r0, lbl_8063FEF0-_SDA_BASE_(r13) /* 80291D30 0028D990 41 82 00 50 */ beq lbl_80291D80 /* 80291D34 0028D994 54 C0 E8 FF */ rlwinm. r0, r6, 0x1d, 3, 0x1f /* 80291D38 0028D998 7C 09 03 A6 */ mtctr r0 /* 80291D3C 0028D99C 41 82 00 34 */ beq lbl_80291D70 lbl_80291D40: /* 80291D40 0028D9A0 90 67 00 00 */ stw r3, 0(r7) /* 80291D44 0028D9A4 90 67 00 04 */ stw r3, 4(r7) /* 80291D48 0028D9A8 90 67 00 08 */ stw r3, 8(r7) /* 80291D4C 0028D9AC 90 67 00 0C */ stw r3, 0xc(r7) /* 80291D50 0028D9B0 90 67 00 10 */ stw r3, 0x10(r7) /* 80291D54 0028D9B4 90 67 00 14 */ stw r3, 0x14(r7) /* 80291D58 0028D9B8 90 67 00 18 */ stw r3, 0x18(r7) /* 80291D5C 0028D9BC 90 67 00 1C */ stw r3, 0x1c(r7) /* 80291D60 0028D9C0 38 E7 00 20 */ addi r7, r7, 0x20 /* 80291D64 0028D9C4 42 00 FF DC */ bdnz lbl_80291D40 /* 80291D68 0028D9C8 70 C6 00 07 */ andi. r6, r6, 7 /* 80291D6C 0028D9CC 41 82 00 14 */ beq lbl_80291D80 lbl_80291D70: /* 80291D70 0028D9D0 7C C9 03 A6 */ mtctr r6 lbl_80291D74: /* 80291D74 0028D9D4 90 67 00 00 */ stw r3, 0(r7) /* 80291D78 0028D9D8 38 E7 00 04 */ addi r7, r7, 4 /* 80291D7C 0028D9DC 42 00 FF F8 */ bdnz lbl_80291D74 lbl_80291D80: /* 80291D80 0028D9E0 80 0D AC 24 */ lwz r0, lbl_8063FEE4-_SDA_BASE_(r13) /* 80291D84 0028D9E4 38 60 00 00 */ li r3, 0 /* 80291D88 0028D9E8 80 8D AC 1C */ lwz r4, lbl_8063FEDC-_SDA_BASE_(r13) /* 80291D8C 0028D9EC 54 05 20 37 */ rlwinm. r5, r0, 4, 0, 0x1b /* 80291D90 0028D9F0 41 82 00 50 */ beq lbl_80291DE0 /* 80291D94 0028D9F4 54 A0 E8 FF */ rlwinm. r0, r5, 0x1d, 3, 0x1f /* 80291D98 0028D9F8 7C 09 03 A6 */ mtctr r0 /* 80291D9C 0028D9FC 41 82 00 34 */ beq lbl_80291DD0 lbl_80291DA0: /* 80291DA0 0028DA00 90 64 00 00 */ stw r3, 0(r4) /* 80291DA4 0028DA04 90 64 00 04 */ stw r3, 4(r4) /* 80291DA8 0028DA08 90 64 00 08 */ stw r3, 8(r4) /* 80291DAC 0028DA0C 90 64 00 0C */ stw r3, 0xc(r4) /* 80291DB0 0028DA10 90 64 00 10 */ stw r3, 0x10(r4) /* 80291DB4 0028DA14 90 64 00 14 */ stw r3, 0x14(r4) /* 80291DB8 0028DA18 90 64 00 18 */ stw r3, 0x18(r4) /* 80291DBC 0028DA1C 90 64 00 1C */ stw r3, 0x1c(r4) /* 80291DC0 0028DA20 38 84 00 20 */ addi r4, r4, 0x20 /* 80291DC4 0028DA24 42 00 FF DC */ bdnz lbl_80291DA0 /* 80291DC8 0028DA28 70 A5 00 07 */ andi. r5, r5, 7 /* 80291DCC 0028DA2C 41 82 00 14 */ beq lbl_80291DE0 lbl_80291DD0: /* 80291DD0 0028DA30 7C A9 03 A6 */ mtctr r5 lbl_80291DD4: /* 80291DD4 0028DA34 90 64 00 00 */ stw r3, 0(r4) /* 80291DD8 0028DA38 38 84 00 04 */ addi r4, r4, 4 /* 80291DDC 0028DA3C 42 00 FF F8 */ bdnz lbl_80291DD4 lbl_80291DE0: /* 80291DE0 0028DA40 80 0D AC 24 */ lwz r0, lbl_8063FEE4-_SDA_BASE_(r13) /* 80291DE4 0028DA44 38 60 00 00 */ li r3, 0 /* 80291DE8 0028DA48 80 8D AC 20 */ lwz r4, lbl_8063FEE0-_SDA_BASE_(r13) /* 80291DEC 0028DA4C 1C A0 00 5A */ mulli r5, r0, 0x5a /* 80291DF0 0028DA50 2C 05 00 00 */ cmpwi r5, 0 /* 80291DF4 0028DA54 41 82 00 50 */ beq lbl_80291E44 /* 80291DF8 0028DA58 54 A0 E8 FF */ rlwinm. r0, r5, 0x1d, 3, 0x1f /* 80291DFC 0028DA5C 7C 09 03 A6 */ mtctr r0 /* 80291E00 0028DA60 41 82 00 34 */ beq lbl_80291E34 lbl_80291E04: /* 80291E04 0028DA64 90 64 00 00 */ stw r3, 0(r4) /* 80291E08 0028DA68 90 64 00 04 */ stw r3, 4(r4) /* 80291E0C 0028DA6C 90 64 00 08 */ stw r3, 8(r4) /* 80291E10 0028DA70 90 64 00 0C */ stw r3, 0xc(r4) /* 80291E14 0028DA74 90 64 00 10 */ stw r3, 0x10(r4) /* 80291E18 0028DA78 90 64 00 14 */ stw r3, 0x14(r4) /* 80291E1C 0028DA7C 90 64 00 18 */ stw r3, 0x18(r4) /* 80291E20 0028DA80 90 64 00 1C */ stw r3, 0x1c(r4) /* 80291E24 0028DA84 38 84 00 20 */ addi r4, r4, 0x20 /* 80291E28 0028DA88 42 00 FF DC */ bdnz lbl_80291E04 /* 80291E2C 0028DA8C 70 A5 00 07 */ andi. r5, r5, 7 /* 80291E30 0028DA90 41 82 00 14 */ beq lbl_80291E44 lbl_80291E34: /* 80291E34 0028DA94 7C A9 03 A6 */ mtctr r5 lbl_80291E38: /* 80291E38 0028DA98 90 64 00 00 */ stw r3, 0(r4) /* 80291E3C 0028DA9C 38 84 00 04 */ addi r4, r4, 4 /* 80291E40 0028DAA0 42 00 FF F8 */ bdnz lbl_80291E38 lbl_80291E44: /* 80291E44 0028DAA4 3C 60 18 A8 */ lis r3, 0x18A80024@ha /* 80291E48 0028DAA8 3B E0 00 00 */ li r31, 0 /* 80291E4C 0028DAAC 3B A3 00 24 */ addi r29, r3, 0x18A80024@l /* 80291E50 0028DAB0 3B 60 00 00 */ li r27, 0 /* 80291E54 0028DAB4 3B 40 00 00 */ li r26, 0 /* 80291E58 0028DAB8 3B 20 00 00 */ li r25, 0 /* 80291E5C 0028DABC 3B 80 00 00 */ li r28, 0 /* 80291E60 0028DAC0 3B C0 00 01 */ li r30, 1 /* 80291E64 0028DAC4 48 00 00 D0 */ b lbl_80291F34 lbl_80291E68: /* 80291E68 0028DAC8 80 0D AC 20 */ lwz r0, lbl_8063FEE0-_SDA_BASE_(r13) /* 80291E6C 0028DACC 80 AD AC 18 */ lwz r5, lbl_8063FED8-_SDA_BASE_(r13) /* 80291E70 0028DAD0 80 8D AC 1C */ lwz r4, lbl_8063FEDC-_SDA_BASE_(r13) /* 80291E74 0028DAD4 7C 60 CA 14 */ add r3, r0, r25 /* 80291E78 0028DAD8 7C A5 DA 14 */ add r5, r5, r27 /* 80291E7C 0028DADC 93 E3 00 18 */ stw r31, 0x18(r3) /* 80291E80 0028DAE0 7C C4 D2 14 */ add r6, r4, r26 /* 80291E84 0028DAE4 90 C3 00 24 */ stw r6, 0x24(r3) /* 80291E88 0028DAE8 B3 83 00 38 */ sth r28, 0x38(r3) /* 80291E8C 0028DAEC B3 83 00 6C */ sth r28, 0x6c(r3) /* 80291E90 0028DAF0 93 A3 00 1C */ stw r29, 0x1c(r3) /* 80291E94 0028DAF4 B3 83 00 E2 */ sth r28, 0xe2(r3) /* 80291E98 0028DAF8 B3 83 00 EA */ sth r28, 0xea(r3) /* 80291E9C 0028DAFC B3 83 00 FE */ sth r28, 0xfe(r3) /* 80291EA0 0028DB00 B3 83 01 3C */ sth r28, 0x13c(r3) /* 80291EA4 0028DB04 B3 83 01 32 */ sth r28, 0x132(r3) /* 80291EA8 0028DB08 B3 83 01 34 */ sth r28, 0x134(r3) /* 80291EAC 0028DB0C B3 83 01 36 */ sth r28, 0x136(r3) /* 80291EB0 0028DB10 B3 83 01 38 */ sth r28, 0x138(r3) /* 80291EB4 0028DB14 B3 83 01 3A */ sth r28, 0x13a(r3) /* 80291EB8 0028DB18 80 8D AC 24 */ lwz r4, lbl_8063FEE4-_SDA_BASE_(r13) /* 80291EBC 0028DB1C 38 04 FF FF */ addi r0, r4, -1 /* 80291EC0 0028DB20 7C 1F 00 40 */ cmplw r31, r0 /* 80291EC4 0028DB24 40 82 00 18 */ bne lbl_80291EDC /* 80291EC8 0028DB28 B3 85 00 02 */ sth r28, 2(r5) /* 80291ECC 0028DB2C B3 85 00 00 */ sth r28, 0(r5) /* 80291ED0 0028DB30 B3 83 00 2A */ sth r28, 0x2a(r3) /* 80291ED4 0028DB34 B3 83 00 28 */ sth r28, 0x28(r3) /* 80291ED8 0028DB38 48 00 00 1C */ b lbl_80291EF4 lbl_80291EDC: /* 80291EDC 0028DB3C 38 05 01 40 */ addi r0, r5, 0x140 /* 80291EE0 0028DB40 54 04 84 3E */ srwi r4, r0, 0x10 /* 80291EE4 0028DB44 B0 83 00 28 */ sth r4, 0x28(r3) /* 80291EE8 0028DB48 B0 03 00 2A */ sth r0, 0x2a(r3) /* 80291EEC 0028DB4C B0 85 00 00 */ sth r4, 0(r5) /* 80291EF0 0028DB50 B0 05 00 02 */ sth r0, 2(r5) lbl_80291EF4: /* 80291EF4 0028DB54 54 A0 84 3E */ srwi r0, r5, 0x10 /* 80291EF8 0028DB58 54 C4 84 3E */ srwi r4, r6, 0x10 /* 80291EFC 0028DB5C B0 03 00 2C */ sth r0, 0x2c(r3) /* 80291F00 0028DB60 B0 A3 00 2E */ sth r5, 0x2e(r3) /* 80291F04 0028DB64 B0 05 00 04 */ sth r0, 4(r5) /* 80291F08 0028DB68 B0 A5 00 06 */ sth r5, 6(r5) /* 80291F0C 0028DB6C B0 83 00 6E */ sth r4, 0x6e(r3) /* 80291F10 0028DB70 B0 C3 00 70 */ sth r6, 0x70(r3) /* 80291F14 0028DB74 B0 85 00 46 */ sth r4, 0x46(r5) /* 80291F18 0028DB78 B0 C5 00 48 */ sth r6, 0x48(r5) /* 80291F1C 0028DB7C 93 C3 00 0C */ stw r30, 0xc(r3) /* 80291F20 0028DB80 4B FF D2 E5 */ bl __AXPushFreeStack /* 80291F24 0028DB84 3B 7B 01 40 */ addi r27, r27, 0x140 /* 80291F28 0028DB88 3B 5A 00 40 */ addi r26, r26, 0x40 /* 80291F2C 0028DB8C 3B 39 01 68 */ addi r25, r25, 0x168 /* 80291F30 0028DB90 3B FF 00 01 */ addi r31, r31, 1 lbl_80291F34: /* 80291F34 0028DB94 80 0D AC 24 */ lwz r0, lbl_8063FEE4-_SDA_BASE_(r13) /* 80291F38 0028DB98 7C 1F 00 40 */ cmplw r31, r0 /* 80291F3C 0028DB9C 41 80 FF 2C */ blt lbl_80291E68 /* 80291F40 0028DBA0 1C 80 01 40 */ mulli r4, r0, 0x140 /* 80291F44 0028DBA4 80 6D AC 18 */ lwz r3, lbl_8063FED8-_SDA_BASE_(r13) /* 80291F48 0028DBA8 4B FD 87 0D */ bl DCFlushRange /* 80291F4C 0028DBAC 39 61 00 30 */ addi r11, r1, 0x30 /* 80291F50 0028DBB0 4B F3 52 1D */ bl _restgpr_25 /* 80291F54 0028DBB4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80291F58 0028DBB8 7C 08 03 A6 */ mtlr r0 /* 80291F5C 0028DBBC 38 21 00 30 */ addi r1, r1, 0x30 /* 80291F60 0028DBC0 4E 80 00 20 */ blr .global AXSetVoiceSrcType AXSetVoiceSrcType: /* 80291F64 0028DBC4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80291F68 0028DBC8 7C 08 02 A6 */ mflr r0 /* 80291F6C 0028DBCC 90 01 00 14 */ stw r0, 0x14(r1) /* 80291F70 0028DBD0 93 E1 00 0C */ stw r31, 0xc(r1) /* 80291F74 0028DBD4 7C 9F 23 78 */ mr r31, r4 /* 80291F78 0028DBD8 93 C1 00 08 */ stw r30, 8(r1) /* 80291F7C 0028DBDC 7C 7E 1B 78 */ mr r30, r3 /* 80291F80 0028DBE0 4B FD C7 DD */ bl OSDisableInterrupts /* 80291F84 0028DBE4 2C 1F 00 02 */ cmpwi r31, 2 /* 80291F88 0028DBE8 41 82 00 40 */ beq lbl_80291FC8 /* 80291F8C 0028DBEC 40 80 00 14 */ bge lbl_80291FA0 /* 80291F90 0028DBF0 2C 1F 00 00 */ cmpwi r31, 0 /* 80291F94 0028DBF4 41 82 00 1C */ beq lbl_80291FB0 /* 80291F98 0028DBF8 40 80 00 24 */ bge lbl_80291FBC /* 80291F9C 0028DBFC 48 00 00 60 */ b lbl_80291FFC lbl_80291FA0: /* 80291FA0 0028DC00 2C 1F 00 04 */ cmpwi r31, 4 /* 80291FA4 0028DC04 41 82 00 48 */ beq lbl_80291FEC /* 80291FA8 0028DC08 40 80 00 54 */ bge lbl_80291FFC /* 80291FAC 0028DC0C 48 00 00 2C */ b lbl_80291FD8 lbl_80291FB0: /* 80291FB0 0028DC10 38 00 00 02 */ li r0, 2 /* 80291FB4 0028DC14 B0 1E 00 30 */ sth r0, 0x30(r30) /* 80291FB8 0028DC18 48 00 00 44 */ b lbl_80291FFC lbl_80291FBC: /* 80291FBC 0028DC1C 38 00 00 01 */ li r0, 1 /* 80291FC0 0028DC20 B0 1E 00 30 */ sth r0, 0x30(r30) /* 80291FC4 0028DC24 48 00 00 38 */ b lbl_80291FFC lbl_80291FC8: /* 80291FC8 0028DC28 38 00 00 00 */ li r0, 0 /* 80291FCC 0028DC2C B0 1E 00 30 */ sth r0, 0x30(r30) /* 80291FD0 0028DC30 B0 1E 00 32 */ sth r0, 0x32(r30) /* 80291FD4 0028DC34 48 00 00 28 */ b lbl_80291FFC lbl_80291FD8: /* 80291FD8 0028DC38 38 80 00 00 */ li r4, 0 /* 80291FDC 0028DC3C 38 00 00 01 */ li r0, 1 /* 80291FE0 0028DC40 B0 9E 00 30 */ sth r4, 0x30(r30) /* 80291FE4 0028DC44 B0 1E 00 32 */ sth r0, 0x32(r30) /* 80291FE8 0028DC48 48 00 00 14 */ b lbl_80291FFC lbl_80291FEC: /* 80291FEC 0028DC4C 38 80 00 00 */ li r4, 0 /* 80291FF0 0028DC50 38 00 00 02 */ li r0, 2 /* 80291FF4 0028DC54 B0 9E 00 30 */ sth r4, 0x30(r30) /* 80291FF8 0028DC58 B0 1E 00 32 */ sth r0, 0x32(r30) lbl_80291FFC: /* 80291FFC 0028DC5C 80 1E 00 1C */ lwz r0, 0x1c(r30) /* 80292000 0028DC60 60 00 00 01 */ ori r0, r0, 1 /* 80292004 0028DC64 90 1E 00 1C */ stw r0, 0x1c(r30) /* 80292008 0028DC68 4B FD C7 7D */ bl OSRestoreInterrupts /* 8029200C 0028DC6C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80292010 0028DC70 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80292014 0028DC74 83 C1 00 08 */ lwz r30, 8(r1) /* 80292018 0028DC78 7C 08 03 A6 */ mtlr r0 /* 8029201C 0028DC7C 38 21 00 10 */ addi r1, r1, 0x10 /* 80292020 0028DC80 4E 80 00 20 */ blr .global AXSetVoiceState AXSetVoiceState: /* 80292024 0028DC84 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80292028 0028DC88 7C 08 02 A6 */ mflr r0 /* 8029202C 0028DC8C 90 01 00 14 */ stw r0, 0x14(r1) /* 80292030 0028DC90 93 E1 00 0C */ stw r31, 0xc(r1) /* 80292034 0028DC94 7C 9F 23 78 */ mr r31, r4 /* 80292038 0028DC98 93 C1 00 08 */ stw r30, 8(r1) /* 8029203C 0028DC9C 7C 7E 1B 78 */ mr r30, r3 /* 80292040 0028DCA0 4B FD C7 1D */ bl OSDisableInterrupts /* 80292044 0028DCA4 A0 1E 00 38 */ lhz r0, 0x38(r30) /* 80292048 0028DCA8 7C 00 F8 40 */ cmplw r0, r31 /* 8029204C 0028DCAC 40 82 00 0C */ bne lbl_80292058 /* 80292050 0028DCB0 4B FD C7 35 */ bl OSRestoreInterrupts /* 80292054 0028DCB4 48 00 00 28 */ b lbl_8029207C lbl_80292058: /* 80292058 0028DCB8 80 1E 00 1C */ lwz r0, 0x1c(r30) /* 8029205C 0028DCBC 2C 1F 00 00 */ cmpwi r31, 0 /* 80292060 0028DCC0 B3 FE 00 38 */ sth r31, 0x38(r30) /* 80292064 0028DCC4 60 00 00 04 */ ori r0, r0, 4 /* 80292068 0028DCC8 90 1E 00 1C */ stw r0, 0x1c(r30) /* 8029206C 0028DCCC 40 82 00 0C */ bne lbl_80292078 /* 80292070 0028DCD0 38 00 00 01 */ li r0, 1 /* 80292074 0028DCD4 90 1E 00 20 */ stw r0, 0x20(r30) lbl_80292078: /* 80292078 0028DCD8 4B FD C7 0D */ bl OSRestoreInterrupts lbl_8029207C: /* 8029207C 0028DCDC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80292080 0028DCE0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80292084 0028DCE4 83 C1 00 08 */ lwz r30, 8(r1) /* 80292088 0028DCE8 7C 08 03 A6 */ mtlr r0 /* 8029208C 0028DCEC 38 21 00 10 */ addi r1, r1, 0x10 /* 80292090 0028DCF0 4E 80 00 20 */ blr .global AXSetVoiceAddr AXSetVoiceAddr: /* 80292094 0028DCF4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80292098 0028DCF8 7C 08 02 A6 */ mflr r0 /* 8029209C 0028DCFC 90 01 00 14 */ stw r0, 0x14(r1) /* 802920A0 0028DD00 93 E1 00 0C */ stw r31, 0xc(r1) /* 802920A4 0028DD04 7C 9F 23 78 */ mr r31, r4 /* 802920A8 0028DD08 93 C1 00 08 */ stw r30, 8(r1) /* 802920AC 0028DD0C 7C 7E 1B 78 */ mr r30, r3 /* 802920B0 0028DD10 4B FD C6 AD */ bl OSDisableInterrupts /* 802920B4 0028DD14 80 1F 00 00 */ lwz r0, 0(r31) /* 802920B8 0028DD18 90 1E 00 96 */ stw r0, 0x96(r30) /* 802920BC 0028DD1C 80 1F 00 04 */ lwz r0, 4(r31) /* 802920C0 0028DD20 90 1E 00 9A */ stw r0, 0x9a(r30) /* 802920C4 0028DD24 80 1F 00 08 */ lwz r0, 8(r31) /* 802920C8 0028DD28 90 1E 00 9E */ stw r0, 0x9e(r30) /* 802920CC 0028DD2C 80 1F 00 0C */ lwz r0, 0xc(r31) /* 802920D0 0028DD30 90 1E 00 A2 */ stw r0, 0xa2(r30) /* 802920D4 0028DD34 A0 1F 00 02 */ lhz r0, 2(r31) /* 802920D8 0028DD38 2C 00 00 0A */ cmpwi r0, 0xa /* 802920DC 0028DD3C 41 82 00 20 */ beq lbl_802920FC /* 802920E0 0028DD40 40 80 00 10 */ bge lbl_802920F0 /* 802920E4 0028DD44 2C 00 00 00 */ cmpwi r0, 0 /* 802920E8 0028DD48 41 82 00 78 */ beq lbl_80292160 /* 802920EC 0028DD4C 48 00 00 74 */ b lbl_80292160 lbl_802920F0: /* 802920F0 0028DD50 2C 00 00 19 */ cmpwi r0, 0x19 /* 802920F4 0028DD54 41 82 00 3C */ beq lbl_80292130 /* 802920F8 0028DD58 48 00 00 68 */ b lbl_80292160 lbl_802920FC: /* 802920FC 0028DD5C 38 80 00 00 */ li r4, 0 /* 80292100 0028DD60 3C 00 08 00 */ lis r0, 0x800 /* 80292104 0028DD64 90 9E 00 A6 */ stw r4, 0xa6(r30) /* 80292108 0028DD68 90 9E 00 AA */ stw r4, 0xaa(r30) /* 8029210C 0028DD6C 90 9E 00 AE */ stw r4, 0xae(r30) /* 80292110 0028DD70 90 9E 00 B2 */ stw r4, 0xb2(r30) /* 80292114 0028DD74 90 9E 00 B6 */ stw r4, 0xb6(r30) /* 80292118 0028DD78 90 9E 00 BA */ stw r4, 0xba(r30) /* 8029211C 0028DD7C 90 9E 00 BE */ stw r4, 0xbe(r30) /* 80292120 0028DD80 90 9E 00 C2 */ stw r4, 0xc2(r30) /* 80292124 0028DD84 90 1E 00 C6 */ stw r0, 0xc6(r30) /* 80292128 0028DD88 90 9E 00 CA */ stw r4, 0xca(r30) /* 8029212C 0028DD8C 48 00 00 34 */ b lbl_80292160 lbl_80292130: /* 80292130 0028DD90 38 80 00 00 */ li r4, 0 /* 80292134 0028DD94 3C 00 01 00 */ lis r0, 0x100 /* 80292138 0028DD98 90 9E 00 A6 */ stw r4, 0xa6(r30) /* 8029213C 0028DD9C 90 9E 00 AA */ stw r4, 0xaa(r30) /* 80292140 0028DDA0 90 9E 00 AE */ stw r4, 0xae(r30) /* 80292144 0028DDA4 90 9E 00 B2 */ stw r4, 0xb2(r30) /* 80292148 0028DDA8 90 9E 00 B6 */ stw r4, 0xb6(r30) /* 8029214C 0028DDAC 90 9E 00 BA */ stw r4, 0xba(r30) /* 80292150 0028DDB0 90 9E 00 BE */ stw r4, 0xbe(r30) /* 80292154 0028DDB4 90 9E 00 C2 */ stw r4, 0xc2(r30) /* 80292158 0028DDB8 90 1E 00 C6 */ stw r0, 0xc6(r30) /* 8029215C 0028DDBC 90 9E 00 CA */ stw r4, 0xca(r30) lbl_80292160: /* 80292160 0028DDC0 80 1E 00 1C */ lwz r0, 0x1c(r30) /* 80292164 0028DDC4 54 00 05 60 */ rlwinm r0, r0, 0, 0x15, 0x10 /* 80292168 0028DDC8 60 00 84 00 */ ori r0, r0, 0x8400 /* 8029216C 0028DDCC 90 1E 00 1C */ stw r0, 0x1c(r30) /* 80292170 0028DDD0 4B FD C6 15 */ bl OSRestoreInterrupts /* 80292174 0028DDD4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80292178 0028DDD8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8029217C 0028DDDC 83 C1 00 08 */ lwz r30, 8(r1) /* 80292180 0028DDE0 7C 08 03 A6 */ mtlr r0 /* 80292184 0028DDE4 38 21 00 10 */ addi r1, r1, 0x10 /* 80292188 0028DDE8 4E 80 00 20 */ blr .global AXSetVoiceCurrentAddr AXSetVoiceCurrentAddr: /* 8029218C 0028DDEC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80292190 0028DDF0 7C 08 02 A6 */ mflr r0 /* 80292194 0028DDF4 90 01 00 14 */ stw r0, 0x14(r1) /* 80292198 0028DDF8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8029219C 0028DDFC 7C 9F 23 78 */ mr r31, r4 /* 802921A0 0028DE00 93 C1 00 08 */ stw r30, 8(r1) /* 802921A4 0028DE04 7C 7E 1B 78 */ mr r30, r3 /* 802921A8 0028DE08 4B FD C5 B5 */ bl OSDisableInterrupts /* 802921AC 0028DE0C 80 1E 00 1C */ lwz r0, 0x1c(r30) /* 802921B0 0028DE10 57 E4 84 3E */ srwi r4, r31, 0x10 /* 802921B4 0028DE14 B0 9E 00 A2 */ sth r4, 0xa2(r30) /* 802921B8 0028DE18 60 00 40 00 */ ori r0, r0, 0x4000 /* 802921BC 0028DE1C B3 FE 00 A4 */ sth r31, 0xa4(r30) /* 802921C0 0028DE20 90 1E 00 1C */ stw r0, 0x1c(r30) /* 802921C4 0028DE24 4B FD C5 C1 */ bl OSRestoreInterrupts /* 802921C8 0028DE28 80 01 00 14 */ lwz r0, 0x14(r1) /* 802921CC 0028DE2C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802921D0 0028DE30 83 C1 00 08 */ lwz r30, 8(r1) /* 802921D4 0028DE34 7C 08 03 A6 */ mtlr r0 /* 802921D8 0028DE38 38 21 00 10 */ addi r1, r1, 0x10 /* 802921DC 0028DE3C 4E 80 00 20 */ blr .global AXSetVoiceSrcRatio AXSetVoiceSrcRatio: /* 802921E0 0028DE40 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802921E4 0028DE44 7C 08 02 A6 */ mflr r0 /* 802921E8 0028DE48 90 01 00 24 */ stw r0, 0x24(r1) /* 802921EC 0028DE4C DB E1 00 10 */ stfd f31, 0x10(r1) /* 802921F0 0028DE50 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 802921F4 0028DE54 FF E0 08 90 */ fmr f31, f1 /* 802921F8 0028DE58 93 E1 00 0C */ stw r31, 0xc(r1) /* 802921FC 0028DE5C 93 C1 00 08 */ stw r30, 8(r1) /* 80292200 0028DE60 7C 7E 1B 78 */ mr r30, r3 /* 80292204 0028DE64 4B FD C5 59 */ bl OSDisableInterrupts /* 80292208 0028DE68 C0 02 A2 18 */ lfs f0, lbl_80642818-_SDA2_BASE_(r2) /* 8029220C 0028DE6C 7C 7F 1B 78 */ mr r31, r3 /* 80292210 0028DE70 EC 20 07 F2 */ fmuls f1, f0, f31 /* 80292214 0028DE74 4B F3 4D ED */ bl __cvt_fp2unsigned /* 80292218 0028DE78 80 1E 00 1C */ lwz r0, 0x1c(r30) /* 8029221C 0028DE7C 54 64 84 3E */ srwi r4, r3, 0x10 /* 80292220 0028DE80 B0 7E 00 D0 */ sth r3, 0xd0(r30) /* 80292224 0028DE84 7F E3 FB 78 */ mr r3, r31 /* 80292228 0028DE88 64 00 00 02 */ oris r0, r0, 2 /* 8029222C 0028DE8C B0 9E 00 CE */ sth r4, 0xce(r30) /* 80292230 0028DE90 90 1E 00 1C */ stw r0, 0x1c(r30) /* 80292234 0028DE94 4B FD C5 51 */ bl OSRestoreInterrupts /* 80292238 0028DE98 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 8029223C 0028DE9C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80292240 0028DEA0 CB E1 00 10 */ lfd f31, 0x10(r1) /* 80292244 0028DEA4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80292248 0028DEA8 83 C1 00 08 */ lwz r30, 8(r1) /* 8029224C 0028DEAC 7C 08 03 A6 */ mtlr r0 /* 80292250 0028DEB0 38 21 00 20 */ addi r1, r1, 0x20 /* 80292254 0028DEB4 4E 80 00 20 */ blr .global AXGetLpfCoefs AXGetLpfCoefs: /* 80292258 0028DEB8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8029225C 0028DEBC 7C 08 02 A6 */ mflr r0 /* 80292260 0028DEC0 90 01 00 34 */ stw r0, 0x34(r1) /* 80292264 0028DEC4 DB E1 00 20 */ stfd f31, 0x20(r1) /* 80292268 0028DEC8 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 8029226C 0028DECC 3C 00 43 30 */ lis r0, 0x4330 /* 80292270 0028DED0 C8 62 A2 30 */ lfd f3, lbl_80642830-_SDA2_BASE_(r2) /* 80292274 0028DED4 90 61 00 0C */ stw r3, 0xc(r1) /* 80292278 0028DED8 C0 22 A2 20 */ lfs f1, lbl_80642820-_SDA2_BASE_(r2) /* 8029227C 0028DEDC 90 01 00 08 */ stw r0, 8(r1) /* 80292280 0028DEE0 C0 02 A2 24 */ lfs f0, lbl_80642824-_SDA2_BASE_(r2) /* 80292284 0028DEE4 C8 41 00 08 */ lfd f2, 8(r1) /* 80292288 0028DEE8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8029228C 0028DEEC 7C BF 2B 78 */ mr r31, r5 /* 80292290 0028DEF0 EC 42 18 28 */ fsubs f2, f2, f3 /* 80292294 0028DEF4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80292298 0028DEF8 7C 9E 23 78 */ mr r30, r4 /* 8029229C 0028DEFC EC 21 00 B2 */ fmuls f1, f1, f2 /* 802922A0 0028DF00 EC 21 00 24 */ fdivs f1, f1, f0 /* 802922A4 0028DF04 4B F4 1D D5 */ bl cos /* 802922A8 0028DF08 FC 40 08 18 */ frsp f2, f1 /* 802922AC 0028DF0C C0 22 A2 1C */ lfs f1, lbl_8064281C-_SDA2_BASE_(r2) /* 802922B0 0028DF10 C0 02 A2 28 */ lfs f0, lbl_80642828-_SDA2_BASE_(r2) /* 802922B4 0028DF14 EF E1 10 28 */ fsubs f31, f1, f2 /* 802922B8 0028DF18 EC 3F 07 F2 */ fmuls f1, f31, f31 /* 802922BC 0028DF1C EC 21 00 28 */ fsubs f1, f1, f0 /* 802922C0 0028DF20 4B F4 25 75 */ bl sqrt /* 802922C4 0028DF24 FC 20 08 18 */ frsp f1, f1 /* 802922C8 0028DF28 C0 02 A2 2C */ lfs f0, lbl_8064282C-_SDA2_BASE_(r2) /* 802922CC 0028DF2C EC 21 F8 28 */ fsubs f1, f1, f31 /* 802922D0 0028DF30 FC 20 08 50 */ fneg f1, f1 /* 802922D4 0028DF34 EC 00 00 72 */ fmuls f0, f0, f1 /* 802922D8 0028DF38 FC 00 00 1E */ fctiwz f0, f0 /* 802922DC 0028DF3C D8 01 00 10 */ stfd f0, 0x10(r1) /* 802922E0 0028DF40 80 61 00 14 */ lwz r3, 0x14(r1) /* 802922E4 0028DF44 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 802922E8 0028DF48 B0 7F 00 00 */ sth r3, 0(r31) /* 802922EC 0028DF4C 20 00 7F FF */ subfic r0, r0, 0x7fff /* 802922F0 0028DF50 B0 1E 00 00 */ sth r0, 0(r30) /* 802922F4 0028DF54 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 802922F8 0028DF58 CB E1 00 20 */ lfd f31, 0x20(r1) /* 802922FC 0028DF5C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80292300 0028DF60 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80292304 0028DF64 80 01 00 34 */ lwz r0, 0x34(r1) /* 80292308 0028DF68 7C 08 03 A6 */ mtlr r0 /* 8029230C 0028DF6C 38 21 00 30 */ addi r1, r1, 0x30 /* 80292310 0028DF70 4E 80 00 20 */ blr .global AXSetMaxDspCycles AXSetMaxDspCycles: /* 80292314 0028DF74 90 6D AC 30 */ stw r3, lbl_8063FEF0-_SDA_BASE_(r13) /* 80292318 0028DF78 4E 80 00 20 */ blr # TODO: double check this symbol .global AXGetMaxVoices AXGetMaxVoices: /* 8029231C 0028DF7C 80 6D AC 24 */ lwz r3, lbl_8063FEE4-_SDA_BASE_(r13) /* 80292320 0028DF80 4E 80 00 20 */ blr