New C file split, many functions decompiled

This commit is contained in:
Ethan Roseman 2020-10-26 19:10:32 -04:00
parent 9494153160
commit eb41485a0a
32 changed files with 228 additions and 801 deletions

View File

@ -1,68 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel DropItemEntity
/* FB770 802D6DC0 27BDFFC8 */ addiu $sp, $sp, -0x38
/* FB774 802D6DC4 AFB1001C */ sw $s1, 0x1c($sp)
/* FB778 802D6DC8 0080882D */ daddu $s1, $a0, $zero
/* FB77C 802D6DCC AFBF0030 */ sw $ra, 0x30($sp)
/* FB780 802D6DD0 AFB5002C */ sw $s5, 0x2c($sp)
/* FB784 802D6DD4 AFB40028 */ sw $s4, 0x28($sp)
/* FB788 802D6DD8 AFB30024 */ sw $s3, 0x24($sp)
/* FB78C 802D6DDC AFB20020 */ sw $s2, 0x20($sp)
/* FB790 802D6DE0 AFB00018 */ sw $s0, 0x18($sp)
/* FB794 802D6DE4 8E30000C */ lw $s0, 0xc($s1)
/* FB798 802D6DE8 8E050000 */ lw $a1, ($s0)
/* FB79C 802D6DEC 0C0B1EAF */ jal get_variable
/* FB7A0 802D6DF0 26100004 */ addiu $s0, $s0, 4
/* FB7A4 802D6DF4 8E050000 */ lw $a1, ($s0)
/* FB7A8 802D6DF8 26100004 */ addiu $s0, $s0, 4
/* FB7AC 802D6DFC 0220202D */ daddu $a0, $s1, $zero
/* FB7B0 802D6E00 0C0B1EAF */ jal get_variable
/* FB7B4 802D6E04 0040A82D */ daddu $s5, $v0, $zero
/* FB7B8 802D6E08 8E050000 */ lw $a1, ($s0)
/* FB7BC 802D6E0C 26100004 */ addiu $s0, $s0, 4
/* FB7C0 802D6E10 0220202D */ daddu $a0, $s1, $zero
/* FB7C4 802D6E14 0C0B1EAF */ jal get_variable
/* FB7C8 802D6E18 0040A02D */ daddu $s4, $v0, $zero
/* FB7CC 802D6E1C 8E050000 */ lw $a1, ($s0)
/* FB7D0 802D6E20 26100004 */ addiu $s0, $s0, 4
/* FB7D4 802D6E24 0220202D */ daddu $a0, $s1, $zero
/* FB7D8 802D6E28 0C0B1EAF */ jal get_variable
/* FB7DC 802D6E2C 0040982D */ daddu $s3, $v0, $zero
/* FB7E0 802D6E30 8E050000 */ lw $a1, ($s0)
/* FB7E4 802D6E34 26100004 */ addiu $s0, $s0, 4
/* FB7E8 802D6E38 0220202D */ daddu $a0, $s1, $zero
/* FB7EC 802D6E3C 0C0B1EAF */ jal get_variable
/* FB7F0 802D6E40 0040902D */ daddu $s2, $v0, $zero
/* FB7F4 802D6E44 0220202D */ daddu $a0, $s1, $zero
/* FB7F8 802D6E48 8E050000 */ lw $a1, ($s0)
/* FB7FC 802D6E4C 0C0B1EAF */ jal get_variable
/* FB800 802D6E50 0040802D */ daddu $s0, $v0, $zero
/* FB804 802D6E54 44940000 */ mtc1 $s4, $f0
/* FB808 802D6E58 00000000 */ nop
/* FB80C 802D6E5C 46800020 */ cvt.s.w $f0, $f0
/* FB810 802D6E60 44050000 */ mfc1 $a1, $f0
/* FB814 802D6E64 44930000 */ mtc1 $s3, $f0
/* FB818 802D6E68 00000000 */ nop
/* FB81C 802D6E6C 46800020 */ cvt.s.w $f0, $f0
/* FB820 802D6E70 44060000 */ mfc1 $a2, $f0
/* FB824 802D6E74 44920000 */ mtc1 $s2, $f0
/* FB828 802D6E78 00000000 */ nop
/* FB82C 802D6E7C 46800020 */ cvt.s.w $f0, $f0
/* FB830 802D6E80 44070000 */ mfc1 $a3, $f0
/* FB834 802D6E84 02A0202D */ daddu $a0, $s5, $zero
/* FB838 802D6E88 AFB00010 */ sw $s0, 0x10($sp)
/* FB83C 802D6E8C 0C04C6A5 */ jal make_item_entity_nodelay
/* FB840 802D6E90 AFA20014 */ sw $v0, 0x14($sp)
/* FB844 802D6E94 AE220084 */ sw $v0, 0x84($s1)
/* FB848 802D6E98 8FBF0030 */ lw $ra, 0x30($sp)
/* FB84C 802D6E9C 8FB5002C */ lw $s5, 0x2c($sp)
/* FB850 802D6EA0 8FB40028 */ lw $s4, 0x28($sp)
/* FB854 802D6EA4 8FB30024 */ lw $s3, 0x24($sp)
/* FB858 802D6EA8 8FB20020 */ lw $s2, 0x20($sp)
/* FB85C 802D6EAC 8FB1001C */ lw $s1, 0x1c($sp)
/* FB860 802D6EB0 8FB00018 */ lw $s0, 0x18($sp)
/* FB864 802D6EB4 24020002 */ addiu $v0, $zero, 2
/* FB868 802D6EB8 03E00008 */ jr $ra
/* FB86C 802D6EBC 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -1,71 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel DropItemEntityB
/* FB870 802D6EC0 27BDFFC8 */ addiu $sp, $sp, -0x38
/* FB874 802D6EC4 AFB1001C */ sw $s1, 0x1c($sp)
/* FB878 802D6EC8 0080882D */ daddu $s1, $a0, $zero
/* FB87C 802D6ECC AFBF0030 */ sw $ra, 0x30($sp)
/* FB880 802D6ED0 AFB5002C */ sw $s5, 0x2c($sp)
/* FB884 802D6ED4 AFB40028 */ sw $s4, 0x28($sp)
/* FB888 802D6ED8 AFB30024 */ sw $s3, 0x24($sp)
/* FB88C 802D6EDC AFB20020 */ sw $s2, 0x20($sp)
/* FB890 802D6EE0 AFB00018 */ sw $s0, 0x18($sp)
/* FB894 802D6EE4 8E30000C */ lw $s0, 0xc($s1)
/* FB898 802D6EE8 8E050000 */ lw $a1, ($s0)
/* FB89C 802D6EEC 0C0B1EAF */ jal get_variable
/* FB8A0 802D6EF0 26100004 */ addiu $s0, $s0, 4
/* FB8A4 802D6EF4 8E050000 */ lw $a1, ($s0)
/* FB8A8 802D6EF8 26100004 */ addiu $s0, $s0, 4
/* FB8AC 802D6EFC 0220202D */ daddu $a0, $s1, $zero
/* FB8B0 802D6F00 0C0B1EAF */ jal get_variable
/* FB8B4 802D6F04 0040A82D */ daddu $s5, $v0, $zero
/* FB8B8 802D6F08 8E050000 */ lw $a1, ($s0)
/* FB8BC 802D6F0C 26100004 */ addiu $s0, $s0, 4
/* FB8C0 802D6F10 0220202D */ daddu $a0, $s1, $zero
/* FB8C4 802D6F14 0C0B1EAF */ jal get_variable
/* FB8C8 802D6F18 0040A02D */ daddu $s4, $v0, $zero
/* FB8CC 802D6F1C 8E050000 */ lw $a1, ($s0)
/* FB8D0 802D6F20 26100004 */ addiu $s0, $s0, 4
/* FB8D4 802D6F24 0220202D */ daddu $a0, $s1, $zero
/* FB8D8 802D6F28 0C0B1EAF */ jal get_variable
/* FB8DC 802D6F2C 0040982D */ daddu $s3, $v0, $zero
/* FB8E0 802D6F30 8E050000 */ lw $a1, ($s0)
/* FB8E4 802D6F34 26100004 */ addiu $s0, $s0, 4
/* FB8E8 802D6F38 0220202D */ daddu $a0, $s1, $zero
/* FB8EC 802D6F3C 0C0B1EAF */ jal get_variable
/* FB8F0 802D6F40 0040902D */ daddu $s2, $v0, $zero
/* FB8F4 802D6F44 0220202D */ daddu $a0, $s1, $zero
/* FB8F8 802D6F48 8E050000 */ lw $a1, ($s0)
/* FB8FC 802D6F4C 0C0B1F6A */ jal get_variable_index
/* FB900 802D6F50 0040802D */ daddu $s0, $v0, $zero
/* FB904 802D6F54 44940000 */ mtc1 $s4, $f0
/* FB908 802D6F58 00000000 */ nop
/* FB90C 802D6F5C 46800020 */ cvt.s.w $f0, $f0
/* FB910 802D6F60 44050000 */ mfc1 $a1, $f0
/* FB914 802D6F64 44930000 */ mtc1 $s3, $f0
/* FB918 802D6F68 00000000 */ nop
/* FB91C 802D6F6C 46800020 */ cvt.s.w $f0, $f0
/* FB920 802D6F70 44060000 */ mfc1 $a2, $f0
/* FB924 802D6F74 44920000 */ mtc1 $s2, $f0
/* FB928 802D6F78 00000000 */ nop
/* FB92C 802D6F7C 46800020 */ cvt.s.w $f0, $f0
/* FB930 802D6F80 44070000 */ mfc1 $a3, $f0
/* FB934 802D6F84 02A0202D */ daddu $a0, $s5, $zero
/* FB938 802D6F88 AFB00010 */ sw $s0, 0x10($sp)
/* FB93C 802D6F8C 0C04C6A5 */ jal make_item_entity_nodelay
/* FB940 802D6F90 AFA20014 */ sw $v0, 0x14($sp)
/* FB944 802D6F94 0040202D */ daddu $a0, $v0, $zero
/* FB948 802D6F98 24054000 */ addiu $a1, $zero, 0x4000
/* FB94C 802D6F9C 0C04D052 */ jal set_item_entity_flags
/* FB950 802D6FA0 AE240084 */ sw $a0, 0x84($s1)
/* FB954 802D6FA4 8FBF0030 */ lw $ra, 0x30($sp)
/* FB958 802D6FA8 8FB5002C */ lw $s5, 0x2c($sp)
/* FB95C 802D6FAC 8FB40028 */ lw $s4, 0x28($sp)
/* FB960 802D6FB0 8FB30024 */ lw $s3, 0x24($sp)
/* FB964 802D6FB4 8FB20020 */ lw $s2, 0x20($sp)
/* FB968 802D6FB8 8FB1001C */ lw $s1, 0x1c($sp)
/* FB96C 802D6FBC 8FB00018 */ lw $s0, 0x18($sp)
/* FB970 802D6FC0 24020002 */ addiu $v0, $zero, 2
/* FB974 802D6FC4 03E00008 */ jr $ra
/* FB978 802D6FC8 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -1,63 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel FadeInMusic
/* FA7A4 802D5DF4 27BDFFC8 */ addiu $sp, $sp, -0x38
/* FA7A8 802D5DF8 AFB1001C */ sw $s1, 0x1c($sp)
/* FA7AC 802D5DFC 0080882D */ daddu $s1, $a0, $zero
/* FA7B0 802D5E00 AFBF0030 */ sw $ra, 0x30($sp)
/* FA7B4 802D5E04 AFB5002C */ sw $s5, 0x2c($sp)
/* FA7B8 802D5E08 AFB40028 */ sw $s4, 0x28($sp)
/* FA7BC 802D5E0C AFB30024 */ sw $s3, 0x24($sp)
/* FA7C0 802D5E10 AFB20020 */ sw $s2, 0x20($sp)
/* FA7C4 802D5E14 AFB00018 */ sw $s0, 0x18($sp)
/* FA7C8 802D5E18 8E30000C */ lw $s0, 0xc($s1)
/* FA7CC 802D5E1C 8E050000 */ lw $a1, ($s0)
/* FA7D0 802D5E20 0C0B1EAF */ jal get_variable
/* FA7D4 802D5E24 26100004 */ addiu $s0, $s0, 4
/* FA7D8 802D5E28 8E050000 */ lw $a1, ($s0)
/* FA7DC 802D5E2C 26100004 */ addiu $s0, $s0, 4
/* FA7E0 802D5E30 0220202D */ daddu $a0, $s1, $zero
/* FA7E4 802D5E34 0C0B1EAF */ jal get_variable
/* FA7E8 802D5E38 0040A82D */ daddu $s5, $v0, $zero
/* FA7EC 802D5E3C 8E050000 */ lw $a1, ($s0)
/* FA7F0 802D5E40 26100004 */ addiu $s0, $s0, 4
/* FA7F4 802D5E44 0220202D */ daddu $a0, $s1, $zero
/* FA7F8 802D5E48 0C0B1EAF */ jal get_variable
/* FA7FC 802D5E4C 0040982D */ daddu $s3, $v0, $zero
/* FA800 802D5E50 8E050000 */ lw $a1, ($s0)
/* FA804 802D5E54 26100004 */ addiu $s0, $s0, 4
/* FA808 802D5E58 0220202D */ daddu $a0, $s1, $zero
/* FA80C 802D5E5C 0C0B1EAF */ jal get_variable
/* FA810 802D5E60 0040A02D */ daddu $s4, $v0, $zero
/* FA814 802D5E64 8E050000 */ lw $a1, ($s0)
/* FA818 802D5E68 26100004 */ addiu $s0, $s0, 4
/* FA81C 802D5E6C 0220202D */ daddu $a0, $s1, $zero
/* FA820 802D5E70 0C0B1EAF */ jal get_variable
/* FA824 802D5E74 0040902D */ daddu $s2, $v0, $zero
/* FA828 802D5E78 0220202D */ daddu $a0, $s1, $zero
/* FA82C 802D5E7C 8E050000 */ lw $a1, ($s0)
/* FA830 802D5E80 0C0B1EAF */ jal get_variable
/* FA834 802D5E84 0040802D */ daddu $s0, $v0, $zero
/* FA838 802D5E88 02A0202D */ daddu $a0, $s5, $zero
/* FA83C 802D5E8C 0260282D */ daddu $a1, $s3, $zero
/* FA840 802D5E90 00108400 */ sll $s0, $s0, 0x10
/* FA844 802D5E94 00108403 */ sra $s0, $s0, 0x10
/* FA848 802D5E98 00021400 */ sll $v0, $v0, 0x10
/* FA84C 802D5E9C 00021403 */ sra $v0, $v0, 0x10
/* FA850 802D5EA0 0280302D */ daddu $a2, $s4, $zero
/* FA854 802D5EA4 0240382D */ daddu $a3, $s2, $zero
/* FA858 802D5EA8 AFB00010 */ sw $s0, 0x10($sp)
/* FA85C 802D5EAC 0C052A59 */ jal func_8014A964
/* FA860 802D5EB0 AFA20014 */ sw $v0, 0x14($sp)
/* FA864 802D5EB4 0002102B */ sltu $v0, $zero, $v0
/* FA868 802D5EB8 8FBF0030 */ lw $ra, 0x30($sp)
/* FA86C 802D5EBC 8FB5002C */ lw $s5, 0x2c($sp)
/* FA870 802D5EC0 8FB40028 */ lw $s4, 0x28($sp)
/* FA874 802D5EC4 8FB30024 */ lw $s3, 0x24($sp)
/* FA878 802D5EC8 8FB20020 */ lw $s2, 0x20($sp)
/* FA87C 802D5ECC 8FB1001C */ lw $s1, 0x1c($sp)
/* FA880 802D5ED0 8FB00018 */ lw $s0, 0x18($sp)
/* FA884 802D5ED4 00021040 */ sll $v0, $v0, 1
/* FA888 802D5ED8 03E00008 */ jr $ra
/* FA88C 802D5EDC 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -1,68 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel MakeItemEntity
/* FB670 802D6CC0 27BDFFC8 */ addiu $sp, $sp, -0x38
/* FB674 802D6CC4 AFB1001C */ sw $s1, 0x1c($sp)
/* FB678 802D6CC8 0080882D */ daddu $s1, $a0, $zero
/* FB67C 802D6CCC AFBF0030 */ sw $ra, 0x30($sp)
/* FB680 802D6CD0 AFB5002C */ sw $s5, 0x2c($sp)
/* FB684 802D6CD4 AFB40028 */ sw $s4, 0x28($sp)
/* FB688 802D6CD8 AFB30024 */ sw $s3, 0x24($sp)
/* FB68C 802D6CDC AFB20020 */ sw $s2, 0x20($sp)
/* FB690 802D6CE0 AFB00018 */ sw $s0, 0x18($sp)
/* FB694 802D6CE4 8E30000C */ lw $s0, 0xc($s1)
/* FB698 802D6CE8 8E050000 */ lw $a1, ($s0)
/* FB69C 802D6CEC 0C0B1EAF */ jal get_variable
/* FB6A0 802D6CF0 26100004 */ addiu $s0, $s0, 4
/* FB6A4 802D6CF4 8E050000 */ lw $a1, ($s0)
/* FB6A8 802D6CF8 26100004 */ addiu $s0, $s0, 4
/* FB6AC 802D6CFC 0220202D */ daddu $a0, $s1, $zero
/* FB6B0 802D6D00 0C0B1EAF */ jal get_variable
/* FB6B4 802D6D04 0040A82D */ daddu $s5, $v0, $zero
/* FB6B8 802D6D08 8E050000 */ lw $a1, ($s0)
/* FB6BC 802D6D0C 26100004 */ addiu $s0, $s0, 4
/* FB6C0 802D6D10 0220202D */ daddu $a0, $s1, $zero
/* FB6C4 802D6D14 0C0B1EAF */ jal get_variable
/* FB6C8 802D6D18 0040A02D */ daddu $s4, $v0, $zero
/* FB6CC 802D6D1C 8E050000 */ lw $a1, ($s0)
/* FB6D0 802D6D20 26100004 */ addiu $s0, $s0, 4
/* FB6D4 802D6D24 0220202D */ daddu $a0, $s1, $zero
/* FB6D8 802D6D28 0C0B1EAF */ jal get_variable
/* FB6DC 802D6D2C 0040982D */ daddu $s3, $v0, $zero
/* FB6E0 802D6D30 8E050000 */ lw $a1, ($s0)
/* FB6E4 802D6D34 26100004 */ addiu $s0, $s0, 4
/* FB6E8 802D6D38 0220202D */ daddu $a0, $s1, $zero
/* FB6EC 802D6D3C 0C0B1EAF */ jal get_variable
/* FB6F0 802D6D40 0040902D */ daddu $s2, $v0, $zero
/* FB6F4 802D6D44 0220202D */ daddu $a0, $s1, $zero
/* FB6F8 802D6D48 8E050000 */ lw $a1, ($s0)
/* FB6FC 802D6D4C 0C0B1F6A */ jal get_variable_index
/* FB700 802D6D50 0040802D */ daddu $s0, $v0, $zero
/* FB704 802D6D54 44940000 */ mtc1 $s4, $f0
/* FB708 802D6D58 00000000 */ nop
/* FB70C 802D6D5C 46800020 */ cvt.s.w $f0, $f0
/* FB710 802D6D60 44050000 */ mfc1 $a1, $f0
/* FB714 802D6D64 44930000 */ mtc1 $s3, $f0
/* FB718 802D6D68 00000000 */ nop
/* FB71C 802D6D6C 46800020 */ cvt.s.w $f0, $f0
/* FB720 802D6D70 44060000 */ mfc1 $a2, $f0
/* FB724 802D6D74 44920000 */ mtc1 $s2, $f0
/* FB728 802D6D78 00000000 */ nop
/* FB72C 802D6D7C 46800020 */ cvt.s.w $f0, $f0
/* FB730 802D6D80 44070000 */ mfc1 $a3, $f0
/* FB734 802D6D84 02A0202D */ daddu $a0, $s5, $zero
/* FB738 802D6D88 AFB00010 */ sw $s0, 0x10($sp)
/* FB73C 802D6D8C 0C04C6A5 */ jal make_item_entity_nodelay
/* FB740 802D6D90 AFA20014 */ sw $v0, 0x14($sp)
/* FB744 802D6D94 AE220084 */ sw $v0, 0x84($s1)
/* FB748 802D6D98 8FBF0030 */ lw $ra, 0x30($sp)
/* FB74C 802D6D9C 8FB5002C */ lw $s5, 0x2c($sp)
/* FB750 802D6DA0 8FB40028 */ lw $s4, 0x28($sp)
/* FB754 802D6DA4 8FB30024 */ lw $s3, 0x24($sp)
/* FB758 802D6DA8 8FB20020 */ lw $s2, 0x20($sp)
/* FB75C 802D6DAC 8FB1001C */ lw $s1, 0x1c($sp)
/* FB760 802D6DB0 8FB00018 */ lw $s0, 0x18($sp)
/* FB764 802D6DB4 24020002 */ addiu $v0, $zero, 2
/* FB768 802D6DB8 03E00008 */ jr $ra
/* FB76C 802D6DBC 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -1,49 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel PlaySoundAtF
/* FAD1C 802D636C 27BDFFC0 */ addiu $sp, $sp, -0x40
/* FAD20 802D6370 AFB1001C */ sw $s1, 0x1c($sp)
/* FAD24 802D6374 0080882D */ daddu $s1, $a0, $zero
/* FAD28 802D6378 AFBF0028 */ sw $ra, 0x28($sp)
/* FAD2C 802D637C AFB30024 */ sw $s3, 0x24($sp)
/* FAD30 802D6380 AFB20020 */ sw $s2, 0x20($sp)
/* FAD34 802D6384 AFB00018 */ sw $s0, 0x18($sp)
/* FAD38 802D6388 F7B60038 */ sdc1 $f22, 0x38($sp)
/* FAD3C 802D638C F7B40030 */ sdc1 $f20, 0x30($sp)
/* FAD40 802D6390 8E30000C */ lw $s0, 0xc($s1)
/* FAD44 802D6394 8E130000 */ lw $s3, ($s0)
/* FAD48 802D6398 26100004 */ addiu $s0, $s0, 4
/* FAD4C 802D639C 8E050000 */ lw $a1, ($s0)
/* FAD50 802D63A0 0C0B1EAF */ jal get_variable
/* FAD54 802D63A4 26100004 */ addiu $s0, $s0, 4
/* FAD58 802D63A8 8E050000 */ lw $a1, ($s0)
/* FAD5C 802D63AC 26100004 */ addiu $s0, $s0, 4
/* FAD60 802D63B0 0220202D */ daddu $a0, $s1, $zero
/* FAD64 802D63B4 0C0B210B */ jal get_float_variable
/* FAD68 802D63B8 0040902D */ daddu $s2, $v0, $zero
/* FAD6C 802D63BC 8E050000 */ lw $a1, ($s0)
/* FAD70 802D63C0 26100004 */ addiu $s0, $s0, 4
/* FAD74 802D63C4 0220202D */ daddu $a0, $s1, $zero
/* FAD78 802D63C8 0C0B210B */ jal get_float_variable
/* FAD7C 802D63CC 46000586 */ mov.s $f22, $f0
/* FAD80 802D63D0 0220202D */ daddu $a0, $s1, $zero
/* FAD84 802D63D4 8E050000 */ lw $a1, ($s0)
/* FAD88 802D63D8 0C0B210B */ jal get_float_variable
/* FAD8C 802D63DC 46000506 */ mov.s $f20, $f0
/* FAD90 802D63E0 0260202D */ daddu $a0, $s3, $zero
/* FAD94 802D63E4 4406B000 */ mfc1 $a2, $f22
/* FAD98 802D63E8 4407A000 */ mfc1 $a3, $f20
/* FAD9C 802D63EC 3245FFFF */ andi $a1, $s2, 0xffff
/* FADA0 802D63F0 0C052757 */ jal play_sound_at_position
/* FADA4 802D63F4 E7A00010 */ swc1 $f0, 0x10($sp)
/* FADA8 802D63F8 8FBF0028 */ lw $ra, 0x28($sp)
/* FADAC 802D63FC 8FB30024 */ lw $s3, 0x24($sp)
/* FADB0 802D6400 8FB20020 */ lw $s2, 0x20($sp)
/* FADB4 802D6404 8FB1001C */ lw $s1, 0x1c($sp)
/* FADB8 802D6408 8FB00018 */ lw $s0, 0x18($sp)
/* FADBC 802D640C D7B60038 */ ldc1 $f22, 0x38($sp)
/* FADC0 802D6410 D7B40030 */ ldc1 $f20, 0x30($sp)
/* FADC4 802D6414 24020002 */ addiu $v0, $zero, 2
/* FADC8 802D6418 03E00008 */ jr $ra
/* FADCC 802D641C 27BD0040 */ addiu $sp, $sp, 0x40

