papermario/asm/nonmatchings/code_16c8e0/set_part_yaw.s
2020-08-12 22:37:16 -04:00

124 lines
5.2 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel set_part_yaw
/* 19287C 80263F9C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 192880 80263FA0 AFB00010 */ sw $s0, 0x10($sp)
/* 192884 80263FA4 00A0802D */ daddu $s0, $a1, $zero
/* 192888 80263FA8 AFB10014 */ sw $s1, 0x14($sp)
/* 19288C 80263FAC AFBF0018 */ sw $ra, 0x18($sp)
/* 192890 80263FB0 0C09A75B */ jal get_actor
/* 192894 80263FB4 00C0882D */ daddu $s1, $a2, $zero
/* 192898 80263FB8 0040202D */ daddu $a0, $v0, $zero
/* 19289C 80263FBC 0C099117 */ jal get_actor_part
/* 1928A0 80263FC0 0200282D */ daddu $a1, $s0, $zero
/* 1928A4 80263FC4 44910000 */ mtc1 $s1, $f0
/* 1928A8 80263FC8 00000000 */ nop
/* 1928AC 80263FCC 46800020 */ cvt.s.w $f0, $f0
/* 1928B0 80263FD0 E4400064 */ swc1 $f0, 0x64($v0)
/* 1928B4 80263FD4 8FBF0018 */ lw $ra, 0x18($sp)
/* 1928B8 80263FD8 8FB10014 */ lw $s1, 0x14($sp)
/* 1928BC 80263FDC 8FB00010 */ lw $s0, 0x10($sp)
/* 1928C0 80263FE0 03E00008 */ jr $ra
/* 1928C4 80263FE4 27BD0020 */ addiu $sp, $sp, 0x20
/* 1928C8 80263FE8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 1928CC 80263FEC AFB00010 */ sw $s0, 0x10($sp)
/* 1928D0 80263FF0 0080802D */ daddu $s0, $a0, $zero
/* 1928D4 80263FF4 AFB20018 */ sw $s2, 0x18($sp)
/* 1928D8 80263FF8 00A0902D */ daddu $s2, $a1, $zero
/* 1928DC 80263FFC AFB10014 */ sw $s1, 0x14($sp)
/* 1928E0 80264000 AFBF001C */ sw $ra, 0x1c($sp)
/* 1928E4 80264004 0C09A75B */ jal get_actor
/* 1928E8 80264008 00C0882D */ daddu $s1, $a2, $zero
/* 1928EC 8026400C 0040202D */ daddu $a0, $v0, $zero
/* 1928F0 80264010 32100700 */ andi $s0, $s0, 0x700
/* 1928F4 80264014 24020100 */ addiu $v0, $zero, 0x100
/* 1928F8 80264018 12020009 */ beq $s0, $v0, .L80264040
/* 1928FC 8026401C 2A020101 */ slti $v0, $s0, 0x101
/* 192900 80264020 50400005 */ beql $v0, $zero, .L80264038
/* 192904 80264024 24020200 */ addiu $v0, $zero, 0x200
/* 192908 80264028 12000007 */ beqz $s0, .L80264048
/* 19290C 8026402C 00000000 */ nop
/* 192910 80264030 0809901B */ j .L8026406C
/* 192914 80264034 00000000 */ nop
.L80264038:
/* 192918 80264038 1602000C */ bne $s0, $v0, .L8026406C
/* 19291C 8026403C 00000000 */ nop
.L80264040:
/* 192920 80264040 16400005 */ bnez $s2, .L80264058
/* 192924 80264044 00000000 */ nop
.L80264048:
/* 192928 80264048 8C820000 */ lw $v0, ($a0)
/* 19292C 8026404C 00511025 */ or $v0, $v0, $s1
/* 192930 80264050 0809901B */ j .L8026406C
/* 192934 80264054 AC820000 */ sw $v0, ($a0)
.L80264058:
/* 192938 80264058 0C099117 */ jal get_actor_part
/* 19293C 8026405C 0240282D */ daddu $a1, $s2, $zero
/* 192940 80264060 8C430000 */ lw $v1, ($v0)
/* 192944 80264064 00711825 */ or $v1, $v1, $s1
/* 192948 80264068 AC430000 */ sw $v1, ($v0)
.L8026406C:
.L8026406C:
/* 19294C 8026406C 8FBF001C */ lw $ra, 0x1c($sp)
/* 192950 80264070 8FB20018 */ lw $s2, 0x18($sp)
/* 192954 80264074 8FB10014 */ lw $s1, 0x14($sp)
/* 192958 80264078 8FB00010 */ lw $s0, 0x10($sp)
/* 19295C 8026407C 03E00008 */ jr $ra
/* 192960 80264080 27BD0020 */ addiu $sp, $sp, 0x20
/* 192964 80264084 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 192968 80264088 AFB00010 */ sw $s0, 0x10($sp)
/* 19296C 8026408C 0080802D */ daddu $s0, $a0, $zero
/* 192970 80264090 AFB20018 */ sw $s2, 0x18($sp)
/* 192974 80264094 00A0902D */ daddu $s2, $a1, $zero
/* 192978 80264098 AFB10014 */ sw $s1, 0x14($sp)
/* 19297C 8026409C AFBF001C */ sw $ra, 0x1c($sp)
/* 192980 802640A0 0C09A75B */ jal get_actor
/* 192984 802640A4 00C0882D */ daddu $s1, $a2, $zero
/* 192988 802640A8 0040202D */ daddu $a0, $v0, $zero
/* 19298C 802640AC 32100700 */ andi $s0, $s0, 0x700
/* 192990 802640B0 24020100 */ addiu $v0, $zero, 0x100
/* 192994 802640B4 12020009 */ beq $s0, $v0, .L802640DC
/* 192998 802640B8 2A020101 */ slti $v0, $s0, 0x101
/* 19299C 802640BC 50400005 */ beql $v0, $zero, .L802640D4
/* 1929A0 802640C0 24020200 */ addiu $v0, $zero, 0x200
/* 1929A4 802640C4 12000007 */ beqz $s0, .L802640E4
/* 1929A8 802640C8 00000000 */ nop
/* 1929AC 802640CC 08099044 */ j .L80264110
/* 1929B0 802640D0 00000000 */ nop
.L802640D4:
/* 1929B4 802640D4 1602000E */ bne $s0, $v0, .L80264110
/* 1929B8 802640D8 00000000 */ nop
.L802640DC:
/* 1929BC 802640DC 16400006 */ bnez $s2, .L802640F8
/* 1929C0 802640E0 00000000 */ nop
.L802640E4:
/* 1929C4 802640E4 8C820000 */ lw $v0, ($a0)
/* 1929C8 802640E8 00111827 */ nor $v1, $zero, $s1
/* 1929CC 802640EC 00431024 */ and $v0, $v0, $v1
/* 1929D0 802640F0 08099044 */ j .L80264110
/* 1929D4 802640F4 AC820000 */ sw $v0, ($a0)
.L802640F8:
/* 1929D8 802640F8 0C099117 */ jal get_actor_part
/* 1929DC 802640FC 0240282D */ daddu $a1, $s2, $zero
/* 1929E0 80264100 8C430000 */ lw $v1, ($v0)
/* 1929E4 80264104 00112027 */ nor $a0, $zero, $s1
/* 1929E8 80264108 00641824 */ and $v1, $v1, $a0
/* 1929EC 8026410C AC430000 */ sw $v1, ($v0)
.L80264110:
.L80264110:
/* 1929F0 80264110 8FBF001C */ lw $ra, 0x1c($sp)
/* 1929F4 80264114 8FB20018 */ lw $s2, 0x18($sp)
/* 1929F8 80264118 8FB10014 */ lw $s1, 0x14($sp)
/* 1929FC 8026411C 8FB00010 */ lw $s0, 0x10($sp)
/* 192A00 80264120 03E00008 */ jr $ra
/* 192A04 80264124 27BD0020 */ addiu $sp, $sp, 0x20