mirror of
https://github.com/HarbourMasters/SpaghettiKart
synced 2026-07-06 05:54:59 -04:00
8ab4557b39
* Split asm using autodecompiler * Placed libultra bss and linked more C
171 lines
8.6 KiB
ArmAsm
171 lines
8.6 KiB
ArmAsm
glabel func_802A00E8
|
|
/* 1096F8 802A00E8 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
/* 1096FC 802A00EC AFBF001C */ sw $ra, 0x1c($sp)
|
|
/* 109700 802A00F0 AFB00018 */ sw $s0, 0x18($sp)
|
|
/* 109704 802A00F4 84820000 */ lh $v0, ($a0)
|
|
/* 109708 802A00F8 24030007 */ li $v1, 7
|
|
/* 10970C 802A00FC 00A08025 */ move $s0, $a1
|
|
/* 109710 802A0100 1043000A */ beq $v0, $v1, .L802A012C
|
|
/* 109714 802A0104 00803825 */ move $a3, $a0
|
|
/* 109718 802A0108 24010008 */ li $at, 8
|
|
/* 10971C 802A010C 10410016 */ beq $v0, $at, .L802A0168
|
|
/* 109720 802A0110 2401000D */ li $at, 13
|
|
/* 109724 802A0114 10410030 */ beq $v0, $at, .L802A01D8
|
|
/* 109728 802A0118 2401002A */ li $at, 42
|
|
/* 10972C 802A011C 50410022 */ beql $v0, $at, .L802A01A8
|
|
/* 109730 802A0120 84E80006 */ lh $t0, 6($a3)
|
|
/* 109734 802A0124 1000003A */ b .L802A0210
|
|
/* 109738 802A0128 86020000 */ lh $v0, ($s0)
|
|
.L802A012C:
|
|
/* 10973C 802A012C 84E20006 */ lh $v0, 6($a3)
|
|
/* 109740 802A0130 24010004 */ li $at, 4
|
|
/* 109744 802A0134 24E40018 */ addiu $a0, $a3, 0x18
|
|
/* 109748 802A0138 10400003 */ beqz $v0, .L802A0148
|
|
/* 10974C 802A013C 24E50024 */ addiu $a1, $a3, 0x24
|
|
/* 109750 802A0140 54410033 */ bnel $v0, $at, .L802A0210
|
|
/* 109754 802A0144 86020000 */ lh $v0, ($s0)
|
|
.L802A0148:
|
|
/* 109758 802A0148 84EE0002 */ lh $t6, 2($a3)
|
|
/* 10975C 802A014C 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
|
|
/* 109760 802A0150 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
|
|
/* 109764 802A0154 35CF0200 */ ori $t7, $t6, 0x200
|
|
/* 109768 802A0158 0C03262E */ jal func_800C98B8
|
|
/* 10976C 802A015C A4EF0002 */ sh $t7, 2($a3)
|
|
/* 109770 802A0160 10000077 */ b .L802A0340
|
|
/* 109774 802A0164 8FBF001C */ lw $ra, 0x1c($sp)
|
|
.L802A0168:
|
|
/* 109778 802A0168 84E20006 */ lh $v0, 6($a3)
|
|
/* 10977C 802A016C 24010006 */ li $at, 6
|
|
/* 109780 802A0170 24E40018 */ addiu $a0, $a3, 0x18
|
|
/* 109784 802A0174 10400003 */ beqz $v0, .L802A0184
|
|
/* 109788 802A0178 24E50024 */ addiu $a1, $a3, 0x24
|
|
/* 10978C 802A017C 54410024 */ bnel $v0, $at, .L802A0210
|
|
/* 109790 802A0180 86020000 */ lh $v0, ($s0)
|
|
.L802A0184:
|
|
/* 109794 802A0184 84F80002 */ lh $t8, 2($a3)
|
|
/* 109798 802A0188 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
|
|
/* 10979C 802A018C 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
|
|
/* 1097A0 802A0190 37190200 */ ori $t9, $t8, 0x200
|
|
/* 1097A4 802A0194 0C03262E */ jal func_800C98B8
|
|
/* 1097A8 802A0198 A4F90002 */ sh $t9, 2($a3)
|
|
/* 1097AC 802A019C 10000068 */ b .L802A0340
|
|
/* 1097B0 802A01A0 8FBF001C */ lw $ra, 0x1c($sp)
|
|
/* 1097B4 802A01A4 84E80006 */ lh $t0, 6($a3)
|
|
.L802A01A8:
|
|
/* 1097B8 802A01A8 24E40018 */ addiu $a0, $a3, 0x18
|
|
/* 1097BC 802A01AC 24E50024 */ addiu $a1, $a3, 0x24
|
|
/* 1097C0 802A01B0 55000017 */ bnel $t0, $zero, .L802A0210
|
|
/* 1097C4 802A01B4 86020000 */ lh $v0, ($s0)
|
|
/* 1097C8 802A01B8 84E90002 */ lh $t1, 2($a3)
|
|
/* 1097CC 802A01BC 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
|
|
/* 1097D0 802A01C0 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
|
|
/* 1097D4 802A01C4 352A0200 */ ori $t2, $t1, 0x200
|
|
/* 1097D8 802A01C8 0C03262E */ jal func_800C98B8
|
|
/* 1097DC 802A01CC A4EA0002 */ sh $t2, 2($a3)
|
|
/* 1097E0 802A01D0 1000005B */ b .L802A0340
|
|
/* 1097E4 802A01D4 8FBF001C */ lw $ra, 0x1c($sp)
|
|
.L802A01D8:
|
|
/* 1097E8 802A01D8 84EB0006 */ lh $t3, 6($a3)
|
|
/* 1097EC 802A01DC 24E40018 */ addiu $a0, $a3, 0x18
|
|
/* 1097F0 802A01E0 24E50024 */ addiu $a1, $a3, 0x24
|
|
/* 1097F4 802A01E4 5560000A */ bnel $t3, $zero, .L802A0210
|
|
/* 1097F8 802A01E8 86020000 */ lh $v0, ($s0)
|
|
/* 1097FC 802A01EC 84EC0002 */ lh $t4, 2($a3)
|
|
/* 109800 802A01F0 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
|
|
/* 109804 802A01F4 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
|
|
/* 109808 802A01F8 358D0200 */ ori $t5, $t4, 0x200
|
|
/* 10980C 802A01FC 0C03262E */ jal func_800C98B8
|
|
/* 109810 802A0200 A4ED0002 */ sh $t5, 2($a3)
|
|
/* 109814 802A0204 1000004E */ b .L802A0340
|
|
/* 109818 802A0208 8FBF001C */ lw $ra, 0x1c($sp)
|
|
/* 10981C 802A020C 86020000 */ lh $v0, ($s0)
|
|
.L802A0210:
|
|
/* 109820 802A0210 24010008 */ li $at, 8
|
|
/* 109824 802A0214 5043000A */ beql $v0, $v1, .L802A0240
|
|
/* 109828 802A0218 86020006 */ lh $v0, 6($s0)
|
|
/* 10982C 802A021C 10410016 */ beq $v0, $at, .L802A0278
|
|
/* 109830 802A0220 2401000D */ li $at, 13
|
|
/* 109834 802A0224 10410030 */ beq $v0, $at, .L802A02E8
|
|
/* 109838 802A0228 2401002A */ li $at, 42
|
|
/* 10983C 802A022C 50410022 */ beql $v0, $at, .L802A02B8
|
|
/* 109840 802A0230 86080006 */ lh $t0, 6($s0)
|
|
/* 109844 802A0234 1000003A */ b .L802A0320
|
|
/* 109848 802A0238 84EE0002 */ lh $t6, 2($a3)
|
|
/* 10984C 802A023C 86020006 */ lh $v0, 6($s0)
|
|
.L802A0240:
|
|
/* 109850 802A0240 24010004 */ li $at, 4
|
|
/* 109854 802A0244 26040018 */ addiu $a0, $s0, 0x18
|
|
/* 109858 802A0248 10400003 */ beqz $v0, .L802A0258
|
|
/* 10985C 802A024C 26050024 */ addiu $a1, $s0, 0x24
|
|
/* 109860 802A0250 54410033 */ bnel $v0, $at, .L802A0320
|
|
/* 109864 802A0254 84EE0002 */ lh $t6, 2($a3)
|
|
.L802A0258:
|
|
/* 109868 802A0258 860E0002 */ lh $t6, 2($s0)
|
|
/* 10986C 802A025C 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
|
|
/* 109870 802A0260 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
|
|
/* 109874 802A0264 35CF0200 */ ori $t7, $t6, 0x200
|
|
/* 109878 802A0268 0C03262E */ jal func_800C98B8
|
|
/* 10987C 802A026C A60F0002 */ sh $t7, 2($s0)
|
|
/* 109880 802A0270 10000033 */ b .L802A0340
|
|
/* 109884 802A0274 8FBF001C */ lw $ra, 0x1c($sp)
|
|
.L802A0278:
|
|
/* 109888 802A0278 86020006 */ lh $v0, 6($s0)
|
|
/* 10988C 802A027C 24010006 */ li $at, 6
|
|
/* 109890 802A0280 26040018 */ addiu $a0, $s0, 0x18
|
|
/* 109894 802A0284 10400003 */ beqz $v0, .L802A0294
|
|
/* 109898 802A0288 26050024 */ addiu $a1, $s0, 0x24
|
|
/* 10989C 802A028C 54410024 */ bnel $v0, $at, .L802A0320
|
|
/* 1098A0 802A0290 84EE0002 */ lh $t6, 2($a3)
|
|
.L802A0294:
|
|
/* 1098A4 802A0294 86180002 */ lh $t8, 2($s0)
|
|
/* 1098A8 802A0298 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
|
|
/* 1098AC 802A029C 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
|
|
/* 1098B0 802A02A0 37190200 */ ori $t9, $t8, 0x200
|
|
/* 1098B4 802A02A4 0C03262E */ jal func_800C98B8
|
|
/* 1098B8 802A02A8 A6190002 */ sh $t9, 2($s0)
|
|
/* 1098BC 802A02AC 10000024 */ b .L802A0340
|
|
/* 1098C0 802A02B0 8FBF001C */ lw $ra, 0x1c($sp)
|
|
/* 1098C4 802A02B4 86080006 */ lh $t0, 6($s0)
|
|
.L802A02B8:
|
|
/* 1098C8 802A02B8 26040018 */ addiu $a0, $s0, 0x18
|
|
/* 1098CC 802A02BC 26050024 */ addiu $a1, $s0, 0x24
|
|
/* 1098D0 802A02C0 55000017 */ bnel $t0, $zero, .L802A0320
|
|
/* 1098D4 802A02C4 84EE0002 */ lh $t6, 2($a3)
|
|
/* 1098D8 802A02C8 86090002 */ lh $t1, 2($s0)
|
|
/* 1098DC 802A02CC 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
|
|
/* 1098E0 802A02D0 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
|
|
/* 1098E4 802A02D4 352A0200 */ ori $t2, $t1, 0x200
|
|
/* 1098E8 802A02D8 0C03262E */ jal func_800C98B8
|
|
/* 1098EC 802A02DC A60A0002 */ sh $t2, 2($s0)
|
|
/* 1098F0 802A02E0 10000017 */ b .L802A0340
|
|
/* 1098F4 802A02E4 8FBF001C */ lw $ra, 0x1c($sp)
|
|
.L802A02E8:
|
|
/* 1098F8 802A02E8 860B0006 */ lh $t3, 6($s0)
|
|
/* 1098FC 802A02EC 26040018 */ addiu $a0, $s0, 0x18
|
|
/* 109900 802A02F0 26050024 */ addiu $a1, $s0, 0x24
|
|
/* 109904 802A02F4 5560000A */ bnel $t3, $zero, .L802A0320
|
|
/* 109908 802A02F8 84EE0002 */ lh $t6, 2($a3)
|
|
/* 10990C 802A02FC 860C0002 */ lh $t4, 2($s0)
|
|
/* 109910 802A0300 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
|
|
/* 109914 802A0304 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
|
|
/* 109918 802A0308 358D0200 */ ori $t5, $t4, 0x200
|
|
/* 10991C 802A030C 0C03262E */ jal func_800C98B8
|
|
/* 109920 802A0310 A60D0002 */ sh $t5, 2($s0)
|
|
/* 109924 802A0314 1000000A */ b .L802A0340
|
|
/* 109928 802A0318 8FBF001C */ lw $ra, 0x1c($sp)
|
|
/* 10992C 802A031C 84EE0002 */ lh $t6, 2($a3)
|
|
.L802A0320:
|
|
/* 109930 802A0320 3C061901 */ lui $a2, (0x19018010 >> 16) # lui $a2, 0x1901
|
|
/* 109934 802A0324 34C68010 */ ori $a2, (0x19018010 & 0xFFFF) # ori $a2, $a2, 0x8010
|
|
/* 109938 802A0328 35CF0100 */ ori $t7, $t6, 0x100
|
|
/* 10993C 802A032C A4EF0002 */ sh $t7, 2($a3)
|
|
/* 109940 802A0330 24E40018 */ addiu $a0, $a3, 0x18
|
|
/* 109944 802A0334 0C03262E */ jal func_800C98B8
|
|
/* 109948 802A0338 24E50024 */ addiu $a1, $a3, 0x24
|
|
/* 10994C 802A033C 8FBF001C */ lw $ra, 0x1c($sp)
|
|
.L802A0340:
|
|
/* 109950 802A0340 8FB00018 */ lw $s0, 0x18($sp)
|
|
/* 109954 802A0344 27BD0020 */ addiu $sp, $sp, 0x20
|
|
/* 109958 802A0348 03E00008 */ jr $ra
|
|
/* 10995C 802A034C 00000000 */ nop
|