mirror of https://github.com/zeldaret/oot.git
530 lines
23 KiB
ArmAsm
530 lines
23 KiB
ArmAsm
.late_rodata
|
|
glabel D_80134FF4
|
|
.float 0.1
|
|
|
|
glabel D_80134FF8
|
|
.float -10000
|
|
|
|
glabel jtbl_80134FFC
|
|
.word L8001EA90
|
|
.word L8001EAA4
|
|
.word L8001EAB8
|
|
.word L8001EB0C
|
|
.word L8001EB34
|
|
.word L8001EB48
|
|
.word L8001EBB0
|
|
.word L8001EBBC
|
|
.word L8001EB5C
|
|
.word L8001EB70
|
|
.word L8001EB84
|
|
.word L8001EB34
|
|
.word L8001EB00
|
|
.word L8001EAF4
|
|
.word L8001EBC8
|
|
.word L8001EBD4
|
|
.word L8001EB98
|
|
.word L8001EBA4
|
|
.word L8001EB20
|
|
.word L8001EAE0
|
|
.word L8001EACC
|
|
.word L8001EBE0
|
|
.word L8001EBEC
|
|
.word L8001EBF8
|
|
.word L8001EC04
|
|
.word L8001EC0C
|
|
|
|
glabel jtbl_80135064
|
|
.word L8001EC60
|
|
.word L8001EC60
|
|
.word L8001EC8C
|
|
.word L8001EC8C
|
|
.word L8001EC8C
|
|
.word L8001EC8C
|
|
.word L8001EC8C
|
|
.word L8001EC8C
|
|
.word L8001EC8C
|
|
.word L8001EC8C
|
|
.word L8001EC8C
|
|
.word L8001EC60
|
|
.word L8001EC8C
|
|
.word L8001EC8C
|
|
.word L8001EC8C
|
|
.word L8001EC60
|
|
.word L8001EC60
|
|
.word L8001EC60
|
|
.word L8001EC60
|
|
|
|
.text
|
|
glabel EnItem00_Update
|
|
/* A958BC 8001E71C 27BDFFB8 */ addiu $sp, $sp, -0x48
|
|
/* A958C0 8001E720 AFBF0024 */ sw $ra, 0x24($sp)
|
|
/* A958C4 8001E724 AFB10020 */ sw $s1, 0x20($sp)
|
|
/* A958C8 8001E728 AFB0001C */ sw $s0, 0x1c($sp)
|
|
/* A958CC 8001E72C AFA0003C */ sw $zero, 0x3c($sp)
|
|
/* A958D0 8001E730 A7A0003A */ sh $zero, 0x3a($sp)
|
|
/* A958D4 8001E734 8482015A */ lh $v0, 0x15a($a0)
|
|
/* A958D8 8001E738 00808025 */ move $s0, $a0
|
|
/* A958DC 8001E73C 00A08825 */ move $s1, $a1
|
|
/* A958E0 8001E740 18400003 */ blez $v0, .L8001E750
|
|
/* A958E4 8001E744 244EFFFF */ addiu $t6, $v0, -1
|
|
/* A958E8 8001E748 A48E015A */ sh $t6, 0x15a($a0)
|
|
/* A958EC 8001E74C 8482015A */ lh $v0, 0x15a($a0)
|
|
.L8001E750:
|
|
/* A958F0 8001E750 18400007 */ blez $v0, .L8001E770
|
|
/* A958F4 8001E754 28410029 */ slti $at, $v0, 0x29
|
|
/* A958F8 8001E758 50200006 */ beql $at, $zero, .L8001E774
|
|
/* A958FC 8001E75C 8E19014C */ lw $t9, 0x14c($s0)
|
|
/* A95900 8001E760 860F0154 */ lh $t7, 0x154($s0)
|
|
/* A95904 8001E764 5DE00003 */ bgtzl $t7, .L8001E774
|
|
/* A95908 8001E768 8E19014C */ lw $t9, 0x14c($s0)
|
|
/* A9590C 8001E76C A6020156 */ sh $v0, 0x156($s0)
|
|
.L8001E770:
|
|
/* A95910 8001E770 8E19014C */ lw $t9, 0x14c($s0)
|
|
.L8001E774:
|
|
/* A95914 8001E774 02002025 */ move $a0, $s0
|
|
/* A95918 8001E778 02202825 */ move $a1, $s1
|
|
/* A9591C 8001E77C 0320F809 */ jalr $t9
|
|
/* A95920 8001E780 00000000 */ nop
|
|
/* A95924 8001E784 3C018013 */ lui $at, %hi(D_80134FF4)
|
|
/* A95928 8001E788 C4224FF4 */ lwc1 $f2, %lo(D_80134FF4)($at)
|
|
/* A9592C 8001E78C C600015C */ lwc1 $f0, 0x15c($s0)
|
|
/* A95930 8001E790 44803000 */ mtc1 $zero, $f6
|
|
/* A95934 8001E794 44061000 */ mfc1 $a2, $f2
|
|
/* A95938 8001E798 46020102 */ mul.s $f4, $f0, $f2
|
|
/* A9593C 8001E79C 44050000 */ mfc1 $a1, $f0
|
|
/* A95940 8001E7A0 26040050 */ addiu $a0, $s0, 0x50
|
|
/* A95944 8001E7A4 E7A60010 */ swc1 $f6, 0x10($sp)
|
|
/* A95948 8001E7A8 44072000 */ mfc1 $a3, $f4
|
|
/* A9594C 8001E7AC 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
|
/* A95950 8001E7B0 00000000 */ nop
|
|
/* A95954 8001E7B4 44804000 */ mtc1 $zero, $f8
|
|
/* A95958 8001E7B8 C60A006C */ lwc1 $f10, 0x6c($s0)
|
|
/* A9595C 8001E7BC C6020050 */ lwc1 $f2, 0x50($s0)
|
|
/* A95960 8001E7C0 460A4032 */ c.eq.s $f8, $f10
|
|
/* A95964 8001E7C4 E6020058 */ swc1 $f2, 0x58($s0)
|
|
/* A95968 8001E7C8 E6020054 */ swc1 $f2, 0x54($s0)
|
|
/* A9596C 8001E7CC 45030062 */ bc1tl .L8001E958
|
|
/* A95970 8001E7D0 26060160 */ addiu $a2, $s0, 0x160
|
|
/* A95974 8001E7D4 96180088 */ lhu $t8, 0x88($s0)
|
|
/* A95978 8001E7D8 3C020001 */ lui $v0, 1
|
|
/* A9597C 8001E7DC 00511021 */ addu $v0, $v0, $s1
|
|
/* A95980 8001E7E0 33080003 */ andi $t0, $t8, 3
|
|
/* A95984 8001E7E4 1100003B */ beqz $t0, .L8001E8D4
|
|
/* A95988 8001E7E8 3C098015 */ lui $t1, %hi(D_80157D90) # $t1, 0x8015
|
|
/* A9598C 8001E7EC 8C421DE4 */ lw $v0, 0x1de4($v0)
|
|
/* A95990 8001E7F0 8D297D90 */ lw $t1, %lo(D_80157D90)($t1)
|
|
/* A95994 8001E7F4 3C058015 */ lui $a1, %hi(D_80157D94) # $a1, 0x8015
|
|
/* A95998 8001E7F8 24A57D94 */ addiu $a1, %lo(D_80157D94) # addiu $a1, $a1, 0x7d94
|
|
/* A9599C 8001E7FC 10490032 */ beq $v0, $t1, .L8001E8C8
|
|
/* A959A0 8001E800 3C018015 */ lui $at, %hi(D_80157D90) # $at, 0x8015
|
|
/* A959A4 8001E804 AC227D90 */ sw $v0, %lo(D_80157D90)($at)
|
|
/* A959A8 8001E808 A4A00000 */ sh $zero, ($a1)
|
|
/* A959AC 8001E80C 00001825 */ move $v1, $zero
|
|
/* A959B0 8001E810 24040064 */ li $a0, 100
|
|
/* A959B4 8001E814 00035040 */ sll $t2, $v1, 1
|
|
.L8001E818:
|
|
/* A959B8 8001E818 022A5821 */ addu $t3, $s1, $t2
|
|
/* A959BC 8001E81C 956C1B9C */ lhu $t4, 0x1b9c($t3)
|
|
/* A959C0 8001E820 318D0001 */ andi $t5, $t4, 1
|
|
/* A959C4 8001E824 51A00023 */ beql $t5, $zero, .L8001E8B4
|
|
/* A959C8 8001E828 24630001 */ addiu $v1, $v1, 1
|
|
/* A959CC 8001E82C 00640019 */ multu $v1, $a0
|
|
/* A959D0 8001E830 00007012 */ mflo $t6
|
|
/* A959D4 8001E834 022E7821 */ addu $t7, $s1, $t6
|
|
/* A959D8 8001E838 8DE20814 */ lw $v0, 0x814($t7)
|
|
/* A959DC 8001E83C 5040001D */ beql $v0, $zero, .L8001E8B4
|
|
/* A959E0 8001E840 24630001 */ addiu $v1, $v1, 1
|
|
/* A959E4 8001E844 8C590130 */ lw $t9, 0x130($v0)
|
|
/* A959E8 8001E848 5320001A */ beql $t9, $zero, .L8001E8B4
|
|
/* A959EC 8001E84C 24630001 */ addiu $v1, $v1, 1
|
|
/* A959F0 8001E850 C4500100 */ lwc1 $f16, 0x100($v0)
|
|
/* A959F4 8001E854 C4520024 */ lwc1 $f18, 0x24($v0)
|
|
/* A959F8 8001E858 46128032 */ c.eq.s $f16, $f18
|
|
/* A959FC 8001E85C 00000000 */ nop
|
|
/* A95A00 8001E860 4502000E */ bc1fl .L8001E89C
|
|
/* A95A04 8001E864 84B80000 */ lh $t8, ($a1)
|
|
/* A95A08 8001E868 C4440104 */ lwc1 $f4, 0x104($v0)
|
|
/* A95A0C 8001E86C C4460028 */ lwc1 $f6, 0x28($v0)
|
|
/* A95A10 8001E870 46062032 */ c.eq.s $f4, $f6
|
|
/* A95A14 8001E874 00000000 */ nop
|
|
/* A95A18 8001E878 45020008 */ bc1fl .L8001E89C
|
|
/* A95A1C 8001E87C 84B80000 */ lh $t8, ($a1)
|
|
/* A95A20 8001E880 C4480108 */ lwc1 $f8, 0x108($v0)
|
|
/* A95A24 8001E884 C44A002C */ lwc1 $f10, 0x2c($v0)
|
|
/* A95A28 8001E888 460A4032 */ c.eq.s $f8, $f10
|
|
/* A95A2C 8001E88C 00000000 */ nop
|
|
/* A95A30 8001E890 45030008 */ bc1tl .L8001E8B4
|
|
/* A95A34 8001E894 24630001 */ addiu $v1, $v1, 1
|
|
/* A95A38 8001E898 84B80000 */ lh $t8, ($a1)
|
|
.L8001E89C:
|
|
/* A95A3C 8001E89C 27080001 */ addiu $t0, $t8, 1
|
|
/* A95A40 8001E8A0 A4A80000 */ sh $t0, ($a1)
|
|
/* A95A44 8001E8A4 3C058015 */ lui $a1, %hi(D_80157D94) # $a1, 0x8015
|
|
/* A95A48 8001E8A8 10000010 */ b .L8001E8EC
|
|
/* A95A4C 8001E8AC 24A57D94 */ addiu $a1, %lo(D_80157D94) # addiu $a1, $a1, 0x7d94
|
|
/* A95A50 8001E8B0 24630001 */ addiu $v1, $v1, 1
|
|
.L8001E8B4:
|
|
/* A95A54 8001E8B4 00031C00 */ sll $v1, $v1, 0x10
|
|
/* A95A58 8001E8B8 00031C03 */ sra $v1, $v1, 0x10
|
|
/* A95A5C 8001E8BC 28610032 */ slti $at, $v1, 0x32
|
|
/* A95A60 8001E8C0 5420FFD5 */ bnezl $at, .L8001E818
|
|
/* A95A64 8001E8C4 00035040 */ sll $t2, $v1, 1
|
|
.L8001E8C8:
|
|
/* A95A68 8001E8C8 3C058015 */ lui $a1, %hi(D_80157D94) # $a1, 0x8015
|
|
/* A95A6C 8001E8CC 10000007 */ b .L8001E8EC
|
|
/* A95A70 8001E8D0 24A57D94 */ addiu $a1, %lo(D_80157D94) # addiu $a1, $a1, 0x7d94
|
|
.L8001E8D4:
|
|
/* A95A74 8001E8D4 24090001 */ li $t1, 1
|
|
/* A95A78 8001E8D8 A7A9003A */ sh $t1, 0x3a($sp)
|
|
/* A95A7C 8001E8DC 0C00B638 */ jal Actor_MoveForward
|
|
/* A95A80 8001E8E0 02002025 */ move $a0, $s0
|
|
/* A95A84 8001E8E4 3C058015 */ lui $a1, %hi(D_80157D94) # $a1, 0x8015
|
|
/* A95A88 8001E8E8 24A57D94 */ addiu $a1, %lo(D_80157D94) # addiu $a1, $a1, 0x7d94
|
|
.L8001E8EC:
|
|
/* A95A8C 8001E8EC 87AA003A */ lh $t2, 0x3a($sp)
|
|
/* A95A90 8001E8F0 3C014170 */ lui $at, 0x4170
|
|
/* A95A94 8001E8F4 02202025 */ move $a0, $s1
|
|
/* A95A98 8001E8F8 15400004 */ bnez $t2, .L8001E90C
|
|
/* A95A9C 8001E8FC 3C064120 */ li $a2, 0x41200000 # 0.000000
|
|
/* A95AA0 8001E900 84AB0000 */ lh $t3, ($a1)
|
|
/* A95AA4 8001E904 51600014 */ beql $t3, $zero, .L8001E958
|
|
/* A95AA8 8001E908 26060160 */ addiu $a2, $s0, 0x160
|
|
.L8001E90C:
|
|
/* A95AAC 8001E90C 44810000 */ mtc1 $at, $f0
|
|
/* A95AB0 8001E910 240C001D */ li $t4, 29
|
|
/* A95AB4 8001E914 AFAC0014 */ sw $t4, 0x14($sp)
|
|
/* A95AB8 8001E918 44070000 */ mfc1 $a3, $f0
|
|
/* A95ABC 8001E91C 02002825 */ move $a1, $s0
|
|
/* A95AC0 8001E920 0C00B92D */ jal func_8002E4B4
|
|
/* A95AC4 8001E924 E7A00010 */ swc1 $f0, 0x10($sp)
|
|
/* A95AC8 8001E928 3C018013 */ lui $at, %hi(D_80134FF8)
|
|
/* A95ACC 8001E92C C4304FF8 */ lwc1 $f16, %lo(D_80134FF8)($at)
|
|
/* A95AD0 8001E930 C6120080 */ lwc1 $f18, 0x80($s0)
|
|
/* A95AD4 8001E934 4610903E */ c.le.s $f18, $f16
|
|
/* A95AD8 8001E938 00000000 */ nop
|
|
/* A95ADC 8001E93C 45020006 */ bc1fl .L8001E958
|
|
/* A95AE0 8001E940 26060160 */ addiu $a2, $s0, 0x160
|
|
/* A95AE4 8001E944 0C00B55C */ jal Actor_Kill
|
|
/* A95AE8 8001E948 02002025 */ move $a0, $s0
|
|
/* A95AEC 8001E94C 1000010F */ b .L8001ED8C
|
|
/* A95AF0 8001E950 8FBF0024 */ lw $ra, 0x24($sp)
|
|
/* A95AF4 8001E954 26060160 */ addiu $a2, $s0, 0x160
|
|
.L8001E958:
|
|
/* A95AF8 8001E958 00C02825 */ move $a1, $a2
|
|
/* A95AFC 8001E95C AFA60028 */ sw $a2, 0x28($sp)
|
|
/* A95B00 8001E960 0C0189B7 */ jal Collider_CylinderUpdate
|
|
/* A95B04 8001E964 02002025 */ move $a0, $s0
|
|
/* A95B08 8001E968 3C010001 */ li $at, 0x00010000 # 0.000000
|
|
/* A95B0C 8001E96C 34211E60 */ ori $at, (0x00011E60 & 0xFFFF) # ori $at, $at, 0x1e60
|
|
/* A95B10 8001E970 8FA60028 */ lw $a2, 0x28($sp)
|
|
/* A95B14 8001E974 02212821 */ addu $a1, $s1, $at
|
|
/* A95B18 8001E978 0C01767D */ jal CollisionCheck_SetAC
|
|
/* A95B1C 8001E97C 02202025 */ move $a0, $s1
|
|
/* A95B20 8001E980 8603001C */ lh $v1, 0x1c($s0)
|
|
/* A95B24 8001E984 24010015 */ li $at, 21
|
|
/* A95B28 8001E988 10610007 */ beq $v1, $at, .L8001E9A8
|
|
/* A95B2C 8001E98C 24010016 */ li $at, 22
|
|
/* A95B30 8001E990 10610005 */ beq $v1, $at, .L8001E9A8
|
|
/* A95B34 8001E994 24010017 */ li $at, 23
|
|
/* A95B38 8001E998 10610003 */ beq $v1, $at, .L8001E9A8
|
|
/* A95B3C 8001E99C 24010018 */ li $at, 24
|
|
/* A95B40 8001E9A0 54610012 */ bnel $v1, $at, .L8001E9EC
|
|
/* A95B44 8001E9A4 860D0154 */ lh $t5, 0x154($s0)
|
|
.L8001E9A8:
|
|
/* A95B48 8001E9A8 0C01DE0D */ jal Math_Coss
|
|
/* A95B4C 8001E9AC 860400B4 */ lh $a0, 0xb4($s0)
|
|
/* A95B50 8001E9B0 3C014214 */ li $at, 0x42140000 # 0.000000
|
|
/* A95B54 8001E9B4 44812000 */ mtc1 $at, $f4
|
|
/* A95B58 8001E9B8 44803000 */ mtc1 $zero, $f6
|
|
/* A95B5C 8001E9BC 46040082 */ mul.s $f2, $f0, $f4
|
|
/* A95B60 8001E9C0 4602303E */ c.le.s $f6, $f2
|
|
/* A95B64 8001E9C4 E60200BC */ swc1 $f2, 0xbc($s0)
|
|
/* A95B68 8001E9C8 45020005 */ bc1fl .L8001E9E0
|
|
/* A95B6C 8001E9CC C60A00BC */ lwc1 $f10, 0xbc($s0)
|
|
/* A95B70 8001E9D0 C60800BC */ lwc1 $f8, 0xbc($s0)
|
|
/* A95B74 8001E9D4 10000004 */ b .L8001E9E8
|
|
/* A95B78 8001E9D8 E60800BC */ swc1 $f8, 0xbc($s0)
|
|
/* A95B7C 8001E9DC C60A00BC */ lwc1 $f10, 0xbc($s0)
|
|
.L8001E9E0:
|
|
/* A95B80 8001E9E0 46005407 */ neg.s $f16, $f10
|
|
/* A95B84 8001E9E4 E61000BC */ swc1 $f16, 0xbc($s0)
|
|
.L8001E9E8:
|
|
/* A95B88 8001E9E8 860D0154 */ lh $t5, 0x154($s0)
|
|
.L8001E9EC:
|
|
/* A95B8C 8001E9EC 3C0141F0 */ li $at, 0x41F00000 # 0.000000
|
|
/* A95B90 8001E9F0 5DA000E6 */ bgtzl $t5, .L8001ED8C
|
|
/* A95B94 8001E9F4 8FBF0024 */ lw $ra, 0x24($sp)
|
|
/* A95B98 8001E9F8 44819000 */ mtc1 $at, $f18
|
|
/* A95B9C 8001E9FC C6040090 */ lwc1 $f4, 0x90($s0)
|
|
/* A95BA0 8001EA00 3C01C248 */ li $at, 0xC2480000 # 0.000000
|
|
/* A95BA4 8001EA04 4612203E */ c.le.s $f4, $f18
|
|
/* A95BA8 8001EA08 00000000 */ nop
|
|
/* A95BAC 8001EA0C 4502000F */ bc1fl .L8001EA4C
|
|
/* A95BB0 8001EA10 02002025 */ move $a0, $s0
|
|
/* A95BB4 8001EA14 C6000094 */ lwc1 $f0, 0x94($s0)
|
|
/* A95BB8 8001EA18 44813000 */ mtc1 $at, $f6
|
|
/* A95BBC 8001EA1C 3C014248 */ li $at, 0x42480000 # 0.000000
|
|
/* A95BC0 8001EA20 4600303E */ c.le.s $f6, $f0
|
|
/* A95BC4 8001EA24 00000000 */ nop
|
|
/* A95BC8 8001EA28 45020008 */ bc1fl .L8001EA4C
|
|
/* A95BCC 8001EA2C 02002025 */ move $a0, $s0
|
|
/* A95BD0 8001EA30 44814000 */ mtc1 $at, $f8
|
|
/* A95BD4 8001EA34 00000000 */ nop
|
|
/* A95BD8 8001EA38 4608003E */ c.le.s $f0, $f8
|
|
/* A95BDC 8001EA3C 00000000 */ nop
|
|
/* A95BE0 8001EA40 45030006 */ bc1tl .L8001EA5C
|
|
/* A95BE4 8001EA44 3C0E0001 */ lui $t6, 1
|
|
/* A95BE8 8001EA48 02002025 */ move $a0, $s0
|
|
.L8001EA4C:
|
|
/* A95BEC 8001EA4C 0C00BD04 */ jal func_8002F410
|
|
/* A95BF0 8001EA50 02202825 */ move $a1, $s1
|
|
/* A95BF4 8001EA54 104000CC */ beqz $v0, .L8001ED88
|
|
/* A95BF8 8001EA58 3C0E0001 */ lui $t6, 1
|
|
.L8001EA5C:
|
|
/* A95BFC 8001EA5C 01D17021 */ addu $t6, $t6, $s1
|
|
/* A95C00 8001EA60 95CE0A20 */ lhu $t6, 0xa20($t6)
|
|
/* A95C04 8001EA64 55C000C9 */ bnezl $t6, .L8001ED8C
|
|
/* A95C08 8001EA68 8FBF0024 */ lw $ra, 0x24($sp)
|
|
/* A95C0C 8001EA6C 960F001C */ lhu $t7, 0x1c($s0)
|
|
/* A95C10 8001EA70 2DE1001A */ sltiu $at, $t7, 0x1a
|
|
/* A95C14 8001EA74 10200065 */ beqz $at, .L8001EC0C
|
|
/* A95C18 8001EA78 000F7880 */ sll $t7, $t7, 2
|
|
/* A95C1C 8001EA7C 3C018013 */ lui $at, %hi(jtbl_80134FFC)
|
|
/* A95C20 8001EA80 002F0821 */ addu $at, $at, $t7
|
|
/* A95C24 8001EA84 8C2F4FFC */ lw $t7, %lo(jtbl_80134FFC)($at)
|
|
/* A95C28 8001EA88 01E00008 */ jr $t7
|
|
/* A95C2C 8001EA8C 00000000 */ nop
|
|
glabel L8001EA90
|
|
/* A95C30 8001EA90 02202025 */ move $a0, $s1
|
|
/* A95C34 8001EA94 0C021344 */ jal Item_Give
|
|
/* A95C38 8001EA98 24050084 */ li $a1, 132
|
|
/* A95C3C 8001EA9C 1000005C */ b .L8001EC10
|
|
/* A95C40 8001EAA0 8FA8003C */ lw $t0, 0x3c($sp)
|
|
glabel L8001EAA4
|
|
/* A95C44 8001EAA4 02202025 */ move $a0, $s1
|
|
/* A95C48 8001EAA8 0C021344 */ jal Item_Give
|
|
/* A95C4C 8001EAAC 24050085 */ li $a1, 133
|
|
/* A95C50 8001EAB0 10000057 */ b .L8001EC10
|
|
/* A95C54 8001EAB4 8FA8003C */ lw $t0, 0x3c($sp)
|
|
glabel L8001EAB8
|
|
/* A95C58 8001EAB8 02202025 */ move $a0, $s1
|
|
/* A95C5C 8001EABC 0C021344 */ jal Item_Give
|
|
/* A95C60 8001EAC0 24050086 */ li $a1, 134
|
|
/* A95C64 8001EAC4 10000052 */ b .L8001EC10
|
|
/* A95C68 8001EAC8 8FA8003C */ lw $t0, 0x3c($sp)
|
|
glabel L8001EACC
|
|
/* A95C6C 8001EACC 02202025 */ move $a0, $s1
|
|
/* A95C70 8001EAD0 0C021344 */ jal Item_Give
|
|
/* A95C74 8001EAD4 24050087 */ li $a1, 135
|
|
/* A95C78 8001EAD8 1000004D */ b .L8001EC10
|
|
/* A95C7C 8001EADC 8FA8003C */ lw $t0, 0x3c($sp)
|
|
glabel L8001EAE0
|
|
/* A95C80 8001EAE0 02202025 */ move $a0, $s1
|
|
/* A95C84 8001EAE4 0C021344 */ jal Item_Give
|
|
/* A95C88 8001EAE8 24050088 */ li $a1, 136
|
|
/* A95C8C 8001EAEC 10000048 */ b .L8001EC10
|
|
/* A95C90 8001EAF0 8FA8003C */ lw $t0, 0x3c($sp)
|
|
glabel L8001EAF4
|
|
/* A95C94 8001EAF4 24190007 */ li $t9, 7
|
|
/* A95C98 8001EAF8 10000044 */ b .L8001EC0C
|
|
/* A95C9C 8001EAFC AFB9003C */ sw $t9, 0x3c($sp)
|
|
glabel L8001EB00
|
|
/* A95CA0 8001EB00 24180002 */ li $t8, 2
|
|
/* A95CA4 8001EB04 10000041 */ b .L8001EC0C
|
|
/* A95CA8 8001EB08 AFB8003C */ sw $t8, 0x3c($sp)
|
|
glabel L8001EB0C
|
|
/* A95CAC 8001EB0C 02202025 */ move $a0, $s1
|
|
/* A95CB0 8001EB10 0C021344 */ jal Item_Give
|
|
/* A95CB4 8001EB14 24050083 */ li $a1, 131
|
|
/* A95CB8 8001EB18 1000003D */ b .L8001EC10
|
|
/* A95CBC 8001EB1C 8FA8003C */ lw $t0, 0x3c($sp)
|
|
glabel L8001EB20
|
|
/* A95CC0 8001EB20 02202025 */ move $a0, $s1
|
|
/* A95CC4 8001EB24 0C021C5D */ jal Health_ChangeBy
|
|
/* A95CC8 8001EB28 24050070 */ li $a1, 112
|
|
/* A95CCC 8001EB2C 10000038 */ b .L8001EC10
|
|
/* A95CD0 8001EB30 8FA8003C */ lw $t0, 0x3c($sp)
|
|
glabel L8001EB34
|
|
/* A95CD4 8001EB34 02202025 */ move $a0, $s1
|
|
/* A95CD8 8001EB38 0C021344 */ jal Item_Give
|
|
/* A95CDC 8001EB3C 2405008E */ li $a1, 142
|
|
/* A95CE0 8001EB40 10000033 */ b .L8001EC10
|
|
/* A95CE4 8001EB44 8FA8003C */ lw $t0, 0x3c($sp)
|
|
glabel L8001EB48
|
|
/* A95CE8 8001EB48 02202025 */ move $a0, $s1
|
|
/* A95CEC 8001EB4C 0C021344 */ jal Item_Give
|
|
/* A95CF0 8001EB50 24050003 */ li $a1, 3
|
|
/* A95CF4 8001EB54 1000002E */ b .L8001EC10
|
|
/* A95CF8 8001EB58 8FA8003C */ lw $t0, 0x3c($sp)
|
|
glabel L8001EB5C
|
|
/* A95CFC 8001EB5C 02202025 */ move $a0, $s1
|
|
/* A95D00 8001EB60 0C021344 */ jal Item_Give
|
|
/* A95D04 8001EB64 24050092 */ li $a1, 146
|
|
/* A95D08 8001EB68 10000029 */ b .L8001EC10
|
|
/* A95D0C 8001EB6C 8FA8003C */ lw $t0, 0x3c($sp)
|
|
glabel L8001EB70
|
|
/* A95D10 8001EB70 02202025 */ move $a0, $s1
|
|
/* A95D14 8001EB74 0C021344 */ jal Item_Give
|
|
/* A95D18 8001EB78 24050093 */ li $a1, 147
|
|
/* A95D1C 8001EB7C 10000024 */ b .L8001EC10
|
|
/* A95D20 8001EB80 8FA8003C */ lw $t0, 0x3c($sp)
|
|
glabel L8001EB84
|
|
/* A95D24 8001EB84 02202025 */ move $a0, $s1
|
|
/* A95D28 8001EB88 0C021344 */ jal Item_Give
|
|
/* A95D2C 8001EB8C 24050094 */ li $a1, 148
|
|
/* A95D30 8001EB90 1000001F */ b .L8001EC10
|
|
/* A95D34 8001EB94 8FA8003C */ lw $t0, 0x3c($sp)
|
|
glabel L8001EB98
|
|
/* A95D38 8001EB98 2408003C */ li $t0, 60
|
|
/* A95D3C 8001EB9C 1000001B */ b .L8001EC0C
|
|
/* A95D40 8001EBA0 AFA8003C */ sw $t0, 0x3c($sp)
|
|
glabel L8001EBA4
|
|
/* A95D44 8001EBA4 24090042 */ li $t1, 66
|
|
/* A95D48 8001EBA8 10000018 */ b .L8001EC0C
|
|
/* A95D4C 8001EBAC AFA9003C */ sw $t1, 0x3c($sp)
|
|
glabel L8001EBB0
|
|
/* A95D50 8001EBB0 240A003E */ li $t2, 62
|
|
/* A95D54 8001EBB4 10000015 */ b .L8001EC0C
|
|
/* A95D58 8001EBB8 AFAA003C */ sw $t2, 0x3c($sp)
|
|
glabel L8001EBBC
|
|
/* A95D5C 8001EBBC 240B003D */ li $t3, 61
|
|
/* A95D60 8001EBC0 10000012 */ b .L8001EC0C
|
|
/* A95D64 8001EBC4 AFAB003C */ sw $t3, 0x3c($sp)
|
|
glabel L8001EBC8
|
|
/* A95D68 8001EBC8 240C0044 */ li $t4, 68
|
|
/* A95D6C 8001EBCC 1000000F */ b .L8001EC0C
|
|
/* A95D70 8001EBD0 AFAC003C */ sw $t4, 0x3c($sp)
|
|
glabel L8001EBD4
|
|
/* A95D74 8001EBD4 240D0043 */ li $t5, 67
|
|
/* A95D78 8001EBD8 1000000C */ b .L8001EC0C
|
|
/* A95D7C 8001EBDC AFAD003C */ sw $t5, 0x3c($sp)
|
|
glabel L8001EBE0
|
|
/* A95D80 8001EBE0 240E0029 */ li $t6, 41
|
|
/* A95D84 8001EBE4 10000009 */ b .L8001EC0C
|
|
/* A95D88 8001EBE8 AFAE003C */ sw $t6, 0x3c($sp)
|
|
glabel L8001EBEC
|
|
/* A95D8C 8001EBEC 240F002A */ li $t7, 42
|
|
/* A95D90 8001EBF0 10000006 */ b .L8001EC0C
|
|
/* A95D94 8001EBF4 AFAF003C */ sw $t7, 0x3c($sp)
|
|
glabel L8001EBF8
|
|
/* A95D98 8001EBF8 2419002D */ li $t9, 45
|
|
/* A95D9C 8001EBFC 10000003 */ b .L8001EC0C
|
|
/* A95DA0 8001EC00 AFB9003C */ sw $t9, 0x3c($sp)
|
|
glabel L8001EC04
|
|
/* A95DA4 8001EC04 2418002C */ li $t8, 44
|
|
/* A95DA8 8001EC08 AFB8003C */ sw $t8, 0x3c($sp)
|
|
glabel L8001EC0C
|
|
.L8001EC0C:
|
|
/* A95DAC 8001EC0C 8FA8003C */ lw $t0, 0x3c($sp)
|
|
.L8001EC10:
|
|
/* A95DB0 8001EC10 5100000A */ beql $t0, $zero, .L8001EC3C
|
|
/* A95DB4 8001EC14 8602001C */ lh $v0, 0x1c($s0)
|
|
/* A95DB8 8001EC18 02002025 */ move $a0, $s0
|
|
/* A95DBC 8001EC1C 0C00BD04 */ jal func_8002F410
|
|
/* A95DC0 8001EC20 02202825 */ move $a1, $s1
|
|
/* A95DC4 8001EC24 14400004 */ bnez $v0, .L8001EC38
|
|
/* A95DC8 8001EC28 8FA6003C */ lw $a2, 0x3c($sp)
|
|
/* A95DCC 8001EC2C 02002025 */ move $a0, $s0
|
|
/* A95DD0 8001EC30 0C00BD55 */ jal func_8002F554
|
|
/* A95DD4 8001EC34 02202825 */ move $a1, $s1
|
|
.L8001EC38:
|
|
/* A95DD8 8001EC38 8602001C */ lh $v0, 0x1c($s0)
|
|
.L8001EC3C:
|
|
/* A95DDC 8001EC3C 2449FFFA */ addiu $t1, $v0, -6
|
|
/* A95DE0 8001EC40 2D210013 */ sltiu $at, $t1, 0x13
|
|
/* A95DE4 8001EC44 10200011 */ beqz $at, .L8001EC8C
|
|
/* A95DE8 8001EC48 00094880 */ sll $t1, $t1, 2
|
|
/* A95DEC 8001EC4C 3C018013 */ lui $at, %hi(jtbl_80135064)
|
|
/* A95DF0 8001EC50 00290821 */ addu $at, $at, $t1
|
|
/* A95DF4 8001EC54 8C295064 */ lw $t1, %lo(jtbl_80135064)($at)
|
|
/* A95DF8 8001EC58 01200008 */ jr $t1
|
|
/* A95DFC 8001EC5C 00000000 */ nop
|
|
glabel L8001EC60
|
|
/* A95E00 8001EC60 02002025 */ move $a0, $s0
|
|
/* A95E04 8001EC64 0C00BD04 */ jal func_8002F410
|
|
/* A95E08 8001EC68 02202825 */ move $a1, $s1
|
|
/* A95E0C 8001EC6C 10400046 */ beqz $v0, .L8001ED88
|
|
/* A95E10 8001EC70 02202025 */ move $a0, $s1
|
|
/* A95E14 8001EC74 0C00B368 */ jal Flags_SetCollectible
|
|
/* A95E18 8001EC78 86050150 */ lh $a1, 0x150($s0)
|
|
/* A95E1C 8001EC7C 0C00B55C */ jal Actor_Kill
|
|
/* A95E20 8001EC80 02002025 */ move $a0, $s0
|
|
/* A95E24 8001EC84 10000041 */ b .L8001ED8C
|
|
/* A95E28 8001EC88 8FBF0024 */ lw $ra, 0x24($sp)
|
|
glabel L8001EC8C
|
|
.L8001EC8C:
|
|
/* A95E2C 8001EC8C 28410003 */ slti $at, $v0, 3
|
|
/* A95E30 8001EC90 14200004 */ bnez $at, .L8001ECA4
|
|
/* A95E34 8001EC94 3C078013 */ lui $a3, %hi(D_801333E0) # $a3, 0x8013
|
|
/* A95E38 8001EC98 24010013 */ li $at, 19
|
|
/* A95E3C 8001EC9C 1441000D */ bne $v0, $at, .L8001ECD4
|
|
/* A95E40 8001ECA0 8FAB003C */ lw $t3, 0x3c($sp)
|
|
.L8001ECA4:
|
|
/* A95E44 8001ECA4 3C0A8013 */ lui $t2, %hi(D_801333E8) # $t2, 0x8013
|
|
/* A95E48 8001ECA8 24E733E0 */ addiu $a3, %lo(D_801333E0) # addiu $a3, $a3, 0x33e0
|
|
/* A95E4C 8001ECAC 254A33E8 */ addiu $t2, %lo(D_801333E8) # addiu $t2, $t2, 0x33e8
|
|
/* A95E50 8001ECB0 3C058013 */ lui $a1, %hi(D_801333D4) # $a1, 0x8013
|
|
/* A95E54 8001ECB4 24A533D4 */ addiu $a1, %lo(D_801333D4) # addiu $a1, $a1, 0x33d4
|
|
/* A95E58 8001ECB8 AFAA0014 */ sw $t2, 0x14($sp)
|
|
/* A95E5C 8001ECBC AFA70010 */ sw $a3, 0x10($sp)
|
|
/* A95E60 8001ECC0 24044803 */ li $a0, 18435
|
|
/* A95E64 8001ECC4 0C03DCE3 */ jal Audio_PlaySoundGeneral
|
|
/* A95E68 8001ECC8 24060004 */ li $a2, 4
|
|
/* A95E6C 8001ECCC 10000019 */ b .L8001ED34
|
|
/* A95E70 8001ECD0 02202025 */ move $a0, $s1
|
|
.L8001ECD4:
|
|
/* A95E74 8001ECD4 1160000C */ beqz $t3, .L8001ED08
|
|
/* A95E78 8001ECD8 3C078013 */ lui $a3, %hi(D_801333E0) # lui $a1, 0x8013
|
|
/* A95E7C 8001ECDC 02002025 */ move $a0, $s0
|
|
/* A95E80 8001ECE0 0C00BD04 */ jal func_8002F410
|
|
/* A95E84 8001ECE4 02202825 */ move $a1, $s1
|
|
/* A95E88 8001ECE8 10400027 */ beqz $v0, .L8001ED88
|
|
/* A95E8C 8001ECEC 02202025 */ move $a0, $s1
|
|
/* A95E90 8001ECF0 0C00B368 */ jal Flags_SetCollectible
|
|
/* A95E94 8001ECF4 86050150 */ lh $a1, 0x150($s0)
|
|
/* A95E98 8001ECF8 0C00B55C */ jal Actor_Kill
|
|
/* A95E9C 8001ECFC 02002025 */ move $a0, $s0
|
|
/* A95EA0 8001ED00 10000022 */ b .L8001ED8C
|
|
/* A95EA4 8001ED04 8FBF0024 */ lw $ra, 0x24($sp)
|
|
.L8001ED08:
|
|
/* A95EA8 8001ED08 3C0C8013 */ lui $t4, %hi(D_801333E8) # lui $a1, 0x8013
|
|
/* A95EAC 8001ED0C 24E733E0 */ addiu $a3, %lo(D_801333E0) # addiu $a3, $a3, 0x33e0
|
|
/* A95EB0 8001ED10 258C33E8 */ addiu $t4, %lo(D_801333E8) # addiu $t4, $t4, 0x33e8
|
|
/* A95EB4 8001ED14 3C058013 */ lui $a1, %hi(D_801333D4) # lui $a1, 0x8013
|
|
/* A95EB8 8001ED18 24A533D4 */ addiu $a1, %lo(D_801333D4) # addiu $a1, $a1, 0x33d4
|
|
/* A95EBC 8001ED1C AFAC0014 */ sw $t4, 0x14($sp)
|
|
/* A95EC0 8001ED20 AFA70010 */ sw $a3, 0x10($sp)
|
|
/* A95EC4 8001ED24 24044824 */ li $a0, 18468
|
|
/* A95EC8 8001ED28 0C03DCE3 */ jal Audio_PlaySoundGeneral
|
|
/* A95ECC 8001ED2C 24060004 */ li $a2, 4
|
|
/* A95ED0 8001ED30 02202025 */ move $a0, $s1
|
|
.L8001ED34:
|
|
/* A95ED4 8001ED34 0C00B368 */ jal Flags_SetCollectible
|
|
/* A95ED8 8001ED38 86050150 */ lh $a1, 0x150($s0)
|
|
/* A95EDC 8001ED3C 44805000 */ mtc1 $zero, $f10
|
|
/* A95EE0 8001ED40 44808000 */ mtc1 $zero, $f16
|
|
/* A95EE4 8001ED44 44809000 */ mtc1 $zero, $f18
|
|
/* A95EE8 8001ED48 240D000F */ li $t5, 15
|
|
/* A95EEC 8001ED4C 240E0023 */ li $t6, 35
|
|
/* A95EF0 8001ED50 A60D015A */ sh $t5, 0x15a($s0)
|
|
/* A95EF4 8001ED54 A60E0154 */ sh $t6, 0x154($s0)
|
|
/* A95EF8 8001ED58 A60000B8 */ sh $zero, 0xb8($s0)
|
|
/* A95EFC 8001ED5C 02002025 */ move $a0, $s0
|
|
/* A95F00 8001ED60 8E05015C */ lw $a1, 0x15c($s0)
|
|
/* A95F04 8001ED64 E60A0068 */ swc1 $f10, 0x68($s0)
|
|
/* A95F08 8001ED68 E6100060 */ swc1 $f16, 0x60($s0)
|
|
/* A95F0C 8001ED6C 0C00B58B */ jal Actor_SetScale
|
|
/* A95F10 8001ED70 E612006C */ swc1 $f18, 0x6c($s0)
|
|
/* A95F14 8001ED74 3C058002 */ lui $a1, %hi(func_8001E5C8) # $a1, 0x8002
|
|
/* A95F18 8001ED78 A6000152 */ sh $zero, 0x152($s0)
|
|
/* A95F1C 8001ED7C 24A5E5C8 */ addiu $a1, %lo(func_8001E5C8) # addiu $a1, $a1, -0x1a38
|
|
/* A95F20 8001ED80 0C00764C */ jal EnItem00_SetupAction
|
|
/* A95F24 8001ED84 02002025 */ move $a0, $s0
|
|
.L8001ED88:
|
|
/* A95F28 8001ED88 8FBF0024 */ lw $ra, 0x24($sp)
|
|
.L8001ED8C:
|
|
/* A95F2C 8001ED8C 8FB0001C */ lw $s0, 0x1c($sp)
|
|
/* A95F30 8001ED90 8FB10020 */ lw $s1, 0x20($sp)
|
|
/* A95F34 8001ED94 03E00008 */ jr $ra
|
|
/* A95F38 8001ED98 27BD0048 */ addiu $sp, $sp, 0x48
|