View File

@ -1,40 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel RemoveBadge
/* FBA00 802D7050 27BDFFE8 */ addiu $sp, $sp, -0x18
/* FBA04 802D7054 AFBF0014 */ sw $ra, 0x14($sp)
/* FBA08 802D7058 AFB00010 */ sw $s0, 0x10($sp)
/* FBA0C 802D705C 8C82000C */ lw $v0, 0xc($a0)
/* FBA10 802D7060 0C0B1EAF */ jal get_variable
/* FBA14 802D7064 8C450000 */ lw $a1, ($v0)
/* FBA18 802D7068 0040282D */ daddu $a1, $v0, $zero
/* FBA1C 802D706C 0000202D */ daddu $a0, $zero, $zero
/* FBA20 802D7070 3C108011 */ lui $s0, %hi(gPlayerData)
/* FBA24 802D7074 2610F290 */ addiu $s0, $s0, %lo(gPlayerData)
/* FBA28 802D7078 0200182D */ daddu $v1, $s0, $zero
.L802D707C:
/* FBA2C 802D707C 846200B4 */ lh $v0, 0xb4($v1)
/* FBA30 802D7080 50450001 */ beql $v0, $a1, .L802D7088
/* FBA34 802D7084 A46000B4 */ sh $zero, 0xb4($v1)
.L802D7088:
/* FBA38 802D7088 24840001 */ addiu $a0, $a0, 1
/* FBA3C 802D708C 28820080 */ slti $v0, $a0, 0x80
/* FBA40 802D7090 1440FFFA */ bnez $v0, .L802D707C
/* FBA44 802D7094 24630002 */ addiu $v1, $v1, 2
/* FBA48 802D7098 0000202D */ daddu $a0, $zero, $zero
/* FBA4C 802D709C 0200182D */ daddu $v1, $s0, $zero
.L802D70A0:
/* FBA50 802D70A0 84620208 */ lh $v0, 0x208($v1)
/* FBA54 802D70A4 50450001 */ beql $v0, $a1, .L802D70AC
/* FBA58 802D70A8 A4600208 */ sh $zero, 0x208($v1)
.L802D70AC:
/* FBA5C 802D70AC 24840001 */ addiu $a0, $a0, 1
/* FBA60 802D70B0 28820040 */ slti $v0, $a0, 0x40
/* FBA64 802D70B4 1440FFFA */ bnez $v0, .L802D70A0
/* FBA68 802D70B8 24630002 */ addiu $v1, $v1, 2
/* FBA6C 802D70BC 8FBF0014 */ lw $ra, 0x14($sp)
/* FBA70 802D70C0 8FB00010 */ lw $s0, 0x10($sp)
/* FBA74 802D70C4 24020002 */ addiu $v0, $zero, 2
/* FBA78 802D70C8 03E00008 */ jr $ra
/* FBA7C 802D70CC 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,40 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel SetItemFlags
/* FBB44 802D7194 27BDFFE0 */ addiu $sp, $sp, -0x20
/* FBB48 802D7198 AFB10014 */ sw $s1, 0x14($sp)
/* FBB4C 802D719C 0080882D */ daddu $s1, $a0, $zero
/* FBB50 802D71A0 AFBF001C */ sw $ra, 0x1c($sp)
/* FBB54 802D71A4 AFB20018 */ sw $s2, 0x18($sp)
/* FBB58 802D71A8 AFB00010 */ sw $s0, 0x10($sp)
/* FBB5C 802D71AC 8E30000C */ lw $s0, 0xc($s1)
/* FBB60 802D71B0 8E050000 */ lw $a1, ($s0)
/* FBB64 802D71B4 0C0B1EAF */ jal get_variable
/* FBB68 802D71B8 26100004 */ addiu $s0, $s0, 4
/* FBB6C 802D71BC 0220202D */ daddu $a0, $s1, $zero
/* FBB70 802D71C0 8E050004 */ lw $a1, 4($s0)
/* FBB74 802D71C4 8E120000 */ lw $s2, ($s0)
/* FBB78 802D71C8 0C0B1EAF */ jal get_variable
/* FBB7C 802D71CC 0040882D */ daddu $s1, $v0, $zero
/* FBB80 802D71D0 0220202D */ daddu $a0, $s1, $zero
/* FBB84 802D71D4 0C04C3D6 */ jal get_item_entity
/* FBB88 802D71D8 0040802D */ daddu $s0, $v0, $zero
/* FBB8C 802D71DC 12000004 */ beqz $s0, .L802D71F0
/* FBB90 802D71E0 0040202D */ daddu $a0, $v0, $zero
/* FBB94 802D71E4 8C820000 */ lw $v0, ($a0)
/* FBB98 802D71E8 080B5C7F */ j .L802D71FC
/* FBB9C 802D71EC 00521025 */ or $v0, $v0, $s2
.L802D71F0:
/* FBBA0 802D71F0 8C820000 */ lw $v0, ($a0)
/* FBBA4 802D71F4 00121827 */ nor $v1, $zero, $s2
/* FBBA8 802D71F8 00431024 */ and $v0, $v0, $v1
.L802D71FC:
/* FBBAC 802D71FC AC820000 */ sw $v0, ($a0)
/* FBBB0 802D7200 8FBF001C */ lw $ra, 0x1c($sp)
/* FBBB4 802D7204 8FB20018 */ lw $s2, 0x18($sp)
/* FBBB8 802D7208 8FB10014 */ lw $s1, 0x14($sp)
/* FBBBC 802D720C 8FB00010 */ lw $s0, 0x10($sp)
/* FBBC0 802D7210 24020002 */ addiu $v0, $zero, 2
/* FBBC4 802D7214 03E00008 */ jr $ra
/* FBBC8 802D7218 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,56 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel ShowGotItem
/* FBD54 802D73A4 27BDFFE0 */ addiu $sp, $sp, -0x20
/* FBD58 802D73A8 AFB20018 */ sw $s2, 0x18($sp)
/* FBD5C 802D73AC 0080902D */ daddu $s2, $a0, $zero
/* FBD60 802D73B0 AFBF001C */ sw $ra, 0x1c($sp)
/* FBD64 802D73B4 AFB10014 */ sw $s1, 0x14($sp)
/* FBD68 802D73B8 AFB00010 */ sw $s0, 0x10($sp)
/* FBD6C 802D73BC 8E51000C */ lw $s1, 0xc($s2)
/* FBD70 802D73C0 54A00001 */ bnel $a1, $zero, .L802D73C8
/* FBD74 802D73C4 AE400070 */ sw $zero, 0x70($s2)
.L802D73C8:
/* FBD78 802D73C8 8E430070 */ lw $v1, 0x70($s2)
/* FBD7C 802D73CC 10600005 */ beqz $v1, .L802D73E4
/* FBD80 802D73D0 24020001 */ addiu $v0, $zero, 1
/* FBD84 802D73D4 10620014 */ beq $v1, $v0, .L802D7428
/* FBD88 802D73D8 00000000 */ nop
/* FBD8C 802D73DC 080B5D11 */ j .L802D7444
/* FBD90 802D73E0 0000102D */ daddu $v0, $zero, $zero
.L802D73E4:
/* FBD94 802D73E4 8E250000 */ lw $a1, ($s1)
/* FBD98 802D73E8 26310004 */ addiu $s1, $s1, 4
/* FBD9C 802D73EC 0C0B1EAF */ jal get_variable
/* FBDA0 802D73F0 0240202D */ daddu $a0, $s2, $zero
/* FBDA4 802D73F4 8E250000 */ lw $a1, ($s1)
/* FBDA8 802D73F8 26310004 */ addiu $s1, $s1, 4
/* FBDAC 802D73FC 0240202D */ daddu $a0, $s2, $zero
/* FBDB0 802D7400 0C0B1EAF */ jal get_variable
/* FBDB4 802D7404 0040802D */ daddu $s0, $v0, $zero
/* FBDB8 802D7408 0200202D */ daddu $a0, $s0, $zero
/* FBDBC 802D740C 8E260000 */ lw $a2, ($s1)
/* FBDC0 802D7410 0C04C6C0 */ jal init_got_item
/* FBDC4 802D7414 0040282D */ daddu $a1, $v0, $zero
/* FBDC8 802D7418 AE420074 */ sw $v0, 0x74($s2)
/* FBDCC 802D741C 24020001 */ addiu $v0, $zero, 1
/* FBDD0 802D7420 080B5D10 */ j .L802D7440
/* FBDD4 802D7424 AE420070 */ sw $v0, 0x70($s2)
.L802D7428:
/* FBDD8 802D7428 8E440074 */ lw $a0, 0x74($s2)
/* FBDDC 802D742C 0C04C3D6 */ jal get_item_entity
/* FBDE0 802D7430 00000000 */ nop
/* FBDE4 802D7434 0040182D */ daddu $v1, $v0, $zero
/* FBDE8 802D7438 10600002 */ beqz $v1, .L802D7444
/* FBDEC 802D743C 24020002 */ addiu $v0, $zero, 2
.L802D7440:
/* FBDF0 802D7440 0000102D */ daddu $v0, $zero, $zero
.L802D7444:
/* FBDF4 802D7444 8FBF001C */ lw $ra, 0x1c($sp)
/* FBDF8 802D7448 8FB20018 */ lw $s2, 0x18($sp)
/* FBDFC 802D744C 8FB10014 */ lw $s1, 0x14($sp)
/* FBE00 802D7450 8FB00010 */ lw $s0, 0x10($sp)
/* FBE04 802D7454 03E00008 */ jr $ra
/* FBE08 802D7458 27BD0020 */ addiu $sp, $sp, 0x20
/* FBE0C 802D745C 00000000 */ nop

