mirror of
https://github.com/HarbourMasters/SpaghettiKart
synced 2026-08-18 05:58:21 -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>
60 lines
2.4 KiB
ArmAsm
60 lines
2.4 KiB
ArmAsm
.section .late_rodata
|
|
|
|
glabel jpt_800EEC40
|
|
.word L8007979C, L80079740, L80079750, L8007976C
|
|
.word L80079794
|
|
|
|
.section .text
|
|
|
|
glabel func_80079700
|
|
/* 07A300 80079700 000470C0 */ sll $t6, $a0, 3
|
|
/* 07A304 80079704 01C47023 */ subu $t6, $t6, $a0
|
|
/* 07A308 80079708 000E7140 */ sll $t6, $t6, 5
|
|
/* 07A30C 8007970C 3C0F8016 */ lui $t7, %hi(D_80165CBE) # 0x8016
|
|
/* 07A310 80079710 01EE7821 */ addu $t7, $t7, $t6
|
|
/* 07A314 80079714 95EF5CBE */ lhu $t7, %lo(D_80165CBE)($t7) # 0x5cbe($t7)
|
|
/* 07A318 80079718 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
/* 07A31C 8007971C AFBF001C */ sw $ra, 0x1c($sp)
|
|
/* 07A320 80079720 2DE10005 */ sltiu $at, $t7, 5
|
|
/* 07A324 80079724 1020001D */ beqz $at, .L8007979C
|
|
/* 07A328 80079728 000F7880 */ sll $t7, $t7, 2
|
|
/* 07A32C 8007972C 3C01800F */ lui $at, %hi(jpt_800EEC40)
|
|
/* 07A330 80079730 002F0821 */ addu $at, $at, $t7
|
|
/* 07A334 80079734 8C2FEC40 */ lw $t7, %lo(jpt_800EEC40)($at)
|
|
/* 07A338 80079738 01E00008 */ jr $t7
|
|
/* 07A33C 8007973C 00000000 */ nop
|
|
glabel L80079740
|
|
/* 07A340 80079740 0C01E58F */ jal func_8007963C
|
|
/* 07A344 80079744 00000000 */ nop
|
|
/* 07A348 80079748 10000015 */ b .L800797A0
|
|
/* 07A34C 8007974C 8FBF001C */ lw $ra, 0x1c($sp)
|
|
glabel L80079750
|
|
/* 07A350 80079750 24050010 */ li $a1, 16
|
|
/* 07A354 80079754 0C01C870 */ jal func_800721C0
|
|
/* 07A358 80079758 AFA40020 */ sw $a0, 0x20($sp)
|
|
/* 07A35C 8007975C 0C01C922 */ jal func_80072488
|
|
/* 07A360 80079760 8FA40020 */ lw $a0, 0x20($sp)
|
|
/* 07A364 80079764 1000000E */ b .L800797A0
|
|
/* 07A368 80079768 8FBF001C */ lw $ra, 0x1c($sp)
|
|
glabel L8007976C
|
|
/* 07A36C 8007976C 24180002 */ li $t8, 2
|
|
/* 07A370 80079770 2419FFFF */ li $t9, -1
|
|
/* 07A374 80079774 AFB90014 */ sw $t9, 0x14($sp)
|
|
/* 07A378 80079778 AFB80010 */ sw $t8, 0x10($sp)
|
|
/* 07A37C 8007977C 00002825 */ move $a1, $zero
|
|
/* 07A380 80079780 2406001F */ li $a2, 31
|
|
/* 07A384 80079784 0C01CB95 */ jal func_80072E54
|
|
/* 07A388 80079788 24070001 */ li $a3, 1
|
|
/* 07A38C 8007978C 10000004 */ b .L800797A0
|
|
/* 07A390 80079790 8FBF001C */ lw $ra, 0x1c($sp)
|
|
glabel L80079794
|
|
/* 07A394 80079794 0C01C90A */ jal func_80072428
|
|
/* 07A398 80079798 00000000 */ nop
|
|
.L8007979C:
|
|
glabel L8007979C
|
|
/* 07A39C 8007979C 8FBF001C */ lw $ra, 0x1c($sp)
|
|
.L800797A0:
|
|
/* 07A3A0 800797A0 27BD0020 */ addiu $sp, $sp, 0x20
|
|
/* 07A3A4 800797A4 03E00008 */ jr $ra
|
|
/* 07A3A8 800797A8 00000000 */ nop
|