papermario/ver/jp/asm/nonmatchings/41720/func_80066320.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

86 lines
4.3 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80066320
/* 41720 80066320 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 41724 80066324 8FA20030 */ lw $v0, 0x30($sp)
/* 41728 80066328 8FA30034 */ lw $v1, 0x34($sp)
/* 4172C 8006632C AFB00010 */ sw $s0, 0x10($sp)
/* 41730 80066330 00808021 */ addu $s0, $a0, $zero
/* 41734 80066334 AFBF001C */ sw $ra, 0x1c($sp)
/* 41738 80066338 AFB20018 */ sw $s2, 0x18($sp)
/* 4173C 8006633C AFB10014 */ sw $s1, 0x14($sp)
/* 41740 80066340 AE000000 */ sw $zero, ($s0)
/* 41744 80066344 AE000004 */ sw $zero, 4($s0)
/* 41748 80066348 AE060010 */ sw $a2, 0x10($s0)
/* 4174C 8006634C AE070014 */ sw $a3, 0x14($s0)
/* 41750 80066350 AE020008 */ sw $v0, 8($s0)
/* 41754 80066354 AE03000C */ sw $v1, 0xc($s0)
/* 41758 80066358 8FA40038 */ lw $a0, 0x38($sp)
/* 4175C 8006635C 8FA5003C */ lw $a1, 0x3c($sp)
/* 41760 80066360 54C00006 */ bnel $a2, $zero, .L8006637C
/* 41764 80066364 AE040018 */ sw $a0, 0x18($s0)
/* 41768 80066368 54E00004 */ bnel $a3, $zero, .L8006637C
/* 4176C 8006636C AE040018 */ sw $a0, 0x18($s0)
/* 41770 80066370 AE020010 */ sw $v0, 0x10($s0)
/* 41774 80066374 AE030014 */ sw $v1, 0x14($s0)
/* 41778 80066378 AE040018 */ sw $a0, 0x18($s0)
.L8006637C:
/* 4177C 8006637C 0C01ACD0 */ jal func_8006B340
/* 41780 80066380 AE05001C */ sw $a1, 0x1c($s0)
/* 41784 80066384 3C038009 */ lui $v1, %hi(D_80094650)
/* 41788 80066388 8C634650 */ lw $v1, %lo(D_80094650)($v1)
/* 4178C 8006638C 8C640000 */ lw $a0, ($v1)
/* 41790 80066390 1083001D */ beq $a0, $v1, .L80066408
/* 41794 80066394 00409021 */ addu $s2, $v0, $zero
/* 41798 80066398 0C019674 */ jal func_800659D0
/* 4179C 8006639C 00808821 */ addu $s1, $a0, $zero
/* 417A0 800663A0 3C03800A */ lui $v1, %hi(D_8009A60C)
/* 417A4 800663A4 8C63A60C */ lw $v1, %lo(D_8009A60C)($v1)
/* 417A8 800663A8 00431023 */ subu $v0, $v0, $v1
/* 417AC 800663AC 8E230010 */ lw $v1, 0x10($s1)
/* 417B0 800663B0 00403821 */ addu $a3, $v0, $zero
/* 417B4 800663B4 00003021 */ addu $a2, $zero, $zero
/* 417B8 800663B8 00C3102B */ sltu $v0, $a2, $v1
/* 417BC 800663BC 14400007 */ bnez $v0, .L800663DC
/* 417C0 800663C0 00000000 */ nop
/* 417C4 800663C4 1466000C */ bne $v1, $a2, .L800663F8
/* 417C8 800663C8 00000000 */ nop
/* 417CC 800663CC 8E220014 */ lw $v0, 0x14($s1)
/* 417D0 800663D0 00E2102B */ sltu $v0, $a3, $v0
/* 417D4 800663D4 10400008 */ beqz $v0, .L800663F8
/* 417D8 800663D8 00000000 */ nop
.L800663DC:
/* 417DC 800663DC 8E220010 */ lw $v0, 0x10($s1)
/* 417E0 800663E0 8E230014 */ lw $v1, 0x14($s1)
/* 417E4 800663E4 0067202B */ sltu $a0, $v1, $a3
/* 417E8 800663E8 00671823 */ subu $v1, $v1, $a3
/* 417EC 800663EC 00461023 */ subu $v0, $v0, $a2
/* 417F0 800663F0 08019900 */ j .L80066400
/* 417F4 800663F4 00441023 */ subu $v0, $v0, $a0
.L800663F8:
/* 417F8 800663F8 24020000 */ addiu $v0, $zero, 0
/* 417FC 800663FC 24030001 */ addiu $v1, $zero, 1
.L80066400:
/* 41800 80066400 AE220010 */ sw $v0, 0x10($s1)
/* 41804 80066404 AE230014 */ sw $v1, 0x14($s1)
.L80066408:
/* 41808 80066408 0C019998 */ jal func_80066660
/* 4180C 8006640C 02002021 */ addu $a0, $s0, $zero
/* 41810 80066410 3C028009 */ lui $v0, %hi(D_80094650)
/* 41814 80066414 8C424650 */ lw $v0, %lo(D_80094650)($v0)
/* 41818 80066418 8C420000 */ lw $v0, ($v0)
/* 4181C 8006641C 8C440010 */ lw $a0, 0x10($v0)
/* 41820 80066420 0C019978 */ jal func_800665E0
/* 41824 80066424 8C450014 */ lw $a1, 0x14($v0)
/* 41828 80066428 0C01ACEC */ jal func_8006B3B0
/* 4182C 8006642C 02402021 */ addu $a0, $s2, $zero
/* 41830 80066430 00001021 */ addu $v0, $zero, $zero
/* 41834 80066434 8FBF001C */ lw $ra, 0x1c($sp)
/* 41838 80066438 8FB20018 */ lw $s2, 0x18($sp)
/* 4183C 8006643C 8FB10014 */ lw $s1, 0x14($sp)
/* 41840 80066440 8FB00010 */ lw $s0, 0x10($sp)
/* 41844 80066444 03E00008 */ jr $ra
/* 41848 80066448 27BD0020 */ addiu $sp, $sp, 0x20
/* 4184C 8006644C 00000000 */ nop