View File

@ -1,35 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802D5F28
/* FA8D8 802D5F28 27BDFFE0 */ addiu $sp, $sp, -0x20
/* FA8DC 802D5F2C AFB10014 */ sw $s1, 0x14($sp)
/* FA8E0 802D5F30 0080882D */ daddu $s1, $a0, $zero
/* FA8E4 802D5F34 AFBF001C */ sw $ra, 0x1c($sp)
/* FA8E8 802D5F38 AFB20018 */ sw $s2, 0x18($sp)
/* FA8EC 802D5F3C AFB00010 */ sw $s0, 0x10($sp)
/* FA8F0 802D5F40 8E30000C */ lw $s0, 0xc($s1)
/* FA8F4 802D5F44 8E050000 */ lw $a1, ($s0)
/* FA8F8 802D5F48 0C0B1EAF */ jal get_variable
/* FA8FC 802D5F4C 26100004 */ addiu $s0, $s0, 4
/* FA900 802D5F50 8E050000 */ lw $a1, ($s0)
/* FA904 802D5F54 26100004 */ addiu $s0, $s0, 4
/* FA908 802D5F58 0220202D */ daddu $a0, $s1, $zero
/* FA90C 802D5F5C 0C0B1EAF */ jal get_variable
/* FA910 802D5F60 0040902D */ daddu $s2, $v0, $zero
/* FA914 802D5F64 0220202D */ daddu $a0, $s1, $zero
/* FA918 802D5F68 8E050000 */ lw $a1, ($s0)
/* FA91C 802D5F6C 0C0B1EAF */ jal get_variable
/* FA920 802D5F70 0040802D */ daddu $s0, $v0, $zero
/* FA924 802D5F74 0240202D */ daddu $a0, $s2, $zero
/* FA928 802D5F78 0200282D */ daddu $a1, $s0, $zero
/* FA92C 802D5F7C 00021400 */ sll $v0, $v0, 0x10
/* FA930 802D5F80 0C052A95 */ jal func_8014AA54
/* FA934 802D5F84 00023403 */ sra $a2, $v0, 0x10
/* FA938 802D5F88 8FBF001C */ lw $ra, 0x1c($sp)
/* FA93C 802D5F8C 8FB20018 */ lw $s2, 0x18($sp)
/* FA940 802D5F90 8FB10014 */ lw $s1, 0x14($sp)
/* FA944 802D5F94 8FB00010 */ lw $s0, 0x10($sp)
/* FA948 802D5F98 24020002 */ addiu $v0, $zero, 2
/* FA94C 802D5F9C 03E00008 */ jr $ra
/* FA950 802D5FA0 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,17 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802D5FA4
/* FA954 802D5FA4 27BDFFE8 */ addiu $sp, $sp, -0x18
/* FA958 802D5FA8 AFBF0010 */ sw $ra, 0x10($sp)
/* FA95C 802D5FAC 8C82000C */ lw $v0, 0xc($a0)
/* FA960 802D5FB0 0C0B1EAF */ jal get_variable
/* FA964 802D5FB4 8C450000 */ lw $a1, ($v0)
/* FA968 802D5FB8 0000202D */ daddu $a0, $zero, $zero
/* FA96C 802D5FBC 00021400 */ sll $v0, $v0, 0x10
/* FA970 802D5FC0 0C052AC3 */ jal func_8014AB0C
/* FA974 802D5FC4 00022C03 */ sra $a1, $v0, 0x10
/* FA978 802D5FC8 8FBF0010 */ lw $ra, 0x10($sp)
/* FA97C 802D5FCC 24020002 */ addiu $v0, $zero, 2
/* FA980 802D5FD0 03E00008 */ jr $ra
/* FA984 802D5FD4 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,12 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802D5FD8
/* FA988 802D5FD8 27BDFFE8 */ addiu $sp, $sp, -0x18
/* FA98C 802D5FDC AFBF0010 */ sw $ra, 0x10($sp)
/* FA990 802D5FE0 0C052B69 */ jal func_8014ADA4
/* FA994 802D5FE4 00000000 */ nop
/* FA998 802D5FE8 8FBF0010 */ lw $ra, 0x10($sp)
/* FA99C 802D5FEC 24020002 */ addiu $v0, $zero, 2
/* FA9A0 802D5FF0 03E00008 */ jr $ra
/* FA9A4 802D5FF4 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,26 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802D5FF8
/* FA9A8 802D5FF8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* FA9AC 802D5FFC AFB10014 */ sw $s1, 0x14($sp)
/* FA9B0 802D6000 0080882D */ daddu $s1, $a0, $zero
/* FA9B4 802D6004 AFBF0018 */ sw $ra, 0x18($sp)
/* FA9B8 802D6008 AFB00010 */ sw $s0, 0x10($sp)
/* FA9BC 802D600C 8E30000C */ lw $s0, 0xc($s1)
/* FA9C0 802D6010 8E050000 */ lw $a1, ($s0)
/* FA9C4 802D6014 0C0B1EAF */ jal get_variable
/* FA9C8 802D6018 26100004 */ addiu $s0, $s0, 4
/* FA9CC 802D601C 0220202D */ daddu $a0, $s1, $zero
/* FA9D0 802D6020 8E050000 */ lw $a1, ($s0)
/* FA9D4 802D6024 0C0B1EAF */ jal get_variable
/* FA9D8 802D6028 0040802D */ daddu $s0, $v0, $zero
/* FA9DC 802D602C 0200202D */ daddu $a0, $s0, $zero
/* FA9E0 802D6030 0C052B7E */ jal func_8014ADF8
/* FA9E4 802D6034 0040282D */ daddu $a1, $v0, $zero
/* FA9E8 802D6038 8FBF0018 */ lw $ra, 0x18($sp)
/* FA9EC 802D603C 8FB10014 */ lw $s1, 0x14($sp)
/* FA9F0 802D6040 8FB00010 */ lw $s0, 0x10($sp)
/* FA9F4 802D6044 24020002 */ addiu $v0, $zero, 2
/* FA9F8 802D6048 03E00008 */ jr $ra
/* FA9FC 802D604C 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,12 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802D6050
/* FAA00 802D6050 27BDFFE8 */ addiu $sp, $sp, -0x18
/* FAA04 802D6054 AFBF0010 */ sw $ra, 0x10($sp)
/* FAA08 802D6058 0C052B9B */ jal func_8014AE6C
/* FAA0C 802D605C 00000000 */ nop
/* FAA10 802D6060 8FBF0010 */ lw $ra, 0x10($sp)
/* FAA14 802D6064 24020002 */ addiu $v0, $zero, 2
/* FAA18 802D6068 03E00008 */ jr $ra
/* FAA1C 802D606C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,12 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802D6070
/* FAA20 802D6070 27BDFFE8 */ addiu $sp, $sp, -0x18
/* FAA24 802D6074 AFBF0010 */ sw $ra, 0x10($sp)
/* FAA28 802D6078 0C052BBE */ jal func_8014AEF8
/* FAA2C 802D607C 00000000 */ nop
/* FAA30 802D6080 8FBF0010 */ lw $ra, 0x10($sp)
/* FAA34 802D6084 24020002 */ addiu $v0, $zero, 2
/* FAA38 802D6088 03E00008 */ jr $ra
/* FAA3C 802D608C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,26 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802D6090
/* FAA40 802D6090 27BDFFE0 */ addiu $sp, $sp, -0x20
/* FAA44 802D6094 AFB10014 */ sw $s1, 0x14($sp)
/* FAA48 802D6098 0080882D */ daddu $s1, $a0, $zero
/* FAA4C 802D609C AFBF0018 */ sw $ra, 0x18($sp)
/* FAA50 802D60A0 AFB00010 */ sw $s0, 0x10($sp)
/* FAA54 802D60A4 8E30000C */ lw $s0, 0xc($s1)
/* FAA58 802D60A8 8E050000 */ lw $a1, ($s0)
/* FAA5C 802D60AC 0C0B1EAF */ jal get_variable
/* FAA60 802D60B0 26100004 */ addiu $s0, $s0, 4
/* FAA64 802D60B4 0220202D */ daddu $a0, $s1, $zero
/* FAA68 802D60B8 8E050000 */ lw $a1, ($s0)
/* FAA6C 802D60BC 0C0B1EAF */ jal get_variable
/* FAA70 802D60C0 0040802D */ daddu $s0, $v0, $zero
/* FAA74 802D60C4 0200202D */ daddu $a0, $s0, $zero
/* FAA78 802D60C8 0C052BE3 */ jal func_8014AF8C
/* FAA7C 802D60CC 0040282D */ daddu $a1, $v0, $zero
/* FAA80 802D60D0 8FBF0018 */ lw $ra, 0x18($sp)
/* FAA84 802D60D4 8FB10014 */ lw $s1, 0x14($sp)
/* FAA88 802D60D8 8FB00010 */ lw $s0, 0x10($sp)
/* FAA8C 802D60DC 24020002 */ addiu $v0, $zero, 2
/* FAA90 802D60E0 03E00008 */ jr $ra
/* FAA94 802D60E4 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,27 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802D721C
/* FBBCC 802D721C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* FBBD0 802D7220 AFB10014 */ sw $s1, 0x14($sp)
/* FBBD4 802D7224 0080882D */ daddu $s1, $a0, $zero
/* FBBD8 802D7228 AFBF0018 */ sw $ra, 0x18($sp)
/* FBBDC 802D722C AFB00010 */ sw $s0, 0x10($sp)
/* FBBE0 802D7230 8E30000C */ lw $s0, 0xc($s1)
/* FBBE4 802D7234 8E050000 */ lw $a1, ($s0)
/* FBBE8 802D7238 0C0B1EAF */ jal get_variable
/* FBBEC 802D723C 26100004 */ addiu $s0, $s0, 4
/* FBBF0 802D7240 0220202D */ daddu $a0, $s1, $zero
/* FBBF4 802D7244 8E050000 */ lw $a1, ($s0)
/* FBBF8 802D7248 0C0B1EAF */ jal get_variable
/* FBBFC 802D724C 0040802D */ daddu $s0, $v0, $zero
/* FBC00 802D7250 0200202D */ daddu $a0, $s0, $zero
/* FBC04 802D7254 0C04C3D6 */ jal get_item_entity
/* FBC08 802D7258 0040802D */ daddu $s0, $v0, $zero
/* FBC0C 802D725C A050002F */ sb $s0, 0x2f($v0)
/* FBC10 802D7260 8FBF0018 */ lw $ra, 0x18($sp)
/* FBC14 802D7264 8FB10014 */ lw $s1, 0x14($sp)
/* FBC18 802D7268 8FB00010 */ lw $s0, 0x10($sp)
/* FBC1C 802D726C 24020002 */ addiu $v0, $zero, 2
/* FBC20 802D7270 03E00008 */ jr $ra
/* FBC24 802D7274 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,50 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802D7520
/* FBED0 802D7520 27BDFFC0 */ addiu $sp, $sp, -0x40
/* FBED4 802D7524 AFB1001C */ sw $s1, 0x1c($sp)
/* FBED8 802D7528 0080882D */ daddu $s1, $a0, $zero
/* FBEDC 802D752C AFBF0020 */ sw $ra, 0x20($sp)
/* FBEE0 802D7530 AFB00018 */ sw $s0, 0x18($sp)
/* FBEE4 802D7534 F7B80038 */ sdc1 $f24, 0x38($sp)
/* FBEE8 802D7538 F7B60030 */ sdc1 $f22, 0x30($sp)
/* FBEEC 802D753C F7B40028 */ sdc1 $f20, 0x28($sp)
/* FBEF0 802D7540 8E30000C */ lw $s0, 0xc($s1)
/* FBEF4 802D7544 8E050000 */ lw $a1, ($s0)
/* FBEF8 802D7548 0C0B210B */ jal get_float_variable
/* FBEFC 802D754C 26100004 */ addiu $s0, $s0, 4
/* FBF00 802D7550 8E050000 */ lw $a1, ($s0)
/* FBF04 802D7554 26100004 */ addiu $s0, $s0, 4
/* FBF08 802D7558 0220202D */ daddu $a0, $s1, $zero
/* FBF0C 802D755C 0C0B210B */ jal get_float_variable
/* FBF10 802D7560 46000606 */ mov.s $f24, $f0
/* FBF14 802D7564 8E050000 */ lw $a1, ($s0)
/* FBF18 802D7568 26100004 */ addiu $s0, $s0, 4
/* FBF1C 802D756C 0220202D */ daddu $a0, $s1, $zero
/* FBF20 802D7570 0C0B210B */ jal get_float_variable
/* FBF24 802D7574 46000586 */ mov.s $f22, $f0
/* FBF28 802D7578 0220202D */ daddu $a0, $s1, $zero
/* FBF2C 802D757C 8E050000 */ lw $a1, ($s0)
/* FBF30 802D7580 0C0B1EAF */ jal get_variable
/* FBF34 802D7584 46000506 */ mov.s $f20, $f0
/* FBF38 802D7588 0040382D */ daddu $a3, $v0, $zero
/* FBF3C 802D758C 4600C306 */ mov.s $f12, $f24
/* FBF40 802D7590 4406A000 */ mfc1 $a2, $f20
/* FBF44 802D7594 0C0B5D18 */ jal func_802D7460
/* FBF48 802D7598 4600B386 */ mov.s $f14, $f22
/* FBF4C 802D759C 24042055 */ addiu $a0, $zero, 0x2055
/* FBF50 802D75A0 4406C000 */ mfc1 $a2, $f24
/* FBF54 802D75A4 4407B000 */ mfc1 $a3, $f22
/* FBF58 802D75A8 0000282D */ daddu $a1, $zero, $zero
/* FBF5C 802D75AC 0C052757 */ jal play_sound_at_position
/* FBF60 802D75B0 E7B40010 */ swc1 $f20, 0x10($sp)
/* FBF64 802D75B4 8FBF0020 */ lw $ra, 0x20($sp)
/* FBF68 802D75B8 8FB1001C */ lw $s1, 0x1c($sp)
/* FBF6C 802D75BC 8FB00018 */ lw $s0, 0x18($sp)
/* FBF70 802D75C0 D7B80038 */ ldc1 $f24, 0x38($sp)
/* FBF74 802D75C4 D7B60030 */ ldc1 $f22, 0x30($sp)
/* FBF78 802D75C8 D7B40028 */ ldc1 $f20, 0x28($sp)
/* FBF7C 802D75CC 24020002 */ addiu $v0, $zero, 2
/* FBF80 802D75D0 03E00008 */ jr $ra
/* FBF84 802D75D4 27BD0040 */ addiu $sp, $sp, 0x40

