Files
SpaghettiKart/asm/non_matchings/code_80071F00/func_800763CC.s
T
Tyler McGavran a2dc62ccf8 Jump Table Related Disassembly (#60)
* Part 1, Commit 1 of 24

audio/effects

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 2 of 24

audio/external

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 3 of 24

audio/heap

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 4 of 24

audio/port_eu

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 5 of 24

audio/seqplayer

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 6 of 24

code_80005FD0

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 7 of 24

code_8001C4D0

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 8 of 24

code_80027D00

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 9 of 24

code_800393C0

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 10 of 24

code_8003DC40

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 11 of 24

code_800431B0

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 12 of 24

code_80057C60

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 13 of 24

code_8006E9C0

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 14 of 24

code_80071F00

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 15 of 24

code_80086E70

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 16 of 24

code_8008C1D0

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 17 of 24

code_80091750

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 18 of 24

code_800AF9B0

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 19 of 24

code_8028DF00

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 20 of 24

code_80290C20

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 21 of 24

code_802B0210

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 22 of 24

code_actors

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 23 of 24

memory

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 1, Commit 24 of 24

os/__osException

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 1 of 20

audio/effects.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 2 of 20

audio/external.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 3 of 24

audio/heap.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 4 of 20

audio/port_eu.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 5 of 20

audio/seqplayer.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 6 of 20

code_80005FD0.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 7 of 20

code_8001C4D0.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 8 of 20

code_80027D00.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 9 of 20

code_8003DC40.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 10 of 20

code_800431B0.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 11 of 20

code_80057C60.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 12 of 20

code_8006E9C0.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 13 of 20

code_80071F00.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 14 of 20

code_80086E70.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 15 of 20

code_80091750.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 16 of 20

code_800AF9B0.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 17 of 20

code_80290C20.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 18 of 20

code_802B0210.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 19 of 20

code_80296A50.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 2, Commit 20 of 20

memory.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 3, Commit 1 of 4

code_8008C1D0

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 3, Commit 2 of 4

code_8028DF00

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 3, Commit 3 of 4

math_util

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Part 3, Commit 4 of 4

crash_screen

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Recreated disassemblies with a context file

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2021-11-23 01:47:54 -08:00

102 lines
4.9 KiB
ArmAsm

glabel func_800763CC
/* 076FCC 800763CC 000470C0 */ sll $t6, $a0, 3
/* 076FD0 800763D0 27BDFFD0 */ addiu $sp, $sp, -0x30
/* 076FD4 800763D4 01C47023 */ subu $t6, $t6, $a0
/* 076FD8 800763D8 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
/* 076FDC 800763DC AFB00024 */ sw $s0, 0x24($sp)
/* 076FE0 800763E0 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
/* 076FE4 800763E4 000E7140 */ sll $t6, $t6, 5
/* 076FE8 800763E8 01CF8021 */ addu $s0, $t6, $t7
/* 076FEC 800763EC 961800A6 */ lhu $t8, 0xa6($s0)
/* 076FF0 800763F0 AFB10028 */ sw $s1, 0x28($sp)
/* 076FF4 800763F4 00808825 */ move $s1, $a0
/* 076FF8 800763F8 2F010005 */ sltiu $at, $t8, 5
/* 076FFC 800763FC 10200049 */ beqz $at, .L80076524
/* 077000 80076400 AFBF002C */ sw $ra, 0x2c($sp)
/* 077004 80076404 0018C080 */ sll $t8, $t8, 2
/* 077008 80076408 3C01800F */ lui $at, %hi(jpt_800EEAEC)
/* 07700C 8007640C 00380821 */ addu $at, $at, $t8
/* 077010 80076410 8C38EAEC */ lw $t8, %lo(jpt_800EEAEC)($at)
/* 077014 80076414 03000008 */ jr $t8
/* 077018 80076418 00000000 */ nop
glabel L8007641C
/* 07701C 8007641C 0C01D8D3 */ jal func_8007634C
/* 077020 80076420 02202025 */ move $a0, $s1
/* 077024 80076424 10000040 */ b .L80076528
/* 077028 80076428 8FBF002C */ lw $ra, 0x2c($sp)
glabel L8007642C
/* 07702C 8007642C 02202025 */ move $a0, $s1
/* 077030 80076430 0C01C9E3 */ jal func_8007278C
/* 077034 80076434 8E050048 */ lw $a1, 0x48($s0)
/* 077038 80076438 5040003B */ beql $v0, $zero, .L80076528
/* 07703C 8007643C 8FBF002C */ lw $ra, 0x2c($sp)
/* 077040 80076440 0C021B9C */ jal func_80086E70
/* 077044 80076444 02202025 */ move $a0, $s1
/* 077048 80076448 10000037 */ b .L80076528
/* 07704C 8007644C 8FBF002C */ lw $ra, 0x2c($sp)
glabel L80076450
/* 077050 80076450 921900D5 */ lbu $t9, 0xd5($s0)
/* 077054 80076454 24010004 */ li $at, 4
/* 077058 80076458 02002025 */ move $a0, $s0
/* 07705C 8007645C 17210010 */ bne $t9, $at, .L800764A0
/* 077060 80076460 3C053F80 */ lui $a1, 0x3f80
/* 077064 80076464 3C063DCC */ lui $a2, (0x3DCCCCCD >> 16) # lui $a2, 0x3dcc
/* 077068 80076468 34C6CCCD */ ori $a2, (0x3DCCCCCD & 0xFFFF) # ori $a2, $a2, 0xcccd
/* 07706C 8007646C 02002025 */ move $a0, $s0
/* 077070 80076470 0C0104EE */ jal func_800413B8
/* 077074 80076474 3C054080 */ lui $a1, 0x4080
/* 077078 80076478 260400A4 */ addiu $a0, $s0, 0xa4
/* 07707C 8007647C 00002825 */ move $a1, $zero
/* 077080 80076480 0C0104A2 */ jal func_80041288
/* 077084 80076484 24060018 */ li $a2, 24
/* 077088 80076488 260400A2 */ addiu $a0, $s0, 0xa2
/* 07708C 8007648C 24050080 */ li $a1, 128
/* 077090 80076490 0C0104A2 */ jal func_80041288
/* 077094 80076494 2406000C */ li $a2, 12
/* 077098 80076498 1000000D */ b .L800764D0
/* 07709C 8007649C 860800AE */ lh $t0, 0xae($s0)
.L800764A0:
/* 0770A0 800764A0 3C063DCC */ lui $a2, (0x3DCCCCCD >> 16) # lui $a2, 0x3dcc
/* 0770A4 800764A4 0C0104EE */ jal func_800413B8
/* 0770A8 800764A8 34C6CCCD */ ori $a2, (0x3DCCCCCD & 0xFFFF) # ori $a2, $a2, 0xcccd
/* 0770AC 800764AC 260400A4 */ addiu $a0, $s0, 0xa4
/* 0770B0 800764B0 00002825 */ move $a1, $zero
/* 0770B4 800764B4 0C0104A2 */ jal func_80041288
/* 0770B8 800764B8 24060018 */ li $a2, 24
/* 0770BC 800764BC 260400A2 */ addiu $a0, $s0, 0xa2
/* 0770C0 800764C0 24050080 */ li $a1, 128
/* 0770C4 800764C4 0C0104A2 */ jal func_80041288
/* 0770C8 800764C8 2406000C */ li $a2, 12
/* 0770CC 800764CC 860800AE */ lh $t0, 0xae($s0)
.L800764D0:
/* 0770D0 800764D0 02202025 */ move $a0, $s1
/* 0770D4 800764D4 260500A0 */ addiu $a1, $s0, 0xa0
/* 0770D8 800764D8 29010002 */ slti $at, $t0, 2
/* 0770DC 800764DC 14200011 */ bnez $at, .L80076524
/* 0770E0 800764E0 240600FF */ li $a2, 255
/* 0770E4 800764E4 24090020 */ li $t1, 32
/* 0770E8 800764E8 AFA90010 */ sw $t1, 0x10($sp)
/* 0770EC 800764EC 24070050 */ li $a3, 80
/* 0770F0 800764F0 AFA00014 */ sw $zero, 0x14($sp)
/* 0770F4 800764F4 0C01CEC0 */ jal func_80073B00
/* 0770F8 800764F8 AFA00018 */ sw $zero, 0x18($sp)
/* 0770FC 800764FC 5040000A */ beql $v0, $zero, .L80076528
/* 077100 80076500 8FBF002C */ lw $ra, 0x2c($sp)
/* 077104 80076504 0C01C922 */ jal func_80072488
/* 077108 80076508 02202025 */ move $a0, $s1
/* 07710C 8007650C 10000006 */ b .L80076528
/* 077110 80076510 8FBF002C */ lw $ra, 0x2c($sp)
glabel L80076514
/* 077114 80076514 0C01C90A */ jal func_80072428
/* 077118 80076518 02202025 */ move $a0, $s1
/* 07711C 8007651C 0C021BD8 */ jal func_80086F60
/* 077120 80076520 02202025 */ move $a0, $s1
.L80076524:
glabel L80076524
/* 077124 80076524 8FBF002C */ lw $ra, 0x2c($sp)
.L80076528:
/* 077128 80076528 8FB00024 */ lw $s0, 0x24($sp)
/* 07712C 8007652C 8FB10028 */ lw $s1, 0x28($sp)
/* 077130 80076530 03E00008 */ jr $ra
/* 077134 80076534 27BD0030 */ addiu $sp, $sp, 0x30