mirror of https://github.com/zeldaret/oot.git
106 lines
5.1 KiB
ArmAsm
106 lines
5.1 KiB
ArmAsm
glabel func_800A7894
|
|
/* B1EA34 800A7894 27BDFFC8 */ addiu $sp, $sp, -0x38
|
|
/* B1EA38 800A7898 AFB00018 */ sw $s0, 0x18($sp)
|
|
/* B1EA3C 800A789C 00808025 */ move $s0, $a0
|
|
/* B1EA40 800A78A0 AFBF001C */ sw $ra, 0x1c($sp)
|
|
/* B1EA44 800A78A4 AFA60040 */ sw $a2, 0x40($sp)
|
|
/* B1EA48 800A78A8 AFA5003C */ sw $a1, 0x3c($sp)
|
|
/* B1EA4C 800A78AC AFA70044 */ sw $a3, 0x44($sp)
|
|
/* B1EA50 800A78B0 0C01DE1C */ jal Math_Sins
|
|
/* B1EA54 800A78B4 87A40042 */ lh $a0, 0x42($sp)
|
|
/* B1EA58 800A78B8 87A40042 */ lh $a0, 0x42($sp)
|
|
/* B1EA5C 800A78BC 0C01DE0D */ jal Math_Coss
|
|
/* B1EA60 800A78C0 E7A00030 */ swc1 $f0, 0x30($sp)
|
|
/* B1EA64 800A78C4 87A4003E */ lh $a0, 0x3e($sp)
|
|
/* B1EA68 800A78C8 C7AE0030 */ lwc1 $f14, 0x30($sp)
|
|
/* B1EA6C 800A78CC 44808000 */ mtc1 $zero, $f16
|
|
/* B1EA70 800A78D0 3C013F80 */ li $at, 0x3F800000 # 0.000000
|
|
/* B1EA74 800A78D4 44811000 */ mtc1 $at, $f2
|
|
/* B1EA78 800A78D8 46007107 */ neg.s $f4, $f14
|
|
/* B1EA7C 800A78DC 46000306 */ mov.s $f12, $f0
|
|
/* B1EA80 800A78E0 E6000000 */ swc1 $f0, ($s0)
|
|
/* B1EA84 800A78E4 E6040008 */ swc1 $f4, 8($s0)
|
|
/* B1EA88 800A78E8 E610002C */ swc1 $f16, 0x2c($s0)
|
|
/* B1EA8C 800A78EC E610001C */ swc1 $f16, 0x1c($s0)
|
|
/* B1EA90 800A78F0 E610000C */ swc1 $f16, 0xc($s0)
|
|
/* B1EA94 800A78F4 E6100038 */ swc1 $f16, 0x38($s0)
|
|
/* B1EA98 800A78F8 E6100034 */ swc1 $f16, 0x34($s0)
|
|
/* B1EA9C 800A78FC E6100030 */ swc1 $f16, 0x30($s0)
|
|
/* B1EAA0 800A7900 10800017 */ beqz $a0, .L800A7960
|
|
/* B1EAA4 800A7904 E602003C */ swc1 $f2, 0x3c($s0)
|
|
/* B1EAA8 800A7908 E7AC002C */ swc1 $f12, 0x2c($sp)
|
|
/* B1EAAC 800A790C 0C01DE1C */ jal Math_Sins
|
|
/* B1EAB0 800A7910 E7AE0030 */ swc1 $f14, 0x30($sp)
|
|
/* B1EAB4 800A7914 87A4003E */ lh $a0, 0x3e($sp)
|
|
/* B1EAB8 800A7918 0C01DE0D */ jal Math_Coss
|
|
/* B1EABC 800A791C E7A00024 */ swc1 $f0, 0x24($sp)
|
|
/* B1EAC0 800A7920 C7AC002C */ lwc1 $f12, 0x2c($sp)
|
|
/* B1EAC4 800A7924 C7A20024 */ lwc1 $f2, 0x24($sp)
|
|
/* B1EAC8 800A7928 C7AE0030 */ lwc1 $f14, 0x30($sp)
|
|
/* B1EACC 800A792C 46006182 */ mul.s $f6, $f12, $f0
|
|
/* B1EAD0 800A7930 46001107 */ neg.s $f4, $f2
|
|
/* B1EAD4 800A7934 44808000 */ mtc1 $zero, $f16
|
|
/* B1EAD8 800A7938 46026202 */ mul.s $f8, $f12, $f2
|
|
/* B1EADC 800A793C E6040024 */ swc1 $f4, 0x24($s0)
|
|
/* B1EAE0 800A7940 E6000014 */ swc1 $f0, 0x14($s0)
|
|
/* B1EAE4 800A7944 46007282 */ mul.s $f10, $f14, $f0
|
|
/* B1EAE8 800A7948 E6060028 */ swc1 $f6, 0x28($s0)
|
|
/* B1EAEC 800A794C 46027482 */ mul.s $f18, $f14, $f2
|
|
/* B1EAF0 800A7950 E6080018 */ swc1 $f8, 0x18($s0)
|
|
/* B1EAF4 800A7954 E60A0020 */ swc1 $f10, 0x20($s0)
|
|
/* B1EAF8 800A7958 10000007 */ b .L800A7978
|
|
/* B1EAFC 800A795C E6120010 */ swc1 $f18, 0x10($s0)
|
|
.L800A7960:
|
|
/* B1EB00 800A7960 E6000028 */ swc1 $f0, 0x28($s0)
|
|
/* B1EB04 800A7964 E60E0020 */ swc1 $f14, 0x20($s0)
|
|
/* B1EB08 800A7968 E6100024 */ swc1 $f16, 0x24($s0)
|
|
/* B1EB0C 800A796C E6100018 */ swc1 $f16, 0x18($s0)
|
|
/* B1EB10 800A7970 E6100010 */ swc1 $f16, 0x10($s0)
|
|
/* B1EB14 800A7974 E6020014 */ swc1 $f2, 0x14($s0)
|
|
.L800A7978:
|
|
/* B1EB18 800A7978 87A40046 */ lh $a0, 0x46($sp)
|
|
/* B1EB1C 800A797C 50800024 */ beql $a0, $zero, .L800A7A10
|
|
/* B1EB20 800A7980 E6100004 */ swc1 $f16, 4($s0)
|
|
/* B1EB24 800A7984 0C01DE1C */ jal Math_Sins
|
|
/* B1EB28 800A7988 00000000 */ nop
|
|
/* B1EB2C 800A798C 87A40046 */ lh $a0, 0x46($sp)
|
|
/* B1EB30 800A7990 0C01DE0D */ jal Math_Coss
|
|
/* B1EB34 800A7994 E7A00024 */ swc1 $f0, 0x24($sp)
|
|
/* B1EB38 800A7998 C60E0000 */ lwc1 $f14, ($s0)
|
|
/* B1EB3C 800A799C C7A20024 */ lwc1 $f2, 0x24($sp)
|
|
/* B1EB40 800A79A0 C60C0010 */ lwc1 $f12, 0x10($s0)
|
|
/* B1EB44 800A79A4 46007182 */ mul.s $f6, $f14, $f0
|
|
/* B1EB48 800A79A8 00000000 */ nop
|
|
/* B1EB4C 800A79AC 46026202 */ mul.s $f8, $f12, $f2
|
|
/* B1EB50 800A79B0 00000000 */ nop
|
|
/* B1EB54 800A79B4 46006482 */ mul.s $f18, $f12, $f0
|
|
/* B1EB58 800A79B8 C60C0018 */ lwc1 $f12, 0x18($s0)
|
|
/* B1EB5C 800A79BC 46027102 */ mul.s $f4, $f14, $f2
|
|
/* B1EB60 800A79C0 C60E0008 */ lwc1 $f14, 8($s0)
|
|
/* B1EB64 800A79C4 46083280 */ add.s $f10, $f6, $f8
|
|
/* B1EB68 800A79C8 46007202 */ mul.s $f8, $f14, $f0
|
|
/* B1EB6C 800A79CC E60A0000 */ swc1 $f10, ($s0)
|
|
/* B1EB70 800A79D0 46026282 */ mul.s $f10, $f12, $f2
|
|
/* B1EB74 800A79D4 46049181 */ sub.s $f6, $f18, $f4
|
|
/* B1EB78 800A79D8 46006102 */ mul.s $f4, $f12, $f0
|
|
/* B1EB7C 800A79DC C60C0014 */ lwc1 $f12, 0x14($s0)
|
|
/* B1EB80 800A79E0 E6060010 */ swc1 $f6, 0x10($s0)
|
|
/* B1EB84 800A79E4 46027182 */ mul.s $f6, $f14, $f2
|
|
/* B1EB88 800A79E8 460A4480 */ add.s $f18, $f8, $f10
|
|
/* B1EB8C 800A79EC 46026282 */ mul.s $f10, $f12, $f2
|
|
/* B1EB90 800A79F0 E6120008 */ swc1 $f18, 8($s0)
|
|
/* B1EB94 800A79F4 46006482 */ mul.s $f18, $f12, $f0
|
|
/* B1EB98 800A79F8 46062201 */ sub.s $f8, $f4, $f6
|
|
/* B1EB9C 800A79FC E60A0004 */ swc1 $f10, 4($s0)
|
|
/* B1EBA0 800A7A00 E6080018 */ swc1 $f8, 0x18($s0)
|
|
/* B1EBA4 800A7A04 10000002 */ b .L800A7A10
|
|
/* B1EBA8 800A7A08 E6120014 */ swc1 $f18, 0x14($s0)
|
|
/* B1EBAC 800A7A0C E6100004 */ swc1 $f16, 4($s0)
|
|
.L800A7A10:
|
|
/* B1EBB0 800A7A10 8FBF001C */ lw $ra, 0x1c($sp)
|
|
/* B1EBB4 800A7A14 8FB00018 */ lw $s0, 0x18($sp)
|
|
/* B1EBB8 800A7A18 27BD0038 */ addiu $sp, $sp, 0x38
|
|
/* B1EBBC 800A7A1C 03E00008 */ jr $ra
|
|
/* B1EBC0 800A7A20 00000000 */ nop
|
|
|