papermario/ver/jp/asm/nonmatchings/main_285C0/func_8004E288.s
Ethan Roseman 698cf99458
jp cod (Created the first segment's c files for jp) (#194)
* jp cod

* just have less code and it works

* oops

* removing splat cause subrepo is being dumb

* git subrepo clone https://github.com/ethteck/splat.git tools/splat

subrepo:
  subdir:   "tools/splat"
  merged:   "d7281bae6a"
upstream:
  origin:   "https://github.com/ethteck/splat.git"
  branch:   "master"
  commit:   "d7281bae6a"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "2f68596"

* move jp stuff + revert configure

* git subrepo pull tools/splat

subrepo:
  subdir:   "tools/splat"
  merged:   "c56195a9c5"
upstream:
  origin:   "https://github.com/ethteck/splat.git"
  branch:   "master"
  commit:   "c56195a9c5"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "2f68596"
2021-02-27 00:36:33 +09:00

168 lines
8.8 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_8004E288
/* 29688 8004E288 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 2968C 8004E28C AFB10014 */ sw $s1, 0x14($sp)
/* 29690 8004E290 0080882D */ daddu $s1, $a0, $zero
/* 29694 8004E294 AFB00010 */ sw $s0, 0x10($sp)
/* 29698 8004E298 0000802D */ daddu $s0, $zero, $zero
/* 2969C 8004E29C 2408FFFF */ addiu $t0, $zero, -1
/* 296A0 8004E2A0 3C057FFF */ lui $a1, 0x7fff
/* 296A4 8004E2A4 24070040 */ addiu $a3, $zero, 0x40
/* 296A8 8004E2A8 2406007F */ addiu $a2, $zero, 0x7f
/* 296AC 8004E2AC 2404025C */ addiu $a0, $zero, 0x25c
/* 296B0 8004E2B0 AFBF0018 */ sw $ra, 0x18($sp)
.L8004E2B4:
/* 296B4 8004E2B4 02241021 */ addu $v0, $s1, $a0
/* 296B8 8004E2B8 AC48000C */ sw $t0, 0xc($v0)
/* 296BC 8004E2BC AC450018 */ sw $a1, 0x18($v0)
/* 296C0 8004E2C0 A047004A */ sb $a3, 0x4a($v0)
/* 296C4 8004E2C4 A040004B */ sb $zero, 0x4b($v0)
/* 296C8 8004E2C8 A4400044 */ sh $zero, 0x44($v0)
/* 296CC 8004E2CC A4400046 */ sh $zero, 0x46($v0)
/* 296D0 8004E2D0 A0400048 */ sb $zero, 0x48($v0)
/* 296D4 8004E2D4 A0460049 */ sb $a2, 0x49($v0)
/* 296D8 8004E2D8 A040004C */ sb $zero, 0x4c($v0)
/* 296DC 8004E2DC AC45002C */ sw $a1, 0x2c($v0)
/* 296E0 8004E2E0 AC400004 */ sw $zero, 4($v0)
/* 296E4 8004E2E4 AC400008 */ sw $zero, 8($v0)
/* 296E8 8004E2E8 A440003E */ sh $zero, 0x3e($v0)
/* 296EC 8004E2EC A4400038 */ sh $zero, 0x38($v0)
/* 296F0 8004E2F0 A0400056 */ sb $zero, 0x56($v0)
/* 296F4 8004E2F4 A440003A */ sh $zero, 0x3a($v0)
/* 296F8 8004E2F8 A0400055 */ sb $zero, 0x55($v0)
/* 296FC 8004E2FC AC40001C */ sw $zero, 0x1c($v0)
/* 29700 8004E300 AC400020 */ sw $zero, 0x20($v0)
/* 29704 8004E304 AC400024 */ sw $zero, 0x24($v0)
/* 29708 8004E308 AC400030 */ sw $zero, 0x30($v0)
/* 2970C 8004E30C A4400034 */ sh $zero, 0x34($v0)
/* 29710 8004E310 A4400036 */ sh $zero, 0x36($v0)
/* 29714 8004E314 A040004D */ sb $zero, 0x4d($v0)
/* 29718 8004E318 A040004E */ sb $zero, 0x4e($v0)
/* 2971C 8004E31C A040004F */ sb $zero, 0x4f($v0)
/* 29720 8004E320 A0400050 */ sb $zero, 0x50($v0)
/* 29724 8004E324 A0400051 */ sb $zero, 0x51($v0)
/* 29728 8004E328 A0400054 */ sb $zero, 0x54($v0)
/* 2972C 8004E32C A0400057 */ sb $zero, 0x57($v0)
/* 29730 8004E330 A0400058 */ sb $zero, 0x58($v0)
/* 29734 8004E334 A0400059 */ sb $zero, 0x59($v0)
/* 29738 8004E338 A040005A */ sb $zero, 0x5a($v0)
/* 2973C 8004E33C 92230235 */ lbu $v1, 0x235($s1)
/* 29740 8004E340 A043005B */ sb $v1, 0x5b($v0)
/* 29744 8004E344 A050005C */ sb $s0, 0x5c($v0)
/* 29748 8004E348 26100001 */ addiu $s0, $s0, 1
/* 2974C 8004E34C 2A020010 */ slti $v0, $s0, 0x10
/* 29750 8004E350 1440FFD8 */ bnez $v0, .L8004E2B4
/* 29754 8004E354 24840060 */ addiu $a0, $a0, 0x60
/* 29758 8004E358 0000802D */ daddu $s0, $zero, $zero
/* 2975C 8004E35C 2404FFFF */ addiu $a0, $zero, -1
/* 29760 8004E360 3C014000 */ lui $at, 0x4000
/* 29764 8004E364 44810000 */ mtc1 $at, $f0
/* 29768 8004E368 2403085C */ addiu $v1, $zero, 0x85c
.L8004E36C:
/* 2976C 8004E36C 02231021 */ addu $v0, $s1, $v1
/* 29770 8004E370 26100001 */ addiu $s0, $s0, 1
/* 29774 8004E374 AC440000 */ sw $a0, ($v0)
/* 29778 8004E378 E4400004 */ swc1 $f0, 4($v0)
/* 2977C 8004E37C A4400014 */ sh $zero, 0x14($v0)
/* 29780 8004E380 A0400016 */ sb $zero, 0x16($v0)
/* 29784 8004E384 AC40000C */ sw $zero, 0xc($v0)
/* 29788 8004E388 A0400012 */ sb $zero, 0x12($v0)
/* 2978C 8004E38C 2A020018 */ slti $v0, $s0, 0x18
/* 29790 8004E390 1440FFF6 */ bnez $v0, .L8004E36C
/* 29794 8004E394 24630018 */ addiu $v1, $v1, 0x18
/* 29798 8004E398 0C01416C */ jal func_800505B0
/* 2979C 8004E39C 0220202D */ daddu $a0, $s1, $zero
/* 297A0 8004E3A0 0000802D */ daddu $s0, $zero, $zero
/* 297A4 8004E3A4 3C014300 */ lui $at, 0x4300
/* 297A8 8004E3A8 44810000 */ mtc1 $at, $f0
/* 297AC 8004E3AC 3C013F80 */ lui $at, 0x3f80
/* 297B0 8004E3B0 44811000 */ mtc1 $at, $f2
/* 297B4 8004E3B4 24023CF0 */ addiu $v0, $zero, 0x3cf0
/* 297B8 8004E3B8 AE2200B0 */ sw $v0, 0xb0($s1)
/* 297BC 8004E3BC 2402009C */ addiu $v0, $zero, 0x9c
/* 297C0 8004E3C0 A6220208 */ sh $v0, 0x208($s1)
/* 297C4 8004E3C4 24020080 */ addiu $v0, $zero, 0x80
/* 297C8 8004E3C8 A222021E */ sb $v0, 0x21e($s1)
/* 297CC 8004E3CC 3C027F00 */ lui $v0, 0x7f00
/* 297D0 8004E3D0 AE2200C0 */ sw $v0, 0xc0($s1)
/* 297D4 8004E3D4 24020001 */ addiu $v0, $zero, 1
/* 297D8 8004E3D8 AE200020 */ sw $zero, 0x20($s1)
/* 297DC 8004E3DC AE200074 */ sw $zero, 0x74($s1)
/* 297E0 8004E3E0 AE2000B8 */ sw $zero, 0xb8($s1)
/* 297E4 8004E3E4 A620020C */ sh $zero, 0x20c($s1)
/* 297E8 8004E3E8 A620020E */ sh $zero, 0x20e($s1)
/* 297EC 8004E3EC AE2000CC */ sw $zero, 0xcc($s1)
/* 297F0 8004E3F0 AE2000C8 */ sw $zero, 0xc8($s1)
/* 297F4 8004E3F4 AE2000C4 */ sw $zero, 0xc4($s1)
/* 297F8 8004E3F8 AE20016C */ sw $zero, 0x16c($s1)
/* 297FC 8004E3FC A2200170 */ sb $zero, 0x170($s1)
/* 29800 8004E400 A2200171 */ sb $zero, 0x171($s1)
/* 29804 8004E404 AE200164 */ sw $zero, 0x164($s1)
/* 29808 8004E408 AE200160 */ sw $zero, 0x160($s1)
/* 2980C 8004E40C AE20015C */ sw $zero, 0x15c($s1)
/* 29810 8004E410 AE200158 */ sw $zero, 0x158($s1)
/* 29814 8004E414 AE200168 */ sw $zero, 0x168($s1)
/* 29818 8004E418 A2200210 */ sb $zero, 0x210($s1)
/* 2981C 8004E41C A2200222 */ sb $zero, 0x222($s1)
/* 29820 8004E420 A2200223 */ sb $zero, 0x223($s1)
/* 29824 8004E424 AE200204 */ sw $zero, 0x204($s1)
/* 29828 8004E428 A2200232 */ sb $zero, 0x232($s1)
/* 2982C 8004E42C A2220233 */ sb $v0, 0x233($s1)
/* 29830 8004E430 A2200211 */ sb $zero, 0x211($s1)
/* 29834 8004E434 E62000D0 */ swc1 $f0, 0xd0($s1)
/* 29838 8004E438 E62200D0 */ swc1 $f2, 0xd0($s1)
/* 2983C 8004E43C 0220202D */ daddu $a0, $s1, $zero
.L8004E440:
/* 29840 8004E440 0C01393D */ jal func_8004E4F4
/* 29844 8004E444 0200282D */ daddu $a1, $s0, $zero
/* 29848 8004E448 26100001 */ addiu $s0, $s0, 1
/* 2984C 8004E44C 2A020008 */ slti $v0, $s0, 8
/* 29850 8004E450 1440FFFB */ bnez $v0, .L8004E440
/* 29854 8004E454 0220202D */ daddu $a0, $s1, $zero
/* 29858 8004E458 24100003 */ addiu $s0, $zero, 3
/* 2985C 8004E45C 02301021 */ addu $v0, $s1, $s0
.L8004E460:
/* 29860 8004E460 A0400224 */ sb $zero, 0x224($v0)
/* 29864 8004E464 2610FFFF */ addiu $s0, $s0, -1
/* 29868 8004E468 0601FFFD */ bgez $s0, .L8004E460
/* 2986C 8004E46C 2442FFFF */ addiu $v0, $v0, -1
/* 29870 8004E470 0000802D */ daddu $s0, $zero, $zero
/* 29874 8004E474 0220182D */ daddu $v1, $s1, $zero
/* 29878 8004E478 A2200220 */ sb $zero, 0x220($s1)
/* 2987C 8004E47C AE200018 */ sw $zero, 0x18($s1)
.L8004E480:
/* 29880 8004E480 8E220068 */ lw $v0, 0x68($s1)
/* 29884 8004E484 26100001 */ addiu $s0, $s0, 1
/* 29888 8004E488 AC6200D8 */ sw $v0, 0xd8($v1)
/* 2988C 8004E48C 2A020020 */ slti $v0, $s0, 0x20
/* 29890 8004E490 1440FFFB */ bnez $v0, .L8004E480
/* 29894 8004E494 24630004 */ addiu $v1, $v1, 4
/* 29898 8004E498 8E240068 */ lw $a0, 0x68($s1)
/* 2989C 8004E49C 24050001 */ addiu $a1, $zero, 1
/* 298A0 8004E4A0 3C07F000 */ lui $a3, 0xf000
/* 298A4 8004E4A4 3C063000 */ lui $a2, 0x3000
.L8004E4A8:
/* 298A8 8004E4A8 8C830000 */ lw $v1, ($a0)
/* 298AC 8004E4AC 14600003 */ bnez $v1, .L8004E4BC
/* 298B0 8004E4B0 24840004 */ addiu $a0, $a0, 4
/* 298B4 8004E4B4 08013935 */ j .L8004E4D4
/* 298B8 8004E4B8 0000282D */ daddu $a1, $zero, $zero
.L8004E4BC:
/* 298BC 8004E4BC 00671024 */ and $v0, $v1, $a3
/* 298C0 8004E4C0 14460004 */ bne $v0, $a2, .L8004E4D4
/* 298C4 8004E4C4 3062001F */ andi $v0, $v1, 0x1f
/* 298C8 8004E4C8 00021080 */ sll $v0, $v0, 2
/* 298CC 8004E4CC 02221021 */ addu $v0, $s1, $v0
/* 298D0 8004E4D0 AC4400D8 */ sw $a0, 0xd8($v0)
.L8004E4D4:
/* 298D4 8004E4D4 14A0FFF4 */ bnez $a1, .L8004E4A8
/* 298D8 8004E4D8 24020002 */ addiu $v0, $zero, 2
/* 298DC 8004E4DC A2220221 */ sb $v0, 0x221($s1)
/* 298E0 8004E4E0 8FBF0018 */ lw $ra, 0x18($sp)
/* 298E4 8004E4E4 8FB10014 */ lw $s1, 0x14($sp)
/* 298E8 8004E4E8 8FB00010 */ lw $s0, 0x10($sp)
/* 298EC 8004E4EC 03E00008 */ jr $ra
/* 298F0 8004E4F0 27BD0020 */ addiu $sp, $sp, 0x20