Files
dusklight/include/d/d_kankyo/asm/func_8019E570.s
T
Erin Moon 59a9fda7cb d_kankyo, d_kankyo_*: autosplit (#44)
- d_kankyo
- d_kankyo_rain
- d_kankyo_wether
- d_kankyo_rain

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 01:54:59 -05:00

83 lines
4.0 KiB
ArmAsm

/* 8019E570 0019B4B0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8019E574 0019B4B4 7C 08 02 A6 */ mflr r0
/* 8019E578 0019B4B8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8019E57C 0019B4BC 3C A0 80 43 */ lis r5, lbl_8042CA54@ha
/* 8019E580 0019B4C0 38 C5 CA 54 */ addi r6, r5, lbl_8042CA54@l
/* 8019E584 0019B4C4 54 85 0F FE */ srwi r5, r4, 0x1f
/* 8019E588 0019B4C8 38 05 FF FF */ addi r0, r5, -1
/* 8019E58C 0019B4CC 7C 80 00 38 */ and r0, r4, r0
/* 8019E590 0019B4D0 54 00 10 3A */ slwi r0, r0, 2
/* 8019E594 0019B4D4 7C 86 02 14 */ add r4, r6, r0
/* 8019E598 0019B4D8 80 84 03 F8 */ lwz r4, 0x3f8(r4)
/* 8019E59C 0019B4DC 48 1A 8E 01 */ bl PSVECSquareDistance
/* 8019E5A0 0019B4E0 C0 02 A2 0C */ lfs f0, lbl_80453C0C-_SDA2_BASE_(r2)
/* 8019E5A4 0019B4E4 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8019E5A8 0019B4E8 40 81 00 58 */ ble lbl_8019E600
/* 8019E5AC 0019B4EC FC 00 08 34 */ frsqrte f0, f1
/* 8019E5B0 0019B4F0 C8 82 A2 10 */ lfd f4, lbl_80453C10-_SDA2_BASE_(r2)
/* 8019E5B4 0019B4F4 FC 44 00 32 */ fmul f2, f4, f0
/* 8019E5B8 0019B4F8 C8 62 A2 18 */ lfd f3, lbl_80453C18-_SDA2_BASE_(r2)
/* 8019E5BC 0019B4FC FC 00 00 32 */ fmul f0, f0, f0
/* 8019E5C0 0019B500 FC 01 00 32 */ fmul f0, f1, f0
/* 8019E5C4 0019B504 FC 03 00 28 */ fsub f0, f3, f0
/* 8019E5C8 0019B508 FC 02 00 32 */ fmul f0, f2, f0
/* 8019E5CC 0019B50C FC 44 00 32 */ fmul f2, f4, f0
/* 8019E5D0 0019B510 FC 00 00 32 */ fmul f0, f0, f0
/* 8019E5D4 0019B514 FC 01 00 32 */ fmul f0, f1, f0
/* 8019E5D8 0019B518 FC 03 00 28 */ fsub f0, f3, f0
/* 8019E5DC 0019B51C FC 02 00 32 */ fmul f0, f2, f0
/* 8019E5E0 0019B520 FC 44 00 32 */ fmul f2, f4, f0
/* 8019E5E4 0019B524 FC 00 00 32 */ fmul f0, f0, f0
/* 8019E5E8 0019B528 FC 01 00 32 */ fmul f0, f1, f0
/* 8019E5EC 0019B52C FC 03 00 28 */ fsub f0, f3, f0
/* 8019E5F0 0019B530 FC 02 00 32 */ fmul f0, f2, f0
/* 8019E5F4 0019B534 FC 21 00 32 */ fmul f1, f1, f0
/* 8019E5F8 0019B538 FC 20 08 18 */ frsp f1, f1
/* 8019E5FC 0019B53C 48 00 00 88 */ b lbl_8019E684
lbl_8019E600:
/* 8019E600 0019B540 C8 02 A2 20 */ lfd f0, lbl_80453C20-_SDA2_BASE_(r2)
/* 8019E604 0019B544 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8019E608 0019B548 40 80 00 10 */ bge lbl_8019E618
/* 8019E60C 0019B54C 3C 60 80 45 */ lis r3, lbl_80450AE0@ha
/* 8019E610 0019B550 C0 23 0A E0 */ lfs f1, lbl_80450AE0@l(r3)
/* 8019E614 0019B554 48 00 00 70 */ b lbl_8019E684
lbl_8019E618:
/* 8019E618 0019B558 D0 21 00 08 */ stfs f1, 8(r1)
/* 8019E61C 0019B55C 80 81 00 08 */ lwz r4, 8(r1)
/* 8019E620 0019B560 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8
/* 8019E624 0019B564 3C 00 7F 80 */ lis r0, 0x7f80
/* 8019E628 0019B568 7C 03 00 00 */ cmpw r3, r0
/* 8019E62C 0019B56C 41 82 00 14 */ beq lbl_8019E640
/* 8019E630 0019B570 40 80 00 40 */ bge lbl_8019E670
/* 8019E634 0019B574 2C 03 00 00 */ cmpwi r3, 0
/* 8019E638 0019B578 41 82 00 20 */ beq lbl_8019E658
/* 8019E63C 0019B57C 48 00 00 34 */ b lbl_8019E670
lbl_8019E640:
/* 8019E640 0019B580 54 80 02 7F */ clrlwi. r0, r4, 9
/* 8019E644 0019B584 41 82 00 0C */ beq lbl_8019E650
/* 8019E648 0019B588 38 00 00 01 */ li r0, 1
/* 8019E64C 0019B58C 48 00 00 28 */ b lbl_8019E674
lbl_8019E650:
/* 8019E650 0019B590 38 00 00 02 */ li r0, 2
/* 8019E654 0019B594 48 00 00 20 */ b lbl_8019E674
lbl_8019E658:
/* 8019E658 0019B598 54 80 02 7F */ clrlwi. r0, r4, 9
/* 8019E65C 0019B59C 41 82 00 0C */ beq lbl_8019E668
/* 8019E660 0019B5A0 38 00 00 05 */ li r0, 5
/* 8019E664 0019B5A4 48 00 00 10 */ b lbl_8019E674
lbl_8019E668:
/* 8019E668 0019B5A8 38 00 00 03 */ li r0, 3
/* 8019E66C 0019B5AC 48 00 00 08 */ b lbl_8019E674
lbl_8019E670:
/* 8019E670 0019B5B0 38 00 00 04 */ li r0, 4
lbl_8019E674:
/* 8019E674 0019B5B4 2C 00 00 01 */ cmpwi r0, 1
/* 8019E678 0019B5B8 40 82 00 0C */ bne lbl_8019E684
/* 8019E67C 0019B5BC 3C 60 80 45 */ lis r3, lbl_80450AE0@ha
/* 8019E680 0019B5C0 C0 23 0A E0 */ lfs f1, lbl_80450AE0@l(r3)
lbl_8019E684:
/* 8019E684 0019B5C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8019E688 0019B5C8 7C 08 03 A6 */ mtlr r0
/* 8019E68C 0019B5CC 38 21 00 10 */ addi r1, r1, 0x10
/* 8019E690 0019B5D0 4E 80 00 20 */ blr