View File

@ -1,50 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802D75D8
/* FBF88 802D75D8 27BDFFC0 */ addiu $sp, $sp, -0x40
/* FBF8C 802D75DC AFB1001C */ sw $s1, 0x1c($sp)
/* FBF90 802D75E0 0080882D */ daddu $s1, $a0, $zero
/* FBF94 802D75E4 AFBF0020 */ sw $ra, 0x20($sp)
/* FBF98 802D75E8 AFB00018 */ sw $s0, 0x18($sp)
/* FBF9C 802D75EC F7B80038 */ sdc1 $f24, 0x38($sp)
/* FBFA0 802D75F0 F7B60030 */ sdc1 $f22, 0x30($sp)
/* FBFA4 802D75F4 F7B40028 */ sdc1 $f20, 0x28($sp)
/* FBFA8 802D75F8 8E30000C */ lw $s0, 0xc($s1)
/* FBFAC 802D75FC 8E050000 */ lw $a1, ($s0)
/* FBFB0 802D7600 0C0B210B */ jal get_float_variable
/* FBFB4 802D7604 26100004 */ addiu $s0, $s0, 4
/* FBFB8 802D7608 8E050000 */ lw $a1, ($s0)
/* FBFBC 802D760C 26100004 */ addiu $s0, $s0, 4
/* FBFC0 802D7610 0220202D */ daddu $a0, $s1, $zero
/* FBFC4 802D7614 0C0B210B */ jal get_float_variable
/* FBFC8 802D7618 46000606 */ mov.s $f24, $f0
/* FBFCC 802D761C 8E050000 */ lw $a1, ($s0)
/* FBFD0 802D7620 26100004 */ addiu $s0, $s0, 4
/* FBFD4 802D7624 0220202D */ daddu $a0, $s1, $zero
/* FBFD8 802D7628 0C0B210B */ jal get_float_variable
/* FBFDC 802D762C 46000586 */ mov.s $f22, $f0
/* FBFE0 802D7630 0220202D */ daddu $a0, $s1, $zero
/* FBFE4 802D7634 8E050000 */ lw $a1, ($s0)
/* FBFE8 802D7638 0C0B1EAF */ jal get_variable
/* FBFEC 802D763C 46000506 */ mov.s $f20, $f0
/* FBFF0 802D7640 0040382D */ daddu $a3, $v0, $zero
/* FBFF4 802D7644 4600C306 */ mov.s $f12, $f24
/* FBFF8 802D7648 4406A000 */ mfc1 $a2, $f20
/* FBFFC 802D764C 0C0B5D30 */ jal func_802D74C0
/* FC000 802D7650 4600B386 */ mov.s $f14, $f22
/* FC004 802D7654 24040378 */ addiu $a0, $zero, 0x378
/* FC008 802D7658 4406C000 */ mfc1 $a2, $f24
/* FC00C 802D765C 4407B000 */ mfc1 $a3, $f22
/* FC010 802D7660 0000282D */ daddu $a1, $zero, $zero
/* FC014 802D7664 0C052757 */ jal play_sound_at_position
/* FC018 802D7668 E7B40010 */ swc1 $f20, 0x10($sp)
/* FC01C 802D766C 8FBF0020 */ lw $ra, 0x20($sp)
/* FC020 802D7670 8FB1001C */ lw $s1, 0x1c($sp)
/* FC024 802D7674 8FB00018 */ lw $s0, 0x18($sp)
/* FC028 802D7678 D7B80038 */ ldc1 $f24, 0x38($sp)
/* FC02C 802D767C D7B60030 */ ldc1 $f22, 0x30($sp)
/* FC030 802D7680 D7B40028 */ ldc1 $f20, 0x28($sp)
/* FC034 802D7684 24020002 */ addiu $v0, $zero, 2
/* FC038 802D7688 03E00008 */ jr $ra
/* FC03C 802D768C 27BD0040 */ addiu $sp, $sp, 0x40

