papermario/ver/us/asm/nonmatchings/code_325AD0/func_E0200044.s
alex a4e1c2f522
Add versioning (#187)
* fix vscode cpp extension messing with files.associations

* move stuff

* it builds!

* symlink papermario.us.z64

* ci: put baserom in right place

* add jp

* fix splat dir

* ignore starrod dump

* .s deps

* update jenkins

* add dsl back

* configure.py versions

* wups

* fine ethan

* fix paths

* configure: default to only the version(s) with existing baseroms

* fix coverage

* fix progress.py

* progress.py verisoning

* remove format.sh from CONTRIBUTING

* update CONTRIBUTING

* fix first_diff

* diff.py: use ver/current/

* update splat.yaml

* trying to fix subrepo

* git subrepo pull tools/splat

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

* configure fix

* git subrepo pull tools/splat

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

Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2021-02-22 18:21:23 +09:00

35 lines
1.5 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_E0200044
/* 325B14 E0200044 04A10002 */ bgez $a1, .LE0200050
/* 325B18 E0200048 00A0102D */ daddu $v0, $a1, $zero
/* 325B1C E020004C 24A2007F */ addiu $v0, $a1, 0x7f
.LE0200050:
/* 325B20 E0200050 000211C3 */ sra $v0, $v0, 7
/* 325B24 E0200054 000211C0 */ sll $v0, $v0, 7
/* 325B28 E0200058 00A21023 */ subu $v0, $a1, $v0
/* 325B2C E020005C 00021080 */ sll $v0, $v0, 2
/* 325B30 E0200060 3C03E020 */ lui $v1, %hi(D_E0200734)
/* 325B34 E0200064 24630734 */ addiu $v1, $v1, %lo(D_E0200734)
/* 325B38 E0200068 00431021 */ addu $v0, $v0, $v1
/* 325B3C E020006C 8C420000 */ lw $v0, ($v0)
/* 325B40 E0200070 04420001 */ bltzl $v0, .LE0200078
/* 325B44 E0200074 00021023 */ negu $v0, $v0
.LE0200078:
/* 325B48 E0200078 24830001 */ addiu $v1, $a0, 1
/* 325B4C E020007C 14600002 */ bnez $v1, .LE0200088
/* 325B50 E0200080 0043001A */ div $zero, $v0, $v1
/* 325B54 E0200084 0007000D */ break 7
.LE0200088:
/* 325B58 E0200088 2401FFFF */ addiu $at, $zero, -1
/* 325B5C E020008C 14610004 */ bne $v1, $at, .LE02000A0
/* 325B60 E0200090 3C018000 */ lui $at, 0x8000
/* 325B64 E0200094 14410002 */ bne $v0, $at, .LE02000A0
/* 325B68 E0200098 00000000 */ nop
/* 325B6C E020009C 0006000D */ break 6
.LE02000A0:
/* 325B70 E02000A0 00001010 */ mfhi $v0
/* 325B74 E02000A4 03E00008 */ jr $ra
/* 325B78 E02000A8 00000000 */ nop