papermario/asm/nonmatchings/code_78D150/func_802A1518_78D668.s
2021-01-11 21:40:52 +09:00

75 lines
3.6 KiB
ArmAsm
Generated

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802A1518_78D668
/* 78D668 802A1518 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 78D66C 802A151C AFB10014 */ sw $s1, 0x14($sp)
/* 78D670 802A1520 0080882D */ daddu $s1, $a0, $zero
/* 78D674 802A1524 AFBF0018 */ sw $ra, 0x18($sp)
/* 78D678 802A1528 10A00002 */ beqz $a1, .L802A1534
/* 78D67C 802A152C AFB00010 */ sw $s0, 0x10($sp)
/* 78D680 802A1530 AE200070 */ sw $zero, 0x70($s1)
.L802A1534:
/* 78D684 802A1534 8E230070 */ lw $v1, 0x70($s1)
/* 78D688 802A1538 10600005 */ beqz $v1, .L802A1550
/* 78D68C 802A153C 24020001 */ addiu $v0, $zero, 1
/* 78D690 802A1540 10620008 */ beq $v1, $v0, .L802A1564
/* 78D694 802A1544 0000102D */ daddu $v0, $zero, $zero
/* 78D698 802A1548 080A8582 */ j .L802A1608
/* 78D69C 802A154C 00000000 */ nop
.L802A1550:
/* 78D6A0 802A1550 2402FFB0 */ addiu $v0, $zero, -0x50
/* 78D6A4 802A1554 AE220078 */ sw $v0, 0x78($s1)
/* 78D6A8 802A1558 24020001 */ addiu $v0, $zero, 1
/* 78D6AC 802A155C AE200074 */ sw $zero, 0x74($s1)
/* 78D6B0 802A1560 AE220070 */ sw $v0, 0x70($s1)
.L802A1564:
/* 78D6B4 802A1564 3C0140C9 */ lui $at, 0x40c9
/* 78D6B8 802A1568 34210FD0 */ ori $at, $at, 0xfd0
/* 78D6BC 802A156C 44810000 */ mtc1 $at, $f0
/* 78D6C0 802A1570 C62C0074 */ lwc1 $f12, 0x74($s1)
/* 78D6C4 802A1574 46806320 */ cvt.s.w $f12, $f12
/* 78D6C8 802A1578 46006302 */ mul.s $f12, $f12, $f0
/* 78D6CC 802A157C 00000000 */ nop
/* 78D6D0 802A1580 3C0143B4 */ lui $at, 0x43b4
/* 78D6D4 802A1584 44810000 */ mtc1 $at, $f0
/* 78D6D8 802A1588 8E300078 */ lw $s0, 0x78($s1)
/* 78D6DC 802A158C 0C00A85B */ jal sin_rad
/* 78D6E0 802A1590 46006303 */ div.s $f12, $f12, $f0
/* 78D6E4 802A1594 3C0141F0 */ lui $at, 0x41f0
/* 78D6E8 802A1598 44811000 */ mtc1 $at, $f2
/* 78D6EC 802A159C 00000000 */ nop
/* 78D6F0 802A15A0 46020002 */ mul.s $f0, $f0, $f2
/* 78D6F4 802A15A4 00000000 */ nop
/* 78D6F8 802A15A8 46020000 */ add.s $f0, $f0, $f2
/* 78D6FC 802A15AC 3C074248 */ lui $a3, 0x4248
/* 78D700 802A15B0 4600010D */ trunc.w.s $f4, $f0
/* 78D704 802A15B4 44022000 */ mfc1 $v0, $f4
/* 78D708 802A15B8 44902000 */ mtc1 $s0, $f4
/* 78D70C 802A15BC 00000000 */ nop
/* 78D710 802A15C0 46802120 */ cvt.s.w $f4, $f4
/* 78D714 802A15C4 44052000 */ mfc1 $a1, $f4
/* 78D718 802A15C8 44822000 */ mtc1 $v0, $f4
/* 78D71C 802A15CC 00000000 */ nop
/* 78D720 802A15D0 46802120 */ cvt.s.w $f4, $f4
/* 78D724 802A15D4 44062000 */ mfc1 $a2, $f4
/* 78D728 802A15D8 0C01C1B4 */ jal func_800706D0
/* 78D72C 802A15DC 0000202D */ daddu $a0, $zero, $zero
/* 78D730 802A15E0 24020002 */ addiu $v0, $zero, 2
/* 78D734 802A15E4 8E230078 */ lw $v1, 0x78($s1)
/* 78D738 802A15E8 8E240074 */ lw $a0, 0x74($s1)
/* 78D73C 802A15EC 2463000E */ addiu $v1, $v1, 0xe
/* 78D740 802A15F0 24840014 */ addiu $a0, $a0, 0x14
/* 78D744 802A15F4 AE240074 */ sw $a0, 0x74($s1)
/* 78D748 802A15F8 28840168 */ slti $a0, $a0, 0x168
/* 78D74C 802A15FC 10800002 */ beqz $a0, .L802A1608
/* 78D750 802A1600 AE230078 */ sw $v1, 0x78($s1)
/* 78D754 802A1604 0000102D */ daddu $v0, $zero, $zero
.L802A1608:
/* 78D758 802A1608 8FBF0018 */ lw $ra, 0x18($sp)
/* 78D75C 802A160C 8FB10014 */ lw $s1, 0x14($sp)
/* 78D760 802A1610 8FB00010 */ lw $s0, 0x10($sp)
/* 78D764 802A1614 03E00008 */ jr $ra
/* 78D768 802A1618 27BD0020 */ addiu $sp, $sp, 0x20
/* 78D76C 802A161C 00000000 */ nop