View File

@ -779,7 +779,7 @@ typedef struct ItemEntity {
/* 0x28 */ u32* savedReadPos;
/* 0x2C */ char unk_2C[2];
/* 0x2E */ u8 unkCounter;
/* 0x2F */ char unk_2F;
/* 0x2F */ s8 unk_2F;
/* 0x30 */ f32 scale;
/* 0x34 */ char unk_34[40];
} ItemEntity; // size = 0x5C

View File

@ -92,6 +92,9 @@ f32 update_lerp(Easing easing, f32 start, f32 end, s32 elapsed, s32 duration);
void make_item_entity_delayed(s32 itemID, f32 x, f32 y, f32 z, s32 unk1, s32 unk2, s32 unk3);
void set_item_entity_position(s32 itemEntityIndex, f32 x, f32 y, f32 z);
ItemEntity* get_item_entity(s32 itemEntityIndex);
s32 make_item_entity_nodelay(s32 itemID, f32 x, f32 y, f32 z, ItemSpawnMode itemSpawnMode, s32 pickupVar);
void set_cam_viewport(s16 id, s16 x, s16 y, s16 width, s16 height);

78
src/code_FBE10.c Normal file
View File

@ -0,0 +1,78 @@
#include "common.h"
void func_802D7460(f32 x, f32 y, f32 z, s32 arg3);
INCLUDE_ASM(void, "code_fa4c0_len_3bf0", func_802D7460, f32 x, f32 y, f32 z, s32 arg3);
void func_802D74C0(f32 x, f32 y, f32 z, s32 arg3);
INCLUDE_ASM(void, "code_fa4c0_len_3bf0", func_802D74C0, f32 x, f32 y, f32 z, s32 arg3);
ApiStatus func_802D7520(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
f32 x = get_float_variable(script, *args++);
f32 y = get_float_variable(script, *args++);
f32 z = get_float_variable(script, *args++);
func_802D7460(x, y, z, get_variable(script, *args++));
play_sound_at_position(0x2055, 0, x, y, z);
return ApiStatus_DONE2;
}
ApiStatus func_802D75D8(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
f32 x = get_float_variable(script, *args++);
f32 y = get_float_variable(script, *args++);
f32 z = get_float_variable(script, *args++);
func_802D74C0(x, y, z, get_variable(script, *args++));
play_sound_at_position(0x378, 0, x, y, z);
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_FBE10", func_802D7690);
INCLUDE_ASM(s32, "code_FBE10", ShowEmote, ScriptInstance* script, s32 isInitialCall);
ApiStatus RemoveEffect(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
remove_effect(get_variable(script, *args++));
return ApiStatus_DONE2;
}
ApiStatus func_802D7B10(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32* ptrValue = get_variable(script, *args++);
*ptrValue |= 0x10;
return ApiStatus_DONE2;
}
ApiStatus func_802D7B44(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32* ptrValue = get_variable(script, *args++);
s32* ptrTemp = ptrValue[3];
ptrTemp[5] = 10;
return ApiStatus_DONE2;
}
ApiStatus func_802D7B74(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32* ptrValue = get_variable(script, *args++);
s32* ptrTemp = ptrValue[3];
ptrTemp[12] = 5;
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_FBE10", func_802D7BA4);
INCLUDE_ASM(s32, "code_FBE10", func_802D7CF8);
INCLUDE_ASM(s32, "code_FBE10", func_802D7E08);
INCLUDE_ASM(s32, "code_FBE10", ShowSleepBubble);
INCLUDE_ASM(s32, "code_FBE10", func_802D8248);
INCLUDE_ASM(s32, "code_FBE10", PlayEffect);

View File

@ -187,7 +187,7 @@ INCLUDE_ASM(s32, "code_b72b0_len_15ed0", func_80130ACC);
INCLUDE_ASM(s32, "code_b72b0_len_15ed0", draw_coin_sparkles);
INCLUDE_ASM(s32, "code_b72b0_len_15ed0", get_item_entity);
INCLUDE_ASM(ItemEntity*, "code_b72b0_len_15ed0", get_item_entity, s32 itemEntityIndex);
INCLUDE_ASM(s32, "code_b72b0_len_15ed0", func_80130F70);
@ -201,7 +201,8 @@ INCLUDE_ASM(s32, "code_b72b0_len_15ed0", func_80131128);
INCLUDE_ASM(s32, "code_b72b0_len_15ed0", make_item_entity);
INCLUDE_ASM(s32, "code_b72b0_len_15ed0", make_item_entity_nodelay);
INCLUDE_ASM(s32, "code_b72b0_len_15ed0", make_item_entity_nodelay, s32 itemID, f32 x, f32 y, f32 z,
ItemSpawnMode itemSpawnMode, s32 pickupVar);
INCLUDE_ASM(void, "code_b72b0_len_15ed0", make_item_entity_delayed, s32 itemID, f32 x, f32 y, f32 z, s32 unk1,
s32 unk2,

View File

@ -22,23 +22,60 @@ ApiStatus SetMusicTrack(ScriptInstance* script, s32 isInitialCall) {
return (set_music_track(musicPlayer, songID, variation, 0x1F4, volume) != 0) * 2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", FadeInMusic, ScriptInstance* script, s32 isInitialCall);
ApiStatus FadeInMusic(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32 var0 = get_variable(script, *args++);
s32 var1 = get_variable(script, *args++);
s32 var2 = get_variable(script, *args++);
s32 var3 = get_variable(script, *args++);
s16 var4 = get_variable(script, *args++);
s16 var5 = get_variable(script, *args++);
return (func_8014A964(var0, var1, var2, var3, var4, var5) != 0) * 2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D5EE0);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D5F28);
ApiStatus func_802D5F28(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D5FA4);
func_8014AA54(get_variable(script, *args++), get_variable(script, *args++), (s16)get_variable(script, *args++));
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D5FD8);
ApiStatus func_802D5FA4(ScriptInstance* script, s32 isInitialCall) {
func_8014AB0C(0, (s16)get_variable(script, *script->ptrReadPos));
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D5FF8);
ApiStatus func_802D5FD8(ScriptInstance* script, s32 isInitialCall) {
func_8014ADA4();
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D6050);
ApiStatus func_802D5FF8(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D6070);
func_8014ADF8(get_variable(script, *args++), get_variable(script, *args++));
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D6090);
ApiStatus func_802D6050(ScriptInstance* script, s32 isInitialCall) {
func_8014AE6C();
return ApiStatus_DONE2;
}
ApiStatus func_802D6070(ScriptInstance* script, s32 isInitialCall) {
func_8014AEF8();
return ApiStatus_DONE2;
}
ApiStatus func_802D6090(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
func_8014AF8C(get_variable(script, *args++), get_variable(script, *args++));
return ApiStatus_DONE2;
}
//INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", ClearAmbientSounds);
ApiStatus ClearAmbientSounds(ScriptInstance* script, s32 isInitialCall) {
@ -112,7 +149,17 @@ ApiStatus func_802D6340(ScriptInstance* script, s32 initialCall) {
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", PlaySoundAtF, ScriptInstance* script, s32 isInitialCall);
ApiStatus PlaySoundAtF(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Bytecode soundID = *args++;
u16 value2 = get_variable(script, *args++);
f32 x = get_float_variable(script, *args++);
f32 y = get_float_variable(script, *args++);
f32 z = get_float_variable(script, *args++);
play_sound_at_position(soundID, value2, x, y, z);
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D6420);
@ -289,13 +336,32 @@ ApiStatus RemoveFortressKeys(ScriptInstance* script, s32 isInitialCall) {
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", MakeItemEntity, ScriptInstance* script, s32 isInitialCall);
ApiStatus MakeItemEntity(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32 itemID = get_variable(script, *args++);
s32 x = get_variable(script, *args++);
s32 y = get_variable(script, *args++);
s32 z = get_variable(script, *args++);
s32 itemSpawnMode = get_variable(script, *args++);
s32 pickupVar = get_variable_index(script, *args++);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", DropItemEntity, ScriptInstance* script, s32 isInitialCall);
script->varTable[0] = make_item_entity_nodelay(itemID, x, y, z, itemSpawnMode, pickupVar);
return ApiStatus_DONE2;
}
ApiStatus DropItemEntity(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32 itemID = get_variable(script, *args++);
s32 x = get_variable(script, *args++);
s32 y = get_variable(script, *args++);
s32 z = get_variable(script, *args++);
s32 itemSpawnMode = get_variable(script, *args++);
s32 pickupVar = get_variable(script, *args++);
script->varTable[0] = make_item_entity_nodelay(itemID, x, y, z, itemSpawnMode, pickupVar);
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", DropItemEntityB, ScriptInstance* script, s32 isInitialCall);
/*
// Close to working
ApiStatus DropItemEntityB(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32 itemID = get_variable(script, *args++);
@ -303,13 +369,12 @@ ApiStatus DropItemEntityB(ScriptInstance* script, s32 isInitialCall) {
s32 y = get_variable(script, *args++);
s32 z = get_variable(script, *args++);
s32 itemSpawnMode = get_variable(script, *args++);
s32 pickupFlag = get_variable(script, *args++);
s32 pickupVar = get_variable_index(script, *args++);
script->varTable[0] = make_item_entity_nodelay(itemID, x, y, z);
set_item_entity_flags(script, 0x4000);
script->varTable[0] = make_item_entity_nodelay(itemID, x, y, z, itemSpawnMode, pickupVar);
set_item_entity_flags(script->varTable[0], 0x4000);
return ApiStatus_DONE2;
}
*/
ApiStatus RemoveItemEntity(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
@ -328,7 +393,25 @@ ApiStatus AddBadge(ScriptInstance* script, s32 isInitialCall) {
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", RemoveBadge, ScriptInstance* script, s32 isInitialCall);
ApiStatus RemoveBadge(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
PlayerData* playerData = PLAYER_DATA;
s32 badge = get_variable(script, *args++);
s32 i;
for (i = 0; i < ARRAY_COUNT(playerData->badges); i++) {
if (playerData->badges[i] == badge) {
playerData->badges[i] = 0;
}
}
for (i = 0; i < ARRAY_COUNT(playerData->equippedBadges); i++) {
if (playerData->equippedBadges[i] == badge) {
playerData->equippedBadges[i] = 0;
}
}
return ApiStatus_DONE2;
}
ApiStatus SetItemPos(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
@ -348,9 +431,30 @@ ApiStatus SetItemPos(ScriptInstance* script, s32 isInitialCall) {
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", SetItemFlags, ScriptInstance* script, s32 isInitialCall);
ApiStatus SetItemFlags(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32 itemEntityIndex = get_variable(script, *args++);
s32 flagBits = *args++;
s32 var2 = get_variable(script, *args++);
ItemEntity* itemEntity = get_item_entity(itemEntityIndex);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D721C);
if (var2 != 0) {
itemEntity->flags |= flagBits;
} else {
itemEntity->flags &= ~flagBits;
}
return ApiStatus_DONE2;
}
;
ApiStatus func_802D721C(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32 itemEntityIndex = get_variable(script, *args++);
s32 var2 = get_variable(script, *args++);
ItemEntity* itemEntity = get_item_entity(itemEntityIndex);
itemEntity->unk_2F = var2;
return ApiStatus_DONE2;
}
ApiStatus AddCoin(ScriptInstance* script, s32 isInitialCall) {
script->varTable[0] = add_coins(get_variable(script, *script->ptrReadPos));
@ -378,61 +482,23 @@ ApiStatus GetItemPower(ScriptInstance* script, s32 isInitialCall) {
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", ShowGotItem, ScriptInstance* script, s32 isInitialCall);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D7460);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D74C0);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D7520);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D75D8);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D7690);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", ShowEmote, ScriptInstance* script, s32 isInitialCall);
ApiStatus RemoveEffect(ScriptInstance* script, s32 isInitialCall) {
ApiStatus ShowGotItem(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
ItemEntity* e;
remove_effect(get_variable(script, *args++));
return ApiStatus_DONE2;
if (isInitialCall) {
script->functionTemp[0].s = 0;
}
switch (script->functionTemp[0].s) {
case 0:
script->functionTemp[1].s = init_got_item(get_variable(script, *args++), get_variable(script, *args++), *args++);
script->functionTemp[0].s = 1;
break;
case 1:
if (get_item_entity(script->functionTemp[1].s) == NULL) {
return ApiStatus_DONE2;
}
}
return ApiStatus_BLOCK;
}
ApiStatus func_802D7B10(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32* ptrValue = get_variable(script, *args++);
*ptrValue |= 0x10;
return ApiStatus_DONE2;
}
ApiStatus func_802D7B44(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32* ptrValue = get_variable(script, *args++);
s32* ptrTemp = ptrValue[3];
ptrTemp[5] = 10;
return ApiStatus_DONE2;
}
ApiStatus func_802D7B74(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32* ptrValue = get_variable(script, *args++);
s32* ptrTemp = ptrValue[3];
ptrTemp[12] = 5;
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D7BA4);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D7CF8);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D7E08);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", ShowSleepBubble);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", func_802D8248);
INCLUDE_ASM(s32, "code_fa4c0_len_3bf0", PlayEffect);

View File

@ -248,6 +248,7 @@ segments:
- [0xf5750, "c", "code_F5750"]
- [0xf8f60, "c", "code_f8f60_len_1560"]
- [0xfa4c0, "c", "code_fa4c0_len_3bf0"]
- [0xFBE10, "c"]
- [0xfe0b0, "c", "code_fe0b0_len_5a0"]
- [0xFE650, ".data", "code_e79b0_len_1920"]
- [0xFE660, "bin"]