papermario/ver/jp/asm/nonmatchings/main_31300/func_80057904.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

54 lines
2.6 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80057904
/* 32D04 80057904 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 32D08 80057908 308400FF */ andi $a0, $a0, 0xff
/* 32D0C 8005790C 00041140 */ sll $v0, $a0, 5
/* 32D10 80057910 3C038008 */ lui $v1, %hi(D_80078E24)
/* 32D14 80057914 8C638E24 */ lw $v1, %lo(D_80078E24)($v1)
/* 32D18 80057918 00441023 */ subu $v0, $v0, $a0
/* 32D1C 8005791C AFBF0010 */ sw $ra, 0x10($sp)
/* 32D20 80057920 8C63001C */ lw $v1, 0x1c($v1)
/* 32D24 80057924 00021080 */ sll $v0, $v0, 2
/* 32D28 80057928 00621821 */ addu $v1, $v1, $v0
/* 32D2C 8005792C 8C650064 */ lw $a1, 0x64($v1)
/* 32D30 80057930 8C620068 */ lw $v0, 0x68($v1)
/* 32D34 80057934 00A2102A */ slt $v0, $a1, $v0
/* 32D38 80057938 14400017 */ bnez $v0, .L80057998
/* 32D3C 8005793C 00000000 */ nop
/* 32D40 80057940 3C028008 */ lui $v0, %hi(D_80078151)
/* 32D44 80057944 24428151 */ addiu $v0, $v0, %lo(D_80078151)
/* 32D48 80057948 90420000 */ lbu $v0, ($v0)
/* 32D4C 8005794C 14400008 */ bnez $v0, .L80057970
/* 32D50 80057950 00000000 */ nop
/* 32D54 80057954 8463004E */ lh $v1, 0x4e($v1)
/* 32D58 80057958 3C028008 */ lui $v0, %hi(D_80078EB0)
/* 32D5C 8005795C 84428EB0 */ lh $v0, %lo(D_80078EB0)($v0)
/* 32D60 80057960 00620018 */ mult $v1, $v0
/* 32D64 80057964 00004012 */ mflo $t0
/* 32D68 80057968 08015E6B */ j .L800579AC
/* 32D6C 8005796C 00081040 */ sll $v0, $t0, 1
.L80057970:
/* 32D70 80057970 8462004C */ lh $v0, 0x4c($v1)
/* 32D74 80057974 8463004E */ lh $v1, 0x4e($v1)
/* 32D78 80057978 00021040 */ sll $v0, $v0, 1
/* 32D7C 8005797C 3C018008 */ lui $at, %hi(D_80078E30)
/* 32D80 80057980 00220821 */ addu $at, $at, $v0
/* 32D84 80057984 84228E30 */ lh $v0, %lo(D_80078E30)($at)
/* 32D88 80057988 00620018 */ mult $v1, $v0
/* 32D8C 8005798C 00004012 */ mflo $t0
/* 32D90 80057990 08015E6B */ j .L800579AC
/* 32D94 80057994 00081040 */ sll $v0, $t0, 1
.L80057998:
/* 32D98 80057998 84640050 */ lh $a0, 0x50($v1)
/* 32D9C 8005799C 8466005A */ lh $a2, 0x5a($v1)
/* 32DA0 800579A0 0C015F2D */ jal func_80057CB4
/* 32DA4 800579A4 94670058 */ lhu $a3, 0x58($v1)
/* 32DA8 800579A8 00021400 */ sll $v0, $v0, 0x10
.L800579AC:
/* 32DAC 800579AC 00021403 */ sra $v0, $v0, 0x10
/* 32DB0 800579B0 8FBF0010 */ lw $ra, 0x10($sp)
/* 32DB4 800579B4 03E00008 */ jr $ra
/* 32DB8 800579B8 27BD0018 */ addiu $sp, $sp, 0x18