mirror of
https://github.com/HarbourMasters/SpaghettiKart
synced 2026-08-11 03:45:51 -04:00
782ed71f61
Mostly relocating rodata from data/* files to the appropriate asm/nonmatching/* files, although there is some plain data relocating to be found in here too. Big change to note is the addition of the code_802AAA70.c file, split from memory.c. Based on some padding in the ro/data for memory it seems clear that a split is needed, although it is not clear that exact spot chosen for the split is correct. Still, it gets the file padding for the ro/data and text segments correct so it can't be too wrong. Also included is an update to the asm_processor tool to support the .hword directive. I made a PR to the main repo of that project with an identical change and it was accepted. Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
65 lines
2.7 KiB
ArmAsm
65 lines
2.7 KiB
ArmAsm
.section .late_rodata
|
|
|
|
glabel jpt_800EF088
|
|
.word L80080294, L80080248, L80080258, L8008026C
|
|
.word L80080280
|
|
|
|
.section .text
|
|
|
|
glabel func_800801FC
|
|
/* 080DFC 800801FC 000470C0 */ sll $t6, $a0, 3
|
|
/* 080E00 80080200 01C47023 */ subu $t6, $t6, $a0
|
|
/* 080E04 80080204 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
|
/* 080E08 80080208 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
|
/* 080E0C 8008020C 000E7140 */ sll $t6, $t6, 5
|
|
/* 080E10 80080210 01CF1021 */ addu $v0, $t6, $t7
|
|
/* 080E14 80080214 945800A6 */ lhu $t8, 0xa6($v0)
|
|
/* 080E18 80080218 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
/* 080E1C 8008021C AFB00018 */ sw $s0, 0x18($sp)
|
|
/* 080E20 80080220 2F010005 */ sltiu $at, $t8, 5
|
|
/* 080E24 80080224 00808025 */ move $s0, $a0
|
|
/* 080E28 80080228 1020001A */ beqz $at, .L80080294
|
|
/* 080E2C 8008022C AFBF001C */ sw $ra, 0x1c($sp)
|
|
/* 080E30 80080230 0018C080 */ sll $t8, $t8, 2
|
|
/* 080E34 80080234 3C01800F */ lui $at, %hi(jpt_800EF088)
|
|
/* 080E38 80080238 00380821 */ addu $at, $at, $t8
|
|
/* 080E3C 8008023C 8C38F088 */ lw $t8, %lo(jpt_800EF088)($at)
|
|
/* 080E40 80080240 03000008 */ jr $t8
|
|
/* 080E44 80080244 00000000 */ nop
|
|
glabel L80080248
|
|
/* 080E48 80080248 0C02001E */ jal func_80080078
|
|
/* 080E4C 8008024C 02002025 */ move $a0, $s0
|
|
/* 080E50 80080250 10000010 */ b .L80080294
|
|
/* 080E54 80080254 00000000 */ nop
|
|
glabel L80080258
|
|
/* 080E58 80080258 02002025 */ move $a0, $s0
|
|
/* 080E5C 8008025C 0C01C9E3 */ jal func_8007278C
|
|
/* 080E60 80080260 8C450050 */ lw $a1, 0x50($v0)
|
|
/* 080E64 80080264 1000000B */ b .L80080294
|
|
/* 080E68 80080268 00000000 */ nop
|
|
glabel L8008026C
|
|
/* 080E6C 8008026C 02002025 */ move $a0, $s0
|
|
/* 080E70 80080270 0C01C95A */ jal func_80072568
|
|
/* 080E74 80080274 24050032 */ li $a1, 50
|
|
/* 080E78 80080278 10000006 */ b .L80080294
|
|
/* 080E7C 8008027C 00000000 */ nop
|
|
glabel L80080280
|
|
/* 080E80 80080280 2419003C */ li $t9, 60
|
|
/* 080E84 80080284 AC590050 */ sw $t9, 0x50($v0)
|
|
/* 080E88 80080288 02002025 */ move $a0, $s0
|
|
/* 080E8C 8008028C 0C01C9B3 */ jal func_800726CC
|
|
/* 080E90 80080290 24050002 */ li $a1, 2
|
|
.L80080294:
|
|
glabel L80080294
|
|
/* 080E94 80080294 0C01F98F */ jal func_8007E63C
|
|
/* 080E98 80080298 02002025 */ move $a0, $s0
|
|
/* 080E9C 8008029C 0C022FC6 */ jal func_8008BF18
|
|
/* 080EA0 800802A0 02002025 */ move $a0, $s0
|
|
/* 080EA4 800802A4 0C01CD45 */ jal func_80073514
|
|
/* 080EA8 800802A8 02002025 */ move $a0, $s0
|
|
/* 080EAC 800802AC 8FBF001C */ lw $ra, 0x1c($sp)
|
|
/* 080EB0 800802B0 8FB00018 */ lw $s0, 0x18($sp)
|
|
/* 080EB4 800802B4 27BD0020 */ addiu $sp, $sp, 0x20
|
|
/* 080EB8 800802B8 03E00008 */ jr $ra
|
|
/* 080EBC 800802BC 00000000 */ nop
|