Files
SpaghettiKart/asm/non_matchings/code_802AAA70/func_802AECA0.s
T
Tyler McGavran 782ed71f61 Massive data relocation (#295)
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>
2023-03-29 18:52:15 -06:00

53 lines
2.6 KiB
ArmAsm

glabel func_802AECA0
/* 1182B0 802AECA0 00807025 */ move $t6, $a0
/* 1182B4 802AECA4 3C0100FF */ lui $at, 0xff
/* 1182B8 802AECA8 00817824 */ and $t7, $a0, $at
/* 1182BC 802AECAC 31CAFF00 */ andi $t2, $t6, 0xff00
/* 1182C0 802AECB0 3C028016 */ lui $v0, %hi(D_8015F668) # $v0, 0x8016
/* 1182C4 802AECB4 000FC402 */ srl $t8, $t7, 0x10
/* 1182C8 802AECB8 000A5A02 */ srl $t3, $t2, 8
/* 1182CC 802AECBC 2442F668 */ addiu $v0, %lo(D_8015F668) # addiu $v0, $v0, -0x998
/* 1182D0 802AECC0 27BDFFB8 */ addiu $sp, $sp, -0x48
/* 1182D4 802AECC4 0018C842 */ srl $t9, $t8, 1
/* 1182D8 802AECC8 000B6042 */ srl $t4, $t3, 1
/* 1182DC 802AECCC 3C01FF00 */ lui $at, 0xff00
/* 1182E0 802AECD0 00194080 */ sll $t0, $t9, 2
/* 1182E4 802AECD4 000C6880 */ sll $t5, $t4, 2
/* 1182E8 802AECD8 01C15024 */ and $t2, $t6, $at
/* 1182EC 802AECDC 00484821 */ addu $t1, $v0, $t0
/* 1182F0 802AECE0 004D7821 */ addu $t7, $v0, $t5
/* 1182F4 802AECE4 31D800FF */ andi $t8, $t6, 0xff
/* 1182F8 802AECE8 000A5E02 */ srl $t3, $t2, 0x18
/* 1182FC 802AECEC AFA40048 */ sw $a0, 0x48($sp)
/* 118300 802AECF0 AFA5004C */ sw $a1, 0x4c($sp)
/* 118304 802AECF4 0018C842 */ srl $t9, $t8, 1
/* 118308 802AECF8 000B6042 */ srl $t4, $t3, 1
/* 11830C 802AECFC 8D240000 */ lw $a0, ($t1)
/* 118310 802AED00 AFBF001C */ sw $ra, 0x1c($sp)
/* 118314 802AED04 AFA60050 */ sw $a2, 0x50($sp)
/* 118318 802AED08 8DE50000 */ lw $a1, ($t7)
/* 11831C 802AED0C 00194080 */ sll $t0, $t9, 2
/* 118320 802AED10 000C6880 */ sll $t5, $t4, 2
/* 118324 802AED14 00484821 */ addu $t1, $v0, $t0
/* 118328 802AED18 004D7821 */ addu $t7, $v0, $t5
/* 11832C 802AED1C 8D260000 */ lw $a2, ($t1)
/* 118330 802AED20 8DF80000 */ lw $t8, ($t7)
/* 118334 802AED24 97B90052 */ lhu $t9, 0x52($sp)
/* 118338 802AED28 83A7004F */ lb $a3, 0x4f($sp)
/* 11833C 802AED2C AFA4002C */ sw $a0, 0x2c($sp)
/* 118340 802AED30 AFA60024 */ sw $a2, 0x24($sp)
/* 118344 802AED34 AFB80020 */ sw $t8, 0x20($sp)
/* 118348 802AED38 0C0AB90D */ jal func_802AE434
/* 11834C 802AED3C AFB90010 */ sw $t9, 0x10($sp)
/* 118350 802AED40 97A80052 */ lhu $t0, 0x52($sp)
/* 118354 802AED44 8FA4002C */ lw $a0, 0x2c($sp)
/* 118358 802AED48 8FA50024 */ lw $a1, 0x24($sp)
/* 11835C 802AED4C 8FA60020 */ lw $a2, 0x20($sp)
/* 118360 802AED50 83A7004F */ lb $a3, 0x4f($sp)
/* 118364 802AED54 0C0AB90D */ jal func_802AE434
/* 118368 802AED58 AFA80010 */ sw $t0, 0x10($sp)
/* 11836C 802AED5C 8FBF001C */ lw $ra, 0x1c($sp)
/* 118370 802AED60 27BD0048 */ addiu $sp, $sp, 0x48
/* 118374 802AED64 03E00008 */ jr $ra
/* 118378 802AED68 00000000 */ nop