papermario/ver/jp/asm/nonmatchings/main_46AC0/func_8006B6C0.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

109 lines
5.0 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_8006B6C0
/* 46AC0 8006B6C0 3C02A460 */ lui $v0, 0xa460
/* 46AC4 8006B6C4 34420010 */ ori $v0, $v0, 0x10
/* 46AC8 8006B6C8 8C420000 */ lw $v0, ($v0)
/* 46ACC 8006B6CC 30420003 */ andi $v0, $v0, 3
/* 46AD0 8006B6D0 10400006 */ beqz $v0, .L8006B6EC
/* 46AD4 8006B6D4 3C03A460 */ lui $v1, 0xa460
/* 46AD8 8006B6D8 34630010 */ ori $v1, $v1, 0x10
.L8006B6DC:
/* 46ADC 8006B6DC 8C620000 */ lw $v0, ($v1)
/* 46AE0 8006B6E0 30420003 */ andi $v0, $v0, 3
/* 46AE4 8006B6E4 1440FFFD */ bnez $v0, .L8006B6DC
/* 46AE8 8006B6E8 00000000 */ nop
.L8006B6EC:
/* 46AEC 8006B6EC 90880009 */ lbu $t0, 9($a0)
/* 46AF0 8006B6F0 00081080 */ sll $v0, $t0, 2
/* 46AF4 8006B6F4 3C078009 */ lui $a3, %hi(D_80093D50)
/* 46AF8 8006B6F8 00E23821 */ addu $a3, $a3, $v0
/* 46AFC 8006B6FC 8CE73D50 */ lw $a3, %lo(D_80093D50)($a3)
/* 46B00 8006B700 90820004 */ lbu $v0, 4($a0)
/* 46B04 8006B704 90E30004 */ lbu $v1, 4($a3)
/* 46B08 8006B708 1062003F */ beq $v1, $v0, .L8006B808
/* 46B0C 8006B70C 00000000 */ nop
/* 46B10 8006B710 1500001A */ bnez $t0, .L8006B77C
/* 46B14 8006B714 00E01821 */ addu $v1, $a3, $zero
/* 46B18 8006B718 90620005 */ lbu $v0, 5($v1)
/* 46B1C 8006B71C 90870005 */ lbu $a3, 5($a0)
/* 46B20 8006B720 10470003 */ beq $v0, $a3, .L8006B730
/* 46B24 8006B724 3C02A460 */ lui $v0, 0xa460
/* 46B28 8006B728 34420014 */ ori $v0, $v0, 0x14
/* 46B2C 8006B72C AC470000 */ sw $a3, ($v0)
.L8006B730:
/* 46B30 8006B730 90620006 */ lbu $v0, 6($v1)
/* 46B34 8006B734 90870006 */ lbu $a3, 6($a0)
/* 46B38 8006B738 10470003 */ beq $v0, $a3, .L8006B748
/* 46B3C 8006B73C 3C02A460 */ lui $v0, 0xa460
/* 46B40 8006B740 3442001C */ ori $v0, $v0, 0x1c
/* 46B44 8006B744 AC470000 */ sw $a3, ($v0)
.L8006B748:
/* 46B48 8006B748 90620007 */ lbu $v0, 7($v1)
/* 46B4C 8006B74C 90870007 */ lbu $a3, 7($a0)
/* 46B50 8006B750 10470003 */ beq $v0, $a3, .L8006B760
/* 46B54 8006B754 3C02A460 */ lui $v0, 0xa460
/* 46B58 8006B758 34420020 */ ori $v0, $v0, 0x20
/* 46B5C 8006B75C AC470000 */ sw $a3, ($v0)
.L8006B760:
/* 46B60 8006B760 90620008 */ lbu $v0, 8($v1)
/* 46B64 8006B764 90870008 */ lbu $a3, 8($a0)
/* 46B68 8006B768 1047001D */ beq $v0, $a3, .L8006B7E0
/* 46B6C 8006B76C 00000000 */ nop
/* 46B70 8006B770 3C02A460 */ lui $v0, 0xa460
/* 46B74 8006B774 0801ADF7 */ j .L8006B7DC
/* 46B78 8006B778 34420018 */ ori $v0, $v0, 0x18
.L8006B77C:
/* 46B7C 8006B77C 90620005 */ lbu $v0, 5($v1)
/* 46B80 8006B780 90870005 */ lbu $a3, 5($a0)
/* 46B84 8006B784 10470003 */ beq $v0, $a3, .L8006B794
/* 46B88 8006B788 3C02A460 */ lui $v0, 0xa460
/* 46B8C 8006B78C 34420024 */ ori $v0, $v0, 0x24
/* 46B90 8006B790 AC470000 */ sw $a3, ($v0)
.L8006B794:
/* 46B94 8006B794 90620006 */ lbu $v0, 6($v1)
/* 46B98 8006B798 90870006 */ lbu $a3, 6($a0)
/* 46B9C 8006B79C 10470003 */ beq $v0, $a3, .L8006B7AC
/* 46BA0 8006B7A0 3C02A460 */ lui $v0, 0xa460
/* 46BA4 8006B7A4 3442002C */ ori $v0, $v0, 0x2c
/* 46BA8 8006B7A8 AC470000 */ sw $a3, ($v0)
.L8006B7AC:
/* 46BAC 8006B7AC 90620007 */ lbu $v0, 7($v1)
/* 46BB0 8006B7B0 90870007 */ lbu $a3, 7($a0)
/* 46BB4 8006B7B4 10470003 */ beq $v0, $a3, .L8006B7C4
/* 46BB8 8006B7B8 3C02A460 */ lui $v0, 0xa460
/* 46BBC 8006B7BC 34420030 */ ori $v0, $v0, 0x30
/* 46BC0 8006B7C0 AC470000 */ sw $a3, ($v0)
.L8006B7C4:
/* 46BC4 8006B7C4 90620008 */ lbu $v0, 8($v1)
/* 46BC8 8006B7C8 90870008 */ lbu $a3, 8($a0)
/* 46BCC 8006B7CC 10470004 */ beq $v0, $a3, .L8006B7E0
/* 46BD0 8006B7D0 00000000 */ nop
/* 46BD4 8006B7D4 3C02A460 */ lui $v0, 0xa460
/* 46BD8 8006B7D8 34420028 */ ori $v0, $v0, 0x28
.L8006B7DC:
/* 46BDC 8006B7DC AC470000 */ sw $a3, ($v0)
.L8006B7E0:
/* 46BE0 8006B7E0 90820004 */ lbu $v0, 4($a0)
/* 46BE4 8006B7E4 A0620004 */ sb $v0, 4($v1)
/* 46BE8 8006B7E8 90820005 */ lbu $v0, 5($a0)
/* 46BEC 8006B7EC A0620005 */ sb $v0, 5($v1)
/* 46BF0 8006B7F0 90820006 */ lbu $v0, 6($a0)
/* 46BF4 8006B7F4 A0620006 */ sb $v0, 6($v1)
/* 46BF8 8006B7F8 90820007 */ lbu $v0, 7($a0)
/* 46BFC 8006B7FC A0620007 */ sb $v0, 7($v1)
/* 46C00 8006B800 90820008 */ lbu $v0, 8($a0)
/* 46C04 8006B804 A0620008 */ sb $v0, 8($v1)
.L8006B808:
/* 46C08 8006B808 8C82000C */ lw $v0, 0xc($a0)
/* 46C0C 8006B80C 3C03A000 */ lui $v1, 0xa000
/* 46C10 8006B810 00451025 */ or $v0, $v0, $a1
/* 46C14 8006B814 00431025 */ or $v0, $v0, $v1
/* 46C18 8006B818 AC460000 */ sw $a2, ($v0)
/* 46C1C 8006B81C 03E00008 */ jr $ra
/* 46C20 8006B820 00001021 */ addu $v0, $zero, $zero
/* 46C24 8006B824 00000000 */ nop
/* 46C28 8006B828 00000000 */ nop
/* 46C2C 8006B82C 00000000 */ nop