mirror of
https://github.com/pmret/papermario.git
synced 2024-11-18 17:02:46 +01:00
371 lines
16 KiB
ArmAsm
371 lines
16 KiB
ArmAsm
|
.set noat # allow manual use of $at
|
||
|
.set noreorder # don't insert nops after branches
|
||
|
|
||
|
|
||
|
glabel update_lerp
|
||
|
/* 0057B4 8002A3B4 27BDFFC8 */ addiu $sp, $sp, -0x38
|
||
|
/* 0057B8 8002A3B8 F7B60028 */ sdc1 $f22, 0x28($sp)
|
||
|
/* 0057BC 8002A3BC 4485B000 */ mtc1 $a1, $f22
|
||
|
/* 0057C0 8002A3C0 F7B80030 */ sdc1 $f24, 0x30($sp)
|
||
|
/* 0057C4 8002A3C4 4486C000 */ mtc1 $a2, $f24
|
||
|
/* 0057C8 8002A3C8 AFB00010 */ sw $s0, 0x10($sp)
|
||
|
/* 0057CC 8002A3CC 8FB00048 */ lw $s0, 0x48($sp)
|
||
|
/* 0057D0 8002A3D0 AFB10014 */ sw $s1, 0x14($sp)
|
||
|
/* 0057D4 8002A3D4 AFBF0018 */ sw $ra, 0x18($sp)
|
||
|
/* 0057D8 8002A3D8 F7B40020 */ sdc1 $f20, 0x20($sp)
|
||
|
/* 0057DC 8002A3DC 16000003 */ bnez $s0, .L8002A3EC
|
||
|
/* 0057E0 8002A3E0 00E0882D */ daddu $s1, $a3, $zero
|
||
|
/* 0057E4 8002A3E4 0800AA39 */ j .L8002A8E4
|
||
|
/* 0057E8 8002A3E8 4600C006 */ mov.s $f0, $f24
|
||
|
|
||
|
.L8002A3EC:
|
||
|
/* 0057EC 8002A3EC 2C82000D */ sltiu $v0, $a0, 0xd
|
||
|
/* 0057F0 8002A3F0 1040013B */ beqz $v0, .L8002A8E0
|
||
|
/* 0057F4 8002A3F4 00041080 */ sll $v0, $a0, 2
|
||
|
/* 0057F8 8002A3F8 3C018009 */ lui $at, 0x8009
|
||
|
/* 0057FC 8002A3FC 00220821 */ addu $at, $at, $v0
|
||
|
/* 005800 8002A400 8C227D90 */ lw $v0, 0x7d90($at)
|
||
|
/* 005804 8002A404 00400008 */ jr $v0
|
||
|
/* 005808 8002A408 00000000 */ nop
|
||
|
/* 00580C 8002A40C 4616C001 */ sub.s $f0, $f24, $f22
|
||
|
/* 005810 8002A410 44911000 */ mtc1 $s1, $f2
|
||
|
/* 005814 8002A414 00000000 */ nop
|
||
|
/* 005818 8002A418 468010A0 */ cvt.s.w $f2, $f2
|
||
|
/* 00581C 8002A41C 46020002 */ mul.s $f0, $f0, $f2
|
||
|
/* 005820 8002A420 00000000 */ nop
|
||
|
/* 005824 8002A424 44901000 */ mtc1 $s0, $f2
|
||
|
/* 005828 8002A428 00000000 */ nop
|
||
|
/* 00582C 8002A42C 468010A0 */ cvt.s.w $f2, $f2
|
||
|
/* 005830 8002A430 0800A938 */ j .L8002A4E0
|
||
|
/* 005834 8002A434 46020003 */ div.s $f0, $f0, $f2
|
||
|
|
||
|
/* 005838 8002A438 02310018 */ mult $s1, $s1
|
||
|
/* 00583C 8002A43C 00004012 */ mflo $t0
|
||
|
/* 005840 8002A440 00000000 */ nop
|
||
|
/* 005844 8002A444 0800A92D */ j .L8002A4B4
|
||
|
/* 005848 8002A448 02100018 */ mult $s0, $s0
|
||
|
|
||
|
/* 00584C 8002A44C 02310018 */ mult $s1, $s1
|
||
|
/* 005850 8002A450 00004012 */ mflo $t0
|
||
|
/* 005854 8002A454 00000000 */ nop
|
||
|
/* 005858 8002A458 0800A925 */ j .L8002A494
|
||
|
/* 00585C 8002A45C 02100018 */ mult $s0, $s0
|
||
|
|
||
|
/* 005860 8002A460 02310018 */ mult $s1, $s1
|
||
|
/* 005864 8002A464 00004012 */ mflo $t0
|
||
|
/* 005868 8002A468 00000000 */ nop
|
||
|
/* 00586C 8002A46C 00000000 */ nop
|
||
|
/* 005870 8002A470 02100018 */ mult $s0, $s0
|
||
|
/* 005874 8002A474 00001012 */ mflo $v0
|
||
|
/* 005878 8002A478 00000000 */ nop
|
||
|
/* 00587C 8002A47C 00000000 */ nop
|
||
|
/* 005880 8002A480 01110018 */ mult $t0, $s1
|
||
|
/* 005884 8002A484 00004012 */ mflo $t0
|
||
|
/* 005888 8002A488 00000000 */ nop
|
||
|
/* 00588C 8002A48C 00000000 */ nop
|
||
|
/* 005890 8002A490 00500018 */ mult $v0, $s0
|
||
|
.L8002A494:
|
||
|
/* 005894 8002A494 00001012 */ mflo $v0
|
||
|
/* 005898 8002A498 00000000 */ nop
|
||
|
/* 00589C 8002A49C 00000000 */ nop
|
||
|
/* 0058A0 8002A4A0 01110018 */ mult $t0, $s1
|
||
|
/* 0058A4 8002A4A4 00004012 */ mflo $t0
|
||
|
/* 0058A8 8002A4A8 00000000 */ nop
|
||
|
/* 0058AC 8002A4AC 00000000 */ nop
|
||
|
/* 0058B0 8002A4B0 00500018 */ mult $v0, $s0
|
||
|
.L8002A4B4:
|
||
|
/* 0058B4 8002A4B4 4616C081 */ sub.s $f2, $f24, $f22
|
||
|
/* 0058B8 8002A4B8 44880000 */ mtc1 $t0, $f0
|
||
|
/* 0058BC 8002A4BC 00000000 */ nop
|
||
|
/* 0058C0 8002A4C0 46800020 */ cvt.s.w $f0, $f0
|
||
|
/* 0058C4 8002A4C4 46020002 */ mul.s $f0, $f0, $f2
|
||
|
/* 0058C8 8002A4C8 00000000 */ nop
|
||
|
/* 0058CC 8002A4CC 00001012 */ mflo $v0
|
||
|
/* 0058D0 8002A4D0 44821000 */ mtc1 $v0, $f2
|
||
|
/* 0058D4 8002A4D4 00000000 */ nop
|
||
|
/* 0058D8 8002A4D8 468010A0 */ cvt.s.w $f2, $f2
|
||
|
/* 0058DC 8002A4DC 46020003 */ div.s $f0, $f0, $f2
|
||
|
.L8002A4E0:
|
||
|
/* 0058E0 8002A4E0 0800AA39 */ j .L8002A8E4
|
||
|
/* 0058E4 8002A4E4 4600B000 */ add.s $f0, $f22, $f0
|
||
|
|
||
|
/* 0058E8 8002A4E8 44916000 */ mtc1 $s1, $f12
|
||
|
/* 0058EC 8002A4EC 00000000 */ nop
|
||
|
/* 0058F0 8002A4F0 46806320 */ cvt.s.w $f12, $f12
|
||
|
/* 0058F4 8002A4F4 4490A000 */ mtc1 $s0, $f20
|
||
|
/* 0058F8 8002A4F8 00000000 */ nop
|
||
|
/* 0058FC 8002A4FC 4680A520 */ cvt.s.w $f20, $f20
|
||
|
/* 005900 8002A500 46146303 */ div.s $f12, $f12, $f20
|
||
|
/* 005904 8002A504 3C018009 */ lui $at, 0x8009
|
||
|
/* 005908 8002A508 D4207DC8 */ ldc1 $f0, 0x7dc8($at)
|
||
|
/* 00590C 8002A50C 46006321 */ cvt.d.s $f12, $f12
|
||
|
/* 005910 8002A510 46206302 */ mul.d $f12, $f12, $f0
|
||
|
/* 005914 8002A514 00000000 */ nop
|
||
|
/* 005918 8002A518 3C014010 */ lui $at, 0x4010
|
||
|
/* 00591C 8002A51C 44810800 */ mtc1 $at, $f1
|
||
|
/* 005920 8002A520 44800000 */ mtc1 $zero, $f0
|
||
|
/* 005924 8002A524 00000000 */ nop
|
||
|
/* 005928 8002A528 46206302 */ mul.d $f12, $f12, $f0
|
||
|
/* 00592C 8002A52C 0800A966 */ j .L8002A598
|
||
|
/* 005930 8002A530 00000000 */ nop
|
||
|
|
||
|
/* 005934 8002A534 02310018 */ mult $s1, $s1
|
||
|
/* 005938 8002A538 4490A000 */ mtc1 $s0, $f20
|
||
|
/* 00593C 8002A53C 00000000 */ nop
|
||
|
/* 005940 8002A540 4680A520 */ cvt.s.w $f20, $f20
|
||
|
/* 005944 8002A544 3C018009 */ lui $at, 0x8009
|
||
|
/* 005948 8002A548 D4207DD0 */ ldc1 $f0, 0x7dd0($at)
|
||
|
/* 00594C 8002A54C 00001812 */ mflo $v1
|
||
|
/* 005950 8002A550 44836000 */ mtc1 $v1, $f12
|
||
|
/* 005954 8002A554 00000000 */ nop
|
||
|
/* 005958 8002A558 46806320 */ cvt.s.w $f12, $f12
|
||
|
/* 00595C 8002A55C 46146303 */ div.s $f12, $f12, $f20
|
||
|
/* 005960 8002A560 46006321 */ cvt.d.s $f12, $f12
|
||
|
/* 005964 8002A564 46206302 */ mul.d $f12, $f12, $f0
|
||
|
/* 005968 8002A568 00000000 */ nop
|
||
|
/* 00596C 8002A56C 3C014010 */ lui $at, 0x4010
|
||
|
/* 005970 8002A570 44810800 */ mtc1 $at, $f1
|
||
|
/* 005974 8002A574 44800000 */ mtc1 $zero, $f0
|
||
|
/* 005978 8002A578 00000000 */ nop
|
||
|
/* 00597C 8002A57C 46206302 */ mul.d $f12, $f12, $f0
|
||
|
/* 005980 8002A580 00000000 */ nop
|
||
|
/* 005984 8002A584 3C01402E */ lui $at, 0x402e
|
||
|
/* 005988 8002A588 44810800 */ mtc1 $at, $f1
|
||
|
/* 00598C 8002A58C 44800000 */ mtc1 $zero, $f0
|
||
|
/* 005990 8002A590 00000000 */ nop
|
||
|
/* 005994 8002A594 46206303 */ div.d $f12, $f12, $f0
|
||
|
.L8002A598:
|
||
|
/* 005998 8002A598 0C00A874 */ jal cos_rad
|
||
|
/* 00599C 8002A59C 46206320 */ cvt.s.d $f12, $f12
|
||
|
/* 0059A0 8002A5A0 4614A502 */ mul.s $f20, $f20, $f20
|
||
|
/* 0059A4 8002A5A4 00000000 */ nop
|
||
|
/* 0059A8 8002A5A8 4616C081 */ sub.s $f2, $f24, $f22
|
||
|
/* 0059AC 8002A5AC 46001082 */ mul.s $f2, $f2, $f0
|
||
|
/* 0059B0 8002A5B0 00000000 */ nop
|
||
|
/* 0059B4 8002A5B4 02111023 */ subu $v0, $s0, $s1
|
||
|
/* 0059B8 8002A5B8 44820000 */ mtc1 $v0, $f0
|
||
|
/* 0059BC 8002A5BC 00000000 */ nop
|
||
|
/* 0059C0 8002A5C0 46800020 */ cvt.s.w $f0, $f0
|
||
|
/* 0059C4 8002A5C4 46001082 */ mul.s $f2, $f2, $f0
|
||
|
/* 0059C8 8002A5C8 00000000 */ nop
|
||
|
/* 0059CC 8002A5CC 46001082 */ mul.s $f2, $f2, $f0
|
||
|
/* 0059D0 8002A5D0 00000000 */ nop
|
||
|
/* 0059D4 8002A5D4 46141083 */ div.s $f2, $f2, $f20
|
||
|
/* 0059D8 8002A5D8 0800AA39 */ j .L8002A8E4
|
||
|
/* 0059DC 8002A5DC 4602C001 */ sub.s $f0, $f24, $f2
|
||
|
|
||
|
/* 0059E0 8002A5E0 02113823 */ subu $a3, $s0, $s1
|
||
|
/* 0059E4 8002A5E4 00E70018 */ mult $a3, $a3
|
||
|
/* 0059E8 8002A5E8 4616C101 */ sub.s $f4, $f24, $f22
|
||
|
/* 0059EC 8002A5EC 00001812 */ mflo $v1
|
||
|
/* 0059F0 8002A5F0 44830000 */ mtc1 $v1, $f0
|
||
|
/* 0059F4 8002A5F4 00000000 */ nop
|
||
|
/* 0059F8 8002A5F8 46800020 */ cvt.s.w $f0, $f0
|
||
|
/* 0059FC 8002A5FC 46040002 */ mul.s $f0, $f0, $f4
|
||
|
/* 005A00 8002A600 00000000 */ nop
|
||
|
/* 005A04 8002A604 02100018 */ mult $s0, $s0
|
||
|
/* 005A08 8002A608 00001812 */ mflo $v1
|
||
|
/* 005A0C 8002A60C 44831000 */ mtc1 $v1, $f2
|
||
|
/* 005A10 8002A610 00000000 */ nop
|
||
|
/* 005A14 8002A614 468010A0 */ cvt.s.w $f2, $f2
|
||
|
/* 005A18 8002A618 0800A9B3 */ j .L8002A6CC
|
||
|
/* 005A1C 8002A61C 4604B100 */ add.s $f4, $f22, $f4
|
||
|
|
||
|
/* 005A20 8002A620 02113823 */ subu $a3, $s0, $s1
|
||
|
/* 005A24 8002A624 00E70018 */ mult $a3, $a3
|
||
|
/* 005A28 8002A628 00001012 */ mflo $v0
|
||
|
/* 005A2C 8002A62C 00000000 */ nop
|
||
|
/* 005A30 8002A630 00000000 */ nop
|
||
|
/* 005A34 8002A634 00470018 */ mult $v0, $a3
|
||
|
/* 005A38 8002A638 00004012 */ mflo $t0
|
||
|
/* 005A3C 8002A63C 00000000 */ nop
|
||
|
/* 005A40 8002A640 0800A9A4 */ j .L8002A690
|
||
|
/* 005A44 8002A644 02100018 */ mult $s0, $s0
|
||
|
|
||
|
/* 005A48 8002A648 02113823 */ subu $a3, $s0, $s1
|
||
|
/* 005A4C 8002A64C 00E70018 */ mult $a3, $a3
|
||
|
/* 005A50 8002A650 00001012 */ mflo $v0
|
||
|
/* 005A54 8002A654 00000000 */ nop
|
||
|
/* 005A58 8002A658 00000000 */ nop
|
||
|
/* 005A5C 8002A65C 00470018 */ mult $v0, $a3
|
||
|
/* 005A60 8002A660 00004012 */ mflo $t0
|
||
|
/* 005A64 8002A664 00000000 */ nop
|
||
|
/* 005A68 8002A668 00000000 */ nop
|
||
|
/* 005A6C 8002A66C 02100018 */ mult $s0, $s0
|
||
|
/* 005A70 8002A670 00001012 */ mflo $v0
|
||
|
/* 005A74 8002A674 00000000 */ nop
|
||
|
/* 005A78 8002A678 00000000 */ nop
|
||
|
/* 005A7C 8002A67C 01070018 */ mult $t0, $a3
|
||
|
/* 005A80 8002A680 00004012 */ mflo $t0
|
||
|
/* 005A84 8002A684 00000000 */ nop
|
||
|
/* 005A88 8002A688 00000000 */ nop
|
||
|
/* 005A8C 8002A68C 00500018 */ mult $v0, $s0
|
||
|
.L8002A690:
|
||
|
/* 005A90 8002A690 4616C101 */ sub.s $f4, $f24, $f22
|
||
|
/* 005A94 8002A694 44880000 */ mtc1 $t0, $f0
|
||
|
/* 005A98 8002A698 00000000 */ nop
|
||
|
/* 005A9C 8002A69C 46800020 */ cvt.s.w $f0, $f0
|
||
|
/* 005AA0 8002A6A0 46040002 */ mul.s $f0, $f0, $f4
|
||
|
/* 005AA4 8002A6A4 00000000 */ nop
|
||
|
/* 005AA8 8002A6A8 00001012 */ mflo $v0
|
||
|
/* 005AAC 8002A6AC 00000000 */ nop
|
||
|
/* 005AB0 8002A6B0 00000000 */ nop
|
||
|
/* 005AB4 8002A6B4 00500018 */ mult $v0, $s0
|
||
|
/* 005AB8 8002A6B8 4604B100 */ add.s $f4, $f22, $f4
|
||
|
/* 005ABC 8002A6BC 00001012 */ mflo $v0
|
||
|
/* 005AC0 8002A6C0 44821000 */ mtc1 $v0, $f2
|
||
|
/* 005AC4 8002A6C4 00000000 */ nop
|
||
|
/* 005AC8 8002A6C8 468010A0 */ cvt.s.w $f2, $f2
|
||
|
.L8002A6CC:
|
||
|
/* 005ACC 8002A6CC 46020003 */ div.s $f0, $f0, $f2
|
||
|
/* 005AD0 8002A6D0 0800AA39 */ j .L8002A8E4
|
||
|
/* 005AD4 8002A6D4 46002001 */ sub.s $f0, $f4, $f0
|
||
|
|
||
|
/* 005AD8 8002A6D8 02310018 */ mult $s1, $s1
|
||
|
/* 005ADC 8002A6DC 4490A000 */ mtc1 $s0, $f20
|
||
|
/* 005AE0 8002A6E0 00000000 */ nop
|
||
|
/* 005AE4 8002A6E4 4680A520 */ cvt.s.w $f20, $f20
|
||
|
/* 005AE8 8002A6E8 3C018009 */ lui $at, 0x8009
|
||
|
/* 005AEC 8002A6EC D4207DD8 */ ldc1 $f0, 0x7dd8($at)
|
||
|
/* 005AF0 8002A6F0 00001812 */ mflo $v1
|
||
|
/* 005AF4 8002A6F4 44836000 */ mtc1 $v1, $f12
|
||
|
/* 005AF8 8002A6F8 00000000 */ nop
|
||
|
/* 005AFC 8002A6FC 46806320 */ cvt.s.w $f12, $f12
|
||
|
/* 005B00 8002A700 46146303 */ div.s $f12, $f12, $f20
|
||
|
/* 005B04 8002A704 46006321 */ cvt.d.s $f12, $f12
|
||
|
/* 005B08 8002A708 46206302 */ mul.d $f12, $f12, $f0
|
||
|
/* 005B0C 8002A70C 00000000 */ nop
|
||
|
/* 005B10 8002A710 3C014010 */ lui $at, 0x4010
|
||
|
/* 005B14 8002A714 44810800 */ mtc1 $at, $f1
|
||
|
/* 005B18 8002A718 44800000 */ mtc1 $zero, $f0
|
||
|
/* 005B1C 8002A71C 00000000 */ nop
|
||
|
/* 005B20 8002A720 46206302 */ mul.d $f12, $f12, $f0
|
||
|
/* 005B24 8002A724 00000000 */ nop
|
||
|
/* 005B28 8002A728 3C014044 */ lui $at, 0x4044
|
||
|
/* 005B2C 8002A72C 44810800 */ mtc1 $at, $f1
|
||
|
/* 005B30 8002A730 44800000 */ mtc1 $zero, $f0
|
||
|
/* 005B34 8002A734 00000000 */ nop
|
||
|
/* 005B38 8002A738 46206303 */ div.d $f12, $f12, $f0
|
||
|
/* 005B3C 8002A73C 0C00A874 */ jal cos_rad
|
||
|
/* 005B40 8002A740 46206320 */ cvt.s.d $f12, $f12
|
||
|
/* 005B44 8002A744 02111023 */ subu $v0, $s0, $s1
|
||
|
/* 005B48 8002A748 44821000 */ mtc1 $v0, $f2
|
||
|
/* 005B4C 8002A74C 00000000 */ nop
|
||
|
/* 005B50 8002A750 468010A0 */ cvt.s.w $f2, $f2
|
||
|
/* 005B54 8002A754 46020002 */ mul.s $f0, $f0, $f2
|
||
|
/* 005B58 8002A758 00000000 */ nop
|
||
|
/* 005B5C 8002A75C 4614A502 */ mul.s $f20, $f20, $f20
|
||
|
/* 005B60 8002A760 00000000 */ nop
|
||
|
/* 005B64 8002A764 46020002 */ mul.s $f0, $f0, $f2
|
||
|
/* 005B68 8002A768 00000000 */ nop
|
||
|
/* 005B6C 8002A76C 44801000 */ mtc1 $zero, $f2
|
||
|
/* 005B70 8002A770 46140103 */ div.s $f4, $f0, $f20
|
||
|
/* 005B74 8002A774 4602203C */ c.lt.s $f4, $f2
|
||
|
/* 005B78 8002A778 00000000 */ nop
|
||
|
/* 005B7C 8002A77C 45030001 */ bc1tl .L8002A784
|
||
|
/* 005B80 8002A780 46002107 */ neg.s $f4, $f4
|
||
|
.L8002A784:
|
||
|
/* 005B84 8002A784 4616C001 */ sub.s $f0, $f24, $f22
|
||
|
/* 005B88 8002A788 46040002 */ mul.s $f0, $f0, $f4
|
||
|
/* 005B8C 8002A78C 00000000 */ nop
|
||
|
/* 005B90 8002A790 0800AA39 */ j .L8002A8E4
|
||
|
/* 005B94 8002A794 4600C001 */ sub.s $f0, $f24, $f0
|
||
|
|
||
|
/* 005B98 8002A798 44916000 */ mtc1 $s1, $f12
|
||
|
/* 005B9C 8002A79C 00000000 */ nop
|
||
|
/* 005BA0 8002A7A0 46806320 */ cvt.s.w $f12, $f12
|
||
|
/* 005BA4 8002A7A4 3C018009 */ lui $at, 0x8009
|
||
|
/* 005BA8 8002A7A8 D4207DE0 */ ldc1 $f0, 0x7de0($at)
|
||
|
/* 005BAC 8002A7AC 46006321 */ cvt.d.s $f12, $f12
|
||
|
/* 005BB0 8002A7B0 46206302 */ mul.d $f12, $f12, $f0
|
||
|
/* 005BB4 8002A7B4 00000000 */ nop
|
||
|
/* 005BB8 8002A7B8 44900000 */ mtc1 $s0, $f0
|
||
|
/* 005BBC 8002A7BC 00000000 */ nop
|
||
|
/* 005BC0 8002A7C0 46800020 */ cvt.s.w $f0, $f0
|
||
|
/* 005BC4 8002A7C4 46000021 */ cvt.d.s $f0, $f0
|
||
|
/* 005BC8 8002A7C8 46206303 */ div.d $f12, $f12, $f0
|
||
|
/* 005BCC 8002A7CC 0C00A874 */ jal cos_rad
|
||
|
/* 005BD0 8002A7D0 46206320 */ cvt.s.d $f12, $f12
|
||
|
/* 005BD4 8002A7D4 4616C081 */ sub.s $f2, $f24, $f22
|
||
|
/* 005BD8 8002A7D8 3C013FF0 */ lui $at, 0x3ff0
|
||
|
/* 005BDC 8002A7DC 44812800 */ mtc1 $at, $f5
|
||
|
/* 005BE0 8002A7E0 44802000 */ mtc1 $zero, $f4
|
||
|
/* 005BE4 8002A7E4 46000021 */ cvt.d.s $f0, $f0
|
||
|
/* 005BE8 8002A7E8 46202101 */ sub.d $f4, $f4, $f0
|
||
|
/* 005BEC 8002A7EC 460010A1 */ cvt.d.s $f2, $f2
|
||
|
/* 005BF0 8002A7F0 46241082 */ mul.d $f2, $f2, $f4
|
||
|
/* 005BF4 8002A7F4 00000000 */ nop
|
||
|
/* 005BF8 8002A7F8 3C013FE0 */ lui $at, 0x3fe0
|
||
|
/* 005BFC 8002A7FC 44810800 */ mtc1 $at, $f1
|
||
|
/* 005C00 8002A800 44800000 */ mtc1 $zero, $f0
|
||
|
/* 005C04 8002A804 00000000 */ nop
|
||
|
/* 005C08 8002A808 46201082 */ mul.d $f2, $f2, $f0
|
||
|
/* 005C0C 8002A80C 00000000 */ nop
|
||
|
/* 005C10 8002A810 4600B021 */ cvt.d.s $f0, $f22
|
||
|
/* 005C14 8002A814 46220000 */ add.d $f0, $f0, $f2
|
||
|
/* 005C18 8002A818 0800AA39 */ j .L8002A8E4
|
||
|
/* 005C1C 8002A81C 46200020 */ cvt.s.d $f0, $f0
|
||
|
|
||
|
/* 005C20 8002A820 44916000 */ mtc1 $s1, $f12
|
||
|
/* 005C24 8002A824 00000000 */ nop
|
||
|
/* 005C28 8002A828 46806320 */ cvt.s.w $f12, $f12
|
||
|
/* 005C2C 8002A82C 3C018009 */ lui $at, 0x8009
|
||
|
/* 005C30 8002A830 D4207DE8 */ ldc1 $f0, 0x7de8($at)
|
||
|
/* 005C34 8002A834 46006321 */ cvt.d.s $f12, $f12
|
||
|
/* 005C38 8002A838 46206302 */ mul.d $f12, $f12, $f0
|
||
|
/* 005C3C 8002A83C 00000000 */ nop
|
||
|
/* 005C40 8002A840 44900000 */ mtc1 $s0, $f0
|
||
|
/* 005C44 8002A844 00000000 */ nop
|
||
|
/* 005C48 8002A848 46800020 */ cvt.s.w $f0, $f0
|
||
|
/* 005C4C 8002A84C 46000021 */ cvt.d.s $f0, $f0
|
||
|
/* 005C50 8002A850 46206303 */ div.d $f12, $f12, $f0
|
||
|
/* 005C54 8002A854 0C00A85B */ jal sin_rad
|
||
|
/* 005C58 8002A858 46206320 */ cvt.s.d $f12, $f12
|
||
|
/* 005C5C 8002A85C 4616C081 */ sub.s $f2, $f24, $f22
|
||
|
/* 005C60 8002A860 46001082 */ mul.s $f2, $f2, $f0
|
||
|
/* 005C64 8002A864 00000000 */ nop
|
||
|
/* 005C68 8002A868 0800AA39 */ j .L8002A8E4
|
||
|
/* 005C6C 8002A86C 4602B000 */ add.s $f0, $f22, $f2
|
||
|
|
||
|
/* 005C70 8002A870 44916000 */ mtc1 $s1, $f12
|
||
|
/* 005C74 8002A874 00000000 */ nop
|
||
|
/* 005C78 8002A878 46806320 */ cvt.s.w $f12, $f12
|
||
|
/* 005C7C 8002A87C 3C018009 */ lui $at, 0x8009
|
||
|
/* 005C80 8002A880 D4207DF0 */ ldc1 $f0, 0x7df0($at)
|
||
|
/* 005C84 8002A884 46006321 */ cvt.d.s $f12, $f12
|
||
|
/* 005C88 8002A888 46206302 */ mul.d $f12, $f12, $f0
|
||
|
/* 005C8C 8002A88C 00000000 */ nop
|
||
|
/* 005C90 8002A890 44900000 */ mtc1 $s0, $f0
|
||
|
/* 005C94 8002A894 00000000 */ nop
|
||
|
/* 005C98 8002A898 46800020 */ cvt.s.w $f0, $f0
|
||
|
/* 005C9C 8002A89C 46000021 */ cvt.d.s $f0, $f0
|
||
|
/* 005CA0 8002A8A0 46206303 */ div.d $f12, $f12, $f0
|
||
|
/* 005CA4 8002A8A4 0C00A874 */ jal cos_rad
|
||
|
/* 005CA8 8002A8A8 46206320 */ cvt.s.d $f12, $f12
|
||
|
/* 005CAC 8002A8AC 4616C101 */ sub.s $f4, $f24, $f22
|
||
|
/* 005CB0 8002A8B0 3C013FF0 */ lui $at, 0x3ff0
|
||
|
/* 005CB4 8002A8B4 44811800 */ mtc1 $at, $f3
|
||
|
/* 005CB8 8002A8B8 44801000 */ mtc1 $zero, $f2
|
||
|
/* 005CBC 8002A8BC 46000021 */ cvt.d.s $f0, $f0
|
||
|
/* 005CC0 8002A8C0 46201081 */ sub.d $f2, $f2, $f0
|
||
|
/* 005CC4 8002A8C4 46002121 */ cvt.d.s $f4, $f4
|
||
|
/* 005CC8 8002A8C8 46222102 */ mul.d $f4, $f4, $f2
|
||
|
/* 005CCC 8002A8CC 00000000 */ nop
|
||
|
/* 005CD0 8002A8D0 4600B021 */ cvt.d.s $f0, $f22
|
||
|
/* 005CD4 8002A8D4 46240000 */ add.d $f0, $f0, $f4
|
||
|
/* 005CD8 8002A8D8 0800AA39 */ j .L8002A8E4
|
||
|
/* 005CDC 8002A8DC 46200020 */ cvt.s.d $f0, $f0
|
||
|
|
||
|
.L8002A8E0:
|
||
|
/* 005CE0 8002A8E0 44800000 */ mtc1 $zero, $f0
|
||
|
.L8002A8E4:
|
||
|
/* 005CE4 8002A8E4 8FBF0018 */ lw $ra, 0x18($sp)
|
||
|
/* 005CE8 8002A8E8 8FB10014 */ lw $s1, 0x14($sp)
|
||
|
/* 005CEC 8002A8EC 8FB00010 */ lw $s0, 0x10($sp)
|
||
|
/* 005CF0 8002A8F0 D7B80030 */ ldc1 $f24, 0x30($sp)
|
||
|
/* 005CF4 8002A8F4 D7B60028 */ ldc1 $f22, 0x28($sp)
|
||
|
/* 005CF8 8002A8F8 D7B40020 */ ldc1 $f20, 0x20($sp)
|
||
|
/* 005CFC 8002A8FC 03E00008 */ jr $ra
|
||
|
/* 005D00 8002A900 27BD0038 */ addiu $sp, $sp, 0x38
|
||
|
|