oot/asm/non_matchings/code/z_skin_matrix/func_800A7EC0.s

95 lines
4.7 KiB
ArmAsm

glabel func_800A7EC0
/* B1F060 800A7EC0 27BDFF98 */ addiu $sp, $sp, -0x68
/* B1F064 800A7EC4 F7B40010 */ sdc1 $f20, 0x10($sp)
/* B1F068 800A7EC8 4486A000 */ mtc1 $a2, $f20
/* B1F06C 800A7ECC F7B60018 */ sdc1 $f22, 0x18($sp)
/* B1F070 800A7ED0 4487B000 */ mtc1 $a3, $f22
/* B1F074 800A7ED4 00803025 */ move $a2, $a0
/* B1F078 800A7ED8 AFBF0024 */ sw $ra, 0x24($sp)
/* B1F07C 800A7EDC AFA40068 */ sw $a0, 0x68($sp)
/* B1F080 800A7EE0 AFA5006C */ sw $a1, 0x6c($sp)
/* B1F084 800A7EE4 87A4006E */ lh $a0, 0x6e($sp)
/* B1F088 800A7EE8 0C01DE1C */ jal Math_Sins
/* B1F08C 800A7EEC AFA60068 */ sw $a2, 0x68($sp)
/* B1F090 800A7EF0 87A4006E */ lh $a0, 0x6e($sp)
/* B1F094 800A7EF4 0C01DE0D */ jal Math_Coss
/* B1F098 800A7EF8 E7A00064 */ swc1 $f0, 0x64($sp)
/* B1F09C 800A7EFC 4616A302 */ mul.s $f12, $f20, $f22
/* B1F0A0 800A7F00 C7A40078 */ lwc1 $f4, 0x78($sp)
/* B1F0A4 800A7F04 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* B1F0A8 800A7F08 44814000 */ mtc1 $at, $f8
/* B1F0AC 800A7F0C 4604B182 */ mul.s $f6, $f22, $f4
/* B1F0B0 800A7F10 8FA60068 */ lw $a2, 0x68($sp)
/* B1F0B4 800A7F14 C7B20064 */ lwc1 $f18, 0x64($sp)
/* B1F0B8 800A7F18 4604A382 */ mul.s $f14, $f20, $f4
/* B1F0BC 800A7F1C E7AC0050 */ swc1 $f12, 0x50($sp)
/* B1F0C0 800A7F20 4614A082 */ mul.s $f2, $f20, $f20
/* B1F0C4 800A7F24 E7A6004C */ swc1 $f6, 0x4c($sp)
/* B1F0C8 800A7F28 E7AE0048 */ swc1 $f14, 0x48($sp)
/* B1F0CC 800A7F2C 46024281 */ sub.s $f10, $f8, $f2
/* B1F0D0 800A7F30 44814000 */ mtc1 $at, $f8
/* B1F0D4 800A7F34 46005182 */ mul.s $f6, $f10, $f0
/* B1F0D8 800A7F38 46004401 */ sub.s $f16, $f8, $f0
/* B1F0DC 800A7F3C 46023100 */ add.s $f4, $f6, $f2
/* B1F0E0 800A7F40 E4C40000 */ swc1 $f4, ($a2)
/* B1F0E4 800A7F44 C7AA0078 */ lwc1 $f10, 0x78($sp)
/* B1F0E8 800A7F48 46125182 */ mul.s $f6, $f10, $f18
/* B1F0EC 800A7F4C 00000000 */ nop
/* B1F0F0 800A7F50 460C8102 */ mul.s $f4, $f16, $f12
/* B1F0F4 800A7F54 44806000 */ mtc1 $zero, $f12
/* B1F0F8 800A7F58 4612B282 */ mul.s $f10, $f22, $f18
/* B1F0FC 800A7F5C E7A60038 */ swc1 $f6, 0x38($sp)
/* B1F100 800A7F60 46062200 */ add.s $f8, $f4, $f6
/* B1F104 800A7F64 460E8102 */ mul.s $f4, $f16, $f14
/* B1F108 800A7F68 E4C80004 */ swc1 $f8, 4($a2)
/* B1F10C 800A7F6C E7AA0034 */ swc1 $f10, 0x34($sp)
/* B1F110 800A7F70 C7A60034 */ lwc1 $f6, 0x34($sp)
/* B1F114 800A7F74 E4CC000C */ swc1 $f12, 0xc($a2)
/* B1F118 800A7F78 46062201 */ sub.s $f8, $f4, $f6
/* B1F11C 800A7F7C E4C80008 */ swc1 $f8, 8($a2)
/* B1F120 800A7F80 C7AA0050 */ lwc1 $f10, 0x50($sp)
/* B1F124 800A7F84 C7A60038 */ lwc1 $f6, 0x38($sp)
/* B1F128 800A7F88 460A8102 */ mul.s $f4, $f16, $f10
/* B1F12C 800A7F8C 44815000 */ mtc1 $at, $f10
/* B1F130 800A7F90 4616B082 */ mul.s $f2, $f22, $f22
/* B1F134 800A7F94 46062201 */ sub.s $f8, $f4, $f6
/* B1F138 800A7F98 46025101 */ sub.s $f4, $f10, $f2
/* B1F13C 800A7F9C E4C80010 */ swc1 $f8, 0x10($a2)
/* B1F140 800A7FA0 46002182 */ mul.s $f6, $f4, $f0
/* B1F144 800A7FA4 46023200 */ add.s $f8, $f6, $f2
/* B1F148 800A7FA8 E4C80014 */ swc1 $f8, 0x14($a2)
/* B1F14C 800A7FAC C7AA004C */ lwc1 $f10, 0x4c($sp)
/* B1F150 800A7FB0 460A8102 */ mul.s $f4, $f16, $f10
/* B1F154 800A7FB4 E7A4002C */ swc1 $f4, 0x2c($sp)
/* B1F158 800A7FB8 4612A382 */ mul.s $f14, $f20, $f18
/* B1F15C 800A7FBC C7A6002C */ lwc1 $f6, 0x2c($sp)
/* B1F160 800A7FC0 E4CC001C */ swc1 $f12, 0x1c($a2)
/* B1F164 800A7FC4 460E3200 */ add.s $f8, $f6, $f14
/* B1F168 800A7FC8 E4C80018 */ swc1 $f8, 0x18($a2)
/* B1F16C 800A7FCC C7AA0048 */ lwc1 $f10, 0x48($sp)
/* B1F170 800A7FD0 C7A60034 */ lwc1 $f6, 0x34($sp)
/* B1F174 800A7FD4 460A8102 */ mul.s $f4, $f16, $f10
/* B1F178 800A7FD8 44818000 */ mtc1 $at, $f16
/* B1F17C 800A7FDC 46062200 */ add.s $f8, $f4, $f6
/* B1F180 800A7FE0 E4C80020 */ swc1 $f8, 0x20($a2)
/* B1F184 800A7FE4 C7B20078 */ lwc1 $f18, 0x78($sp)
/* B1F188 800A7FE8 C7AA002C */ lwc1 $f10, 0x2c($sp)
/* B1F18C 800A7FEC E4CC002C */ swc1 $f12, 0x2c($a2)
/* B1F190 800A7FF0 46129082 */ mul.s $f2, $f18, $f18
/* B1F194 800A7FF4 460E5101 */ sub.s $f4, $f10, $f14
/* B1F198 800A7FF8 E4CC0030 */ swc1 $f12, 0x30($a2)
/* B1F19C 800A7FFC E4CC0034 */ swc1 $f12, 0x34($a2)
/* B1F1A0 800A8000 E4CC0038 */ swc1 $f12, 0x38($a2)
/* B1F1A4 800A8004 E4C40024 */ swc1 $f4, 0x24($a2)
/* B1F1A8 800A8008 E4D0003C */ swc1 $f16, 0x3c($a2)
/* B1F1AC 800A800C 46028181 */ sub.s $f6, $f16, $f2
/* B1F1B0 800A8010 46003202 */ mul.s $f8, $f6, $f0
/* B1F1B4 800A8014 46024280 */ add.s $f10, $f8, $f2
/* B1F1B8 800A8018 E4CA0028 */ swc1 $f10, 0x28($a2)
/* B1F1BC 800A801C 8FBF0024 */ lw $ra, 0x24($sp)
/* B1F1C0 800A8020 D7B60018 */ ldc1 $f22, 0x18($sp)
/* B1F1C4 800A8024 D7B40010 */ ldc1 $f20, 0x10($sp)
/* B1F1C8 800A8028 03E00008 */ jr $ra
/* B1F1CC 800A802C 27BD0068 */ addiu $sp, $sp, 0x68