papermario/ver/jp/asm/nonmatchings/1B10/func_80026DA8.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

177 lines
8.7 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80026DA8
/* 21A8 80026DA8 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 21AC 80026DAC 3C04000A */ lui $a0, 0xa
/* 21B0 80026DB0 24845F90 */ addiu $a0, $a0, 0x5f90
/* 21B4 80026DB4 3C05000B */ lui $a1, 0xb
/* 21B8 80026DB8 24A59770 */ addiu $a1, $a1, -0x6890
/* 21BC 80026DBC 3C068011 */ lui $a2, %hi(D_8010F890)
/* 21C0 80026DC0 24C6F890 */ addiu $a2, $a2, %lo(D_8010F890)
/* 21C4 80026DC4 AFBF0014 */ sw $ra, 0x14($sp)
/* 21C8 80026DC8 0C00A5BF */ jal func_800296FC
/* 21CC 80026DCC AFB00010 */ sw $s0, 0x10($sp)
/* 21D0 80026DD0 3C040007 */ lui $a0, 7
/* 21D4 80026DD4 24845990 */ addiu $a0, $a0, 0x5990
/* 21D8 80026DD8 3C05000A */ lui $a1, 0xa
/* 21DC 80026DDC 24A55F90 */ addiu $a1, $a1, 0x5f90
/* 21E0 80026DE0 3C06800E */ lui $a2, %hi(D_800DC4E0)
/* 21E4 80026DE4 24C6C4E0 */ addiu $a2, $a2, %lo(D_800DC4E0)
/* 21E8 80026DE8 0C00A5BF */ jal func_800296FC
/* 21EC 80026DEC 00000000 */ nop
/* 21F0 80026DF0 3C04000F */ lui $a0, 0xf
/* 21F4 80026DF4 2484B1A0 */ addiu $a0, $a0, -0x4e60
/* 21F8 80026DF8 3C050010 */ lui $a1, 0x10
/* 21FC 80026DFC 24A52620 */ addiu $a1, $a1, 0x2620
/* 2200 80026E00 3C06802C */ lui $a2, %hi(D_802C3000)
/* 2204 80026E04 24C63000 */ addiu $a2, $a2, %lo(D_802C3000)
/* 2208 80026E08 0C00A5BF */ jal func_800296FC
/* 220C 80026E0C 00000000 */ nop
/* 2210 80026E10 3C040010 */ lui $a0, 0x10
/* 2214 80026E14 24842620 */ addiu $a0, $a0, 0x2620
/* 2218 80026E18 3C050011 */ lui $a1, 0x11
/* 221C 80026E1C 24A5CC20 */ addiu $a1, $a1, -0x33e0
/* 2220 80026E20 3C06802E */ lui $a2, %hi(D_802DBD40)
/* 2224 80026E24 24C6BD40 */ addiu $a2, $a2, %lo(D_802DBD40)
/* 2228 80026E28 0C00A5BF */ jal func_800296FC
/* 222C 80026E2C 00000000 */ nop
/* 2230 80026E30 3C04000B */ lui $a0, 0xb
/* 2234 80026E34 24849770 */ addiu $a0, $a0, -0x6890
/* 2238 80026E38 3C05000F */ lui $a1, 0xf
/* 223C 80026E3C 24A5B1A0 */ addiu $a1, $a1, -0x4e60
/* 2240 80026E40 3C068011 */ lui $a2, %hi(func_801148E0)
/* 2244 80026E44 24C648E0 */ addiu $a2, $a2, %lo(func_801148E0)
/* 2248 80026E48 0C00A5BF */ jal func_800296FC
/* 224C 80026E4C 00000000 */ nop
/* 2250 80026E50 3C040011 */ lui $a0, 0x11
/* 2254 80026E54 2484CC20 */ addiu $a0, $a0, -0x33e0
/* 2258 80026E58 3C050011 */ lui $a1, 0x11
/* 225C 80026E5C 24A5F330 */ addiu $a1, $a1, -0xcd0
/* 2260 80026E60 3C06802E */ lui $a2, %hi(D_802E6380)
/* 2264 80026E64 24C66380 */ addiu $a2, $a2, %lo(D_802E6380)
/* 2268 80026E68 0C00A5BF */ jal func_800296FC
/* 226C 80026E6C 00000000 */ nop
/* 2270 80026E70 3C108007 */ lui $s0, %hi(D_8007417C)
/* 2274 80026E74 2610417C */ addiu $s0, $s0, %lo(D_8007417C)
/* 2278 80026E78 8E020000 */ lw $v0, ($s0)
/* 227C 80026E7C 3C01800A */ lui $at, %hi(D_8009A630)
/* 2280 80026E80 AC20A630 */ sw $zero, %lo(D_8009A630)($at)
/* 2284 80026E84 A0400079 */ sb $zero, 0x79($v0)
/* 2288 80026E88 8E030000 */ lw $v1, ($s0)
/* 228C 80026E8C 24040001 */ addiu $a0, $zero, 1
/* 2290 80026E90 A064007A */ sb $a0, 0x7a($v1)
/* 2294 80026E94 8E020000 */ lw $v0, ($s0)
/* 2298 80026E98 A4600148 */ sh $zero, 0x148($v1)
/* 229C 80026E9C A044007C */ sb $a0, 0x7c($v0)
/* 22A0 80026EA0 8E030000 */ lw $v1, ($s0)
/* 22A4 80026EA4 2402FFFF */ addiu $v0, $zero, -1
/* 22A8 80026EA8 A06200A8 */ sb $v0, 0xa8($v1)
/* 22AC 80026EAC 8E020000 */ lw $v0, ($s0)
/* 22B0 80026EB0 A04000AA */ sb $zero, 0xaa($v0)
/* 22B4 80026EB4 8E020000 */ lw $v0, ($s0)
/* 22B8 80026EB8 A0400081 */ sb $zero, 0x81($v0)
/* 22BC 80026EBC 8E030000 */ lw $v1, ($s0)
/* 22C0 80026EC0 2402FFF8 */ addiu $v0, $zero, -8
/* 22C4 80026EC4 A0620082 */ sb $v0, 0x82($v1)
/* 22C8 80026EC8 8E030000 */ lw $v1, ($s0)
/* 22CC 80026ECC 24020004 */ addiu $v0, $zero, 4
/* 22D0 80026ED0 A0620083 */ sb $v0, 0x83($v1)
/* 22D4 80026ED4 8E020000 */ lw $v0, ($s0)
/* 22D8 80026ED8 3C01800A */ lui $at, %hi(D_8009A5B8)
/* 22DC 80026EDC AC20A5B8 */ sw $zero, %lo(D_8009A5B8)($at)
/* 22E0 80026EE0 A440013C */ sh $zero, 0x13c($v0)
/* 22E4 80026EE4 A0400075 */ sb $zero, 0x75($v0)
/* 22E8 80026EE8 8E030000 */ lw $v1, ($s0)
/* 22EC 80026EEC 24020005 */ addiu $v0, $zero, 5
/* 22F0 80026EF0 3C018007 */ lui $at, %hi(D_80074001)
/* 22F4 80026EF4 A0224001 */ sb $v0, %lo(D_80074001)($at)
/* 22F8 80026EF8 0C00AE03 */ jal func_8002B80C
/* 22FC 80026EFC AC600168 */ sw $zero, 0x168($v1)
/* 2300 80026F00 0C00A202 */ jal func_80028808
/* 2304 80026F04 00000000 */ nop
/* 2308 80026F08 0C00AAF0 */ jal func_8002ABC0
/* 230C 80026F0C 00000000 */ nop
/* 2310 80026F10 0C048AA8 */ jal func_80122AA0
/* 2314 80026F14 00000000 */ nop
/* 2318 80026F18 0C04A0B2 */ jal func_801282C8
/* 231C 80026F1C 00000000 */ nop
/* 2320 80026F20 0C0B0C77 */ jal func_802C31DC
/* 2324 80026F24 00000000 */ nop
/* 2328 80026F28 0C00B6E1 */ jal func_8002DB84
/* 232C 80026F2C 00000000 */ nop
/* 2330 80026F30 0C037F0C */ jal func_800DFC30
/* 2334 80026F34 00000000 */ nop
/* 2338 80026F38 0C044512 */ jal func_80111448
/* 233C 80026F3C 0000202D */ daddu $a0, $zero, $zero
/* 2340 80026F40 0C049770 */ jal func_80125DC0
/* 2344 80026F44 00000000 */ nop
/* 2348 80026F48 0C048D0D */ jal func_80123434
/* 234C 80026F4C 00000000 */ nop
/* 2350 80026F50 0C046BD5 */ jal func_8011AF54
/* 2354 80026F54 00000000 */ nop
/* 2358 80026F58 0C05343C */ jal func_8014D0F0
/* 235C 80026F5C 00000000 */ nop
/* 2360 80026F60 0C052BAA */ jal func_8014AEA8
/* 2364 80026F64 00000000 */ nop
/* 2368 80026F68 0C04A21C */ jal func_80128870
/* 236C 80026F6C 00000000 */ nop
/* 2370 80026F70 0C04A221 */ jal func_80128884
/* 2374 80026F74 00000000 */ nop
/* 2378 80026F78 0C045F6A */ jal func_80117DA8
/* 237C 80026F7C 00000000 */ nop
/* 2380 80026F80 0C00E05F */ jal func_8003817C
/* 2384 80026F84 00000000 */ nop
/* 2388 80026F88 0C05186C */ jal func_801461B0
/* 238C 80026F8C 00000000 */ nop
/* 2390 80026F90 0C0529CC */ jal func_8014A730
/* 2394 80026F94 00000000 */ nop
/* 2398 80026F98 0C0457B2 */ jal func_80115EC8
/* 239C 80026F9C 0000202D */ daddu $a0, $zero, $zero
/* 23A0 80026FA0 0C039CD0 */ jal func_800E7340
/* 23A4 80026FA4 00000000 */ nop
/* 23A8 80026FA8 0C00F7FE */ jal func_8003DFF8
/* 23AC 80026FAC 00000000 */ nop
/* 23B0 80026FB0 0C04F46E */ jal func_8013D1B8
/* 23B4 80026FB4 00000000 */ nop
/* 23B8 80026FB8 0C016653 */ jal func_8005994C
/* 23BC 80026FBC 00000000 */ nop
/* 23C0 80026FC0 0C0528F4 */ jal func_8014A3D0
/* 23C4 80026FC4 00000000 */ nop
/* 23C8 80026FC8 0C04D85C */ jal func_80136170
/* 23CC 80026FCC 00000000 */ nop
/* 23D0 80026FD0 0C053D52 */ jal func_8014F548
/* 23D4 80026FD4 00000000 */ nop
/* 23D8 80026FD8 0C0530B8 */ jal func_8014C2E0
/* 23DC 80026FDC 00000000 */ nop
/* 23E0 80026FE0 0C0539B2 */ jal func_8014E6C8
/* 23E4 80026FE4 00000000 */ nop
/* 23E8 80026FE8 0C053128 */ jal func_8014C4A0
/* 23EC 80026FEC 00000000 */ nop
/* 23F0 80026FF0 0C00AE80 */ jal func_8002BA00
/* 23F4 80026FF4 00000000 */ nop
/* 23F8 80026FF8 0C00A3AC */ jal func_80028EB0
/* 23FC 80026FFC 00000000 */ nop
/* 2400 80027000 0000182D */ daddu $v1, $zero, $zero
/* 2404 80027004 24050003 */ addiu $a1, $zero, 3
/* 2408 80027008 2404000C */ addiu $a0, $zero, 0xc
/* 240C 8002700C 8E100000 */ lw $s0, ($s0)
.L80027010:
/* 2410 80027010 A6050050 */ sh $a1, 0x50($s0)
/* 2414 80027014 A6040048 */ sh $a0, 0x48($s0)
/* 2418 80027018 24630001 */ addiu $v1, $v1, 1
/* 241C 8002701C 28620004 */ slti $v0, $v1, 4
/* 2420 80027020 1440FFFB */ bnez $v0, .L80027010
/* 2424 80027024 26100002 */ addiu $s0, $s0, 2
/* 2428 80027028 3C03800A */ lui $v1, %hi(D_8009A630)
/* 242C 8002702C 2463A630 */ addiu $v1, $v1, %lo(D_8009A630)
/* 2430 80027030 8C620000 */ lw $v0, ($v1)
/* 2434 80027034 0000202D */ daddu $a0, $zero, $zero
/* 2438 80027038 34420008 */ ori $v0, $v0, 8
/* 243C 8002703C 0C00CC60 */ jal func_80033180
/* 2440 80027040 AC620000 */ sw $v0, ($v1)
/* 2444 80027044 8FBF0014 */ lw $ra, 0x14($sp)
/* 2448 80027048 8FB00010 */ lw $s0, 0x10($sp)
/* 244C 8002704C 03E00008 */ jr $ra
/* 2450 80027050 27BD0018 */ addiu $sp, $sp, 0x18