mirror of
https://github.com/pmret/papermario.git
synced 2024-11-19 01:12:28 +01:00
3315d6010f
* all non-world rodata migrated * data disasm * kinda working * updated yaml * bloop * linker header * configure 2.0 * bin * mass rename to remove code_ * pause rename * battle partner stuff * whew * more renames * more renames * more renaming * it builds! * updates * remove main prefix * one more thing * crc, yay0 * .data, .rodata, .bss * img * dead_atan2 * it buildsgit add -A * split battle/partner/6FAD10 * rm &s on sleepy_sheep syms * sha1sum ninja rule description * OK but commented out PaperMarioMapFS and PaperMarioNpcSprites * uncomment * fix mapfs * match func_8003CFB4 * . * clean up and name npc_iter_no_op * npc.c * enable cc warnings * name npc_find_near * use singular options.asset_path * smores * cc_dsl only when needed * kinda fix configure for splat refactor2 * ok! * new msg format * remove old msg format docs * slight bug fixes, splat adjustment * git subrepo pull (merge) --force tools/splat subrepo: subdir: "tools/splat" merged: "cfc140bb76" upstream: origin: "https://github.com/ethteck/splat.git" branch: "master" commit: "cfc140bb76" git-subrepo: version: "0.4.3" origin: "https://github.com/ingydotnet/git-subrepo" commit: "2f68596" * git subrepo pull (merge) --force tools/splat subrepo: subdir: "tools/splat" merged: "85349befcd" upstream: origin: "https://github.com/ethteck/splat.git" branch: "master" commit: "85349befcd" git-subrepo: version: "0.4.3" origin: "https://github.com/ingydotnet/git-subrepo" commit: "2f68596" * Update symbol addrs * git subrepo pull tools/splat subrepo: subdir: "tools/splat" merged: "a44631e194" upstream: origin: "https://github.com/ethteck/splat.git" branch: "master" commit: "a44631e194" git-subrepo: version: "0.4.3" origin: "https://github.com/ingydotnet/git-subrepo" commit: "2f68596" Co-authored-by: Alex Bates <hi@imalex.xyz>
86 lines
4.3 KiB
ArmAsm
86 lines
4.3 KiB
ArmAsm
.set noat # allow manual use of $at
|
|
.set noreorder # don't insert nops after branches
|
|
|
|
glabel func_8004E784
|
|
/* 29B84 8004E784 0000402D */ daddu $t0, $zero, $zero
|
|
/* 29B88 8004E788 0100582D */ daddu $t3, $t0, $zero
|
|
/* 29B8C 8004E78C 0100482D */ daddu $t1, $t0, $zero
|
|
/* 29B90 8004E790 240C0001 */ addiu $t4, $zero, 1
|
|
/* 29B94 8004E794 240A025C */ addiu $t2, $zero, 0x25c
|
|
/* 29B98 8004E798 30A5FFFF */ andi $a1, $a1, 0xffff
|
|
/* 29B9C 8004E79C 8C82006C */ lw $v0, 0x6c($a0)
|
|
/* 29BA0 8004E7A0 00052880 */ sll $a1, $a1, 2
|
|
/* 29BA4 8004E7A4 00A22821 */ addu $a1, $a1, $v0
|
|
/* 29BA8 8004E7A8 AC850070 */ sw $a1, 0x70($a0)
|
|
.L8004E7AC:
|
|
/* 29BAC 8004E7AC 8CA30000 */ lw $v1, ($a1)
|
|
/* 29BB0 8004E7B0 24A50004 */ addiu $a1, $a1, 4
|
|
/* 29BB4 8004E7B4 008A3021 */ addu $a2, $a0, $t2
|
|
/* 29BB8 8004E7B8 00031402 */ srl $v0, $v1, 0x10
|
|
/* 29BBC 8004E7BC 10400034 */ beqz $v0, .L8004E890
|
|
/* 29BC0 8004E7C0 ACC20000 */ sw $v0, ($a2)
|
|
/* 29BC4 8004E7C4 30620100 */ andi $v0, $v1, 0x100
|
|
/* 29BC8 8004E7C8 54400031 */ bnel $v0, $zero, .L8004E890
|
|
/* 29BCC 8004E7CC ACC00000 */ sw $zero, ($a2)
|
|
/* 29BD0 8004E7D0 3062E000 */ andi $v0, $v1, 0xe000
|
|
/* 29BD4 8004E7D4 00021342 */ srl $v0, $v0, 0xd
|
|
/* 29BD8 8004E7D8 A0C20054 */ sb $v0, 0x54($a2)
|
|
/* 29BDC 8004E7DC 000311C2 */ srl $v0, $v1, 7
|
|
/* 29BE0 8004E7E0 30420001 */ andi $v0, $v0, 1
|
|
/* 29BE4 8004E7E4 A0C20058 */ sb $v0, 0x58($a2)
|
|
/* 29BE8 8004E7E8 30621E00 */ andi $v0, $v1, 0x1e00
|
|
/* 29BEC 8004E7EC 00023A42 */ srl $a3, $v0, 9
|
|
/* 29BF0 8004E7F0 10E0001B */ beqz $a3, .L8004E860
|
|
/* 29BF4 8004E7F4 A0C00059 */ sb $zero, 0x59($a2)
|
|
/* 29BF8 8004E7F8 00071040 */ sll $v0, $a3, 1
|
|
/* 29BFC 8004E7FC 00471021 */ addu $v0, $v0, $a3
|
|
/* 29C00 8004E800 00021140 */ sll $v0, $v0, 5
|
|
/* 29C04 8004E804 244201FC */ addiu $v0, $v0, 0x1fc
|
|
/* 29C08 8004E808 00821821 */ addu $v1, $a0, $v0
|
|
/* 29C0C 8004E80C 24E2FFFF */ addiu $v0, $a3, -1
|
|
/* 29C10 8004E810 0049102B */ sltu $v0, $v0, $t1
|
|
/* 29C14 8004E814 5040001E */ beql $v0, $zero, .L8004E890
|
|
/* 29C18 8004E818 ACC00000 */ sw $zero, ($a2)
|
|
/* 29C1C 8004E81C 90620051 */ lbu $v0, 0x51($v1)
|
|
/* 29C20 8004E820 A0C20051 */ sb $v0, 0x51($a2)
|
|
/* 29C24 8004E824 90620052 */ lbu $v0, 0x52($v1)
|
|
/* 29C28 8004E828 A0C20052 */ sb $v0, 0x52($a2)
|
|
/* 29C2C 8004E82C 90620053 */ lbu $v0, 0x53($v1)
|
|
/* 29C30 8004E830 A0C20053 */ sb $v0, 0x53($a2)
|
|
/* 29C34 8004E834 8CC20000 */ lw $v0, ($a2)
|
|
/* 29C38 8004E838 8C830070 */ lw $v1, 0x70($a0)
|
|
/* 29C3C 8004E83C ACCC0028 */ sw $t4, 0x28($a2)
|
|
/* 29C40 8004E840 A0C70059 */ sb $a3, 0x59($a2)
|
|
/* 29C44 8004E844 00431021 */ addu $v0, $v0, $v1
|
|
/* 29C48 8004E848 ACC20000 */ sw $v0, ($a2)
|
|
/* 29C4C 8004E84C 90820233 */ lbu $v0, 0x233($a0)
|
|
/* 29C50 8004E850 54400001 */ bnel $v0, $zero, .L8004E858
|
|
/* 29C54 8004E854 A0CC005A */ sb $t4, 0x5a($a2)
|
|
.L8004E858:
|
|
/* 29C58 8004E858 08013A24 */ j .L8004E890
|
|
/* 29C5C 8004E85C 240B0001 */ addiu $t3, $zero, 1
|
|
.L8004E860:
|
|
/* 29C60 8004E860 90C20054 */ lbu $v0, 0x54($a2)
|
|
/* 29C64 8004E864 00821021 */ addu $v0, $a0, $v0
|
|
/* 29C68 8004E868 9042022A */ lbu $v0, 0x22a($v0)
|
|
/* 29C6C 8004E86C A0C80052 */ sb $t0, 0x52($a2)
|
|
/* 29C70 8004E870 01024021 */ addu $t0, $t0, $v0
|
|
/* 29C74 8004E874 A0C20051 */ sb $v0, 0x51($a2)
|
|
/* 29C78 8004E878 8CC20000 */ lw $v0, ($a2)
|
|
/* 29C7C 8004E87C A0C80053 */ sb $t0, 0x53($a2)
|
|
/* 29C80 8004E880 8C830070 */ lw $v1, 0x70($a0)
|
|
/* 29C84 8004E884 ACCC0028 */ sw $t4, 0x28($a2)
|
|
/* 29C88 8004E888 00431021 */ addu $v0, $v0, $v1
|
|
/* 29C8C 8004E88C ACC20000 */ sw $v0, ($a2)
|
|
.L8004E890:
|
|
/* 29C90 8004E890 25290001 */ addiu $t1, $t1, 1
|
|
/* 29C94 8004E894 29220010 */ slti $v0, $t1, 0x10
|
|
/* 29C98 8004E898 1440FFC4 */ bnez $v0, .L8004E7AC
|
|
/* 29C9C 8004E89C 254A0060 */ addiu $t2, $t2, 0x60
|
|
/* 29CA0 8004E8A0 11600002 */ beqz $t3, .L8004E8AC
|
|
/* 29CA4 8004E8A4 A088021B */ sb $t0, 0x21b($a0)
|
|
/* 29CA8 8004E8A8 A0800233 */ sb $zero, 0x233($a0)
|
|
.L8004E8AC:
|
|
/* 29CAC 8004E8AC 03E00008 */ jr $ra
|
|
/* 29CB0 8004E8B0 00000000 */ nop
|