papermario/ver/jp/asm/nonmatchings/439A0/func_800685A0.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

118 lines
5.9 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_800685A0
/* 439A0 800685A0 27BDFEA0 */ addiu $sp, $sp, -0x160
/* 439A4 800685A4 AFB10144 */ sw $s1, 0x144($sp)
/* 439A8 800685A8 00808821 */ addu $s1, $a0, $zero
/* 439AC 800685AC 8FA80170 */ lw $t0, 0x170($sp)
/* 439B0 800685B0 30A5FFFF */ andi $a1, $a1, 0xffff
/* 439B4 800685B4 2CA20001 */ sltiu $v0, $a1, 1
/* 439B8 800685B8 2CC30001 */ sltiu $v1, $a2, 1
/* 439BC 800685BC 00431025 */ or $v0, $v0, $v1
/* 439C0 800685C0 AFBF0158 */ sw $ra, 0x158($sp)
/* 439C4 800685C4 AFB50154 */ sw $s5, 0x154($sp)
/* 439C8 800685C8 AFB40150 */ sw $s4, 0x150($sp)
/* 439CC 800685CC AFB3014C */ sw $s3, 0x14c($sp)
/* 439D0 800685D0 AFB20148 */ sw $s2, 0x148($sp)
/* 439D4 800685D4 10400003 */ beqz $v0, .L800685E4
/* 439D8 800685D8 AFB00140 */ sw $s0, 0x140($sp)
/* 439DC 800685DC 0801A1CA */ j .L80068728
/* 439E0 800685E0 24020005 */ addiu $v0, $zero, 5
.L800685E4:
/* 439E4 800685E4 02202021 */ addu $a0, $s1, $zero
/* 439E8 800685E8 27A20138 */ addiu $v0, $sp, 0x138
/* 439EC 800685EC AFA80010 */ sw $t0, 0x10($sp)
/* 439F0 800685F0 0C01A368 */ jal func_80068DA0
/* 439F4 800685F4 AFA20014 */ sw $v0, 0x14($sp)
/* 439F8 800685F8 1440004B */ bnez $v0, .L80068728
/* 439FC 800685FC 00000000 */ nop
/* 43A00 80068600 92220065 */ lbu $v0, 0x65($s1)
/* 43A04 80068604 10400005 */ beqz $v0, .L8006861C
/* 43A08 80068608 02202021 */ addu $a0, $s1, $zero
/* 43A0C 8006860C 0C01A5AC */ jal func_800696B0
/* 43A10 80068610 00002821 */ addu $a1, $zero, $zero
/* 43A14 80068614 14400044 */ bnez $v0, .L80068728
/* 43A18 80068618 00000000 */ nop
.L8006861C:
/* 43A1C 8006861C 8E240004 */ lw $a0, 4($s1)
/* 43A20 80068620 8E26005C */ lw $a2, 0x5c($s1)
/* 43A24 80068624 8FA20138 */ lw $v0, 0x138($sp)
/* 43A28 80068628 8E250008 */ lw $a1, 8($s1)
/* 43A2C 8006862C 27A70118 */ addiu $a3, $sp, 0x118
/* 43A30 80068630 00C23021 */ addu $a2, $a2, $v0
/* 43A34 80068634 0C01A86C */ jal func_8006A1B0
/* 43A38 80068638 30C6FFFF */ andi $a2, $a2, 0xffff
/* 43A3C 8006863C 1440003A */ bnez $v0, .L80068728
/* 43A40 80068640 00000000 */ nop
/* 43A44 80068644 93B3011E */ lbu $s3, 0x11e($sp)
/* 43A48 80068648 92220064 */ lbu $v0, 0x64($s1)
/* 43A4C 8006864C 93B2011F */ lbu $s2, 0x11f($sp)
/* 43A50 80068650 327000FF */ andi $s0, $s3, 0xff
/* 43A54 80068654 0202102B */ sltu $v0, $s0, $v0
/* 43A58 80068658 10400032 */ beqz $v0, .L80068724
/* 43A5C 8006865C 27B4013C */ addiu $s4, $sp, 0x13c
/* 43A60 80068660 24150001 */ addiu $s5, $zero, 1
/* 43A64 80068664 02202021 */ addu $a0, $s1, $zero
.L80068668:
/* 43A68 80068668 27A50018 */ addiu $a1, $sp, 0x18
/* 43A6C 8006866C 00003021 */ addu $a2, $zero, $zero
/* 43A70 80068670 0C01A79B */ jal func_80069E6C
/* 43A74 80068674 02003821 */ addu $a3, $s0, $zero
/* 43A78 80068678 1440002B */ bnez $v0, .L80068728
/* 43A7C 8006867C 02202021 */ addu $a0, $s1, $zero
/* 43A80 80068680 AFB40010 */ sw $s4, 0x10($sp)
/* 43A84 80068684 27A50018 */ addiu $a1, $sp, 0x18
/* 43A88 80068688 02403021 */ addu $a2, $s2, $zero
/* 43A8C 8006868C 0C01A1D3 */ jal func_8006874C
/* 43A90 80068690 02003821 */ addu $a3, $s0, $zero
/* 43A94 80068694 14400024 */ bnez $v0, .L80068728
/* 43A98 80068698 02202021 */ addu $a0, $s1, $zero
/* 43A9C 8006869C 27A50018 */ addiu $a1, $sp, 0x18
/* 43AA0 800686A0 24060001 */ addiu $a2, $zero, 1
/* 43AA4 800686A4 0C01A79B */ jal func_80069E6C
/* 43AA8 800686A8 02003821 */ addu $a3, $s0, $zero
/* 43AAC 800686AC 1440001E */ bnez $v0, .L80068728
/* 43AB0 800686B0 00000000 */ nop
/* 43AB4 800686B4 97A2013C */ lhu $v0, 0x13c($sp)
/* 43AB8 800686B8 10550008 */ beq $v0, $s5, .L800686DC
/* 43ABC 800686BC 00000000 */ nop
/* 43AC0 800686C0 93B3013C */ lbu $s3, 0x13c($sp)
/* 43AC4 800686C4 92220064 */ lbu $v0, 0x64($s1)
/* 43AC8 800686C8 93B2013D */ lbu $s2, 0x13d($sp)
/* 43ACC 800686CC 327000FF */ andi $s0, $s3, 0xff
/* 43AD0 800686D0 0202102B */ sltu $v0, $s0, $v0
/* 43AD4 800686D4 1440FFE4 */ bnez $v0, .L80068668
/* 43AD8 800686D8 02202021 */ addu $a0, $s1, $zero
.L800686DC:
/* 43ADC 800686DC 92220064 */ lbu $v0, 0x64($s1)
/* 43AE0 800686E0 0262102B */ sltu $v0, $s3, $v0
/* 43AE4 800686E4 1040000F */ beqz $v0, .L80068724
/* 43AE8 800686E8 27B00118 */ addiu $s0, $sp, 0x118
/* 43AEC 800686EC 02002021 */ addu $a0, $s0, $zero
/* 43AF0 800686F0 0C019250 */ jal func_80064940
/* 43AF4 800686F4 24050020 */ addiu $a1, $zero, 0x20
/* 43AF8 800686F8 8E26005C */ lw $a2, 0x5c($s1)
/* 43AFC 800686FC 8FA20138 */ lw $v0, 0x138($sp)
/* 43B00 80068700 AFA00010 */ sw $zero, 0x10($sp)
/* 43B04 80068704 8E240004 */ lw $a0, 4($s1)
/* 43B08 80068708 8E250008 */ lw $a1, 8($s1)
/* 43B0C 8006870C 02003821 */ addu $a3, $s0, $zero
/* 43B10 80068710 00C23021 */ addu $a2, $a2, $v0
/* 43B14 80068714 0C01A8E8 */ jal func_8006A3A0
/* 43B18 80068718 30C6FFFF */ andi $a2, $a2, 0xffff
/* 43B1C 8006871C 0801A1CA */ j .L80068728
/* 43B20 80068720 00000000 */ nop
.L80068724:
/* 43B24 80068724 24020003 */ addiu $v0, $zero, 3
.L80068728:
/* 43B28 80068728 8FBF0158 */ lw $ra, 0x158($sp)
/* 43B2C 8006872C 8FB50154 */ lw $s5, 0x154($sp)
/* 43B30 80068730 8FB40150 */ lw $s4, 0x150($sp)
/* 43B34 80068734 8FB3014C */ lw $s3, 0x14c($sp)
/* 43B38 80068738 8FB20148 */ lw $s2, 0x148($sp)
/* 43B3C 8006873C 8FB10144 */ lw $s1, 0x144($sp)
/* 43B40 80068740 8FB00140 */ lw $s0, 0x140($sp)
/* 43B44 80068744 03E00008 */ jr $ra
/* 43B48 80068748 27BD0160 */ addiu $sp, $sp, 0x160