papermario/ver/jp/asm/nonmatchings/D2A0/func_80031EA0.s
Ethan Roseman 3315d6010f
Splat refactor (#257)
* 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>
2021-04-13 16:47:52 +09:00

58 lines
2.9 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80031EA0
/* D2A0 80031EA0 27BDFFA0 */ addiu $sp, $sp, -0x60
/* D2A4 80031EA4 AFB00058 */ sw $s0, 0x58($sp)
/* D2A8 80031EA8 00E0802D */ daddu $s0, $a3, $zero
/* D2AC 80031EAC 3C0146FF */ lui $at, 0x46ff
/* D2B0 80031EB0 3421FE00 */ ori $at, $at, 0xfe00
/* D2B4 80031EB4 44811000 */ mtc1 $at, $f2
/* D2B8 80031EB8 44802000 */ mtc1 $zero, $f4
/* D2BC 80031EBC 3C01BF80 */ lui $at, 0xbf80
/* D2C0 80031EC0 44810000 */ mtc1 $at, $f0
/* D2C4 80031EC4 44072000 */ mfc1 $a3, $f4
/* D2C8 80031EC8 27A20038 */ addiu $v0, $sp, 0x38
/* D2CC 80031ECC AFBF005C */ sw $ra, 0x5c($sp)
/* D2D0 80031ED0 E7A20044 */ swc1 $f2, 0x44($sp)
/* D2D4 80031ED4 AFA20018 */ sw $v0, 0x18($sp)
/* D2D8 80031ED8 27A2003C */ addiu $v0, $sp, 0x3c
/* D2DC 80031EDC AFA2001C */ sw $v0, 0x1c($sp)
/* D2E0 80031EE0 27A20040 */ addiu $v0, $sp, 0x40
/* D2E4 80031EE4 AFA20020 */ sw $v0, 0x20($sp)
/* D2E8 80031EE8 27A20044 */ addiu $v0, $sp, 0x44
/* D2EC 80031EEC AFA20024 */ sw $v0, 0x24($sp)
/* D2F0 80031EF0 27A20048 */ addiu $v0, $sp, 0x48
/* D2F4 80031EF4 AFA20028 */ sw $v0, 0x28($sp)
/* D2F8 80031EF8 27A2004C */ addiu $v0, $sp, 0x4c
/* D2FC 80031EFC AFA2002C */ sw $v0, 0x2c($sp)
/* D300 80031F00 27A20050 */ addiu $v0, $sp, 0x50
/* D304 80031F04 E7A00010 */ swc1 $f0, 0x10($sp)
/* D308 80031F08 E7A40014 */ swc1 $f4, 0x14($sp)
/* D30C 80031F0C 0C017375 */ jal func_8005CDD4
/* D310 80031F10 AFA20030 */ sw $v0, 0x30($sp)
/* D314 80031F14 0040202D */ daddu $a0, $v0, $zero
/* D318 80031F18 04800010 */ bltz $a0, .L80031F5C
/* D31C 80031F1C 0000102D */ daddu $v0, $zero, $zero
/* D320 80031F20 12000007 */ beqz $s0, .L80031F40
/* D324 80031F24 000410C0 */ sll $v0, $a0, 3
/* D328 80031F28 00441023 */ subu $v0, $v0, $a0
/* D32C 80031F2C 3C03800E */ lui $v1, %hi(D_800D91B4)
/* D330 80031F30 8C6391B4 */ lw $v1, %lo(D_800D91B4)($v1)
/* D334 80031F34 00021080 */ sll $v0, $v0, 2
/* D338 80031F38 00621821 */ addu $v1, $v1, $v0
/* D33C 80031F3C AE030000 */ sw $v1, ($s0)
.L80031F40:
/* D340 80031F40 000410C0 */ sll $v0, $a0, 3
/* D344 80031F44 00441023 */ subu $v0, $v0, $a0
/* D348 80031F48 3C03800E */ lui $v1, %hi(D_800D91B4)
/* D34C 80031F4C 8C6391B4 */ lw $v1, %lo(D_800D91B4)($v1)
/* D350 80031F50 00021080 */ sll $v0, $v0, 2
/* D354 80031F54 00431021 */ addu $v0, $v0, $v1
/* D358 80031F58 8C420010 */ lw $v0, 0x10($v0)
.L80031F5C:
/* D35C 80031F5C 8FBF005C */ lw $ra, 0x5c($sp)
/* D360 80031F60 8FB00058 */ lw $s0, 0x58($sp)
/* D364 80031F64 03E00008 */ jr $ra
/* D368 80031F68 27BD0060 */ addiu $sp, $sp, 0x60