mirror of https://github.com/PrimeDecomp/prime.git
1662 lines
86 KiB
ArmAsm
1662 lines
86 KiB
ArmAsm
.include "macros.inc"
|
|
|
|
.section .data
|
|
|
|
.global lbl_803E43A0
|
|
lbl_803E43A0:
|
|
# ROM: 0x3E13A0
|
|
.4byte 0
|
|
.4byte 0
|
|
.4byte __dt__11CBSWallHangFv
|
|
.4byte IsInAir__11CBSWallHangCFRC15CBodyController
|
|
.4byte IsDead__10CBodyStateCFv
|
|
.4byte IsDying__10CBodyStateCFv
|
|
.4byte IsMoving__11CBSWallHangCFv
|
|
.4byte ApplyGravity__11CBSWallHangCFv
|
|
.4byte ApplyHeadTracking__11CBSWallHangCFv
|
|
.4byte ApplyAnimationDeltas__11CBSWallHangCFv
|
|
.4byte CanShoot__11CBSWallHangCFv
|
|
.4byte Start__11CBSWallHangFR15CBodyControllerR13CStateManager
|
|
.4byte UpdateBody__11CBSWallHangFfR15CBodyControllerR13CStateManager
|
|
.4byte nullsub_134
|
|
|
|
.global lbl_803E43D8
|
|
lbl_803E43D8:
|
|
# ROM: 0x3E13D8
|
|
.4byte lbl_8018DAD4
|
|
.4byte lbl_8018DE0C
|
|
.4byte lbl_8018DF28
|
|
.4byte lbl_8018DF60
|
|
.4byte lbl_8018E084
|
|
.4byte lbl_8018E2CC
|
|
.4byte lbl_8018E3D4
|
|
.4byte lbl_8018E718
|
|
.4byte lbl_8018E834
|
|
.4byte lbl_8018E854
|
|
|
|
|
|
.section .text, "ax" # 0x80003640 - 0x803CB1C0
|
|
|
|
.global __dt__11CBSWallHangFv
|
|
__dt__11CBSWallHangFv:
|
|
/* 8018D4BC 0018A41C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8018D4C0 0018A420 7C 08 02 A6 */ mflr r0
|
|
/* 8018D4C4 0018A424 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8018D4C8 0018A428 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8018D4CC 0018A42C 7C 7F 1B 79 */ or. r31, r3, r3
|
|
/* 8018D4D0 0018A430 41 82 00 30 */ beq lbl_8018D500
|
|
/* 8018D4D4 0018A434 3C 60 80 3E */ lis r3, lbl_803E43A0@ha
|
|
/* 8018D4D8 0018A438 38 03 43 A0 */ addi r0, r3, lbl_803E43A0@l
|
|
/* 8018D4DC 0018A43C 90 1F 00 00 */ stw r0, 0(r31)
|
|
/* 8018D4E0 0018A440 41 82 00 10 */ beq lbl_8018D4F0
|
|
/* 8018D4E4 0018A444 3C 60 80 3E */ lis r3, lbl_803E1318@ha
|
|
/* 8018D4E8 0018A448 38 03 13 18 */ addi r0, r3, lbl_803E1318@l
|
|
/* 8018D4EC 0018A44C 90 1F 00 00 */ stw r0, 0(r31)
|
|
lbl_8018D4F0:
|
|
/* 8018D4F0 0018A450 7C 80 07 35 */ extsh. r0, r4
|
|
/* 8018D4F4 0018A454 40 81 00 0C */ ble lbl_8018D500
|
|
/* 8018D4F8 0018A458 7F E3 FB 78 */ mr r3, r31
|
|
/* 8018D4FC 0018A45C 48 18 84 35 */ bl Free__7CMemoryFPCv
|
|
lbl_8018D500:
|
|
/* 8018D500 0018A460 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8018D504 0018A464 7F E3 FB 78 */ mr r3, r31
|
|
/* 8018D508 0018A468 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8018D50C 0018A46C 7C 08 03 A6 */ mtlr r0
|
|
/* 8018D510 0018A470 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8018D514 0018A474 4E 80 00 20 */ blr
|
|
|
|
.global IsMoving__11CBSWallHangCFv
|
|
IsMoving__11CBSWallHangCFv:
|
|
/* 8018D518 0018A478 38 60 00 01 */ li r3, 1
|
|
/* 8018D51C 0018A47C 4E 80 00 20 */ blr
|
|
|
|
.global GetBodyStateTransition__11CBSWallHangFfR15CBodyController
|
|
GetBodyStateTransition__11CBSWallHangFfR15CBodyController:
|
|
/* 8018D520 0018A480 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8018D524 0018A484 7C 08 02 A6 */ mflr r0
|
|
/* 8018D528 0018A488 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8018D52C 0018A48C 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8018D530 0018A490 3B E4 00 04 */ addi r31, r4, 4
|
|
/* 8018D534 0018A494 38 80 00 0F */ li r4, 0xf
|
|
/* 8018D538 0018A498 7F E3 FB 78 */ mr r3, r31
|
|
/* 8018D53C 0018A49C 4B FA 3F 15 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd
|
|
/* 8018D540 0018A4A0 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8018D544 0018A4A4 41 82 00 0C */ beq lbl_8018D550
|
|
/* 8018D548 0018A4A8 38 60 00 0E */ li r3, 0xe
|
|
/* 8018D54C 0018A4AC 48 00 00 1C */ b lbl_8018D568
|
|
lbl_8018D550:
|
|
/* 8018D550 0018A4B0 7F E3 FB 78 */ mr r3, r31
|
|
/* 8018D554 0018A4B4 38 80 00 03 */ li r4, 3
|
|
/* 8018D558 0018A4B8 4B FA 3E F9 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd
|
|
/* 8018D55C 0018A4BC 7C 60 00 34 */ cntlzw r0, r3
|
|
/* 8018D560 0018A4C0 54 00 DF FE */ rlwinm r0, r0, 0x1b, 0x1f, 0x1f
|
|
/* 8018D564 0018A4C4 7C 60 00 D0 */ neg r3, r0
|
|
lbl_8018D568:
|
|
/* 8018D568 0018A4C8 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8018D56C 0018A4CC 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8018D570 0018A4D0 7C 08 03 A6 */ mtlr r0
|
|
/* 8018D574 0018A4D4 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8018D578 0018A4D8 4E 80 00 20 */ blr
|
|
|
|
.global FixInPlace__11CBSWallHangFR15CBodyController
|
|
FixInPlace__11CBSWallHangFR15CBodyController:
|
|
/* 8018D57C 0018A4DC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8018D580 0018A4E0 7C 08 02 A6 */ mflr r0
|
|
/* 8018D584 0018A4E4 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8018D588 0018A4E8 38 61 00 08 */ addi r3, r1, 8
|
|
/* 8018D58C 0018A4EC 80 84 00 00 */ lwz r4, 0(r4)
|
|
/* 8018D590 0018A4F0 4B F1 F4 CD */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity"
|
|
/* 8018D594 0018A4F4 80 63 00 04 */ lwz r3, 4(r3)
|
|
/* 8018D598 0018A4F8 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8018D59C 0018A4FC 41 82 00 24 */ beq lbl_8018D5C0
|
|
/* 8018D5A0 0018A500 3C 80 80 5A */ lis r4, skZero3f@ha
|
|
/* 8018D5A4 0018A504 C4 04 66 A0 */ lfsu f0, skZero3f@l(r4)
|
|
/* 8018D5A8 0018A508 D0 03 00 FC */ stfs f0, 0xfc(r3)
|
|
/* 8018D5AC 0018A50C C0 04 00 04 */ lfs f0, 4(r4)
|
|
/* 8018D5B0 0018A510 D0 03 01 00 */ stfs f0, 0x100(r3)
|
|
/* 8018D5B4 0018A514 C0 04 00 08 */ lfs f0, 8(r4)
|
|
/* 8018D5B8 0018A518 D0 03 01 04 */ stfs f0, 0x104(r3)
|
|
/* 8018D5BC 0018A51C 4B F8 D6 E5 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f
|
|
lbl_8018D5C0:
|
|
/* 8018D5C0 0018A520 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8018D5C4 0018A524 7C 08 03 A6 */ mtlr r0
|
|
/* 8018D5C8 0018A528 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8018D5CC 0018A52C 4E 80 00 20 */ blr
|
|
|
|
.global CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager
|
|
CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager:
|
|
/* 8018D5D0 0018A530 94 21 FF 40 */ stwu r1, -0xc0(r1)
|
|
/* 8018D5D4 0018A534 7C 08 02 A6 */ mflr r0
|
|
/* 8018D5D8 0018A538 90 01 00 C4 */ stw r0, 0xc4(r1)
|
|
/* 8018D5DC 0018A53C BF 61 00 AC */ stmw r27, 0xac(r1)
|
|
/* 8018D5E0 0018A540 7C 9C 23 78 */ mr r28, r4
|
|
/* 8018D5E4 0018A544 7C 7B 1B 78 */ mr r27, r3
|
|
/* 8018D5E8 0018A548 7C BD 2B 78 */ mr r29, r5
|
|
/* 8018D5EC 0018A54C 38 61 00 54 */ addi r3, r1, 0x54
|
|
/* 8018D5F0 0018A550 3B C0 00 00 */ li r30, 0
|
|
/* 8018D5F4 0018A554 80 84 00 00 */ lwz r4, 0(r4)
|
|
/* 8018D5F8 0018A558 4B F1 F4 65 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity"
|
|
/* 8018D5FC 0018A55C 83 E3 00 04 */ lwz r31, 4(r3)
|
|
/* 8018D600 0018A560 28 1F 00 00 */ cmplwi r31, 0
|
|
/* 8018D604 0018A564 41 82 01 38 */ beq lbl_8018D73C
|
|
/* 8018D608 0018A568 88 1F 03 28 */ lbz r0, 0x328(r31)
|
|
/* 8018D60C 0018A56C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f
|
|
/* 8018D610 0018A570 40 82 00 20 */ bne lbl_8018D630
|
|
/* 8018D614 0018A574 7F E3 FB 78 */ mr r3, r31
|
|
/* 8018D618 0018A578 81 9F 00 00 */ lwz r12, 0(r31)
|
|
/* 8018D61C 0018A57C 81 8C 02 B8 */ lwz r12, 0x2b8(r12)
|
|
/* 8018D620 0018A580 7D 89 03 A6 */ mtctr r12
|
|
/* 8018D624 0018A584 4E 80 04 21 */ bctrl
|
|
/* 8018D628 0018A588 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8018D62C 0018A58C 41 82 01 10 */ beq lbl_8018D73C
|
|
lbl_8018D630:
|
|
/* 8018D630 0018A590 38 00 00 09 */ li r0, 9
|
|
/* 8018D634 0018A594 38 61 00 14 */ addi r3, r1, 0x14
|
|
/* 8018D638 0018A598 90 1B 00 04 */ stw r0, 4(r27)
|
|
/* 8018D63C 0018A59C 48 15 5A 41 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D640 0018A5A0 38 61 00 1C */ addi r3, r1, 0x1c
|
|
/* 8018D644 0018A5A4 48 15 5A 39 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D648 0018A5A8 38 61 00 24 */ addi r3, r1, 0x24
|
|
/* 8018D64C 0018A5AC 48 15 5A 31 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D650 0018A5B0 38 61 00 2C */ addi r3, r1, 0x2c
|
|
/* 8018D654 0018A5B4 48 15 5A 29 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D658 0018A5B8 38 61 00 34 */ addi r3, r1, 0x34
|
|
/* 8018D65C 0018A5BC 48 15 5A 21 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D660 0018A5C0 38 61 00 3C */ addi r3, r1, 0x3c
|
|
/* 8018D664 0018A5C4 48 15 5A 19 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D668 0018A5C8 38 61 00 44 */ addi r3, r1, 0x44
|
|
/* 8018D66C 0018A5CC 48 15 5A 11 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D670 0018A5D0 80 9B 00 04 */ lwz r4, 4(r27)
|
|
/* 8018D674 0018A5D4 38 61 00 4C */ addi r3, r1, 0x4c
|
|
/* 8018D678 0018A5D8 48 15 59 0D */ bl FromEnum__12CPASAnimParmFi
|
|
/* 8018D67C 0018A5DC 38 61 00 1C */ addi r3, r1, 0x1c
|
|
/* 8018D680 0018A5E0 38 01 00 14 */ addi r0, r1, 0x14
|
|
/* 8018D684 0018A5E4 90 61 00 08 */ stw r3, 8(r1)
|
|
/* 8018D688 0018A5E8 38 61 00 5C */ addi r3, r1, 0x5c
|
|
/* 8018D68C 0018A5EC 38 A1 00 4C */ addi r5, r1, 0x4c
|
|
/* 8018D690 0018A5F0 38 C1 00 44 */ addi r6, r1, 0x44
|
|
/* 8018D694 0018A5F4 90 01 00 0C */ stw r0, 0xc(r1)
|
|
/* 8018D698 0018A5F8 38 E1 00 3C */ addi r7, r1, 0x3c
|
|
/* 8018D69C 0018A5FC 39 01 00 34 */ addi r8, r1, 0x34
|
|
/* 8018D6A0 0018A600 39 21 00 2C */ addi r9, r1, 0x2c
|
|
/* 8018D6A4 0018A604 39 41 00 24 */ addi r10, r1, 0x24
|
|
/* 8018D6A8 0018A608 38 80 00 14 */ li r4, 0x14
|
|
/* 8018D6AC 0018A60C 4B EE FC 19 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm
|
|
/* 8018D6B0 0018A610 80 BD 09 00 */ lwz r5, 0x900(r29)
|
|
/* 8018D6B4 0018A614 7F 83 E3 78 */ mr r3, r28
|
|
/* 8018D6B8 0018A618 38 81 00 5C */ addi r4, r1, 0x5c
|
|
/* 8018D6BC 0018A61C 4B FA CC ED */ bl PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16
|
|
/* 8018D6C0 0018A620 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
|
|
/* 8018D6C4 0018A624 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018D6C8 0018A628 7F E4 FB 78 */ mr r4, r31
|
|
/* 8018D6CC 0018A62C 38 A1 00 10 */ addi r5, r1, 0x10
|
|
/* 8018D6D0 0018A630 B0 01 00 10 */ sth r0, 0x10(r1)
|
|
/* 8018D6D4 0018A634 38 C0 00 17 */ li r6, 0x17
|
|
/* 8018D6D8 0018A638 4B EB 67 F9 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage
|
|
/* 8018D6DC 0018A63C 34 A1 00 60 */ addic. r5, r1, 0x60
|
|
/* 8018D6E0 0018A640 3B C0 00 01 */ li r30, 1
|
|
/* 8018D6E4 0018A644 41 82 00 58 */ beq lbl_8018D73C
|
|
/* 8018D6E8 0018A648 80 C5 00 00 */ lwz r6, 0(r5)
|
|
/* 8018D6EC 0018A64C 38 60 00 00 */ li r3, 0
|
|
/* 8018D6F0 0018A650 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8018D6F4 0018A654 40 81 00 40 */ ble lbl_8018D734
|
|
/* 8018D6F8 0018A658 2C 06 00 08 */ cmpwi r6, 8
|
|
/* 8018D6FC 0018A65C 38 86 FF F8 */ addi r4, r6, -8
|
|
/* 8018D700 0018A660 40 81 00 20 */ ble lbl_8018D720
|
|
/* 8018D704 0018A664 38 04 00 07 */ addi r0, r4, 7
|
|
/* 8018D708 0018A668 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8018D70C 0018A66C 7C 09 03 A6 */ mtctr r0
|
|
/* 8018D710 0018A670 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8018D714 0018A674 40 81 00 0C */ ble lbl_8018D720
|
|
lbl_8018D718:
|
|
/* 8018D718 0018A678 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8018D71C 0018A67C 42 00 FF FC */ bdnz lbl_8018D718
|
|
lbl_8018D720:
|
|
/* 8018D720 0018A680 7C 03 30 50 */ subf r0, r3, r6
|
|
/* 8018D724 0018A684 7C 09 03 A6 */ mtctr r0
|
|
/* 8018D728 0018A688 7C 03 30 00 */ cmpw r3, r6
|
|
/* 8018D72C 0018A68C 40 80 00 08 */ bge lbl_8018D734
|
|
lbl_8018D730:
|
|
/* 8018D730 0018A690 42 00 00 00 */ bdnz lbl_8018D730
|
|
lbl_8018D734:
|
|
/* 8018D734 0018A694 38 00 00 00 */ li r0, 0
|
|
/* 8018D738 0018A698 90 05 00 00 */ stw r0, 0(r5)
|
|
lbl_8018D73C:
|
|
/* 8018D73C 0018A69C 7F C3 F3 78 */ mr r3, r30
|
|
/* 8018D740 0018A6A0 BB 61 00 AC */ lmw r27, 0xac(r1)
|
|
/* 8018D744 0018A6A4 80 01 00 C4 */ lwz r0, 0xc4(r1)
|
|
/* 8018D748 0018A6A8 7C 08 03 A6 */ mtlr r0
|
|
/* 8018D74C 0018A6AC 38 21 00 C0 */ addi r1, r1, 0xc0
|
|
/* 8018D750 0018A6B0 4E 80 00 20 */ blr
|
|
|
|
.global CheckForWall__11CBSWallHangFR15CBodyControllerR13CStateManager
|
|
CheckForWall__11CBSWallHangFR15CBodyControllerR13CStateManager:
|
|
/* 8018D754 0018A6B4 94 21 FE C0 */ stwu r1, -0x140(r1)
|
|
/* 8018D758 0018A6B8 7C 08 02 A6 */ mflr r0
|
|
/* 8018D75C 0018A6BC 90 01 01 44 */ stw r0, 0x144(r1)
|
|
/* 8018D760 0018A6C0 BF 41 01 28 */ stmw r26, 0x128(r1)
|
|
/* 8018D764 0018A6C4 7C 9D 23 78 */ mr r29, r4
|
|
/* 8018D768 0018A6C8 7C 7A 1B 78 */ mr r26, r3
|
|
/* 8018D76C 0018A6CC 7C BE 2B 78 */ mr r30, r5
|
|
/* 8018D770 0018A6D0 38 61 00 68 */ addi r3, r1, 0x68
|
|
/* 8018D774 0018A6D4 3B 60 00 00 */ li r27, 0
|
|
/* 8018D778 0018A6D8 80 84 00 00 */ lwz r4, 0(r4)
|
|
/* 8018D77C 0018A6DC 4B F1 F2 E1 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity"
|
|
/* 8018D780 0018A6E0 83 E3 00 04 */ lwz r31, 4(r3)
|
|
/* 8018D784 0018A6E4 28 1F 00 00 */ cmplwi r31, 0
|
|
/* 8018D788 0018A6E8 41 82 02 C4 */ beq lbl_8018DA4C
|
|
/* 8018D78C 0018A6EC A0 1A 00 08 */ lhz r0, 8(r26)
|
|
/* 8018D790 0018A6F0 7F C3 F3 78 */ mr r3, r30
|
|
/* 8018D794 0018A6F4 38 81 00 14 */ addi r4, r1, 0x14
|
|
/* 8018D798 0018A6F8 B0 01 00 14 */ sth r0, 0x14(r1)
|
|
/* 8018D79C 0018A6FC 4B EB EE 09 */ bl GetObjectById__13CStateManagerCF9TUniqueId
|
|
/* 8018D7A0 0018A700 7C 64 1B 78 */ mr r4, r3
|
|
/* 8018D7A4 0018A704 38 61 00 18 */ addi r3, r1, 0x18
|
|
/* 8018D7A8 0018A708 4B F2 24 E9 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity"
|
|
/* 8018D7AC 0018A70C 83 83 00 04 */ lwz r28, 4(r3)
|
|
/* 8018D7B0 0018A710 C0 22 A4 68 */ lfs f1, lbl_805AC188@sda21(r2)
|
|
/* 8018D7B4 0018A714 28 1C 00 00 */ cmplwi r28, 0
|
|
/* 8018D7B8 0018A718 41 82 00 58 */ beq lbl_8018D810
|
|
/* 8018D7BC 0018A71C C0 DC 00 50 */ lfs f6, 0x50(r28)
|
|
/* 8018D7C0 0018A720 C0 1F 00 50 */ lfs f0, 0x50(r31)
|
|
/* 8018D7C4 0018A724 C0 3C 00 40 */ lfs f1, 0x40(r28)
|
|
/* 8018D7C8 0018A728 EC A6 00 28 */ fsubs f5, f6, f0
|
|
/* 8018D7CC 0018A72C C0 1F 00 40 */ lfs f0, 0x40(r31)
|
|
/* 8018D7D0 0018A730 C0 FC 00 60 */ lfs f7, 0x60(r28)
|
|
/* 8018D7D4 0018A734 EC 61 00 28 */ fsubs f3, f1, f0
|
|
/* 8018D7D8 0018A738 C0 5F 00 60 */ lfs f2, 0x60(r31)
|
|
/* 8018D7DC 0018A73C EC 05 01 72 */ fmuls f0, f5, f5
|
|
/* 8018D7E0 0018A740 EC 87 10 28 */ fsubs f4, f7, f2
|
|
/* 8018D7E4 0018A744 D0 21 00 88 */ stfs f1, 0x88(r1)
|
|
/* 8018D7E8 0018A748 EC 23 00 F2 */ fmuls f1, f3, f3
|
|
/* 8018D7EC 0018A74C D0 C1 00 8C */ stfs f6, 0x8c(r1)
|
|
/* 8018D7F0 0018A750 EC 44 01 32 */ fmuls f2, f4, f4
|
|
/* 8018D7F4 0018A754 EC 01 00 2A */ fadds f0, f1, f0
|
|
/* 8018D7F8 0018A758 D0 E1 00 90 */ stfs f7, 0x90(r1)
|
|
/* 8018D7FC 0018A75C D0 61 00 94 */ stfs f3, 0x94(r1)
|
|
/* 8018D800 0018A760 EC 02 00 2A */ fadds f0, f2, f0
|
|
/* 8018D804 0018A764 D0 A1 00 98 */ stfs f5, 0x98(r1)
|
|
/* 8018D808 0018A768 FC 20 00 90 */ fmr f1, f0
|
|
/* 8018D80C 0018A76C D0 81 00 9C */ stfs f4, 0x9c(r1)
|
|
lbl_8018D810:
|
|
/* 8018D810 0018A770 C0 02 A4 6C */ lfs f0, lbl_805AC18C@sda21(r2)
|
|
/* 8018D814 0018A774 FC 01 00 40 */ fcmpo cr0, f1, f0
|
|
/* 8018D818 0018A778 41 80 00 10 */ blt lbl_8018D828
|
|
/* 8018D81C 0018A77C 88 1F 03 28 */ lbz r0, 0x328(r31)
|
|
/* 8018D820 0018A780 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f
|
|
/* 8018D824 0018A784 41 82 02 28 */ beq lbl_8018DA4C
|
|
lbl_8018D828:
|
|
/* 8018D828 0018A788 38 00 00 03 */ li r0, 3
|
|
/* 8018D82C 0018A78C 38 61 00 28 */ addi r3, r1, 0x28
|
|
/* 8018D830 0018A790 90 1A 00 04 */ stw r0, 4(r26)
|
|
/* 8018D834 0018A794 48 15 58 49 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D838 0018A798 38 61 00 30 */ addi r3, r1, 0x30
|
|
/* 8018D83C 0018A79C 48 15 58 41 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D840 0018A7A0 38 61 00 38 */ addi r3, r1, 0x38
|
|
/* 8018D844 0018A7A4 48 15 58 39 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D848 0018A7A8 38 61 00 40 */ addi r3, r1, 0x40
|
|
/* 8018D84C 0018A7AC 48 15 58 31 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D850 0018A7B0 38 61 00 48 */ addi r3, r1, 0x48
|
|
/* 8018D854 0018A7B4 48 15 58 29 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D858 0018A7B8 38 61 00 50 */ addi r3, r1, 0x50
|
|
/* 8018D85C 0018A7BC 48 15 58 21 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D860 0018A7C0 38 61 00 58 */ addi r3, r1, 0x58
|
|
/* 8018D864 0018A7C4 48 15 58 19 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018D868 0018A7C8 80 9A 00 04 */ lwz r4, 4(r26)
|
|
/* 8018D86C 0018A7CC 38 61 00 60 */ addi r3, r1, 0x60
|
|
/* 8018D870 0018A7D0 48 15 57 15 */ bl FromEnum__12CPASAnimParmFi
|
|
/* 8018D874 0018A7D4 38 61 00 30 */ addi r3, r1, 0x30
|
|
/* 8018D878 0018A7D8 38 01 00 28 */ addi r0, r1, 0x28
|
|
/* 8018D87C 0018A7DC 90 61 00 08 */ stw r3, 8(r1)
|
|
/* 8018D880 0018A7E0 38 61 00 E0 */ addi r3, r1, 0xe0
|
|
/* 8018D884 0018A7E4 38 A1 00 60 */ addi r5, r1, 0x60
|
|
/* 8018D888 0018A7E8 38 C1 00 58 */ addi r6, r1, 0x58
|
|
/* 8018D88C 0018A7EC 90 01 00 0C */ stw r0, 0xc(r1)
|
|
/* 8018D890 0018A7F0 38 E1 00 50 */ addi r7, r1, 0x50
|
|
/* 8018D894 0018A7F4 39 01 00 48 */ addi r8, r1, 0x48
|
|
/* 8018D898 0018A7F8 39 21 00 40 */ addi r9, r1, 0x40
|
|
/* 8018D89C 0018A7FC 39 41 00 38 */ addi r10, r1, 0x38
|
|
/* 8018D8A0 0018A800 38 80 00 14 */ li r4, 0x14
|
|
/* 8018D8A4 0018A804 4B EE FA 21 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm
|
|
/* 8018D8A8 0018A808 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018D8AC 0018A80C 4B FA CB A9 */ bl GetPASDatabase__15CBodyControllerCFv
|
|
/* 8018D8B0 0018A810 80 DE 09 00 */ lwz r6, 0x900(r30)
|
|
/* 8018D8B4 0018A814 7C 64 1B 78 */ mr r4, r3
|
|
/* 8018D8B8 0018A818 38 61 00 20 */ addi r3, r1, 0x20
|
|
/* 8018D8BC 0018A81C 38 A1 00 E0 */ addi r5, r1, 0xe0
|
|
/* 8018D8C0 0018A820 38 E0 FF FF */ li r7, -1
|
|
/* 8018D8C4 0018A824 48 15 77 9D */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i
|
|
/* 8018D8C8 0018A828 28 1C 00 00 */ cmplwi r28, 0
|
|
/* 8018D8CC 0018A82C 83 61 00 24 */ lwz r27, 0x24(r1)
|
|
/* 8018D8D0 0018A830 41 82 00 24 */ beq lbl_8018D8F4
|
|
/* 8018D8D4 0018A834 C0 5C 00 60 */ lfs f2, 0x60(r28)
|
|
/* 8018D8D8 0018A838 39 61 00 7C */ addi r11, r1, 0x7c
|
|
/* 8018D8DC 0018A83C C0 3C 00 50 */ lfs f1, 0x50(r28)
|
|
/* 8018D8E0 0018A840 C0 1C 00 40 */ lfs f0, 0x40(r28)
|
|
/* 8018D8E4 0018A844 D0 01 00 7C */ stfs f0, 0x7c(r1)
|
|
/* 8018D8E8 0018A848 D0 21 00 80 */ stfs f1, 0x80(r1)
|
|
/* 8018D8EC 0018A84C D0 41 00 84 */ stfs f2, 0x84(r1)
|
|
/* 8018D8F0 0018A850 48 00 00 20 */ b lbl_8018D910
|
|
lbl_8018D8F4:
|
|
/* 8018D8F4 0018A854 C0 5F 00 60 */ lfs f2, 0x60(r31)
|
|
/* 8018D8F8 0018A858 39 61 00 70 */ addi r11, r1, 0x70
|
|
/* 8018D8FC 0018A85C C0 3F 00 50 */ lfs f1, 0x50(r31)
|
|
/* 8018D900 0018A860 C0 1F 00 40 */ lfs f0, 0x40(r31)
|
|
/* 8018D904 0018A864 D0 01 00 70 */ stfs f0, 0x70(r1)
|
|
/* 8018D908 0018A868 D0 21 00 74 */ stfs f1, 0x74(r1)
|
|
/* 8018D90C 0018A86C D0 41 00 78 */ stfs f2, 0x78(r1)
|
|
lbl_8018D910:
|
|
/* 8018D910 0018A870 C0 2B 00 00 */ lfs f1, 0(r11)
|
|
/* 8018D914 0018A874 38 E1 00 AC */ addi r7, r1, 0xac
|
|
/* 8018D918 0018A878 C0 02 A4 6C */ lfs f0, lbl_805AC18C@sda21(r2)
|
|
/* 8018D91C 0018A87C 38 01 00 A0 */ addi r0, r1, 0xa0
|
|
/* 8018D920 0018A880 D0 21 00 AC */ stfs f1, 0xac(r1)
|
|
/* 8018D924 0018A884 39 40 FF FF */ li r10, -1
|
|
/* 8018D928 0018A888 39 20 00 01 */ li r9, 1
|
|
/* 8018D92C 0018A88C 39 00 00 00 */ li r8, 0
|
|
/* 8018D930 0018A890 C0 2B 00 04 */ lfs f1, 4(r11)
|
|
/* 8018D934 0018A894 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018D938 0018A898 38 81 00 B8 */ addi r4, r1, 0xb8
|
|
/* 8018D93C 0018A89C 38 A0 00 00 */ li r5, 0
|
|
/* 8018D940 0018A8A0 D0 21 00 B0 */ stfs f1, 0xb0(r1)
|
|
/* 8018D944 0018A8A4 38 C0 00 00 */ li r6, 0
|
|
/* 8018D948 0018A8A8 C0 2B 00 08 */ lfs f1, 8(r11)
|
|
/* 8018D94C 0018A8AC D0 21 00 B4 */ stfs f1, 0xb4(r1)
|
|
/* 8018D950 0018A8B0 81 7D 00 00 */ lwz r11, 0(r29)
|
|
/* 8018D954 0018A8B4 81 8B 00 64 */ lwz r12, 0x64(r11)
|
|
/* 8018D958 0018A8B8 39 6B 00 34 */ addi r11, r11, 0x34
|
|
/* 8018D95C 0018A8BC C0 4C 00 04 */ lfs f2, 4(r12)
|
|
/* 8018D960 0018A8C0 C0 6C 00 08 */ lfs f3, 8(r12)
|
|
/* 8018D964 0018A8C4 C0 2C 00 00 */ lfs f1, 0(r12)
|
|
/* 8018D968 0018A8C8 D0 21 00 A0 */ stfs f1, 0xa0(r1)
|
|
/* 8018D96C 0018A8CC D0 41 00 A4 */ stfs f2, 0xa4(r1)
|
|
/* 8018D970 0018A8D0 D0 61 00 A8 */ stfs f3, 0xa8(r1)
|
|
/* 8018D974 0018A8D4 93 61 00 B8 */ stw r27, 0xb8(r1)
|
|
/* 8018D978 0018A8D8 91 41 00 BC */ stw r10, 0xbc(r1)
|
|
/* 8018D97C 0018A8DC D0 01 00 C0 */ stfs f0, 0xc0(r1)
|
|
/* 8018D980 0018A8E0 99 21 00 C4 */ stb r9, 0xc4(r1)
|
|
/* 8018D984 0018A8E4 91 01 00 C8 */ stw r8, 0xc8(r1)
|
|
/* 8018D988 0018A8E8 90 E1 00 CC */ stw r7, 0xcc(r1)
|
|
/* 8018D98C 0018A8EC 99 01 00 D0 */ stb r8, 0xd0(r1)
|
|
/* 8018D990 0018A8F0 91 01 00 D4 */ stw r8, 0xd4(r1)
|
|
/* 8018D994 0018A8F4 91 61 00 D8 */ stw r11, 0xd8(r1)
|
|
/* 8018D998 0018A8F8 90 01 00 DC */ stw r0, 0xdc(r1)
|
|
/* 8018D99C 0018A8FC 4B FA CF 81 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb
|
|
/* 8018D9A0 0018A900 3C 80 80 5A */ lis r4, skZero3f@ha
|
|
/* 8018D9A4 0018A904 7F E3 FB 78 */ mr r3, r31
|
|
/* 8018D9A8 0018A908 38 84 66 A0 */ addi r4, r4, skZero3f@l
|
|
/* 8018D9AC 0018A90C 4B F8 D2 F5 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f
|
|
/* 8018D9B0 0018A910 3C 80 80 5A */ lis r4, skZero3f@ha
|
|
/* 8018D9B4 0018A914 7F C3 F3 78 */ mr r3, r30
|
|
/* 8018D9B8 0018A918 38 E4 66 A0 */ addi r7, r4, skZero3f@l
|
|
/* 8018D9BC 0018A91C 7F E4 FB 78 */ mr r4, r31
|
|
/* 8018D9C0 0018A920 C0 07 00 00 */ lfs f0, 0(r7)
|
|
/* 8018D9C4 0018A924 38 A1 00 10 */ addi r5, r1, 0x10
|
|
/* 8018D9C8 0018A928 38 C0 00 17 */ li r6, 0x17
|
|
/* 8018D9CC 0018A92C D0 1F 01 50 */ stfs f0, 0x150(r31)
|
|
/* 8018D9D0 0018A930 C0 07 00 04 */ lfs f0, 4(r7)
|
|
/* 8018D9D4 0018A934 D0 1F 01 54 */ stfs f0, 0x154(r31)
|
|
/* 8018D9D8 0018A938 C0 07 00 08 */ lfs f0, 8(r7)
|
|
/* 8018D9DC 0018A93C D0 1F 01 58 */ stfs f0, 0x158(r31)
|
|
/* 8018D9E0 0018A940 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
|
|
/* 8018D9E4 0018A944 B0 01 00 10 */ sth r0, 0x10(r1)
|
|
/* 8018D9E8 0018A948 4B EB 64 E9 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage
|
|
/* 8018D9EC 0018A94C 34 A1 00 E4 */ addic. r5, r1, 0xe4
|
|
/* 8018D9F0 0018A950 3B 60 00 01 */ li r27, 1
|
|
/* 8018D9F4 0018A954 41 82 00 58 */ beq lbl_8018DA4C
|
|
/* 8018D9F8 0018A958 80 C5 00 00 */ lwz r6, 0(r5)
|
|
/* 8018D9FC 0018A95C 38 60 00 00 */ li r3, 0
|
|
/* 8018DA00 0018A960 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8018DA04 0018A964 40 81 00 40 */ ble lbl_8018DA44
|
|
/* 8018DA08 0018A968 2C 06 00 08 */ cmpwi r6, 8
|
|
/* 8018DA0C 0018A96C 38 86 FF F8 */ addi r4, r6, -8
|
|
/* 8018DA10 0018A970 40 81 00 20 */ ble lbl_8018DA30
|
|
/* 8018DA14 0018A974 38 04 00 07 */ addi r0, r4, 7
|
|
/* 8018DA18 0018A978 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8018DA1C 0018A97C 7C 09 03 A6 */ mtctr r0
|
|
/* 8018DA20 0018A980 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8018DA24 0018A984 40 81 00 0C */ ble lbl_8018DA30
|
|
lbl_8018DA28:
|
|
/* 8018DA28 0018A988 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8018DA2C 0018A98C 42 00 FF FC */ bdnz lbl_8018DA28
|
|
lbl_8018DA30:
|
|
/* 8018DA30 0018A990 7C 03 30 50 */ subf r0, r3, r6
|
|
/* 8018DA34 0018A994 7C 09 03 A6 */ mtctr r0
|
|
/* 8018DA38 0018A998 7C 03 30 00 */ cmpw r3, r6
|
|
/* 8018DA3C 0018A99C 40 80 00 08 */ bge lbl_8018DA44
|
|
lbl_8018DA40:
|
|
/* 8018DA40 0018A9A0 42 00 00 00 */ bdnz lbl_8018DA40
|
|
lbl_8018DA44:
|
|
/* 8018DA44 0018A9A4 38 00 00 00 */ li r0, 0
|
|
/* 8018DA48 0018A9A8 90 05 00 00 */ stw r0, 0(r5)
|
|
lbl_8018DA4C:
|
|
/* 8018DA4C 0018A9AC 7F 63 DB 78 */ mr r3, r27
|
|
/* 8018DA50 0018A9B0 BB 41 01 28 */ lmw r26, 0x128(r1)
|
|
/* 8018DA54 0018A9B4 80 01 01 44 */ lwz r0, 0x144(r1)
|
|
/* 8018DA58 0018A9B8 7C 08 03 A6 */ mtlr r0
|
|
/* 8018DA5C 0018A9BC 38 21 01 40 */ addi r1, r1, 0x140
|
|
/* 8018DA60 0018A9C0 4E 80 00 20 */ blr
|
|
|
|
.global nullsub_134
|
|
nullsub_134:
|
|
/* 8018DA64 0018A9C4 4E 80 00 20 */ blr
|
|
|
|
.global UpdateBody__11CBSWallHangFfR15CBodyControllerR13CStateManager
|
|
UpdateBody__11CBSWallHangFfR15CBodyControllerR13CStateManager:
|
|
/* 8018DA68 0018A9C8 94 21 F9 F0 */ stwu r1, -0x610(r1)
|
|
/* 8018DA6C 0018A9CC 7C 08 02 A6 */ mflr r0
|
|
/* 8018DA70 0018A9D0 90 01 06 14 */ stw r0, 0x614(r1)
|
|
/* 8018DA74 0018A9D4 DB E1 06 00 */ stfd f31, 0x600(r1)
|
|
/* 8018DA78 0018A9D8 F3 E1 06 08 */ psq_st f31, 1544(r1), 0, qr0
|
|
/* 8018DA7C 0018A9DC DB C1 05 F0 */ stfd f30, 0x5f0(r1)
|
|
/* 8018DA80 0018A9E0 F3 C1 05 F8 */ psq_st f30, 1528(r1), 0, qr0
|
|
/* 8018DA84 0018A9E4 DB A1 05 E0 */ stfd f29, 0x5e0(r1)
|
|
/* 8018DA88 0018A9E8 F3 A1 05 E8 */ psq_st f29, 1512(r1), 0, qr0
|
|
/* 8018DA8C 0018A9EC BF 21 05 C4 */ stmw r25, 0x5c4(r1)
|
|
/* 8018DA90 0018A9F0 FF E0 08 90 */ fmr f31, f1
|
|
/* 8018DA94 0018A9F4 7C 7C 1B 78 */ mr r28, r3
|
|
/* 8018DA98 0018A9F8 7C 9D 23 78 */ mr r29, r4
|
|
/* 8018DA9C 0018A9FC 7C BE 2B 78 */ mr r30, r5
|
|
/* 8018DAA0 0018AA00 4B FF FA 81 */ bl GetBodyStateTransition__11CBSWallHangFfR15CBodyController
|
|
/* 8018DAA4 0018AA04 7C 7F 1B 78 */ mr r31, r3
|
|
/* 8018DAA8 0018AA08 2C 1F FF FF */ cmpwi r31, -1
|
|
/* 8018DAAC 0018AA0C 40 82 0D C0 */ bne lbl_8018E86C
|
|
/* 8018DAB0 0018AA10 80 1C 00 04 */ lwz r0, 4(r28)
|
|
/* 8018DAB4 0018AA14 28 00 00 09 */ cmplwi r0, 9
|
|
/* 8018DAB8 0018AA18 41 81 0D B4 */ bgt lbl_8018E86C
|
|
/* 8018DABC 0018AA1C 3C 60 80 3E */ lis r3, lbl_803E43D8@ha
|
|
/* 8018DAC0 0018AA20 54 00 10 3A */ slwi r0, r0, 2
|
|
/* 8018DAC4 0018AA24 38 63 43 D8 */ addi r3, r3, lbl_803E43D8@l
|
|
/* 8018DAC8 0018AA28 7C 03 00 2E */ lwzx r0, r3, r0
|
|
/* 8018DACC 0018AA2C 7C 09 03 A6 */ mtctr r0
|
|
/* 8018DAD0 0018AA30 4E 80 04 20 */ bctr
|
|
.global lbl_8018DAD4
|
|
lbl_8018DAD4:
|
|
/* 8018DAD4 0018AA34 88 1D 03 00 */ lbz r0, 0x300(r29)
|
|
/* 8018DAD8 0018AA38 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
|
|
/* 8018DADC 0018AA3C 41 82 0D 90 */ beq lbl_8018E86C
|
|
/* 8018DAE0 0018AA40 38 61 02 64 */ addi r3, r1, 0x264
|
|
/* 8018DAE4 0018AA44 48 15 55 99 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DAE8 0018AA48 38 61 02 6C */ addi r3, r1, 0x26c
|
|
/* 8018DAEC 0018AA4C 48 15 55 91 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DAF0 0018AA50 38 61 02 74 */ addi r3, r1, 0x274
|
|
/* 8018DAF4 0018AA54 48 15 55 89 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DAF8 0018AA58 38 61 02 7C */ addi r3, r1, 0x27c
|
|
/* 8018DAFC 0018AA5C 48 15 55 81 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DB00 0018AA60 38 61 02 84 */ addi r3, r1, 0x284
|
|
/* 8018DB04 0018AA64 48 15 55 79 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DB08 0018AA68 38 61 02 8C */ addi r3, r1, 0x28c
|
|
/* 8018DB0C 0018AA6C 48 15 55 71 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DB10 0018AA70 38 61 02 94 */ addi r3, r1, 0x294
|
|
/* 8018DB14 0018AA74 48 15 55 69 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DB18 0018AA78 38 61 02 9C */ addi r3, r1, 0x29c
|
|
/* 8018DB1C 0018AA7C 38 80 00 01 */ li r4, 1
|
|
/* 8018DB20 0018AA80 48 15 54 65 */ bl FromEnum__12CPASAnimParmFi
|
|
/* 8018DB24 0018AA84 38 61 02 6C */ addi r3, r1, 0x26c
|
|
/* 8018DB28 0018AA88 38 01 02 64 */ addi r0, r1, 0x264
|
|
/* 8018DB2C 0018AA8C 90 61 00 08 */ stw r3, 8(r1)
|
|
/* 8018DB30 0018AA90 38 61 05 70 */ addi r3, r1, 0x570
|
|
/* 8018DB34 0018AA94 38 A1 02 9C */ addi r5, r1, 0x29c
|
|
/* 8018DB38 0018AA98 38 C1 02 94 */ addi r6, r1, 0x294
|
|
/* 8018DB3C 0018AA9C 90 01 00 0C */ stw r0, 0xc(r1)
|
|
/* 8018DB40 0018AAA0 38 E1 02 8C */ addi r7, r1, 0x28c
|
|
/* 8018DB44 0018AAA4 39 01 02 84 */ addi r8, r1, 0x284
|
|
/* 8018DB48 0018AAA8 39 21 02 7C */ addi r9, r1, 0x27c
|
|
/* 8018DB4C 0018AAAC 39 41 02 74 */ addi r10, r1, 0x274
|
|
/* 8018DB50 0018AAB0 38 80 00 14 */ li r4, 0x14
|
|
/* 8018DB54 0018AAB4 4B EE F7 71 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm
|
|
/* 8018DB58 0018AAB8 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018DB5C 0018AABC 4B FA C8 F9 */ bl GetPASDatabase__15CBodyControllerCFv
|
|
/* 8018DB60 0018AAC0 80 DE 09 00 */ lwz r6, 0x900(r30)
|
|
/* 8018DB64 0018AAC4 7C 64 1B 78 */ mr r4, r3
|
|
/* 8018DB68 0018AAC8 38 61 02 5C */ addi r3, r1, 0x25c
|
|
/* 8018DB6C 0018AACC 38 A1 05 70 */ addi r5, r1, 0x570
|
|
/* 8018DB70 0018AAD0 38 E0 FF FF */ li r7, -1
|
|
/* 8018DB74 0018AAD4 48 15 74 ED */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i
|
|
/* 8018DB78 0018AAD8 C0 21 02 5C */ lfs f1, 0x25c(r1)
|
|
/* 8018DB7C 0018AADC C0 02 A4 70 */ lfs f0, lbl_805AC190@sda21(r2)
|
|
/* 8018DB80 0018AAE0 80 81 02 60 */ lwz r4, 0x260(r1)
|
|
/* 8018DB84 0018AAE4 FC 01 00 40 */ fcmpo cr0, f1, f0
|
|
/* 8018DB88 0018AAE8 40 81 00 58 */ ble lbl_8018DBE0
|
|
/* 8018DB8C 0018AAEC 39 00 00 01 */ li r8, 1
|
|
/* 8018DB90 0018AAF0 C0 02 A4 6C */ lfs f0, lbl_805AC18C@sda21(r2)
|
|
/* 8018DB94 0018AAF4 91 1C 00 04 */ stw r8, 4(r28)
|
|
/* 8018DB98 0018AAF8 38 00 00 00 */ li r0, 0
|
|
/* 8018DB9C 0018AAFC 38 E0 FF FF */ li r7, -1
|
|
/* 8018DBA0 0018AB00 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018DBA4 0018AB04 90 81 03 08 */ stw r4, 0x308(r1)
|
|
/* 8018DBA8 0018AB08 38 81 03 08 */ addi r4, r1, 0x308
|
|
/* 8018DBAC 0018AB0C 38 A0 00 00 */ li r5, 0
|
|
/* 8018DBB0 0018AB10 38 C0 00 00 */ li r6, 0
|
|
/* 8018DBB4 0018AB14 90 E1 03 0C */ stw r7, 0x30c(r1)
|
|
/* 8018DBB8 0018AB18 D0 01 03 10 */ stfs f0, 0x310(r1)
|
|
/* 8018DBBC 0018AB1C 99 01 03 14 */ stb r8, 0x314(r1)
|
|
/* 8018DBC0 0018AB20 90 01 03 18 */ stw r0, 0x318(r1)
|
|
/* 8018DBC4 0018AB24 90 01 03 1C */ stw r0, 0x31c(r1)
|
|
/* 8018DBC8 0018AB28 98 01 03 20 */ stb r0, 0x320(r1)
|
|
/* 8018DBCC 0018AB2C 90 01 03 24 */ stw r0, 0x324(r1)
|
|
/* 8018DBD0 0018AB30 90 01 03 28 */ stw r0, 0x328(r1)
|
|
/* 8018DBD4 0018AB34 90 01 03 2C */ stw r0, 0x32c(r1)
|
|
/* 8018DBD8 0018AB38 4B FA CD 45 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb
|
|
/* 8018DBDC 0018AB3C 48 00 00 F0 */ b lbl_8018DCCC
|
|
lbl_8018DBE0:
|
|
/* 8018DBE0 0018AB40 38 00 00 02 */ li r0, 2
|
|
/* 8018DBE4 0018AB44 38 61 02 1C */ addi r3, r1, 0x21c
|
|
/* 8018DBE8 0018AB48 90 1C 00 04 */ stw r0, 4(r28)
|
|
/* 8018DBEC 0018AB4C 48 15 54 91 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DBF0 0018AB50 38 61 02 24 */ addi r3, r1, 0x224
|
|
/* 8018DBF4 0018AB54 48 15 54 89 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DBF8 0018AB58 38 61 02 2C */ addi r3, r1, 0x22c
|
|
/* 8018DBFC 0018AB5C 48 15 54 81 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DC00 0018AB60 38 61 02 34 */ addi r3, r1, 0x234
|
|
/* 8018DC04 0018AB64 48 15 54 79 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DC08 0018AB68 38 61 02 3C */ addi r3, r1, 0x23c
|
|
/* 8018DC0C 0018AB6C 48 15 54 71 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DC10 0018AB70 38 61 02 44 */ addi r3, r1, 0x244
|
|
/* 8018DC14 0018AB74 48 15 54 69 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DC18 0018AB78 38 61 02 4C */ addi r3, r1, 0x24c
|
|
/* 8018DC1C 0018AB7C 48 15 54 61 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DC20 0018AB80 80 9C 00 04 */ lwz r4, 4(r28)
|
|
/* 8018DC24 0018AB84 38 61 02 54 */ addi r3, r1, 0x254
|
|
/* 8018DC28 0018AB88 48 15 53 5D */ bl FromEnum__12CPASAnimParmFi
|
|
/* 8018DC2C 0018AB8C 38 61 02 24 */ addi r3, r1, 0x224
|
|
/* 8018DC30 0018AB90 38 01 02 1C */ addi r0, r1, 0x21c
|
|
/* 8018DC34 0018AB94 90 61 00 08 */ stw r3, 8(r1)
|
|
/* 8018DC38 0018AB98 38 61 05 28 */ addi r3, r1, 0x528
|
|
/* 8018DC3C 0018AB9C 38 A1 02 54 */ addi r5, r1, 0x254
|
|
/* 8018DC40 0018ABA0 38 C1 02 4C */ addi r6, r1, 0x24c
|
|
/* 8018DC44 0018ABA4 90 01 00 0C */ stw r0, 0xc(r1)
|
|
/* 8018DC48 0018ABA8 38 E1 02 44 */ addi r7, r1, 0x244
|
|
/* 8018DC4C 0018ABAC 39 01 02 3C */ addi r8, r1, 0x23c
|
|
/* 8018DC50 0018ABB0 39 21 02 34 */ addi r9, r1, 0x234
|
|
/* 8018DC54 0018ABB4 39 41 02 2C */ addi r10, r1, 0x22c
|
|
/* 8018DC58 0018ABB8 38 80 00 14 */ li r4, 0x14
|
|
/* 8018DC5C 0018ABBC 4B EE F6 69 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm
|
|
/* 8018DC60 0018ABC0 80 BE 09 00 */ lwz r5, 0x900(r30)
|
|
/* 8018DC64 0018ABC4 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018DC68 0018ABC8 38 81 05 28 */ addi r4, r1, 0x528
|
|
/* 8018DC6C 0018ABCC 4B FA C6 91 */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16
|
|
/* 8018DC70 0018ABD0 34 A1 05 2C */ addic. r5, r1, 0x52c
|
|
/* 8018DC74 0018ABD4 41 82 00 58 */ beq lbl_8018DCCC
|
|
/* 8018DC78 0018ABD8 80 C5 00 00 */ lwz r6, 0(r5)
|
|
/* 8018DC7C 0018ABDC 38 60 00 00 */ li r3, 0
|
|
/* 8018DC80 0018ABE0 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8018DC84 0018ABE4 40 81 00 40 */ ble lbl_8018DCC4
|
|
/* 8018DC88 0018ABE8 2C 06 00 08 */ cmpwi r6, 8
|
|
/* 8018DC8C 0018ABEC 38 86 FF F8 */ addi r4, r6, -8
|
|
/* 8018DC90 0018ABF0 40 81 00 20 */ ble lbl_8018DCB0
|
|
/* 8018DC94 0018ABF4 38 04 00 07 */ addi r0, r4, 7
|
|
/* 8018DC98 0018ABF8 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8018DC9C 0018ABFC 7C 09 03 A6 */ mtctr r0
|
|
/* 8018DCA0 0018AC00 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8018DCA4 0018AC04 40 81 00 0C */ ble lbl_8018DCB0
|
|
lbl_8018DCA8:
|
|
/* 8018DCA8 0018AC08 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8018DCAC 0018AC0C 42 00 FF FC */ bdnz lbl_8018DCA8
|
|
lbl_8018DCB0:
|
|
/* 8018DCB0 0018AC10 7C 03 30 50 */ subf r0, r3, r6
|
|
/* 8018DCB4 0018AC14 7C 09 03 A6 */ mtctr r0
|
|
/* 8018DCB8 0018AC18 7C 03 30 00 */ cmpw r3, r6
|
|
/* 8018DCBC 0018AC1C 40 80 00 08 */ bge lbl_8018DCC4
|
|
lbl_8018DCC0:
|
|
/* 8018DCC0 0018AC20 42 00 00 00 */ bdnz lbl_8018DCC0
|
|
lbl_8018DCC4:
|
|
/* 8018DCC4 0018AC24 38 00 00 00 */ li r0, 0
|
|
/* 8018DCC8 0018AC28 90 05 00 00 */ stw r0, 0(r5)
|
|
lbl_8018DCCC:
|
|
/* 8018DCCC 0018AC2C 80 9D 00 00 */ lwz r4, 0(r29)
|
|
/* 8018DCD0 0018AC30 38 61 02 14 */ addi r3, r1, 0x214
|
|
/* 8018DCD4 0018AC34 4B F1 EA 11 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity"
|
|
/* 8018DCD8 0018AC38 83 43 00 04 */ lwz r26, 4(r3)
|
|
/* 8018DCDC 0018AC3C 28 1A 00 00 */ cmplwi r26, 0
|
|
/* 8018DCE0 0018AC40 41 82 00 CC */ beq lbl_8018DDAC
|
|
/* 8018DCE4 0018AC44 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
|
|
/* 8018DCE8 0018AC48 7F C3 F3 78 */ mr r3, r30
|
|
/* 8018DCEC 0018AC4C 7F 44 D3 78 */ mr r4, r26
|
|
/* 8018DCF0 0018AC50 38 A1 00 20 */ addi r5, r1, 0x20
|
|
/* 8018DCF4 0018AC54 B0 01 00 20 */ sth r0, 0x20(r1)
|
|
/* 8018DCF8 0018AC58 38 C0 00 28 */ li r6, 0x28
|
|
/* 8018DCFC 0018AC5C 4B EB 61 D5 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage
|
|
/* 8018DD00 0018AC60 A0 1C 00 08 */ lhz r0, 8(r28)
|
|
/* 8018DD04 0018AC64 7F C3 F3 78 */ mr r3, r30
|
|
/* 8018DD08 0018AC68 38 81 00 1C */ addi r4, r1, 0x1c
|
|
/* 8018DD0C 0018AC6C B0 01 00 1C */ sth r0, 0x1c(r1)
|
|
/* 8018DD10 0018AC70 4B EB E8 95 */ bl GetObjectById__13CStateManagerCF9TUniqueId
|
|
/* 8018DD14 0018AC74 7C 64 1B 78 */ mr r4, r3
|
|
/* 8018DD18 0018AC78 38 61 00 34 */ addi r3, r1, 0x34
|
|
/* 8018DD1C 0018AC7C 4B F2 1F 75 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity"
|
|
/* 8018DD20 0018AC80 80 63 00 04 */ lwz r3, 4(r3)
|
|
/* 8018DD24 0018AC84 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8018DD28 0018AC88 41 82 00 84 */ beq lbl_8018DDAC
|
|
/* 8018DD2C 0018AC8C C0 23 00 60 */ lfs f1, 0x60(r3)
|
|
/* 8018DD30 0018AC90 C0 1A 00 60 */ lfs f0, 0x60(r26)
|
|
/* 8018DD34 0018AC94 C0 83 00 40 */ lfs f4, 0x40(r3)
|
|
/* 8018DD38 0018AC98 C0 7A 00 40 */ lfs f3, 0x40(r26)
|
|
/* 8018DD3C 0018AC9C EC A1 00 28 */ fsubs f5, f1, f0
|
|
/* 8018DD40 0018ACA0 C0 02 A4 70 */ lfs f0, lbl_805AC190@sda21(r2)
|
|
/* 8018DD44 0018ACA4 C0 43 00 50 */ lfs f2, 0x50(r3)
|
|
/* 8018DD48 0018ACA8 EF C4 18 28 */ fsubs f30, f4, f3
|
|
/* 8018DD4C 0018ACAC C0 3A 00 50 */ lfs f1, 0x50(r26)
|
|
/* 8018DD50 0018ACB0 FC 05 00 40 */ fcmpo cr0, f5, f0
|
|
/* 8018DD54 0018ACB4 EF E2 08 28 */ fsubs f31, f2, f1
|
|
/* 8018DD58 0018ACB8 41 80 00 54 */ blt lbl_8018DDAC
|
|
/* 8018DD5C 0018ACBC C0 1A 01 58 */ lfs f0, 0x158(r26)
|
|
/* 8018DD60 0018ACC0 C0 3A 00 E8 */ lfs f1, 0xe8(r26)
|
|
/* 8018DD64 0018ACC4 FC 40 00 50 */ fneg f2, f0
|
|
/* 8018DD68 0018ACC8 C0 02 A4 74 */ lfs f0, lbl_805AC194@sda21(r2)
|
|
/* 8018DD6C 0018ACCC EF A2 08 24 */ fdivs f29, f2, f1
|
|
/* 8018DD70 0018ACD0 EC 00 07 72 */ fmuls f0, f0, f29
|
|
/* 8018DD74 0018ACD4 EC 20 01 72 */ fmuls f1, f0, f5
|
|
/* 8018DD78 0018ACD8 48 18 77 89 */ bl SqrtF__5CMathFf
|
|
/* 8018DD7C 0018ACDC EC 01 E8 24 */ fdivs f0, f1, f29
|
|
/* 8018DD80 0018ACE0 C0 42 A4 6C */ lfs f2, lbl_805AC18C@sda21(r2)
|
|
/* 8018DD84 0018ACE4 88 1C 00 18 */ lbz r0, 0x18(r28)
|
|
/* 8018DD88 0018ACE8 38 60 00 00 */ li r3, 0
|
|
/* 8018DD8C 0018ACEC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18
|
|
/* 8018DD90 0018ACF0 98 1C 00 18 */ stb r0, 0x18(r28)
|
|
/* 8018DD94 0018ACF4 EC 02 00 24 */ fdivs f0, f2, f0
|
|
/* 8018DD98 0018ACF8 EC 40 07 B2 */ fmuls f2, f0, f30
|
|
/* 8018DD9C 0018ACFC EC 00 07 F2 */ fmuls f0, f0, f31
|
|
/* 8018DDA0 0018AD00 D0 5C 00 0C */ stfs f2, 0xc(r28)
|
|
/* 8018DDA4 0018AD04 D0 1C 00 10 */ stfs f0, 0x10(r28)
|
|
/* 8018DDA8 0018AD08 D0 3C 00 14 */ stfs f1, 0x14(r28)
|
|
lbl_8018DDAC:
|
|
/* 8018DDAC 0018AD0C 34 A1 05 74 */ addic. r5, r1, 0x574
|
|
/* 8018DDB0 0018AD10 41 82 0A BC */ beq lbl_8018E86C
|
|
/* 8018DDB4 0018AD14 80 C5 00 00 */ lwz r6, 0(r5)
|
|
/* 8018DDB8 0018AD18 38 60 00 00 */ li r3, 0
|
|
/* 8018DDBC 0018AD1C 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8018DDC0 0018AD20 40 81 00 40 */ ble lbl_8018DE00
|
|
/* 8018DDC4 0018AD24 2C 06 00 08 */ cmpwi r6, 8
|
|
/* 8018DDC8 0018AD28 38 86 FF F8 */ addi r4, r6, -8
|
|
/* 8018DDCC 0018AD2C 40 81 00 20 */ ble lbl_8018DDEC
|
|
/* 8018DDD0 0018AD30 38 04 00 07 */ addi r0, r4, 7
|
|
/* 8018DDD4 0018AD34 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8018DDD8 0018AD38 7C 09 03 A6 */ mtctr r0
|
|
/* 8018DDDC 0018AD3C 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8018DDE0 0018AD40 40 81 00 0C */ ble lbl_8018DDEC
|
|
lbl_8018DDE4:
|
|
/* 8018DDE4 0018AD44 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8018DDE8 0018AD48 42 00 FF FC */ bdnz lbl_8018DDE4
|
|
lbl_8018DDEC:
|
|
/* 8018DDEC 0018AD4C 7C 03 30 50 */ subf r0, r3, r6
|
|
/* 8018DDF0 0018AD50 7C 09 03 A6 */ mtctr r0
|
|
/* 8018DDF4 0018AD54 7C 03 30 00 */ cmpw r3, r6
|
|
/* 8018DDF8 0018AD58 40 80 00 08 */ bge lbl_8018DE00
|
|
lbl_8018DDFC:
|
|
/* 8018DDFC 0018AD5C 42 00 00 00 */ bdnz lbl_8018DDFC
|
|
lbl_8018DE00:
|
|
/* 8018DE00 0018AD60 38 00 00 00 */ li r0, 0
|
|
/* 8018DE04 0018AD64 90 05 00 00 */ stw r0, 0(r5)
|
|
/* 8018DE08 0018AD68 48 00 0A 64 */ b lbl_8018E86C
|
|
.global lbl_8018DE0C
|
|
lbl_8018DE0C:
|
|
/* 8018DE0C 0018AD6C 7F 83 E3 78 */ mr r3, r28
|
|
/* 8018DE10 0018AD70 7F A4 EB 78 */ mr r4, r29
|
|
/* 8018DE14 0018AD74 48 00 0C A1 */ bl SetLaunchVelocity__11CBSWallHangFR15CBodyController
|
|
/* 8018DE18 0018AD78 88 1D 03 00 */ lbz r0, 0x300(r29)
|
|
/* 8018DE1C 0018AD7C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
|
|
/* 8018DE20 0018AD80 41 82 00 F4 */ beq lbl_8018DF14
|
|
/* 8018DE24 0018AD84 38 00 00 02 */ li r0, 2
|
|
/* 8018DE28 0018AD88 38 61 01 D4 */ addi r3, r1, 0x1d4
|
|
/* 8018DE2C 0018AD8C 90 1C 00 04 */ stw r0, 4(r28)
|
|
/* 8018DE30 0018AD90 48 15 52 4D */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DE34 0018AD94 38 61 01 DC */ addi r3, r1, 0x1dc
|
|
/* 8018DE38 0018AD98 48 15 52 45 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DE3C 0018AD9C 38 61 01 E4 */ addi r3, r1, 0x1e4
|
|
/* 8018DE40 0018ADA0 48 15 52 3D */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DE44 0018ADA4 38 61 01 EC */ addi r3, r1, 0x1ec
|
|
/* 8018DE48 0018ADA8 48 15 52 35 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DE4C 0018ADAC 38 61 01 F4 */ addi r3, r1, 0x1f4
|
|
/* 8018DE50 0018ADB0 48 15 52 2D */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DE54 0018ADB4 38 61 01 FC */ addi r3, r1, 0x1fc
|
|
/* 8018DE58 0018ADB8 48 15 52 25 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DE5C 0018ADBC 38 61 02 04 */ addi r3, r1, 0x204
|
|
/* 8018DE60 0018ADC0 48 15 52 1D */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DE64 0018ADC4 80 9C 00 04 */ lwz r4, 4(r28)
|
|
/* 8018DE68 0018ADC8 38 61 02 0C */ addi r3, r1, 0x20c
|
|
/* 8018DE6C 0018ADCC 48 15 51 19 */ bl FromEnum__12CPASAnimParmFi
|
|
/* 8018DE70 0018ADD0 38 61 01 DC */ addi r3, r1, 0x1dc
|
|
/* 8018DE74 0018ADD4 38 01 01 D4 */ addi r0, r1, 0x1d4
|
|
/* 8018DE78 0018ADD8 90 61 00 08 */ stw r3, 8(r1)
|
|
/* 8018DE7C 0018ADDC 38 61 04 E0 */ addi r3, r1, 0x4e0
|
|
/* 8018DE80 0018ADE0 38 A1 02 0C */ addi r5, r1, 0x20c
|
|
/* 8018DE84 0018ADE4 38 C1 02 04 */ addi r6, r1, 0x204
|
|
/* 8018DE88 0018ADE8 90 01 00 0C */ stw r0, 0xc(r1)
|
|
/* 8018DE8C 0018ADEC 38 E1 01 FC */ addi r7, r1, 0x1fc
|
|
/* 8018DE90 0018ADF0 39 01 01 F4 */ addi r8, r1, 0x1f4
|
|
/* 8018DE94 0018ADF4 39 21 01 EC */ addi r9, r1, 0x1ec
|
|
/* 8018DE98 0018ADF8 39 41 01 E4 */ addi r10, r1, 0x1e4
|
|
/* 8018DE9C 0018ADFC 38 80 00 14 */ li r4, 0x14
|
|
/* 8018DEA0 0018AE00 4B EE F4 25 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm
|
|
/* 8018DEA4 0018AE04 80 BE 09 00 */ lwz r5, 0x900(r30)
|
|
/* 8018DEA8 0018AE08 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018DEAC 0018AE0C 38 81 04 E0 */ addi r4, r1, 0x4e0
|
|
/* 8018DEB0 0018AE10 4B FA C4 4D */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16
|
|
/* 8018DEB4 0018AE14 34 A1 04 E4 */ addic. r5, r1, 0x4e4
|
|
/* 8018DEB8 0018AE18 41 82 09 B4 */ beq lbl_8018E86C
|
|
/* 8018DEBC 0018AE1C 80 C5 00 00 */ lwz r6, 0(r5)
|
|
/* 8018DEC0 0018AE20 38 60 00 00 */ li r3, 0
|
|
/* 8018DEC4 0018AE24 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8018DEC8 0018AE28 40 81 00 40 */ ble lbl_8018DF08
|
|
/* 8018DECC 0018AE2C 2C 06 00 08 */ cmpwi r6, 8
|
|
/* 8018DED0 0018AE30 38 86 FF F8 */ addi r4, r6, -8
|
|
/* 8018DED4 0018AE34 40 81 00 20 */ ble lbl_8018DEF4
|
|
/* 8018DED8 0018AE38 38 04 00 07 */ addi r0, r4, 7
|
|
/* 8018DEDC 0018AE3C 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8018DEE0 0018AE40 7C 09 03 A6 */ mtctr r0
|
|
/* 8018DEE4 0018AE44 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8018DEE8 0018AE48 40 81 00 0C */ ble lbl_8018DEF4
|
|
lbl_8018DEEC:
|
|
/* 8018DEEC 0018AE4C 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8018DEF0 0018AE50 42 00 FF FC */ bdnz lbl_8018DEEC
|
|
lbl_8018DEF4:
|
|
/* 8018DEF4 0018AE54 7C 03 30 50 */ subf r0, r3, r6
|
|
/* 8018DEF8 0018AE58 7C 09 03 A6 */ mtctr r0
|
|
/* 8018DEFC 0018AE5C 7C 03 30 00 */ cmpw r3, r6
|
|
/* 8018DF00 0018AE60 40 80 00 08 */ bge lbl_8018DF08
|
|
lbl_8018DF04:
|
|
/* 8018DF04 0018AE64 42 00 00 00 */ bdnz lbl_8018DF04
|
|
lbl_8018DF08:
|
|
/* 8018DF08 0018AE68 38 00 00 00 */ li r0, 0
|
|
/* 8018DF0C 0018AE6C 90 05 00 00 */ stw r0, 0(r5)
|
|
/* 8018DF10 0018AE70 48 00 09 5C */ b lbl_8018E86C
|
|
lbl_8018DF14:
|
|
/* 8018DF14 0018AE74 7F 83 E3 78 */ mr r3, r28
|
|
/* 8018DF18 0018AE78 7F A4 EB 78 */ mr r4, r29
|
|
/* 8018DF1C 0018AE7C 7F C5 F3 78 */ mr r5, r30
|
|
/* 8018DF20 0018AE80 4B FF F8 35 */ bl CheckForWall__11CBSWallHangFR15CBodyControllerR13CStateManager
|
|
/* 8018DF24 0018AE84 48 00 09 48 */ b lbl_8018E86C
|
|
.global lbl_8018DF28
|
|
lbl_8018DF28:
|
|
/* 8018DF28 0018AE88 7F 83 E3 78 */ mr r3, r28
|
|
/* 8018DF2C 0018AE8C 7F A4 EB 78 */ mr r4, r29
|
|
/* 8018DF30 0018AE90 48 00 0B 85 */ bl SetLaunchVelocity__11CBSWallHangFR15CBodyController
|
|
/* 8018DF34 0018AE94 7F 83 E3 78 */ mr r3, r28
|
|
/* 8018DF38 0018AE98 7F A4 EB 78 */ mr r4, r29
|
|
/* 8018DF3C 0018AE9C 7F C5 F3 78 */ mr r5, r30
|
|
/* 8018DF40 0018AEA0 4B FF F8 15 */ bl CheckForWall__11CBSWallHangFR15CBodyControllerR13CStateManager
|
|
/* 8018DF44 0018AEA4 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8018DF48 0018AEA8 40 82 09 24 */ bne lbl_8018E86C
|
|
/* 8018DF4C 0018AEAC 7F 83 E3 78 */ mr r3, r28
|
|
/* 8018DF50 0018AEB0 7F A4 EB 78 */ mr r4, r29
|
|
/* 8018DF54 0018AEB4 7F C5 F3 78 */ mr r5, r30
|
|
/* 8018DF58 0018AEB8 4B FF F6 79 */ bl CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager
|
|
/* 8018DF5C 0018AEBC 48 00 09 10 */ b lbl_8018E86C
|
|
.global lbl_8018DF60
|
|
lbl_8018DF60:
|
|
/* 8018DF60 0018AEC0 88 1D 03 00 */ lbz r0, 0x300(r29)
|
|
/* 8018DF64 0018AEC4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
|
|
/* 8018DF68 0018AEC8 41 82 00 F4 */ beq lbl_8018E05C
|
|
/* 8018DF6C 0018AECC 38 00 00 04 */ li r0, 4
|
|
/* 8018DF70 0018AED0 38 61 01 94 */ addi r3, r1, 0x194
|
|
/* 8018DF74 0018AED4 90 1C 00 04 */ stw r0, 4(r28)
|
|
/* 8018DF78 0018AED8 48 15 51 05 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DF7C 0018AEDC 38 61 01 9C */ addi r3, r1, 0x19c
|
|
/* 8018DF80 0018AEE0 48 15 50 FD */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DF84 0018AEE4 38 61 01 A4 */ addi r3, r1, 0x1a4
|
|
/* 8018DF88 0018AEE8 48 15 50 F5 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DF8C 0018AEEC 38 61 01 AC */ addi r3, r1, 0x1ac
|
|
/* 8018DF90 0018AEF0 48 15 50 ED */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DF94 0018AEF4 38 61 01 B4 */ addi r3, r1, 0x1b4
|
|
/* 8018DF98 0018AEF8 48 15 50 E5 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DF9C 0018AEFC 38 61 01 BC */ addi r3, r1, 0x1bc
|
|
/* 8018DFA0 0018AF00 48 15 50 DD */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DFA4 0018AF04 38 61 01 C4 */ addi r3, r1, 0x1c4
|
|
/* 8018DFA8 0018AF08 48 15 50 D5 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018DFAC 0018AF0C 80 9C 00 04 */ lwz r4, 4(r28)
|
|
/* 8018DFB0 0018AF10 38 61 01 CC */ addi r3, r1, 0x1cc
|
|
/* 8018DFB4 0018AF14 48 15 4F D1 */ bl FromEnum__12CPASAnimParmFi
|
|
/* 8018DFB8 0018AF18 38 61 01 9C */ addi r3, r1, 0x19c
|
|
/* 8018DFBC 0018AF1C 38 01 01 94 */ addi r0, r1, 0x194
|
|
/* 8018DFC0 0018AF20 90 61 00 08 */ stw r3, 8(r1)
|
|
/* 8018DFC4 0018AF24 38 61 04 98 */ addi r3, r1, 0x498
|
|
/* 8018DFC8 0018AF28 38 A1 01 CC */ addi r5, r1, 0x1cc
|
|
/* 8018DFCC 0018AF2C 38 C1 01 C4 */ addi r6, r1, 0x1c4
|
|
/* 8018DFD0 0018AF30 90 01 00 0C */ stw r0, 0xc(r1)
|
|
/* 8018DFD4 0018AF34 38 E1 01 BC */ addi r7, r1, 0x1bc
|
|
/* 8018DFD8 0018AF38 39 01 01 B4 */ addi r8, r1, 0x1b4
|
|
/* 8018DFDC 0018AF3C 39 21 01 AC */ addi r9, r1, 0x1ac
|
|
/* 8018DFE0 0018AF40 39 41 01 A4 */ addi r10, r1, 0x1a4
|
|
/* 8018DFE4 0018AF44 38 80 00 14 */ li r4, 0x14
|
|
/* 8018DFE8 0018AF48 4B EE F2 DD */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm
|
|
/* 8018DFEC 0018AF4C 80 BE 09 00 */ lwz r5, 0x900(r30)
|
|
/* 8018DFF0 0018AF50 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018DFF4 0018AF54 38 81 04 98 */ addi r4, r1, 0x498
|
|
/* 8018DFF8 0018AF58 4B FA C3 05 */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16
|
|
/* 8018DFFC 0018AF5C 34 A1 04 9C */ addic. r5, r1, 0x49c
|
|
/* 8018E000 0018AF60 41 82 08 6C */ beq lbl_8018E86C
|
|
/* 8018E004 0018AF64 80 C5 00 00 */ lwz r6, 0(r5)
|
|
/* 8018E008 0018AF68 38 60 00 00 */ li r3, 0
|
|
/* 8018E00C 0018AF6C 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8018E010 0018AF70 40 81 00 40 */ ble lbl_8018E050
|
|
/* 8018E014 0018AF74 2C 06 00 08 */ cmpwi r6, 8
|
|
/* 8018E018 0018AF78 38 86 FF F8 */ addi r4, r6, -8
|
|
/* 8018E01C 0018AF7C 40 81 00 20 */ ble lbl_8018E03C
|
|
/* 8018E020 0018AF80 38 04 00 07 */ addi r0, r4, 7
|
|
/* 8018E024 0018AF84 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8018E028 0018AF88 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E02C 0018AF8C 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8018E030 0018AF90 40 81 00 0C */ ble lbl_8018E03C
|
|
lbl_8018E034:
|
|
/* 8018E034 0018AF94 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8018E038 0018AF98 42 00 FF FC */ bdnz lbl_8018E034
|
|
lbl_8018E03C:
|
|
/* 8018E03C 0018AF9C 7C 03 30 50 */ subf r0, r3, r6
|
|
/* 8018E040 0018AFA0 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E044 0018AFA4 7C 03 30 00 */ cmpw r3, r6
|
|
/* 8018E048 0018AFA8 40 80 00 08 */ bge lbl_8018E050
|
|
lbl_8018E04C:
|
|
/* 8018E04C 0018AFAC 42 00 00 00 */ bdnz lbl_8018E04C
|
|
lbl_8018E050:
|
|
/* 8018E050 0018AFB0 38 00 00 00 */ li r0, 0
|
|
/* 8018E054 0018AFB4 90 05 00 00 */ stw r0, 0(r5)
|
|
/* 8018E058 0018AFB8 48 00 08 14 */ b lbl_8018E86C
|
|
lbl_8018E05C:
|
|
/* 8018E05C 0018AFBC 38 7D 00 04 */ addi r3, r29, 4
|
|
/* 8018E060 0018AFC0 38 80 00 0A */ li r4, 0xa
|
|
/* 8018E064 0018AFC4 4B FA 33 ED */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd
|
|
/* 8018E068 0018AFC8 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8018E06C 0018AFCC 41 82 08 00 */ beq lbl_8018E86C
|
|
/* 8018E070 0018AFD0 88 1C 00 18 */ lbz r0, 0x18(r28)
|
|
/* 8018E074 0018AFD4 38 60 00 01 */ li r3, 1
|
|
/* 8018E078 0018AFD8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19
|
|
/* 8018E07C 0018AFDC 98 1C 00 18 */ stb r0, 0x18(r28)
|
|
/* 8018E080 0018AFE0 48 00 07 EC */ b lbl_8018E86C
|
|
.global lbl_8018E084
|
|
lbl_8018E084:
|
|
/* 8018E084 0018AFE4 3B 7D 00 04 */ addi r27, r29, 4
|
|
/* 8018E088 0018AFE8 C0 22 A4 70 */ lfs f1, lbl_805AC190@sda21(r2)
|
|
/* 8018E08C 0018AFEC C0 1D 00 1C */ lfs f0, 0x1c(r29)
|
|
/* 8018E090 0018AFF0 38 00 00 00 */ li r0, 0
|
|
/* 8018E094 0018AFF4 FC 01 00 00 */ fcmpu cr0, f1, f0
|
|
/* 8018E098 0018AFF8 40 82 00 1C */ bne lbl_8018E0B4
|
|
/* 8018E09C 0018AFFC C0 1B 00 1C */ lfs f0, 0x1c(r27)
|
|
/* 8018E0A0 0018B000 FC 01 00 00 */ fcmpu cr0, f1, f0
|
|
/* 8018E0A4 0018B004 40 82 00 10 */ bne lbl_8018E0B4
|
|
/* 8018E0A8 0018B008 C0 1B 00 20 */ lfs f0, 0x20(r27)
|
|
/* 8018E0AC 0018B00C FC 01 00 00 */ fcmpu cr0, f1, f0
|
|
/* 8018E0B0 0018B010 41 82 00 08 */ beq lbl_8018E0B8
|
|
lbl_8018E0B4:
|
|
/* 8018E0B4 0018B014 38 00 00 01 */ li r0, 1
|
|
lbl_8018E0B8:
|
|
/* 8018E0B8 0018B018 54 00 06 3F */ clrlwi. r0, r0, 0x18
|
|
/* 8018E0BC 0018B01C 41 82 00 F4 */ beq lbl_8018E1B0
|
|
/* 8018E0C0 0018B020 A0 1C 00 08 */ lhz r0, 8(r28)
|
|
/* 8018E0C4 0018B024 7F C3 F3 78 */ mr r3, r30
|
|
/* 8018E0C8 0018B028 38 81 00 18 */ addi r4, r1, 0x18
|
|
/* 8018E0CC 0018B02C B0 01 00 18 */ sth r0, 0x18(r1)
|
|
/* 8018E0D0 0018B030 4B EB E4 D5 */ bl GetObjectById__13CStateManagerCF9TUniqueId
|
|
/* 8018E0D4 0018B034 7C 64 1B 78 */ mr r4, r3
|
|
/* 8018E0D8 0018B038 38 61 00 2C */ addi r3, r1, 0x2c
|
|
/* 8018E0DC 0018B03C 4B F2 1B B5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity"
|
|
/* 8018E0E0 0018B040 83 43 00 04 */ lwz r26, 4(r3)
|
|
/* 8018E0E4 0018B044 28 1A 00 00 */ cmplwi r26, 0
|
|
/* 8018E0E8 0018B048 41 82 00 C8 */ beq lbl_8018E1B0
|
|
/* 8018E0EC 0018B04C 80 9D 00 00 */ lwz r4, 0(r29)
|
|
/* 8018E0F0 0018B050 38 61 01 8C */ addi r3, r1, 0x18c
|
|
/* 8018E0F4 0018B054 4B F2 1B 9D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity"
|
|
/* 8018E0F8 0018B058 83 23 00 04 */ lwz r25, 4(r3)
|
|
/* 8018E0FC 0018B05C 28 19 00 00 */ cmplwi r25, 0
|
|
/* 8018E100 0018B060 41 82 00 B0 */ beq lbl_8018E1B0
|
|
/* 8018E104 0018B064 38 61 02 D4 */ addi r3, r1, 0x2d4
|
|
/* 8018E108 0018B068 38 9B 00 18 */ addi r4, r27, 0x18
|
|
/* 8018E10C 0018B06C 48 18 67 45 */ bl AsNormalized__9CVector3fCFv
|
|
/* 8018E110 0018B070 C0 BA 00 48 */ lfs f5, 0x48(r26)
|
|
/* 8018E114 0018B074 C0 F9 00 48 */ lfs f7, 0x48(r25)
|
|
/* 8018E118 0018B078 C0 9A 00 38 */ lfs f4, 0x38(r26)
|
|
/* 8018E11C 0018B07C C1 21 02 D8 */ lfs f9, 0x2d8(r1)
|
|
/* 8018E120 0018B080 EC 27 01 72 */ fmuls f1, f7, f5
|
|
/* 8018E124 0018B084 C0 79 00 38 */ lfs f3, 0x38(r25)
|
|
/* 8018E128 0018B088 EC 09 01 72 */ fmuls f0, f9, f5
|
|
/* 8018E12C 0018B08C C0 DA 00 58 */ lfs f6, 0x58(r26)
|
|
/* 8018E130 0018B090 C1 61 02 D4 */ lfs f11, 0x2d4(r1)
|
|
/* 8018E134 0018B094 EC 43 09 3A */ fmadds f2, f3, f4, f1
|
|
/* 8018E138 0018B098 C1 19 00 58 */ lfs f8, 0x58(r25)
|
|
/* 8018E13C 0018B09C EC 2B 01 3A */ fmadds f1, f11, f4, f0
|
|
/* 8018E140 0018B0A0 C1 41 02 DC */ lfs f10, 0x2dc(r1)
|
|
/* 8018E144 0018B0A4 EC 48 11 BA */ fmadds f2, f8, f6, f2
|
|
/* 8018E148 0018B0A8 C0 02 A4 78 */ lfs f0, lbl_805AC198@sda21(r2)
|
|
/* 8018E14C 0018B0AC EC 2A 09 BA */ fmadds f1, f10, f6, f1
|
|
/* 8018E150 0018B0B0 D0 81 02 BC */ stfs f4, 0x2bc(r1)
|
|
/* 8018E154 0018B0B4 FC 02 00 40 */ fcmpo cr0, f2, f0
|
|
/* 8018E158 0018B0B8 D0 A1 02 C0 */ stfs f5, 0x2c0(r1)
|
|
/* 8018E15C 0018B0BC D0 C1 02 C4 */ stfs f6, 0x2c4(r1)
|
|
/* 8018E160 0018B0C0 D0 61 02 C8 */ stfs f3, 0x2c8(r1)
|
|
/* 8018E164 0018B0C4 D0 E1 02 CC */ stfs f7, 0x2cc(r1)
|
|
/* 8018E168 0018B0C8 D1 01 02 D0 */ stfs f8, 0x2d0(r1)
|
|
/* 8018E16C 0018B0CC D0 81 02 B0 */ stfs f4, 0x2b0(r1)
|
|
/* 8018E170 0018B0D0 D0 A1 02 B4 */ stfs f5, 0x2b4(r1)
|
|
/* 8018E174 0018B0D4 D0 C1 02 B8 */ stfs f6, 0x2b8(r1)
|
|
/* 8018E178 0018B0D8 41 80 00 10 */ blt lbl_8018E188
|
|
/* 8018E17C 0018B0DC C0 02 A4 7C */ lfs f0, lbl_805AC19C@sda21(r2)
|
|
/* 8018E180 0018B0E0 FC 01 00 40 */ fcmpo cr0, f1, f0
|
|
/* 8018E184 0018B0E4 40 81 00 2C */ ble lbl_8018E1B0
|
|
lbl_8018E188:
|
|
/* 8018E188 0018B0E8 FC 60 58 50 */ fneg f3, f11
|
|
/* 8018E18C 0018B0EC 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018E190 0018B0F0 FC 40 48 50 */ fneg f2, f9
|
|
/* 8018E194 0018B0F4 38 81 02 A4 */ addi r4, r1, 0x2a4
|
|
/* 8018E198 0018B0F8 FC 00 50 50 */ fneg f0, f10
|
|
/* 8018E19C 0018B0FC FC 20 F8 90 */ fmr f1, f31
|
|
/* 8018E1A0 0018B100 D0 61 02 A4 */ stfs f3, 0x2a4(r1)
|
|
/* 8018E1A4 0018B104 D0 41 02 A8 */ stfs f2, 0x2a8(r1)
|
|
/* 8018E1A8 0018B108 D0 01 02 AC */ stfs f0, 0x2ac(r1)
|
|
/* 8018E1AC 0018B10C 4B FA C4 F9 */ bl FaceDirection__15CBodyControllerFRC9CVector3ff
|
|
lbl_8018E1B0:
|
|
/* 8018E1B0 0018B110 7F 63 DB 78 */ mr r3, r27
|
|
/* 8018E1B4 0018B114 38 80 00 0A */ li r4, 0xa
|
|
/* 8018E1B8 0018B118 4B FA 32 99 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd
|
|
/* 8018E1BC 0018B11C 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8018E1C0 0018B120 40 82 00 10 */ bne lbl_8018E1D0
|
|
/* 8018E1C4 0018B124 88 1C 00 18 */ lbz r0, 0x18(r28)
|
|
/* 8018E1C8 0018B128 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f
|
|
/* 8018E1CC 0018B12C 41 82 00 F0 */ beq lbl_8018E2BC
|
|
lbl_8018E1D0:
|
|
/* 8018E1D0 0018B130 38 00 00 06 */ li r0, 6
|
|
/* 8018E1D4 0018B134 38 61 01 4C */ addi r3, r1, 0x14c
|
|
/* 8018E1D8 0018B138 90 1C 00 04 */ stw r0, 4(r28)
|
|
/* 8018E1DC 0018B13C 48 15 4E A1 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E1E0 0018B140 38 61 01 54 */ addi r3, r1, 0x154
|
|
/* 8018E1E4 0018B144 48 15 4E 99 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E1E8 0018B148 38 61 01 5C */ addi r3, r1, 0x15c
|
|
/* 8018E1EC 0018B14C 48 15 4E 91 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E1F0 0018B150 38 61 01 64 */ addi r3, r1, 0x164
|
|
/* 8018E1F4 0018B154 48 15 4E 89 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E1F8 0018B158 38 61 01 6C */ addi r3, r1, 0x16c
|
|
/* 8018E1FC 0018B15C 48 15 4E 81 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E200 0018B160 38 61 01 74 */ addi r3, r1, 0x174
|
|
/* 8018E204 0018B164 48 15 4E 79 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E208 0018B168 38 61 01 7C */ addi r3, r1, 0x17c
|
|
/* 8018E20C 0018B16C 48 15 4E 71 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E210 0018B170 80 9C 00 04 */ lwz r4, 4(r28)
|
|
/* 8018E214 0018B174 38 61 01 84 */ addi r3, r1, 0x184
|
|
/* 8018E218 0018B178 48 15 4D 6D */ bl FromEnum__12CPASAnimParmFi
|
|
/* 8018E21C 0018B17C 38 61 01 54 */ addi r3, r1, 0x154
|
|
/* 8018E220 0018B180 38 01 01 4C */ addi r0, r1, 0x14c
|
|
/* 8018E224 0018B184 90 61 00 08 */ stw r3, 8(r1)
|
|
/* 8018E228 0018B188 38 61 04 50 */ addi r3, r1, 0x450
|
|
/* 8018E22C 0018B18C 38 A1 01 84 */ addi r5, r1, 0x184
|
|
/* 8018E230 0018B190 38 C1 01 7C */ addi r6, r1, 0x17c
|
|
/* 8018E234 0018B194 90 01 00 0C */ stw r0, 0xc(r1)
|
|
/* 8018E238 0018B198 38 E1 01 74 */ addi r7, r1, 0x174
|
|
/* 8018E23C 0018B19C 39 01 01 6C */ addi r8, r1, 0x16c
|
|
/* 8018E240 0018B1A0 39 21 01 64 */ addi r9, r1, 0x164
|
|
/* 8018E244 0018B1A4 39 41 01 5C */ addi r10, r1, 0x15c
|
|
/* 8018E248 0018B1A8 38 80 00 14 */ li r4, 0x14
|
|
/* 8018E24C 0018B1AC 4B EE F0 79 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm
|
|
/* 8018E250 0018B1B0 80 BE 09 00 */ lwz r5, 0x900(r30)
|
|
/* 8018E254 0018B1B4 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018E258 0018B1B8 38 81 04 50 */ addi r4, r1, 0x450
|
|
/* 8018E25C 0018B1BC 4B FA C1 4D */ bl PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16
|
|
/* 8018E260 0018B1C0 34 A1 04 54 */ addic. r5, r1, 0x454
|
|
/* 8018E264 0018B1C4 41 82 00 58 */ beq lbl_8018E2BC
|
|
/* 8018E268 0018B1C8 80 C5 00 00 */ lwz r6, 0(r5)
|
|
/* 8018E26C 0018B1CC 38 60 00 00 */ li r3, 0
|
|
/* 8018E270 0018B1D0 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8018E274 0018B1D4 40 81 00 40 */ ble lbl_8018E2B4
|
|
/* 8018E278 0018B1D8 2C 06 00 08 */ cmpwi r6, 8
|
|
/* 8018E27C 0018B1DC 38 86 FF F8 */ addi r4, r6, -8
|
|
/* 8018E280 0018B1E0 40 81 00 20 */ ble lbl_8018E2A0
|
|
/* 8018E284 0018B1E4 38 04 00 07 */ addi r0, r4, 7
|
|
/* 8018E288 0018B1E8 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8018E28C 0018B1EC 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E290 0018B1F0 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8018E294 0018B1F4 40 81 00 0C */ ble lbl_8018E2A0
|
|
lbl_8018E298:
|
|
/* 8018E298 0018B1F8 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8018E29C 0018B1FC 42 00 FF FC */ bdnz lbl_8018E298
|
|
lbl_8018E2A0:
|
|
/* 8018E2A0 0018B200 7C 03 30 50 */ subf r0, r3, r6
|
|
/* 8018E2A4 0018B204 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E2A8 0018B208 7C 03 30 00 */ cmpw r3, r6
|
|
/* 8018E2AC 0018B20C 40 80 00 08 */ bge lbl_8018E2B4
|
|
lbl_8018E2B0:
|
|
/* 8018E2B0 0018B210 42 00 00 00 */ bdnz lbl_8018E2B0
|
|
lbl_8018E2B4:
|
|
/* 8018E2B4 0018B214 38 00 00 00 */ li r0, 0
|
|
/* 8018E2B8 0018B218 90 05 00 00 */ stw r0, 0(r5)
|
|
lbl_8018E2BC:
|
|
/* 8018E2BC 0018B21C 7F 83 E3 78 */ mr r3, r28
|
|
/* 8018E2C0 0018B220 7F A4 EB 78 */ mr r4, r29
|
|
/* 8018E2C4 0018B224 4B FF F2 B9 */ bl FixInPlace__11CBSWallHangFR15CBodyController
|
|
/* 8018E2C8 0018B228 48 00 05 A4 */ b lbl_8018E86C
|
|
.global lbl_8018E2CC
|
|
lbl_8018E2CC:
|
|
/* 8018E2CC 0018B22C 88 1D 03 00 */ lbz r0, 0x300(r29)
|
|
/* 8018E2D0 0018B230 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
|
|
/* 8018E2D4 0018B234 41 82 00 F0 */ beq lbl_8018E3C4
|
|
/* 8018E2D8 0018B238 38 00 00 04 */ li r0, 4
|
|
/* 8018E2DC 0018B23C 38 61 01 0C */ addi r3, r1, 0x10c
|
|
/* 8018E2E0 0018B240 90 1C 00 04 */ stw r0, 4(r28)
|
|
/* 8018E2E4 0018B244 48 15 4D 99 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E2E8 0018B248 38 61 01 14 */ addi r3, r1, 0x114
|
|
/* 8018E2EC 0018B24C 48 15 4D 91 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E2F0 0018B250 38 61 01 1C */ addi r3, r1, 0x11c
|
|
/* 8018E2F4 0018B254 48 15 4D 89 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E2F8 0018B258 38 61 01 24 */ addi r3, r1, 0x124
|
|
/* 8018E2FC 0018B25C 48 15 4D 81 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E300 0018B260 38 61 01 2C */ addi r3, r1, 0x12c
|
|
/* 8018E304 0018B264 48 15 4D 79 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E308 0018B268 38 61 01 34 */ addi r3, r1, 0x134
|
|
/* 8018E30C 0018B26C 48 15 4D 71 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E310 0018B270 38 61 01 3C */ addi r3, r1, 0x13c
|
|
/* 8018E314 0018B274 48 15 4D 69 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E318 0018B278 80 9C 00 04 */ lwz r4, 4(r28)
|
|
/* 8018E31C 0018B27C 38 61 01 44 */ addi r3, r1, 0x144
|
|
/* 8018E320 0018B280 48 15 4C 65 */ bl FromEnum__12CPASAnimParmFi
|
|
/* 8018E324 0018B284 38 61 01 14 */ addi r3, r1, 0x114
|
|
/* 8018E328 0018B288 38 01 01 0C */ addi r0, r1, 0x10c
|
|
/* 8018E32C 0018B28C 90 61 00 08 */ stw r3, 8(r1)
|
|
/* 8018E330 0018B290 38 61 04 08 */ addi r3, r1, 0x408
|
|
/* 8018E334 0018B294 38 A1 01 44 */ addi r5, r1, 0x144
|
|
/* 8018E338 0018B298 38 C1 01 3C */ addi r6, r1, 0x13c
|
|
/* 8018E33C 0018B29C 90 01 00 0C */ stw r0, 0xc(r1)
|
|
/* 8018E340 0018B2A0 38 E1 01 34 */ addi r7, r1, 0x134
|
|
/* 8018E344 0018B2A4 39 01 01 2C */ addi r8, r1, 0x12c
|
|
/* 8018E348 0018B2A8 39 21 01 24 */ addi r9, r1, 0x124
|
|
/* 8018E34C 0018B2AC 39 41 01 1C */ addi r10, r1, 0x11c
|
|
/* 8018E350 0018B2B0 38 80 00 14 */ li r4, 0x14
|
|
/* 8018E354 0018B2B4 4B EE EF 71 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm
|
|
/* 8018E358 0018B2B8 80 BE 09 00 */ lwz r5, 0x900(r30)
|
|
/* 8018E35C 0018B2BC 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018E360 0018B2C0 38 81 04 08 */ addi r4, r1, 0x408
|
|
/* 8018E364 0018B2C4 4B FA BF 99 */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16
|
|
/* 8018E368 0018B2C8 34 A1 04 0C */ addic. r5, r1, 0x40c
|
|
/* 8018E36C 0018B2CC 41 82 00 58 */ beq lbl_8018E3C4
|
|
/* 8018E370 0018B2D0 80 C5 00 00 */ lwz r6, 0(r5)
|
|
/* 8018E374 0018B2D4 38 60 00 00 */ li r3, 0
|
|
/* 8018E378 0018B2D8 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8018E37C 0018B2DC 40 81 00 40 */ ble lbl_8018E3BC
|
|
/* 8018E380 0018B2E0 2C 06 00 08 */ cmpwi r6, 8
|
|
/* 8018E384 0018B2E4 38 86 FF F8 */ addi r4, r6, -8
|
|
/* 8018E388 0018B2E8 40 81 00 20 */ ble lbl_8018E3A8
|
|
/* 8018E38C 0018B2EC 38 04 00 07 */ addi r0, r4, 7
|
|
/* 8018E390 0018B2F0 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8018E394 0018B2F4 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E398 0018B2F8 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8018E39C 0018B2FC 40 81 00 0C */ ble lbl_8018E3A8
|
|
lbl_8018E3A0:
|
|
/* 8018E3A0 0018B300 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8018E3A4 0018B304 42 00 FF FC */ bdnz lbl_8018E3A0
|
|
lbl_8018E3A8:
|
|
/* 8018E3A8 0018B308 7C 03 30 50 */ subf r0, r3, r6
|
|
/* 8018E3AC 0018B30C 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E3B0 0018B310 7C 03 30 00 */ cmpw r3, r6
|
|
/* 8018E3B4 0018B314 40 80 00 08 */ bge lbl_8018E3BC
|
|
lbl_8018E3B8:
|
|
/* 8018E3B8 0018B318 42 00 00 00 */ bdnz lbl_8018E3B8
|
|
lbl_8018E3BC:
|
|
/* 8018E3BC 0018B31C 38 00 00 00 */ li r0, 0
|
|
/* 8018E3C0 0018B320 90 05 00 00 */ stw r0, 0(r5)
|
|
lbl_8018E3C4:
|
|
/* 8018E3C4 0018B324 7F 83 E3 78 */ mr r3, r28
|
|
/* 8018E3C8 0018B328 7F A4 EB 78 */ mr r4, r29
|
|
/* 8018E3CC 0018B32C 4B FF F1 B1 */ bl FixInPlace__11CBSWallHangFR15CBodyController
|
|
/* 8018E3D0 0018B330 48 00 04 9C */ b lbl_8018E86C
|
|
.global lbl_8018E3D4
|
|
lbl_8018E3D4:
|
|
/* 8018E3D4 0018B334 88 1D 03 00 */ lbz r0, 0x300(r29)
|
|
/* 8018E3D8 0018B338 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
|
|
/* 8018E3DC 0018B33C 41 82 04 90 */ beq lbl_8018E86C
|
|
/* 8018E3E0 0018B340 38 61 00 CC */ addi r3, r1, 0xcc
|
|
/* 8018E3E4 0018B344 48 15 4C 99 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E3E8 0018B348 38 61 00 D4 */ addi r3, r1, 0xd4
|
|
/* 8018E3EC 0018B34C 48 15 4C 91 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E3F0 0018B350 38 61 00 DC */ addi r3, r1, 0xdc
|
|
/* 8018E3F4 0018B354 48 15 4C 89 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E3F8 0018B358 38 61 00 E4 */ addi r3, r1, 0xe4
|
|
/* 8018E3FC 0018B35C 48 15 4C 81 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E400 0018B360 38 61 00 EC */ addi r3, r1, 0xec
|
|
/* 8018E404 0018B364 48 15 4C 79 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E408 0018B368 38 61 00 F4 */ addi r3, r1, 0xf4
|
|
/* 8018E40C 0018B36C 48 15 4C 71 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E410 0018B370 38 61 00 FC */ addi r3, r1, 0xfc
|
|
/* 8018E414 0018B374 48 15 4C 69 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E418 0018B378 38 61 01 04 */ addi r3, r1, 0x104
|
|
/* 8018E41C 0018B37C 38 80 00 07 */ li r4, 7
|
|
/* 8018E420 0018B380 48 15 4B 65 */ bl FromEnum__12CPASAnimParmFi
|
|
/* 8018E424 0018B384 38 61 00 D4 */ addi r3, r1, 0xd4
|
|
/* 8018E428 0018B388 38 01 00 CC */ addi r0, r1, 0xcc
|
|
/* 8018E42C 0018B38C 90 61 00 08 */ stw r3, 8(r1)
|
|
/* 8018E430 0018B390 38 61 03 C0 */ addi r3, r1, 0x3c0
|
|
/* 8018E434 0018B394 38 A1 01 04 */ addi r5, r1, 0x104
|
|
/* 8018E438 0018B398 38 C1 00 FC */ addi r6, r1, 0xfc
|
|
/* 8018E43C 0018B39C 90 01 00 0C */ stw r0, 0xc(r1)
|
|
/* 8018E440 0018B3A0 38 E1 00 F4 */ addi r7, r1, 0xf4
|
|
/* 8018E444 0018B3A4 39 01 00 EC */ addi r8, r1, 0xec
|
|
/* 8018E448 0018B3A8 39 21 00 E4 */ addi r9, r1, 0xe4
|
|
/* 8018E44C 0018B3AC 39 41 00 DC */ addi r10, r1, 0xdc
|
|
/* 8018E450 0018B3B0 38 80 00 14 */ li r4, 0x14
|
|
/* 8018E454 0018B3B4 4B EE EE 71 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm
|
|
/* 8018E458 0018B3B8 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018E45C 0018B3BC 4B FA BF F9 */ bl GetPASDatabase__15CBodyControllerCFv
|
|
/* 8018E460 0018B3C0 80 DE 09 00 */ lwz r6, 0x900(r30)
|
|
/* 8018E464 0018B3C4 7C 64 1B 78 */ mr r4, r3
|
|
/* 8018E468 0018B3C8 38 61 00 C4 */ addi r3, r1, 0xc4
|
|
/* 8018E46C 0018B3CC 38 A1 03 C0 */ addi r5, r1, 0x3c0
|
|
/* 8018E470 0018B3D0 38 E0 FF FF */ li r7, -1
|
|
/* 8018E474 0018B3D4 48 15 6B ED */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i
|
|
/* 8018E478 0018B3D8 C0 21 00 C4 */ lfs f1, 0xc4(r1)
|
|
/* 8018E47C 0018B3DC C0 02 A4 70 */ lfs f0, lbl_805AC190@sda21(r2)
|
|
/* 8018E480 0018B3E0 80 61 00 C8 */ lwz r3, 0xc8(r1)
|
|
/* 8018E484 0018B3E4 FC 01 00 40 */ fcmpo cr0, f1, f0
|
|
/* 8018E488 0018B3E8 40 81 00 5C */ ble lbl_8018E4E4
|
|
/* 8018E48C 0018B3EC 38 00 00 07 */ li r0, 7
|
|
/* 8018E490 0018B3F0 C0 02 A4 6C */ lfs f0, lbl_805AC18C@sda21(r2)
|
|
/* 8018E494 0018B3F4 90 1C 00 04 */ stw r0, 4(r28)
|
|
/* 8018E498 0018B3F8 38 00 00 00 */ li r0, 0
|
|
/* 8018E49C 0018B3FC 38 C0 FF FF */ li r6, -1
|
|
/* 8018E4A0 0018B400 38 E0 00 01 */ li r7, 1
|
|
/* 8018E4A4 0018B404 90 61 02 E0 */ stw r3, 0x2e0(r1)
|
|
/* 8018E4A8 0018B408 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018E4AC 0018B40C 38 81 02 E0 */ addi r4, r1, 0x2e0
|
|
/* 8018E4B0 0018B410 38 A0 00 00 */ li r5, 0
|
|
/* 8018E4B4 0018B414 90 C1 02 E4 */ stw r6, 0x2e4(r1)
|
|
/* 8018E4B8 0018B418 38 C0 00 00 */ li r6, 0
|
|
/* 8018E4BC 0018B41C D0 01 02 E8 */ stfs f0, 0x2e8(r1)
|
|
/* 8018E4C0 0018B420 98 E1 02 EC */ stb r7, 0x2ec(r1)
|
|
/* 8018E4C4 0018B424 90 01 02 F0 */ stw r0, 0x2f0(r1)
|
|
/* 8018E4C8 0018B428 90 01 02 F4 */ stw r0, 0x2f4(r1)
|
|
/* 8018E4CC 0018B42C 98 01 02 F8 */ stb r0, 0x2f8(r1)
|
|
/* 8018E4D0 0018B430 90 01 02 FC */ stw r0, 0x2fc(r1)
|
|
/* 8018E4D4 0018B434 90 01 03 00 */ stw r0, 0x300(r1)
|
|
/* 8018E4D8 0018B438 90 01 03 04 */ stw r0, 0x304(r1)
|
|
/* 8018E4DC 0018B43C 4B FA C4 41 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb
|
|
/* 8018E4E0 0018B440 48 00 00 F0 */ b lbl_8018E5D0
|
|
lbl_8018E4E4:
|
|
/* 8018E4E4 0018B444 38 00 00 08 */ li r0, 8
|
|
/* 8018E4E8 0018B448 38 61 00 84 */ addi r3, r1, 0x84
|
|
/* 8018E4EC 0018B44C 90 1C 00 04 */ stw r0, 4(r28)
|
|
/* 8018E4F0 0018B450 48 15 4B 8D */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E4F4 0018B454 38 61 00 8C */ addi r3, r1, 0x8c
|
|
/* 8018E4F8 0018B458 48 15 4B 85 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E4FC 0018B45C 38 61 00 94 */ addi r3, r1, 0x94
|
|
/* 8018E500 0018B460 48 15 4B 7D */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E504 0018B464 38 61 00 9C */ addi r3, r1, 0x9c
|
|
/* 8018E508 0018B468 48 15 4B 75 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E50C 0018B46C 38 61 00 A4 */ addi r3, r1, 0xa4
|
|
/* 8018E510 0018B470 48 15 4B 6D */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E514 0018B474 38 61 00 AC */ addi r3, r1, 0xac
|
|
/* 8018E518 0018B478 48 15 4B 65 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E51C 0018B47C 38 61 00 B4 */ addi r3, r1, 0xb4
|
|
/* 8018E520 0018B480 48 15 4B 5D */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E524 0018B484 80 9C 00 04 */ lwz r4, 4(r28)
|
|
/* 8018E528 0018B488 38 61 00 BC */ addi r3, r1, 0xbc
|
|
/* 8018E52C 0018B48C 48 15 4A 59 */ bl FromEnum__12CPASAnimParmFi
|
|
/* 8018E530 0018B490 38 61 00 8C */ addi r3, r1, 0x8c
|
|
/* 8018E534 0018B494 38 01 00 84 */ addi r0, r1, 0x84
|
|
/* 8018E538 0018B498 90 61 00 08 */ stw r3, 8(r1)
|
|
/* 8018E53C 0018B49C 38 61 03 78 */ addi r3, r1, 0x378
|
|
/* 8018E540 0018B4A0 38 A1 00 BC */ addi r5, r1, 0xbc
|
|
/* 8018E544 0018B4A4 38 C1 00 B4 */ addi r6, r1, 0xb4
|
|
/* 8018E548 0018B4A8 90 01 00 0C */ stw r0, 0xc(r1)
|
|
/* 8018E54C 0018B4AC 38 E1 00 AC */ addi r7, r1, 0xac
|
|
/* 8018E550 0018B4B0 39 01 00 A4 */ addi r8, r1, 0xa4
|
|
/* 8018E554 0018B4B4 39 21 00 9C */ addi r9, r1, 0x9c
|
|
/* 8018E558 0018B4B8 39 41 00 94 */ addi r10, r1, 0x94
|
|
/* 8018E55C 0018B4BC 38 80 00 14 */ li r4, 0x14
|
|
/* 8018E560 0018B4C0 4B EE ED 65 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm
|
|
/* 8018E564 0018B4C4 80 BE 09 00 */ lwz r5, 0x900(r30)
|
|
/* 8018E568 0018B4C8 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018E56C 0018B4CC 38 81 03 78 */ addi r4, r1, 0x378
|
|
/* 8018E570 0018B4D0 4B FA BD 8D */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16
|
|
/* 8018E574 0018B4D4 34 A1 03 7C */ addic. r5, r1, 0x37c
|
|
/* 8018E578 0018B4D8 41 82 00 58 */ beq lbl_8018E5D0
|
|
/* 8018E57C 0018B4DC 80 C5 00 00 */ lwz r6, 0(r5)
|
|
/* 8018E580 0018B4E0 38 60 00 00 */ li r3, 0
|
|
/* 8018E584 0018B4E4 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8018E588 0018B4E8 40 81 00 40 */ ble lbl_8018E5C8
|
|
/* 8018E58C 0018B4EC 2C 06 00 08 */ cmpwi r6, 8
|
|
/* 8018E590 0018B4F0 38 86 FF F8 */ addi r4, r6, -8
|
|
/* 8018E594 0018B4F4 40 81 00 20 */ ble lbl_8018E5B4
|
|
/* 8018E598 0018B4F8 38 04 00 07 */ addi r0, r4, 7
|
|
/* 8018E59C 0018B4FC 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8018E5A0 0018B500 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E5A4 0018B504 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8018E5A8 0018B508 40 81 00 0C */ ble lbl_8018E5B4
|
|
lbl_8018E5AC:
|
|
/* 8018E5AC 0018B50C 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8018E5B0 0018B510 42 00 FF FC */ bdnz lbl_8018E5AC
|
|
lbl_8018E5B4:
|
|
/* 8018E5B4 0018B514 7C 03 30 50 */ subf r0, r3, r6
|
|
/* 8018E5B8 0018B518 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E5BC 0018B51C 7C 03 30 00 */ cmpw r3, r6
|
|
/* 8018E5C0 0018B520 40 80 00 08 */ bge lbl_8018E5C8
|
|
lbl_8018E5C4:
|
|
/* 8018E5C4 0018B524 42 00 00 00 */ bdnz lbl_8018E5C4
|
|
lbl_8018E5C8:
|
|
/* 8018E5C8 0018B528 38 00 00 00 */ li r0, 0
|
|
/* 8018E5CC 0018B52C 90 05 00 00 */ stw r0, 0(r5)
|
|
lbl_8018E5D0:
|
|
/* 8018E5D0 0018B530 80 9D 00 00 */ lwz r4, 0(r29)
|
|
/* 8018E5D4 0018B534 38 61 00 7C */ addi r3, r1, 0x7c
|
|
/* 8018E5D8 0018B538 4B F1 E1 0D */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity"
|
|
/* 8018E5DC 0018B53C 83 23 00 04 */ lwz r25, 4(r3)
|
|
/* 8018E5E0 0018B540 28 19 00 00 */ cmplwi r25, 0
|
|
/* 8018E5E4 0018B544 41 82 00 D4 */ beq lbl_8018E6B8
|
|
/* 8018E5E8 0018B548 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
|
|
/* 8018E5EC 0018B54C 7F C3 F3 78 */ mr r3, r30
|
|
/* 8018E5F0 0018B550 7F 24 CB 78 */ mr r4, r25
|
|
/* 8018E5F4 0018B554 38 A1 00 14 */ addi r5, r1, 0x14
|
|
/* 8018E5F8 0018B558 B0 01 00 14 */ sth r0, 0x14(r1)
|
|
/* 8018E5FC 0018B55C 38 C0 00 28 */ li r6, 0x28
|
|
/* 8018E600 0018B560 4B EB 58 D1 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage
|
|
/* 8018E604 0018B564 88 1C 00 18 */ lbz r0, 0x18(r28)
|
|
/* 8018E608 0018B568 38 60 00 00 */ li r3, 0
|
|
/* 8018E60C 0018B56C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18
|
|
/* 8018E610 0018B570 7F C3 F3 78 */ mr r3, r30
|
|
/* 8018E614 0018B574 98 1C 00 18 */ stb r0, 0x18(r28)
|
|
/* 8018E618 0018B578 38 81 00 10 */ addi r4, r1, 0x10
|
|
/* 8018E61C 0018B57C A0 1C 00 08 */ lhz r0, 8(r28)
|
|
/* 8018E620 0018B580 B0 01 00 10 */ sth r0, 0x10(r1)
|
|
/* 8018E624 0018B584 4B EB DF 81 */ bl GetObjectById__13CStateManagerCF9TUniqueId
|
|
/* 8018E628 0018B588 7C 64 1B 78 */ mr r4, r3
|
|
/* 8018E62C 0018B58C 38 61 00 24 */ addi r3, r1, 0x24
|
|
/* 8018E630 0018B590 4B F2 16 61 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity"
|
|
/* 8018E634 0018B594 80 63 00 04 */ lwz r3, 4(r3)
|
|
/* 8018E638 0018B598 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8018E63C 0018B59C 41 82 00 38 */ beq lbl_8018E674
|
|
/* 8018E640 0018B5A0 C0 82 A4 80 */ lfs f4, lbl_805AC1A0@sda21(r2)
|
|
/* 8018E644 0018B5A4 C0 03 00 38 */ lfs f0, 0x38(r3)
|
|
/* 8018E648 0018B5A8 C0 63 00 48 */ lfs f3, 0x48(r3)
|
|
/* 8018E64C 0018B5AC C0 43 00 58 */ lfs f2, 0x58(r3)
|
|
/* 8018E650 0018B5B0 EC 24 00 32 */ fmuls f1, f4, f0
|
|
/* 8018E654 0018B5B4 EC 64 00 F2 */ fmuls f3, f4, f3
|
|
/* 8018E658 0018B5B8 C0 02 A4 84 */ lfs f0, lbl_805AC1A4@sda21(r2)
|
|
/* 8018E65C 0018B5BC EC 44 00 B2 */ fmuls f2, f4, f2
|
|
/* 8018E660 0018B5C0 D0 3C 00 0C */ stfs f1, 0xc(r28)
|
|
/* 8018E664 0018B5C4 D0 7C 00 10 */ stfs f3, 0x10(r28)
|
|
/* 8018E668 0018B5C8 D0 5C 00 14 */ stfs f2, 0x14(r28)
|
|
/* 8018E66C 0018B5CC D0 1C 00 14 */ stfs f0, 0x14(r28)
|
|
/* 8018E670 0018B5D0 48 00 00 2C */ b lbl_8018E69C
|
|
lbl_8018E674:
|
|
/* 8018E674 0018B5D4 C0 62 A4 88 */ lfs f3, lbl_805AC1A8@sda21(r2)
|
|
/* 8018E678 0018B5D8 C0 19 00 38 */ lfs f0, 0x38(r25)
|
|
/* 8018E67C 0018B5DC C0 59 00 48 */ lfs f2, 0x48(r25)
|
|
/* 8018E680 0018B5E0 C0 39 00 58 */ lfs f1, 0x58(r25)
|
|
/* 8018E684 0018B5E4 EC 03 00 32 */ fmuls f0, f3, f0
|
|
/* 8018E688 0018B5E8 EC 43 00 B2 */ fmuls f2, f3, f2
|
|
/* 8018E68C 0018B5EC EC 23 00 72 */ fmuls f1, f3, f1
|
|
/* 8018E690 0018B5F0 D0 1C 00 0C */ stfs f0, 0xc(r28)
|
|
/* 8018E694 0018B5F4 D0 5C 00 10 */ stfs f2, 0x10(r28)
|
|
/* 8018E698 0018B5F8 D0 3C 00 14 */ stfs f1, 0x14(r28)
|
|
lbl_8018E69C:
|
|
/* 8018E69C 0018B5FC 4B E8 CE 99 */ bl Identity__10CAxisAngleFv
|
|
/* 8018E6A0 0018B600 80 83 00 00 */ lwz r4, 0(r3)
|
|
/* 8018E6A4 0018B604 80 03 00 04 */ lwz r0, 4(r3)
|
|
/* 8018E6A8 0018B608 90 99 01 08 */ stw r4, 0x108(r25)
|
|
/* 8018E6AC 0018B60C 90 19 01 0C */ stw r0, 0x10c(r25)
|
|
/* 8018E6B0 0018B610 80 03 00 08 */ lwz r0, 8(r3)
|
|
/* 8018E6B4 0018B614 90 19 01 10 */ stw r0, 0x110(r25)
|
|
lbl_8018E6B8:
|
|
/* 8018E6B8 0018B618 34 A1 03 C4 */ addic. r5, r1, 0x3c4
|
|
/* 8018E6BC 0018B61C 41 82 01 B0 */ beq lbl_8018E86C
|
|
/* 8018E6C0 0018B620 80 C5 00 00 */ lwz r6, 0(r5)
|
|
/* 8018E6C4 0018B624 38 60 00 00 */ li r3, 0
|
|
/* 8018E6C8 0018B628 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8018E6CC 0018B62C 40 81 00 40 */ ble lbl_8018E70C
|
|
/* 8018E6D0 0018B630 2C 06 00 08 */ cmpwi r6, 8
|
|
/* 8018E6D4 0018B634 38 86 FF F8 */ addi r4, r6, -8
|
|
/* 8018E6D8 0018B638 40 81 00 20 */ ble lbl_8018E6F8
|
|
/* 8018E6DC 0018B63C 38 04 00 07 */ addi r0, r4, 7
|
|
/* 8018E6E0 0018B640 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8018E6E4 0018B644 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E6E8 0018B648 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8018E6EC 0018B64C 40 81 00 0C */ ble lbl_8018E6F8
|
|
lbl_8018E6F0:
|
|
/* 8018E6F0 0018B650 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8018E6F4 0018B654 42 00 FF FC */ bdnz lbl_8018E6F0
|
|
lbl_8018E6F8:
|
|
/* 8018E6F8 0018B658 7C 03 30 50 */ subf r0, r3, r6
|
|
/* 8018E6FC 0018B65C 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E700 0018B660 7C 03 30 00 */ cmpw r3, r6
|
|
/* 8018E704 0018B664 40 80 00 08 */ bge lbl_8018E70C
|
|
lbl_8018E708:
|
|
/* 8018E708 0018B668 42 00 00 00 */ bdnz lbl_8018E708
|
|
lbl_8018E70C:
|
|
/* 8018E70C 0018B66C 38 00 00 00 */ li r0, 0
|
|
/* 8018E710 0018B670 90 05 00 00 */ stw r0, 0(r5)
|
|
/* 8018E714 0018B674 48 00 01 58 */ b lbl_8018E86C
|
|
.global lbl_8018E718
|
|
lbl_8018E718:
|
|
/* 8018E718 0018B678 7F 83 E3 78 */ mr r3, r28
|
|
/* 8018E71C 0018B67C 7F A4 EB 78 */ mr r4, r29
|
|
/* 8018E720 0018B680 48 00 03 95 */ bl SetLaunchVelocity__11CBSWallHangFR15CBodyController
|
|
/* 8018E724 0018B684 88 1D 03 00 */ lbz r0, 0x300(r29)
|
|
/* 8018E728 0018B688 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
|
|
/* 8018E72C 0018B68C 41 82 00 F4 */ beq lbl_8018E820
|
|
/* 8018E730 0018B690 38 00 00 08 */ li r0, 8
|
|
/* 8018E734 0018B694 38 61 00 3C */ addi r3, r1, 0x3c
|
|
/* 8018E738 0018B698 90 1C 00 04 */ stw r0, 4(r28)
|
|
/* 8018E73C 0018B69C 48 15 49 41 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E740 0018B6A0 38 61 00 44 */ addi r3, r1, 0x44
|
|
/* 8018E744 0018B6A4 48 15 49 39 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E748 0018B6A8 38 61 00 4C */ addi r3, r1, 0x4c
|
|
/* 8018E74C 0018B6AC 48 15 49 31 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E750 0018B6B0 38 61 00 54 */ addi r3, r1, 0x54
|
|
/* 8018E754 0018B6B4 48 15 49 29 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E758 0018B6B8 38 61 00 5C */ addi r3, r1, 0x5c
|
|
/* 8018E75C 0018B6BC 48 15 49 21 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E760 0018B6C0 38 61 00 64 */ addi r3, r1, 0x64
|
|
/* 8018E764 0018B6C4 48 15 49 19 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E768 0018B6C8 38 61 00 6C */ addi r3, r1, 0x6c
|
|
/* 8018E76C 0018B6CC 48 15 49 11 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E770 0018B6D0 80 9C 00 04 */ lwz r4, 4(r28)
|
|
/* 8018E774 0018B6D4 38 61 00 74 */ addi r3, r1, 0x74
|
|
/* 8018E778 0018B6D8 48 15 48 0D */ bl FromEnum__12CPASAnimParmFi
|
|
/* 8018E77C 0018B6DC 38 61 00 44 */ addi r3, r1, 0x44
|
|
/* 8018E780 0018B6E0 38 01 00 3C */ addi r0, r1, 0x3c
|
|
/* 8018E784 0018B6E4 90 61 00 08 */ stw r3, 8(r1)
|
|
/* 8018E788 0018B6E8 38 61 03 30 */ addi r3, r1, 0x330
|
|
/* 8018E78C 0018B6EC 38 A1 00 74 */ addi r5, r1, 0x74
|
|
/* 8018E790 0018B6F0 38 C1 00 6C */ addi r6, r1, 0x6c
|
|
/* 8018E794 0018B6F4 90 01 00 0C */ stw r0, 0xc(r1)
|
|
/* 8018E798 0018B6F8 38 E1 00 64 */ addi r7, r1, 0x64
|
|
/* 8018E79C 0018B6FC 39 01 00 5C */ addi r8, r1, 0x5c
|
|
/* 8018E7A0 0018B700 39 21 00 54 */ addi r9, r1, 0x54
|
|
/* 8018E7A4 0018B704 39 41 00 4C */ addi r10, r1, 0x4c
|
|
/* 8018E7A8 0018B708 38 80 00 14 */ li r4, 0x14
|
|
/* 8018E7AC 0018B70C 4B EE EB 19 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm
|
|
/* 8018E7B0 0018B710 80 BE 09 00 */ lwz r5, 0x900(r30)
|
|
/* 8018E7B4 0018B714 7F A3 EB 78 */ mr r3, r29
|
|
/* 8018E7B8 0018B718 38 81 03 30 */ addi r4, r1, 0x330
|
|
/* 8018E7BC 0018B71C 4B FA BB 41 */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16
|
|
/* 8018E7C0 0018B720 34 A1 03 34 */ addic. r5, r1, 0x334
|
|
/* 8018E7C4 0018B724 41 82 00 A8 */ beq lbl_8018E86C
|
|
/* 8018E7C8 0018B728 80 C5 00 00 */ lwz r6, 0(r5)
|
|
/* 8018E7CC 0018B72C 38 60 00 00 */ li r3, 0
|
|
/* 8018E7D0 0018B730 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8018E7D4 0018B734 40 81 00 40 */ ble lbl_8018E814
|
|
/* 8018E7D8 0018B738 2C 06 00 08 */ cmpwi r6, 8
|
|
/* 8018E7DC 0018B73C 38 86 FF F8 */ addi r4, r6, -8
|
|
/* 8018E7E0 0018B740 40 81 00 20 */ ble lbl_8018E800
|
|
/* 8018E7E4 0018B744 38 04 00 07 */ addi r0, r4, 7
|
|
/* 8018E7E8 0018B748 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8018E7EC 0018B74C 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E7F0 0018B750 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8018E7F4 0018B754 40 81 00 0C */ ble lbl_8018E800
|
|
lbl_8018E7F8:
|
|
/* 8018E7F8 0018B758 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8018E7FC 0018B75C 42 00 FF FC */ bdnz lbl_8018E7F8
|
|
lbl_8018E800:
|
|
/* 8018E800 0018B760 7C 03 30 50 */ subf r0, r3, r6
|
|
/* 8018E804 0018B764 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E808 0018B768 7C 03 30 00 */ cmpw r3, r6
|
|
/* 8018E80C 0018B76C 40 80 00 08 */ bge lbl_8018E814
|
|
lbl_8018E810:
|
|
/* 8018E810 0018B770 42 00 00 00 */ bdnz lbl_8018E810
|
|
lbl_8018E814:
|
|
/* 8018E814 0018B774 38 00 00 00 */ li r0, 0
|
|
/* 8018E818 0018B778 90 05 00 00 */ stw r0, 0(r5)
|
|
/* 8018E81C 0018B77C 48 00 00 50 */ b lbl_8018E86C
|
|
lbl_8018E820:
|
|
/* 8018E820 0018B780 7F 83 E3 78 */ mr r3, r28
|
|
/* 8018E824 0018B784 7F A4 EB 78 */ mr r4, r29
|
|
/* 8018E828 0018B788 7F C5 F3 78 */ mr r5, r30
|
|
/* 8018E82C 0018B78C 4B FF ED A5 */ bl CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager
|
|
/* 8018E830 0018B790 48 00 00 3C */ b lbl_8018E86C
|
|
.global lbl_8018E834
|
|
lbl_8018E834:
|
|
/* 8018E834 0018B794 7F 83 E3 78 */ mr r3, r28
|
|
/* 8018E838 0018B798 7F A4 EB 78 */ mr r4, r29
|
|
/* 8018E83C 0018B79C 48 00 02 79 */ bl SetLaunchVelocity__11CBSWallHangFR15CBodyController
|
|
/* 8018E840 0018B7A0 7F 83 E3 78 */ mr r3, r28
|
|
/* 8018E844 0018B7A4 7F A4 EB 78 */ mr r4, r29
|
|
/* 8018E848 0018B7A8 7F C5 F3 78 */ mr r5, r30
|
|
/* 8018E84C 0018B7AC 4B FF ED 85 */ bl CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager
|
|
/* 8018E850 0018B7B0 48 00 00 1C */ b lbl_8018E86C
|
|
.global lbl_8018E854
|
|
lbl_8018E854:
|
|
/* 8018E854 0018B7B4 88 1D 03 00 */ lbz r0, 0x300(r29)
|
|
/* 8018E858 0018B7B8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
|
|
/* 8018E85C 0018B7BC 41 82 00 10 */ beq lbl_8018E86C
|
|
/* 8018E860 0018B7C0 38 00 FF FF */ li r0, -1
|
|
/* 8018E864 0018B7C4 3B E0 00 05 */ li r31, 5
|
|
/* 8018E868 0018B7C8 90 1C 00 04 */ stw r0, 4(r28)
|
|
lbl_8018E86C:
|
|
/* 8018E86C 0018B7CC 7F E3 FB 78 */ mr r3, r31
|
|
/* 8018E870 0018B7D0 E3 E1 06 08 */ psq_l f31, 1544(r1), 0, qr0
|
|
/* 8018E874 0018B7D4 CB E1 06 00 */ lfd f31, 0x600(r1)
|
|
/* 8018E878 0018B7D8 E3 C1 05 F8 */ psq_l f30, 1528(r1), 0, qr0
|
|
/* 8018E87C 0018B7DC CB C1 05 F0 */ lfd f30, 0x5f0(r1)
|
|
/* 8018E880 0018B7E0 E3 A1 05 E8 */ psq_l f29, 1512(r1), 0, qr0
|
|
/* 8018E884 0018B7E4 CB A1 05 E0 */ lfd f29, 0x5e0(r1)
|
|
/* 8018E888 0018B7E8 BB 21 05 C4 */ lmw r25, 0x5c4(r1)
|
|
/* 8018E88C 0018B7EC 80 01 06 14 */ lwz r0, 0x614(r1)
|
|
/* 8018E890 0018B7F0 7C 08 03 A6 */ mtlr r0
|
|
/* 8018E894 0018B7F4 38 21 06 10 */ addi r1, r1, 0x610
|
|
/* 8018E898 0018B7F8 4E 80 00 20 */ blr
|
|
|
|
.global Start__11CBSWallHangFR15CBodyControllerR13CStateManager
|
|
Start__11CBSWallHangFR15CBodyControllerR13CStateManager:
|
|
/* 8018E89C 0018B7FC 94 21 FF 50 */ stwu r1, -0xb0(r1)
|
|
/* 8018E8A0 0018B800 7C 08 02 A6 */ mflr r0
|
|
/* 8018E8A4 0018B804 90 01 00 B4 */ stw r0, 0xb4(r1)
|
|
/* 8018E8A8 0018B808 93 E1 00 AC */ stw r31, 0xac(r1)
|
|
/* 8018E8AC 0018B80C 7C BF 2B 78 */ mr r31, r5
|
|
/* 8018E8B0 0018B810 93 C1 00 A8 */ stw r30, 0xa8(r1)
|
|
/* 8018E8B4 0018B814 7C 9E 23 78 */ mr r30, r4
|
|
/* 8018E8B8 0018B818 38 80 00 15 */ li r4, 0x15
|
|
/* 8018E8BC 0018B81C 93 A1 00 A4 */ stw r29, 0xa4(r1)
|
|
/* 8018E8C0 0018B820 7C 7D 1B 78 */ mr r29, r3
|
|
/* 8018E8C4 0018B824 38 7E 00 04 */ addi r3, r30, 4
|
|
/* 8018E8C8 0018B828 4B FA 2B 89 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd
|
|
/* 8018E8CC 0018B82C 38 80 00 00 */ li r4, 0
|
|
/* 8018E8D0 0018B830 90 9D 00 04 */ stw r4, 4(r29)
|
|
/* 8018E8D4 0018B834 A0 03 00 08 */ lhz r0, 8(r3)
|
|
/* 8018E8D8 0018B838 38 61 00 10 */ addi r3, r1, 0x10
|
|
/* 8018E8DC 0018B83C B0 1D 00 08 */ sth r0, 8(r29)
|
|
/* 8018E8E0 0018B840 88 1D 00 18 */ lbz r0, 0x18(r29)
|
|
/* 8018E8E4 0018B844 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19
|
|
/* 8018E8E8 0018B848 98 1D 00 18 */ stb r0, 0x18(r29)
|
|
/* 8018E8EC 0018B84C 48 15 47 91 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E8F0 0018B850 38 61 00 18 */ addi r3, r1, 0x18
|
|
/* 8018E8F4 0018B854 48 15 47 89 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E8F8 0018B858 38 61 00 20 */ addi r3, r1, 0x20
|
|
/* 8018E8FC 0018B85C 48 15 47 81 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E900 0018B860 38 61 00 28 */ addi r3, r1, 0x28
|
|
/* 8018E904 0018B864 48 15 47 79 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E908 0018B868 38 61 00 30 */ addi r3, r1, 0x30
|
|
/* 8018E90C 0018B86C 48 15 47 71 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E910 0018B870 38 61 00 38 */ addi r3, r1, 0x38
|
|
/* 8018E914 0018B874 48 15 47 69 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E918 0018B878 38 61 00 40 */ addi r3, r1, 0x40
|
|
/* 8018E91C 0018B87C 48 15 47 61 */ bl NoParameter__12CPASAnimParmFv
|
|
/* 8018E920 0018B880 80 9D 00 04 */ lwz r4, 4(r29)
|
|
/* 8018E924 0018B884 38 61 00 48 */ addi r3, r1, 0x48
|
|
/* 8018E928 0018B888 48 15 46 5D */ bl FromEnum__12CPASAnimParmFi
|
|
/* 8018E92C 0018B88C 38 61 00 18 */ addi r3, r1, 0x18
|
|
/* 8018E930 0018B890 38 01 00 10 */ addi r0, r1, 0x10
|
|
/* 8018E934 0018B894 90 61 00 08 */ stw r3, 8(r1)
|
|
/* 8018E938 0018B898 38 61 00 50 */ addi r3, r1, 0x50
|
|
/* 8018E93C 0018B89C 38 A1 00 48 */ addi r5, r1, 0x48
|
|
/* 8018E940 0018B8A0 38 C1 00 40 */ addi r6, r1, 0x40
|
|
/* 8018E944 0018B8A4 90 01 00 0C */ stw r0, 0xc(r1)
|
|
/* 8018E948 0018B8A8 38 E1 00 38 */ addi r7, r1, 0x38
|
|
/* 8018E94C 0018B8AC 39 01 00 30 */ addi r8, r1, 0x30
|
|
/* 8018E950 0018B8B0 39 21 00 28 */ addi r9, r1, 0x28
|
|
/* 8018E954 0018B8B4 39 41 00 20 */ addi r10, r1, 0x20
|
|
/* 8018E958 0018B8B8 38 80 00 14 */ li r4, 0x14
|
|
/* 8018E95C 0018B8BC 4B EE E9 69 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm
|
|
/* 8018E960 0018B8C0 80 BF 09 00 */ lwz r5, 0x900(r31)
|
|
/* 8018E964 0018B8C4 7F C3 F3 78 */ mr r3, r30
|
|
/* 8018E968 0018B8C8 38 81 00 50 */ addi r4, r1, 0x50
|
|
/* 8018E96C 0018B8CC 4B FA BA 3D */ bl PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16
|
|
/* 8018E970 0018B8D0 34 A1 00 54 */ addic. r5, r1, 0x54
|
|
/* 8018E974 0018B8D4 41 82 00 58 */ beq lbl_8018E9CC
|
|
/* 8018E978 0018B8D8 80 C5 00 00 */ lwz r6, 0(r5)
|
|
/* 8018E97C 0018B8DC 38 60 00 00 */ li r3, 0
|
|
/* 8018E980 0018B8E0 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8018E984 0018B8E4 40 81 00 40 */ ble lbl_8018E9C4
|
|
/* 8018E988 0018B8E8 2C 06 00 08 */ cmpwi r6, 8
|
|
/* 8018E98C 0018B8EC 38 86 FF F8 */ addi r4, r6, -8
|
|
/* 8018E990 0018B8F0 40 81 00 20 */ ble lbl_8018E9B0
|
|
/* 8018E994 0018B8F4 38 04 00 07 */ addi r0, r4, 7
|
|
/* 8018E998 0018B8F8 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8018E99C 0018B8FC 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E9A0 0018B900 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8018E9A4 0018B904 40 81 00 0C */ ble lbl_8018E9B0
|
|
lbl_8018E9A8:
|
|
/* 8018E9A8 0018B908 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8018E9AC 0018B90C 42 00 FF FC */ bdnz lbl_8018E9A8
|
|
lbl_8018E9B0:
|
|
/* 8018E9B0 0018B910 7C 03 30 50 */ subf r0, r3, r6
|
|
/* 8018E9B4 0018B914 7C 09 03 A6 */ mtctr r0
|
|
/* 8018E9B8 0018B918 7C 03 30 00 */ cmpw r3, r6
|
|
/* 8018E9BC 0018B91C 40 80 00 08 */ bge lbl_8018E9C4
|
|
lbl_8018E9C0:
|
|
/* 8018E9C0 0018B920 42 00 00 00 */ bdnz lbl_8018E9C0
|
|
lbl_8018E9C4:
|
|
/* 8018E9C4 0018B924 38 00 00 00 */ li r0, 0
|
|
/* 8018E9C8 0018B928 90 05 00 00 */ stw r0, 0(r5)
|
|
lbl_8018E9CC:
|
|
/* 8018E9CC 0018B92C 80 01 00 B4 */ lwz r0, 0xb4(r1)
|
|
/* 8018E9D0 0018B930 83 E1 00 AC */ lwz r31, 0xac(r1)
|
|
/* 8018E9D4 0018B934 83 C1 00 A8 */ lwz r30, 0xa8(r1)
|
|
/* 8018E9D8 0018B938 83 A1 00 A4 */ lwz r29, 0xa4(r1)
|
|
/* 8018E9DC 0018B93C 7C 08 03 A6 */ mtlr r0
|
|
/* 8018E9E0 0018B940 38 21 00 B0 */ addi r1, r1, 0xb0
|
|
/* 8018E9E4 0018B944 4E 80 00 20 */ blr
|
|
|
|
.global ApplyGravity__11CBSWallHangCFv
|
|
ApplyGravity__11CBSWallHangCFv:
|
|
/* 8018E9E8 0018B948 80 03 00 04 */ lwz r0, 4(r3)
|
|
/* 8018E9EC 0018B94C 38 60 00 00 */ li r3, 0
|
|
/* 8018E9F0 0018B950 2C 00 00 04 */ cmpwi r0, 4
|
|
/* 8018E9F4 0018B954 4D 82 00 20 */ beqlr
|
|
/* 8018E9F8 0018B958 2C 00 00 03 */ cmpwi r0, 3
|
|
/* 8018E9FC 0018B95C 4D 82 00 20 */ beqlr
|
|
/* 8018EA00 0018B960 2C 00 00 06 */ cmpwi r0, 6
|
|
/* 8018EA04 0018B964 4D 82 00 20 */ beqlr
|
|
/* 8018EA08 0018B968 38 60 00 01 */ li r3, 1
|
|
/* 8018EA0C 0018B96C 4E 80 00 20 */ blr
|
|
|
|
.global CanShoot__11CBSWallHangCFv
|
|
CanShoot__11CBSWallHangCFv:
|
|
/* 8018EA10 0018B970 80 03 00 04 */ lwz r0, 4(r3)
|
|
/* 8018EA14 0018B974 20 00 00 04 */ subfic r0, r0, 4
|
|
/* 8018EA18 0018B978 7C 00 00 34 */ cntlzw r0, r0
|
|
/* 8018EA1C 0018B97C 54 03 D9 7E */ srwi r3, r0, 5
|
|
/* 8018EA20 0018B980 4E 80 00 20 */ blr
|
|
|
|
.global ApplyHeadTracking__11CBSWallHangCFv
|
|
ApplyHeadTracking__11CBSWallHangCFv:
|
|
/* 8018EA24 0018B984 80 03 00 04 */ lwz r0, 4(r3)
|
|
/* 8018EA28 0018B988 38 60 00 00 */ li r3, 0
|
|
/* 8018EA2C 0018B98C 2C 00 00 04 */ cmpwi r0, 4
|
|
/* 8018EA30 0018B990 41 82 00 0C */ beq lbl_8018EA3C
|
|
/* 8018EA34 0018B994 2C 00 00 05 */ cmpwi r0, 5
|
|
/* 8018EA38 0018B998 4C 82 00 20 */ bnelr
|
|
lbl_8018EA3C:
|
|
/* 8018EA3C 0018B99C 38 60 00 01 */ li r3, 1
|
|
/* 8018EA40 0018B9A0 4E 80 00 20 */ blr
|
|
|
|
.global ApplyAnimationDeltas__11CBSWallHangCFv
|
|
ApplyAnimationDeltas__11CBSWallHangCFv:
|
|
/* 8018EA44 0018B9A4 80 03 00 04 */ lwz r0, 4(r3)
|
|
/* 8018EA48 0018B9A8 38 60 00 00 */ li r3, 0
|
|
/* 8018EA4C 0018B9AC 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 8018EA50 0018B9B0 41 82 00 2C */ beq lbl_8018EA7C
|
|
/* 8018EA54 0018B9B4 2C 00 00 03 */ cmpwi r0, 3
|
|
/* 8018EA58 0018B9B8 41 82 00 24 */ beq lbl_8018EA7C
|
|
/* 8018EA5C 0018B9BC 2C 00 00 04 */ cmpwi r0, 4
|
|
/* 8018EA60 0018B9C0 41 82 00 1C */ beq lbl_8018EA7C
|
|
/* 8018EA64 0018B9C4 2C 00 00 05 */ cmpwi r0, 5
|
|
/* 8018EA68 0018B9C8 41 82 00 14 */ beq lbl_8018EA7C
|
|
/* 8018EA6C 0018B9CC 2C 00 00 06 */ cmpwi r0, 6
|
|
/* 8018EA70 0018B9D0 41 82 00 0C */ beq lbl_8018EA7C
|
|
/* 8018EA74 0018B9D4 2C 00 00 09 */ cmpwi r0, 9
|
|
/* 8018EA78 0018B9D8 4C 82 00 20 */ bnelr
|
|
lbl_8018EA7C:
|
|
/* 8018EA7C 0018B9DC 38 60 00 01 */ li r3, 1
|
|
/* 8018EA80 0018B9E0 4E 80 00 20 */ blr
|
|
|
|
.global IsInAir__11CBSWallHangCFRC15CBodyController
|
|
IsInAir__11CBSWallHangCFRC15CBodyController:
|
|
/* 8018EA84 0018B9E4 80 03 00 04 */ lwz r0, 4(r3)
|
|
/* 8018EA88 0018B9E8 38 60 00 00 */ li r3, 0
|
|
/* 8018EA8C 0018B9EC 2C 00 00 01 */ cmpwi r0, 1
|
|
/* 8018EA90 0018B9F0 41 82 00 1C */ beq lbl_8018EAAC
|
|
/* 8018EA94 0018B9F4 2C 00 00 02 */ cmpwi r0, 2
|
|
/* 8018EA98 0018B9F8 41 82 00 14 */ beq lbl_8018EAAC
|
|
/* 8018EA9C 0018B9FC 2C 00 00 07 */ cmpwi r0, 7
|
|
/* 8018EAA0 0018BA00 41 82 00 0C */ beq lbl_8018EAAC
|
|
/* 8018EAA4 0018BA04 2C 00 00 08 */ cmpwi r0, 8
|
|
/* 8018EAA8 0018BA08 4C 82 00 20 */ bnelr
|
|
lbl_8018EAAC:
|
|
/* 8018EAAC 0018BA0C 38 60 00 01 */ li r3, 1
|
|
/* 8018EAB0 0018BA10 4E 80 00 20 */ blr
|
|
|
|
.global SetLaunchVelocity__11CBSWallHangFR15CBodyController
|
|
SetLaunchVelocity__11CBSWallHangFR15CBodyController:
|
|
/* 8018EAB4 0018BA14 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 8018EAB8 0018BA18 7C 08 02 A6 */ mflr r0
|
|
/* 8018EABC 0018BA1C 90 01 00 24 */ stw r0, 0x24(r1)
|
|
/* 8018EAC0 0018BA20 93 E1 00 1C */ stw r31, 0x1c(r1)
|
|
/* 8018EAC4 0018BA24 93 C1 00 18 */ stw r30, 0x18(r1)
|
|
/* 8018EAC8 0018BA28 7C 7E 1B 78 */ mr r30, r3
|
|
/* 8018EACC 0018BA2C 88 03 00 18 */ lbz r0, 0x18(r3)
|
|
/* 8018EAD0 0018BA30 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
|
|
/* 8018EAD4 0018BA34 40 82 00 60 */ bne lbl_8018EB34
|
|
/* 8018EAD8 0018BA38 80 84 00 00 */ lwz r4, 0(r4)
|
|
/* 8018EADC 0018BA3C 38 61 00 08 */ addi r3, r1, 8
|
|
/* 8018EAE0 0018BA40 4B F1 DC 05 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity"
|
|
/* 8018EAE4 0018BA44 83 E3 00 04 */ lwz r31, 4(r3)
|
|
/* 8018EAE8 0018BA48 28 1F 00 00 */ cmplwi r31, 0
|
|
/* 8018EAEC 0018BA4C 41 82 00 38 */ beq lbl_8018EB24
|
|
/* 8018EAF0 0018BA50 7F E3 FB 78 */ mr r3, r31
|
|
/* 8018EAF4 0018BA54 38 9E 00 0C */ addi r4, r30, 0xc
|
|
/* 8018EAF8 0018BA58 4B F8 C1 A9 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f
|
|
/* 8018EAFC 0018BA5C C0 7F 00 E8 */ lfs f3, 0xe8(r31)
|
|
/* 8018EB00 0018BA60 C0 1E 00 0C */ lfs f0, 0xc(r30)
|
|
/* 8018EB04 0018BA64 C0 5E 00 10 */ lfs f2, 0x10(r30)
|
|
/* 8018EB08 0018BA68 C0 3E 00 14 */ lfs f1, 0x14(r30)
|
|
/* 8018EB0C 0018BA6C EC 03 00 32 */ fmuls f0, f3, f0
|
|
/* 8018EB10 0018BA70 EC 43 00 B2 */ fmuls f2, f3, f2
|
|
/* 8018EB14 0018BA74 EC 23 00 72 */ fmuls f1, f3, f1
|
|
/* 8018EB18 0018BA78 D0 1F 00 FC */ stfs f0, 0xfc(r31)
|
|
/* 8018EB1C 0018BA7C D0 5F 01 00 */ stfs f2, 0x100(r31)
|
|
/* 8018EB20 0018BA80 D0 3F 01 04 */ stfs f1, 0x104(r31)
|
|
lbl_8018EB24:
|
|
/* 8018EB24 0018BA84 88 1E 00 18 */ lbz r0, 0x18(r30)
|
|
/* 8018EB28 0018BA88 38 60 00 01 */ li r3, 1
|
|
/* 8018EB2C 0018BA8C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18
|
|
/* 8018EB30 0018BA90 98 1E 00 18 */ stb r0, 0x18(r30)
|
|
lbl_8018EB34:
|
|
/* 8018EB34 0018BA94 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 8018EB38 0018BA98 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
|
/* 8018EB3C 0018BA9C 83 C1 00 18 */ lwz r30, 0x18(r1)
|
|
/* 8018EB40 0018BAA0 7C 08 03 A6 */ mtlr r0
|
|
/* 8018EB44 0018BAA4 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 8018EB48 0018BAA8 4E 80 00 20 */ blr
|
|
|
|
.global __ct__11CBSWallHangFv
|
|
__ct__11CBSWallHangFv:
|
|
/* 8018EB4C 0018BAAC 3C C0 80 3E */ lis r6, lbl_803E1318@ha
|
|
/* 8018EB50 0018BAB0 3C A0 80 3E */ lis r5, lbl_803E43A0@ha
|
|
/* 8018EB54 0018BAB4 38 06 13 18 */ addi r0, r6, lbl_803E1318@l
|
|
/* 8018EB58 0018BAB8 3C 80 80 5A */ lis r4, skZero3f@ha
|
|
/* 8018EB5C 0018BABC 90 03 00 00 */ stw r0, 0(r3)
|
|
/* 8018EB60 0018BAC0 38 C5 43 A0 */ addi r6, r5, lbl_803E43A0@l
|
|
/* 8018EB64 0018BAC4 38 A4 66 A0 */ addi r5, r4, skZero3f@l
|
|
/* 8018EB68 0018BAC8 38 00 FF FF */ li r0, -1
|
|
/* 8018EB6C 0018BACC 90 C3 00 00 */ stw r6, 0(r3)
|
|
/* 8018EB70 0018BAD0 38 80 00 00 */ li r4, 0
|
|
/* 8018EB74 0018BAD4 90 03 00 04 */ stw r0, 4(r3)
|
|
/* 8018EB78 0018BAD8 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
|
|
/* 8018EB7C 0018BADC B0 03 00 08 */ sth r0, 8(r3)
|
|
/* 8018EB80 0018BAE0 C0 05 00 00 */ lfs f0, 0(r5)
|
|
/* 8018EB84 0018BAE4 D0 03 00 0C */ stfs f0, 0xc(r3)
|
|
/* 8018EB88 0018BAE8 C0 05 00 04 */ lfs f0, 4(r5)
|
|
/* 8018EB8C 0018BAEC D0 03 00 10 */ stfs f0, 0x10(r3)
|
|
/* 8018EB90 0018BAF0 C0 05 00 08 */ lfs f0, 8(r5)
|
|
/* 8018EB94 0018BAF4 D0 03 00 14 */ stfs f0, 0x14(r3)
|
|
/* 8018EB98 0018BAF8 88 03 00 18 */ lbz r0, 0x18(r3)
|
|
/* 8018EB9C 0018BAFC 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18
|
|
/* 8018EBA0 0018BB00 98 03 00 18 */ stb r0, 0x18(r3)
|
|
/* 8018EBA4 0018BB04 88 03 00 18 */ lbz r0, 0x18(r3)
|
|
/* 8018EBA8 0018BB08 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19
|
|
/* 8018EBAC 0018BB0C 98 03 00 18 */ stb r0, 0x18(r3)
|
|
/* 8018EBB0 0018BB10 4E 80 00 20 */ blr
|