mirror of
https://github.com/pmret/papermario.git
synced 2024-11-18 08:52:40 +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>
158 lines
8.2 KiB
ArmAsm
158 lines
8.2 KiB
ArmAsm
.set noat # allow manual use of $at
|
|
.set noreorder # don't insert nops after branches
|
|
|
|
glabel func_80037860
|
|
/* 12C60 80037860 3C048007 */ lui $a0, %hi(D_800779FC)
|
|
/* 12C64 80037864 248479FC */ addiu $a0, $a0, %lo(D_800779FC)
|
|
/* 12C68 80037868 8C830000 */ lw $v1, ($a0)
|
|
/* 12C6C 8003786C 10600005 */ beqz $v1, .L80037884
|
|
/* 12C70 80037870 24020001 */ addiu $v0, $zero, 1
|
|
/* 12C74 80037874 10620016 */ beq $v1, $v0, .L800378D0
|
|
/* 12C78 80037878 3C07FC11 */ lui $a3, 0xfc11
|
|
/* 12C7C 8003787C 0800DE48 */ j .L80037920
|
|
/* 12C80 80037880 34E79623 */ ori $a3, $a3, 0x9623
|
|
.L80037884:
|
|
/* 12C84 80037884 3C038007 */ lui $v1, %hi(D_800779F8)
|
|
/* 12C88 80037888 246379F8 */ addiu $v1, $v1, %lo(D_800779F8)
|
|
/* 12C8C 8003788C 8C620000 */ lw $v0, ($v1)
|
|
/* 12C90 80037890 2442FF80 */ addiu $v0, $v0, -0x80
|
|
/* 12C94 80037894 04410002 */ bgez $v0, .L800378A0
|
|
/* 12C98 80037898 AC620000 */ sw $v0, ($v1)
|
|
/* 12C9C 8003789C AC600000 */ sw $zero, ($v1)
|
|
.L800378A0:
|
|
/* 12CA0 800378A0 3C038007 */ lui $v1, %hi(D_80077A00)
|
|
/* 12CA4 800378A4 24637A00 */ addiu $v1, $v1, %lo(D_80077A00)
|
|
/* 12CA8 800378A8 8C620000 */ lw $v0, ($v1)
|
|
/* 12CAC 800378AC 24420001 */ addiu $v0, $v0, 1
|
|
/* 12CB0 800378B0 AC620000 */ sw $v0, ($v1)
|
|
/* 12CB4 800378B4 28420010 */ slti $v0, $v0, 0x10
|
|
/* 12CB8 800378B8 14400018 */ bnez $v0, .L8003791C
|
|
/* 12CBC 800378BC 3C07FC11 */ lui $a3, 0xfc11
|
|
/* 12CC0 800378C0 24020001 */ addiu $v0, $zero, 1
|
|
/* 12CC4 800378C4 AC600000 */ sw $zero, ($v1)
|
|
/* 12CC8 800378C8 0800DE47 */ j .L8003791C
|
|
/* 12CCC 800378CC AC820000 */ sw $v0, ($a0)
|
|
.L800378D0:
|
|
/* 12CD0 800378D0 3C038007 */ lui $v1, %hi(D_800779F8)
|
|
/* 12CD4 800378D4 246379F8 */ addiu $v1, $v1, %lo(D_800779F8)
|
|
/* 12CD8 800378D8 8C620000 */ lw $v0, ($v1)
|
|
/* 12CDC 800378DC 24420080 */ addiu $v0, $v0, 0x80
|
|
/* 12CE0 800378E0 AC620000 */ sw $v0, ($v1)
|
|
/* 12CE4 800378E4 28420100 */ slti $v0, $v0, 0x100
|
|
/* 12CE8 800378E8 14400002 */ bnez $v0, .L800378F4
|
|
/* 12CEC 800378EC 240200FF */ addiu $v0, $zero, 0xff
|
|
/* 12CF0 800378F0 AC620000 */ sw $v0, ($v1)
|
|
.L800378F4:
|
|
/* 12CF4 800378F4 3C038007 */ lui $v1, %hi(D_80077A00)
|
|
/* 12CF8 800378F8 24637A00 */ addiu $v1, $v1, %lo(D_80077A00)
|
|
/* 12CFC 800378FC 8C620000 */ lw $v0, ($v1)
|
|
/* 12D00 80037900 24420001 */ addiu $v0, $v0, 1
|
|
/* 12D04 80037904 AC620000 */ sw $v0, ($v1)
|
|
/* 12D08 80037908 28420010 */ slti $v0, $v0, 0x10
|
|
/* 12D0C 8003790C 14400003 */ bnez $v0, .L8003791C
|
|
/* 12D10 80037910 3C07FC11 */ lui $a3, 0xfc11
|
|
/* 12D14 80037914 AC600000 */ sw $zero, ($v1)
|
|
/* 12D18 80037918 AC800000 */ sw $zero, ($a0)
|
|
.L8003791C:
|
|
/* 12D1C 8003791C 34E79623 */ ori $a3, $a3, 0x9623
|
|
.L80037920:
|
|
/* 12D20 80037920 3C06FF2F */ lui $a2, 0xff2f
|
|
/* 12D24 80037924 34C6FFFF */ ori $a2, $a2, 0xffff
|
|
/* 12D28 80037928 3C08F8F0 */ lui $t0, 0xf8f0
|
|
/* 12D2C 8003792C 35089800 */ ori $t0, $t0, 0x9800
|
|
/* 12D30 80037930 3C09077F */ lui $t1, 0x77f
|
|
/* 12D34 80037934 3529F080 */ ori $t1, $t1, 0xf080
|
|
/* 12D38 80037938 3C0AF568 */ lui $t2, 0xf568
|
|
/* 12D3C 8003793C 354A2000 */ ori $t2, $t2, 0x2000
|
|
/* 12D40 80037940 3C0B001F */ lui $t3, 0x1f
|
|
/* 12D44 80037944 356BC07C */ ori $t3, $t3, 0xc07c
|
|
/* 12D48 80037948 3C0DE438 */ lui $t5, 0xe438
|
|
/* 12D4C 8003794C 35AD02A4 */ ori $t5, $t5, 0x2a4
|
|
/* 12D50 80037950 3C0C0018 */ lui $t4, 0x18
|
|
/* 12D54 80037954 358C0224 */ ori $t4, $t4, 0x224
|
|
/* 12D58 80037958 3C0E0400 */ lui $t6, 0x400
|
|
/* 12D5C 8003795C 3C05800A */ lui $a1, %hi(D_8009A64C)
|
|
/* 12D60 80037960 24A5A64C */ addiu $a1, $a1, %lo(D_8009A64C)
|
|
/* 12D64 80037964 35CE0400 */ ori $t6, $t6, 0x400
|
|
/* 12D68 80037968 8CA20000 */ lw $v0, ($a1)
|
|
/* 12D6C 8003796C 3C03DE00 */ lui $v1, 0xde00
|
|
/* 12D70 80037970 0040202D */ daddu $a0, $v0, $zero
|
|
/* 12D74 80037974 24420008 */ addiu $v0, $v0, 8
|
|
/* 12D78 80037978 ACA20000 */ sw $v0, ($a1)
|
|
/* 12D7C 8003797C AC830000 */ sw $v1, ($a0)
|
|
/* 12D80 80037980 3C038007 */ lui $v1, %hi(D_80077A20)
|
|
/* 12D84 80037984 24637A20 */ addiu $v1, $v1, %lo(D_80077A20)
|
|
/* 12D88 80037988 AC830004 */ sw $v1, 4($a0)
|
|
/* 12D8C 8003798C 24430008 */ addiu $v1, $v0, 8
|
|
/* 12D90 80037990 ACA30000 */ sw $v1, ($a1)
|
|
/* 12D94 80037994 24430010 */ addiu $v1, $v0, 0x10
|
|
/* 12D98 80037998 3C04FA00 */ lui $a0, 0xfa00
|
|
/* 12D9C 8003799C AC470000 */ sw $a3, ($v0)
|
|
/* 12DA0 800379A0 AC460004 */ sw $a2, 4($v0)
|
|
/* 12DA4 800379A4 ACA30000 */ sw $v1, ($a1)
|
|
/* 12DA8 800379A8 3C038007 */ lui $v1, %hi(D_800779FB)
|
|
/* 12DAC 800379AC 906379FB */ lbu $v1, %lo(D_800779FB)($v1)
|
|
/* 12DB0 800379B0 3C06E700 */ lui $a2, 0xe700
|
|
/* 12DB4 800379B4 AC440008 */ sw $a0, 8($v0)
|
|
/* 12DB8 800379B8 00681825 */ or $v1, $v1, $t0
|
|
/* 12DBC 800379BC AC43000C */ sw $v1, 0xc($v0)
|
|
/* 12DC0 800379C0 24430018 */ addiu $v1, $v0, 0x18
|
|
/* 12DC4 800379C4 ACA30000 */ sw $v1, ($a1)
|
|
/* 12DC8 800379C8 24430020 */ addiu $v1, $v0, 0x20
|
|
/* 12DCC 800379CC AC460010 */ sw $a2, 0x10($v0)
|
|
/* 12DD0 800379D0 AC400014 */ sw $zero, 0x14($v0)
|
|
/* 12DD4 800379D4 ACA30000 */ sw $v1, ($a1)
|
|
/* 12DD8 800379D8 3C04800A */ lui $a0, %hi(D_8009E790)
|
|
/* 12DDC 800379DC 8C84E790 */ lw $a0, %lo(D_8009E790)($a0)
|
|
/* 12DE0 800379E0 3C03FD70 */ lui $v1, 0xfd70
|
|
/* 12DE4 800379E4 AC430018 */ sw $v1, 0x18($v0)
|
|
/* 12DE8 800379E8 24430028 */ addiu $v1, $v0, 0x28
|
|
/* 12DEC 800379EC AC44001C */ sw $a0, 0x1c($v0)
|
|
/* 12DF0 800379F0 ACA30000 */ sw $v1, ($a1)
|
|
/* 12DF4 800379F4 3C03F570 */ lui $v1, 0xf570
|
|
/* 12DF8 800379F8 AC430020 */ sw $v1, 0x20($v0)
|
|
/* 12DFC 800379FC 3C030700 */ lui $v1, 0x700
|
|
/* 12E00 80037A00 AC430024 */ sw $v1, 0x24($v0)
|
|
/* 12E04 80037A04 24430030 */ addiu $v1, $v0, 0x30
|
|
/* 12E08 80037A08 ACA30000 */ sw $v1, ($a1)
|
|
/* 12E0C 80037A0C 3C03E600 */ lui $v1, 0xe600
|
|
/* 12E10 80037A10 AC430028 */ sw $v1, 0x28($v0)
|
|
/* 12E14 80037A14 24430038 */ addiu $v1, $v0, 0x38
|
|
/* 12E18 80037A18 AC40002C */ sw $zero, 0x2c($v0)
|
|
/* 12E1C 80037A1C ACA30000 */ sw $v1, ($a1)
|
|
/* 12E20 80037A20 3C03F300 */ lui $v1, 0xf300
|
|
/* 12E24 80037A24 AC430030 */ sw $v1, 0x30($v0)
|
|
/* 12E28 80037A28 24430040 */ addiu $v1, $v0, 0x40
|
|
/* 12E2C 80037A2C AC490034 */ sw $t1, 0x34($v0)
|
|
/* 12E30 80037A30 ACA30000 */ sw $v1, ($a1)
|
|
/* 12E34 80037A34 24430048 */ addiu $v1, $v0, 0x48
|
|
/* 12E38 80037A38 AC460038 */ sw $a2, 0x38($v0)
|
|
/* 12E3C 80037A3C AC40003C */ sw $zero, 0x3c($v0)
|
|
/* 12E40 80037A40 ACA30000 */ sw $v1, ($a1)
|
|
/* 12E44 80037A44 24430050 */ addiu $v1, $v0, 0x50
|
|
/* 12E48 80037A48 AC4A0040 */ sw $t2, 0x40($v0)
|
|
/* 12E4C 80037A4C AC400044 */ sw $zero, 0x44($v0)
|
|
/* 12E50 80037A50 ACA30000 */ sw $v1, ($a1)
|
|
/* 12E54 80037A54 3C03F200 */ lui $v1, 0xf200
|
|
/* 12E58 80037A58 AC430048 */ sw $v1, 0x48($v0)
|
|
/* 12E5C 80037A5C 24430058 */ addiu $v1, $v0, 0x58
|
|
/* 12E60 80037A60 AC4B004C */ sw $t3, 0x4c($v0)
|
|
/* 12E64 80037A64 ACA30000 */ sw $v1, ($a1)
|
|
/* 12E68 80037A68 24430060 */ addiu $v1, $v0, 0x60
|
|
/* 12E6C 80037A6C AC4D0050 */ sw $t5, 0x50($v0)
|
|
/* 12E70 80037A70 AC4C0054 */ sw $t4, 0x54($v0)
|
|
/* 12E74 80037A74 ACA30000 */ sw $v1, ($a1)
|
|
/* 12E78 80037A78 3C03E100 */ lui $v1, 0xe100
|
|
/* 12E7C 80037A7C AC430058 */ sw $v1, 0x58($v0)
|
|
/* 12E80 80037A80 24430068 */ addiu $v1, $v0, 0x68
|
|
/* 12E84 80037A84 AC40005C */ sw $zero, 0x5c($v0)
|
|
/* 12E88 80037A88 ACA30000 */ sw $v1, ($a1)
|
|
/* 12E8C 80037A8C 3C03F100 */ lui $v1, 0xf100
|
|
/* 12E90 80037A90 AC430060 */ sw $v1, 0x60($v0)
|
|
/* 12E94 80037A94 24430070 */ addiu $v1, $v0, 0x70
|
|
/* 12E98 80037A98 AC4E0064 */ sw $t6, 0x64($v0)
|
|
/* 12E9C 80037A9C ACA30000 */ sw $v1, ($a1)
|
|
/* 12EA0 80037AA0 AC460068 */ sw $a2, 0x68($v0)
|
|
/* 12EA4 80037AA4 03E00008 */ jr $ra
|
|
/* 12EA8 80037AA8 AC40006C */ sw $zero, 0x6c($v0)
|