mirror of
https://github.com/HarbourMasters/SpaghettiKart
synced 2026-08-19 06:12:03 -04:00
8ab4557b39
* Split asm using autodecompiler * Placed libultra bss and linked more C
120 lines
6.1 KiB
ArmAsm
120 lines
6.1 KiB
ArmAsm
glabel func_8005477C
|
|
/* 05537C 8005477C 3C0F8019 */ lui $t7, %hi(D_8018D120) # $t7, 0x8019
|
|
/* 055380 80054780 8DEFD120 */ lw $t7, %lo(D_8018D120)($t7)
|
|
/* 055384 80054784 27BDFFD0 */ addiu $sp, $sp, -0x30
|
|
/* 055388 80054788 AFB10028 */ sw $s1, 0x28($sp)
|
|
/* 05538C 8005478C 29E102EF */ slti $at, $t7, 0x2ef
|
|
/* 055390 80054790 00808825 */ move $s1, $a0
|
|
/* 055394 80054794 AFBF002C */ sw $ra, 0x2c($sp)
|
|
/* 055398 80054798 AFB00024 */ sw $s0, 0x24($sp)
|
|
/* 05539C 8005479C AFA50034 */ sw $a1, 0x34($sp)
|
|
/* 0553A0 800547A0 AFA60038 */ sw $a2, 0x38($sp)
|
|
/* 0553A4 800547A4 1020005F */ beqz $at, .L80054924
|
|
/* 0553A8 800547A8 30AE00FF */ andi $t6, $a1, 0xff
|
|
/* 0553AC 800547AC 11C00011 */ beqz $t6, .L800547F4
|
|
/* 0553B0 800547B0 240500FF */ li $a1, 255
|
|
/* 0553B4 800547B4 24010001 */ li $at, 1
|
|
/* 0553B8 800547B8 11C1001F */ beq $t6, $at, .L80054838
|
|
/* 0553BC 800547BC 240500FF */ li $a1, 255
|
|
/* 0553C0 800547C0 24010002 */ li $at, 2
|
|
/* 0553C4 800547C4 11C1002C */ beq $t6, $at, .L80054878
|
|
/* 0553C8 800547C8 240500E6 */ li $a1, 230
|
|
/* 0553CC 800547CC 24010003 */ li $at, 3
|
|
/* 0553D0 800547D0 11C1003A */ beq $t6, $at, .L800548BC
|
|
/* 0553D4 800547D4 240500FF */ li $a1, 255
|
|
/* 0553D8 800547D8 0004C0C0 */ sll $t8, $a0, 3
|
|
/* 0553DC 800547DC 0304C023 */ subu $t8, $t8, $a0
|
|
/* 0553E0 800547E0 3C198016 */ lui $t9, %hi(D_80165C18) # $t9, 0x8016
|
|
/* 0553E4 800547E4 27395C18 */ addiu $t9, %lo(D_80165C18) # addiu $t9, $t9, 0x5c18
|
|
/* 0553E8 800547E8 0018C140 */ sll $t8, $t8, 5
|
|
/* 0553EC 800547EC 10000041 */ b .L800548F4
|
|
/* 0553F0 800547F0 03198021 */ addu $s0, $t8, $t9
|
|
.L800547F4:
|
|
/* 0553F4 800547F4 001148C0 */ sll $t1, $s1, 3
|
|
/* 0553F8 800547F8 01314823 */ subu $t1, $t1, $s1
|
|
/* 0553FC 800547FC 3C0A8016 */ lui $t2, %hi(D_80165C18) # $t2, 0x8016
|
|
/* 055400 80054800 254A5C18 */ addiu $t2, %lo(D_80165C18) # addiu $t2, $t2, 0x5c18
|
|
/* 055404 80054804 00094940 */ sll $t1, $t1, 5
|
|
/* 055408 80054808 012A8021 */ addu $s0, $t1, $t2
|
|
/* 05540C 8005480C 860B00A0 */ lh $t3, 0xa0($s0)
|
|
/* 055410 80054810 240800FF */ li $t0, 255
|
|
/* 055414 80054814 AFA80014 */ sw $t0, 0x14($sp)
|
|
/* 055418 80054818 240400E6 */ li $a0, 230
|
|
/* 05541C 8005481C 240600FF */ li $a2, 255
|
|
/* 055420 80054820 00003825 */ move $a3, $zero
|
|
/* 055424 80054824 AFA00010 */ sw $zero, 0x10($sp)
|
|
/* 055428 80054828 0C012C72 */ jal func_8004B1C8
|
|
/* 05542C 8005482C AFAB0018 */ sw $t3, 0x18($sp)
|
|
/* 055430 80054830 10000031 */ b .L800548F8
|
|
/* 055434 80054834 C60C0004 */ lwc1 $f12, 4($s0)
|
|
.L80054838:
|
|
/* 055438 80054838 001160C0 */ sll $t4, $s1, 3
|
|
/* 05543C 8005483C 01916023 */ subu $t4, $t4, $s1
|
|
/* 055440 80054840 3C0D8016 */ lui $t5, %hi(D_80165C18) # $t5, 0x8016
|
|
/* 055444 80054844 25AD5C18 */ addiu $t5, %lo(D_80165C18) # addiu $t5, $t5, 0x5c18
|
|
/* 055448 80054848 000C6140 */ sll $t4, $t4, 5
|
|
/* 05544C 8005484C 018D8021 */ addu $s0, $t4, $t5
|
|
/* 055450 80054850 860E00A0 */ lh $t6, 0xa0($s0)
|
|
/* 055454 80054854 240400FF */ li $a0, 255
|
|
/* 055458 80054858 24060096 */ li $a2, 150
|
|
/* 05545C 8005485C 240700FF */ li $a3, 255
|
|
/* 055460 80054860 AFA00010 */ sw $zero, 0x10($sp)
|
|
/* 055464 80054864 AFA00014 */ sw $zero, 0x14($sp)
|
|
/* 055468 80054868 0C012C72 */ jal func_8004B1C8
|
|
/* 05546C 8005486C AFAE0018 */ sw $t6, 0x18($sp)
|
|
/* 055470 80054870 10000021 */ b .L800548F8
|
|
/* 055474 80054874 C60C0004 */ lwc1 $f12, 4($s0)
|
|
.L80054878:
|
|
/* 055478 80054878 0011C0C0 */ sll $t8, $s1, 3
|
|
/* 05547C 8005487C 0311C023 */ subu $t8, $t8, $s1
|
|
/* 055480 80054880 3C198016 */ lui $t9, %hi(D_80165C18) # $t9, 0x8016
|
|
/* 055484 80054884 27395C18 */ addiu $t9, %lo(D_80165C18) # addiu $t9, $t9, 0x5c18
|
|
/* 055488 80054888 0018C140 */ sll $t8, $t8, 5
|
|
/* 05548C 8005488C 03198021 */ addu $s0, $t8, $t9
|
|
/* 055490 80054890 860800A0 */ lh $t0, 0xa0($s0)
|
|
/* 055494 80054894 240F0096 */ li $t7, 150
|
|
/* 055498 80054898 AFAF0014 */ sw $t7, 0x14($sp)
|
|
/* 05549C 8005489C 240400FF */ li $a0, 255
|
|
/* 0554A0 800548A0 240600FF */ li $a2, 255
|
|
/* 0554A4 800548A4 240700FF */ li $a3, 255
|
|
/* 0554A8 800548A8 AFA00010 */ sw $zero, 0x10($sp)
|
|
/* 0554AC 800548AC 0C012C72 */ jal func_8004B1C8
|
|
/* 0554B0 800548B0 AFA80018 */ sw $t0, 0x18($sp)
|
|
/* 0554B4 800548B4 10000010 */ b .L800548F8
|
|
/* 0554B8 800548B8 C60C0004 */ lwc1 $f12, 4($s0)
|
|
.L800548BC:
|
|
/* 0554BC 800548BC 001148C0 */ sll $t1, $s1, 3
|
|
/* 0554C0 800548C0 01314823 */ subu $t1, $t1, $s1
|
|
/* 0554C4 800548C4 3C0A8016 */ lui $t2, %hi(D_80165C18) # $t2, 0x8016
|
|
/* 0554C8 800548C8 254A5C18 */ addiu $t2, %lo(D_80165C18) # addiu $t2, $t2, 0x5c18
|
|
/* 0554CC 800548CC 00094940 */ sll $t1, $t1, 5
|
|
/* 0554D0 800548D0 012A8021 */ addu $s0, $t1, $t2
|
|
/* 0554D4 800548D4 860B00A0 */ lh $t3, 0xa0($s0)
|
|
/* 0554D8 800548D8 240400FF */ li $a0, 255
|
|
/* 0554DC 800548DC 2406001E */ li $a2, 30
|
|
/* 0554E0 800548E0 240700FF */ li $a3, 255
|
|
/* 0554E4 800548E4 AFA00010 */ sw $zero, 0x10($sp)
|
|
/* 0554E8 800548E8 AFA00014 */ sw $zero, 0x14($sp)
|
|
/* 0554EC 800548EC 0C012C72 */ jal func_8004B1C8
|
|
/* 0554F0 800548F0 AFAB0018 */ sw $t3, 0x18($sp)
|
|
.L800548F4:
|
|
/* 0554F4 800548F4 C60C0004 */ lwc1 $f12, 4($s0)
|
|
.L800548F8:
|
|
/* 0554F8 800548F8 C60E000C */ lwc1 $f14, 0xc($s0)
|
|
/* 0554FC 800548FC 0C01062B */ jal func_800418AC
|
|
/* 055500 80054900 8FA60038 */ lw $a2, 0x38($sp)
|
|
/* 055504 80054904 3C058018 */ lui $a1, %hi(D_80183E80) # $a1, 0x8018
|
|
/* 055508 80054908 24A53E80 */ addiu $a1, %lo(D_80183E80) # addiu $a1, $a1, 0x3e80
|
|
/* 05550C 8005490C 3C070D00 */ lui $a3, %hi(D_0D005AE0) # $a3, 0xd00
|
|
/* 055510 80054910 A4A20002 */ sh $v0, 2($a1)
|
|
/* 055514 80054914 24E75AE0 */ addiu $a3, %lo(D_0D005AE0) # addiu $a3, $a3, 0x5ae0
|
|
/* 055518 80054918 26040004 */ addiu $a0, $s0, 4
|
|
/* 05551C 8005491C 0C010C6C */ jal func_800431B0
|
|
/* 055520 80054920 8E060000 */ lw $a2, ($s0)
|
|
.L80054924:
|
|
/* 055524 80054924 8FBF002C */ lw $ra, 0x2c($sp)
|
|
/* 055528 80054928 8FB00024 */ lw $s0, 0x24($sp)
|
|
/* 05552C 8005492C 8FB10028 */ lw $s1, 0x28($sp)
|
|
/* 055530 80054930 03E00008 */ jr $ra
|
|
/* 055534 80054934 27BD0030 */ addiu $sp, $sp, 0x30
|