mirror of
https://github.com/n64decomp/mk64
synced 2026-08-19 05:22:09 -04:00
8ab4557b39
* Split asm using autodecompiler * Placed libultra bss and linked more C
62 lines
3.1 KiB
ArmAsm
62 lines
3.1 KiB
ArmAsm
glabel func_8000B874
|
|
/* 00C474 8000B874 00071880 */ sll $v1, $a3, 2
|
|
/* 00C478 8000B878 3C0F8016 */ lui $t7, %hi(D_80164560) # 0x8016
|
|
/* 00C47C 8000B87C 3C188016 */ lui $t8, %hi(D_80164570) # 0x8016
|
|
/* 00C480 8000B880 01E37821 */ addu $t7, $t7, $v1
|
|
/* 00C484 8000B884 0303C021 */ addu $t8, $t8, $v1
|
|
/* 00C488 8000B888 8DEF4560 */ lw $t7, %lo(D_80164560)($t7) # 0x4560($t7)
|
|
/* 00C48C 8000B88C 8F184570 */ lw $t8, %lo(D_80164570)($t8) # 0x4570($t8)
|
|
/* 00C490 8000B890 30CEFFFF */ andi $t6, $a2, 0xffff
|
|
/* 00C494 8000B894 27BDFFD0 */ addiu $sp, $sp, -0x30
|
|
/* 00C498 8000B898 000E20C0 */ sll $a0, $t6, 3
|
|
/* 00C49C 8000B89C AFA60038 */ sw $a2, 0x38($sp)
|
|
/* 00C4A0 8000B8A0 01E41021 */ addu $v0, $t7, $a0
|
|
/* 00C4A4 8000B8A4 03042821 */ addu $a1, $t8, $a0
|
|
/* 00C4A8 8000B8A8 84590000 */ lh $t9, ($v0)
|
|
/* 00C4AC 8000B8AC 84A90000 */ lh $t1, ($a1)
|
|
/* 00C4B0 8000B8B0 84480004 */ lh $t0, 4($v0)
|
|
/* 00C4B4 8000B8B4 84AA0004 */ lh $t2, 4($a1)
|
|
/* 00C4B8 8000B8B8 44992000 */ mtc1 $t9, $f4
|
|
/* 00C4BC 8000B8BC 44894000 */ mtc1 $t1, $f8
|
|
/* 00C4C0 8000B8C0 44883000 */ mtc1 $t0, $f6
|
|
/* 00C4C4 8000B8C4 468020A0 */ cvt.s.w $f2, $f4
|
|
/* 00C4C8 8000B8C8 448A5000 */ mtc1 $t2, $f10
|
|
/* 00C4CC 8000B8CC 3C01800F */ lui $at, %hi(D_800ECFE0) # $at, 0x800f
|
|
/* 00C4D0 8000B8D0 46804020 */ cvt.s.w $f0, $f8
|
|
/* 00C4D4 8000B8D4 46803420 */ cvt.s.w $f16, $f6
|
|
/* 00C4D8 8000B8D8 468054A0 */ cvt.s.w $f18, $f10
|
|
/* 00C4DC 8000B8DC 46020101 */ sub.s $f4, $f0, $f2
|
|
/* 00C4E0 8000B8E0 46109181 */ sub.s $f6, $f18, $f16
|
|
/* 00C4E4 8000B8E4 E7A4000C */ swc1 $f4, 0xc($sp)
|
|
/* 00C4E8 8000B8E8 C7A8000C */ lwc1 $f8, 0xc($sp)
|
|
/* 00C4EC 8000B8EC E7A60008 */ swc1 $f6, 8($sp)
|
|
/* 00C4F0 8000B8F0 46084282 */ mul.s $f10, $f8, $f8
|
|
/* 00C4F4 8000B8F4 C7A40008 */ lwc1 $f4, 8($sp)
|
|
/* 00C4F8 8000B8F8 46042182 */ mul.s $f6, $f4, $f4
|
|
/* 00C4FC 8000B8FC C424CFE0 */ lwc1 $f4, %lo(D_800ECFE0)($at)
|
|
/* 00C500 8000B900 46065200 */ add.s $f8, $f10, $f6
|
|
/* 00C504 8000B904 4604403C */ c.lt.s $f8, $f4
|
|
/* 00C508 8000B908 E7A80004 */ swc1 $f8, 4($sp)
|
|
/* 00C50C 8000B90C 45020005 */ bc1fl .L8000B924
|
|
/* 00C510 8000B910 46026181 */ sub.s $f6, $f12, $f2
|
|
/* 00C514 8000B914 44800000 */ mtc1 $zero, $f0
|
|
/* 00C518 8000B918 1000000E */ b .L8000B954
|
|
/* 00C51C 8000B91C 00000000 */ nop
|
|
/* 00C520 8000B920 46026181 */ sub.s $f6, $f12, $f2
|
|
.L8000B924:
|
|
/* 00C524 8000B924 C7AA000C */ lwc1 $f10, 0xc($sp)
|
|
/* 00C528 8000B928 C7A40008 */ lwc1 $f4, 8($sp)
|
|
/* 00C52C 8000B92C 3C013F80 */ li $at, 0x3F800000 # 1.000000
|
|
/* 00C530 8000B930 46065202 */ mul.s $f8, $f10, $f6
|
|
/* 00C534 8000B934 46107281 */ sub.s $f10, $f14, $f16
|
|
/* 00C538 8000B938 460A2182 */ mul.s $f6, $f4, $f10
|
|
/* 00C53C 8000B93C C7AA0004 */ lwc1 $f10, 4($sp)
|
|
/* 00C540 8000B940 46064480 */ add.s $f18, $f8, $f6
|
|
/* 00C544 8000B944 44813000 */ mtc1 $at, $f6
|
|
/* 00C548 8000B948 46129100 */ add.s $f4, $f18, $f18
|
|
/* 00C54C 8000B94C 460A2203 */ div.s $f8, $f4, $f10
|
|
/* 00C550 8000B950 46064001 */ sub.s $f0, $f8, $f6
|
|
.L8000B954:
|
|
/* 00C554 8000B954 03E00008 */ jr $ra
|
|
/* 00C558 8000B958 27BD0030 */ addiu $sp, $sp, 0x30
|