mk64/asm/non_matchings/memory/process_shell_collision.s

89 lines
4.3 KiB
ArmAsm

glabel process_shell_collision
/* 115554 802ABF44 27BDFFB0 */ addiu $sp, $sp, -0x50
/* 115558 802ABF48 AFA50054 */ sw $a1, 0x54($sp)
/* 11555C 802ABF4C AFA7005C */ sw $a3, 0x5c($sp)
/* 115560 802ABF50 C4C20000 */ lwc1 $f2, ($a2)
/* 115564 802ABF54 C4CC0004 */ lwc1 $f12, 4($a2)
/* 115568 802ABF58 C4CE0008 */ lwc1 $f14, 8($a2)
/* 11556C 802ABF5C 46021102 */ mul.s $f4, $f2, $f2
/* 115570 802ABF60 3C014012 */ li $at, 0x40120000 # 2.281250
/* 115574 802ABF64 44812800 */ mtc1 $at, $f5
/* 115578 802ABF68 460C6182 */ mul.s $f6, $f12, $f12
/* 11557C 802ABF6C 3C01400C */ lui $at, 0x400c
/* 115580 802ABF70 460E7282 */ mul.s $f10, $f14, $f14
/* 115584 802ABF74 46062200 */ add.s $f8, $f4, $f6
/* 115588 802ABF78 44802000 */ mtc1 $zero, $f4
/* 11558C 802ABF7C 460A4000 */ add.s $f0, $f8, $f10
/* 115590 802ABF80 46000004 */ sqrt.s $f0, $f0
/* 115594 802ABF84 46000421 */ cvt.d.s $f16, $f0
/* 115598 802ABF88 E7A00024 */ swc1 $f0, 0x24($sp)
/* 11559C 802ABF8C 4630203C */ c.lt.d $f4, $f16
/* 1155A0 802ABF90 00000000 */ nop
/* 1155A4 802ABF94 45030008 */ bc1tl .L802ABFB8
/* 1155A8 802ABF98 3C014080 */ li $at, 0x40800000 # 4.000000
/* 1155AC 802ABF9C 44813800 */ mtc1 $at, $f7
/* 1155B0 802ABFA0 44803000 */ mtc1 $zero, $f6
/* 1155B4 802ABFA4 00000000 */ nop
/* 1155B8 802ABFA8 4626803C */ c.lt.d $f16, $f6
/* 1155BC 802ABFAC 00000000 */ nop
/* 1155C0 802ABFB0 45000004 */ bc1f .L802ABFC4
/* 1155C4 802ABFB4 3C014080 */ li $at, 0x40800000 # 4.000000
.L802ABFB8:
/* 1155C8 802ABFB8 44814000 */ mtc1 $at, $f8
/* 1155CC 802ABFBC 00000000 */ nop
/* 1155D0 802ABFC0 E7A80024 */ swc1 $f8, 0x24($sp)
.L802ABFC4:
/* 1155D4 802ABFC4 C48A0008 */ lwc1 $f10, 8($a0)
/* 1155D8 802ABFC8 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 1155DC 802ABFCC E7AA0004 */ swc1 $f10, 4($sp)
/* 1155E0 802ABFD0 C4900000 */ lwc1 $f16, ($a0)
/* 1155E4 802ABFD4 C4920004 */ lwc1 $f18, 4($a0)
/* 1155E8 802ABFD8 C7AA0004 */ lwc1 $f10, 4($sp)
/* 1155EC 802ABFDC 46028102 */ mul.s $f4, $f16, $f2
/* 1155F0 802ABFE0 00000000 */ nop
/* 1155F4 802ABFE4 460C9182 */ mul.s $f6, $f18, $f12
/* 1155F8 802ABFE8 46062200 */ add.s $f8, $f4, $f6
/* 1155FC 802ABFEC 460E5102 */ mul.s $f4, $f10, $f14
/* 115600 802ABFF0 46082000 */ add.s $f0, $f4, $f8
/* 115604 802ABFF4 46008182 */ mul.s $f6, $f16, $f0
/* 115608 802ABFF8 E7A60000 */ swc1 $f6, ($sp)
/* 11560C 802ABFFC 46009182 */ mul.s $f6, $f18, $f0
/* 115610 802AC000 C7A40000 */ lwc1 $f4, ($sp)
/* 115614 802AC004 46041201 */ sub.s $f8, $f2, $f4
/* 115618 802AC008 E7A6000C */ swc1 $f6, 0xc($sp)
/* 11561C 802AC00C E7A80040 */ swc1 $f8, 0x40($sp)
/* 115620 802AC010 C7A8000C */ lwc1 $f8, 0xc($sp)
/* 115624 802AC014 46086181 */ sub.s $f6, $f12, $f8
/* 115628 802AC018 E7A6003C */ swc1 $f6, 0x3c($sp)
/* 11562C 802AC01C 46005182 */ mul.s $f6, $f10, $f0
/* 115630 802AC020 46067281 */ sub.s $f10, $f14, $f6
/* 115634 802AC024 E7A60008 */ swc1 $f6, 8($sp)
/* 115638 802AC028 E7AA0038 */ swc1 $f10, 0x38($sp)
/* 11563C 802AC02C C7AA0040 */ lwc1 $f10, 0x40($sp)
/* 115640 802AC030 46045081 */ sub.s $f2, $f10, $f4
/* 115644 802AC034 C7AA003C */ lwc1 $f10, 0x3c($sp)
/* 115648 802AC038 C7A40038 */ lwc1 $f4, 0x38($sp)
/* 11564C 802AC03C 46085301 */ sub.s $f12, $f10, $f8
/* 115650 802AC040 46021282 */ mul.s $f10, $f2, $f2
/* 115654 802AC044 46062381 */ sub.s $f14, $f4, $f6
/* 115658 802AC048 460C6202 */ mul.s $f8, $f12, $f12
/* 11565C 802AC04C 46085100 */ add.s $f4, $f10, $f8
/* 115660 802AC050 460E7182 */ mul.s $f6, $f14, $f14
/* 115664 802AC054 44815000 */ mtc1 $at, $f10
/* 115668 802AC058 46062000 */ add.s $f0, $f4, $f6
/* 11566C 802AC05C C7A40024 */ lwc1 $f4, 0x24($sp)
/* 115670 802AC060 27BD0050 */ addiu $sp, $sp, 0x50
/* 115674 802AC064 46000004 */ sqrt.s $f0, $f0
/* 115678 802AC068 46005203 */ div.s $f8, $f10, $f0
/* 11567C 802AC06C 46044402 */ mul.s $f16, $f8, $f4
/* 115680 802AC070 00000000 */ nop
/* 115684 802AC074 46101182 */ mul.s $f6, $f2, $f16
/* 115688 802AC078 00000000 */ nop
/* 11568C 802AC07C 46106282 */ mul.s $f10, $f12, $f16
/* 115690 802AC080 00000000 */ nop
/* 115694 802AC084 46107202 */ mul.s $f8, $f14, $f16
/* 115698 802AC088 E4C60000 */ swc1 $f6, ($a2)
/* 11569C 802AC08C E4CA0004 */ swc1 $f10, 4($a2)
/* 1156A0 802AC090 03E00008 */ jr $ra
/* 1156A4 802AC094 E4C80008 */ swc1 $f8, 8($a2)