papermario/ver/us/asm/nonmatchings/code_32C7A0/func_E0010104.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

64 lines
3.1 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_E0010104
/* 32C8A4 E0010104 C4800070 */ lwc1 $f0, 0x70($a0)
/* 32C8A8 E0010108 3C01E001 */ lui $at, %hi(D_E0010710)
/* 32C8AC E001010C D4220710 */ ldc1 $f2, %lo(D_E0010710)($at)
/* 32C8B0 E0010110 46000021 */ cvt.d.s $f0, $f0
/* 32C8B4 E0010114 46220002 */ mul.d $f0, $f0, $f2
/* 32C8B8 E0010118 00000000 */ nop
/* 32C8BC E001011C C48A0090 */ lwc1 $f10, 0x90($a0)
/* 32C8C0 E0010120 46200020 */ cvt.s.d $f0, $f0
/* 32C8C4 E0010124 460A0282 */ mul.s $f10, $f0, $f10
/* 32C8C8 E0010128 00000000 */ nop
/* 32C8CC E001012C E4800070 */ swc1 $f0, 0x70($a0)
/* 32C8D0 E0010130 46000306 */ mov.s $f12, $f0
/* 32C8D4 E0010134 C4800094 */ lwc1 $f0, 0x94($a0)
/* 32C8D8 E0010138 46006302 */ mul.s $f12, $f12, $f0
/* 32C8DC E001013C 00000000 */ nop
/* 32C8E0 E0010140 C4820088 */ lwc1 $f2, 0x88($a0)
/* 32C8E4 E0010144 C480008C */ lwc1 $f0, 0x8c($a0)
/* 32C8E8 E0010148 46001080 */ add.s $f2, $f2, $f0
/* 32C8EC E001014C C4800084 */ lwc1 $f0, 0x84($a0)
/* 32C8F0 E0010150 46020000 */ add.s $f0, $f0, $f2
/* 32C8F4 E0010154 C488000C */ lwc1 $f8, 0xc($a0)
/* 32C8F8 E0010158 460A4200 */ add.s $f8, $f8, $f10
/* 32C8FC E001015C C4840080 */ lwc1 $f4, 0x80($a0)
/* 32C900 E0010160 46002100 */ add.s $f4, $f4, $f0
/* 32C904 E0010164 E4800084 */ swc1 $f0, 0x84($a0)
/* 32C908 E0010168 C4800014 */ lwc1 $f0, 0x14($a0)
/* 32C90C E001016C C4860010 */ lwc1 $f6, 0x10($a0)
/* 32C910 E0010170 460C0000 */ add.s $f0, $f0, $f12
/* 32C914 E0010174 E4820088 */ swc1 $f2, 0x88($a0)
/* 32C918 E0010178 44801000 */ mtc1 $zero, $f2
/* 32C91C E001017C 46043180 */ add.s $f6, $f6, $f4
/* 32C920 E0010180 E488000C */ swc1 $f8, 0xc($a0)
/* 32C924 E0010184 4602203C */ c.lt.s $f4, $f2
/* 32C928 E0010188 E4840080 */ swc1 $f4, 0x80($a0)
/* 32C92C E001018C E4800014 */ swc1 $f0, 0x14($a0)
/* 32C930 E0010190 45000006 */ bc1f .LE00101AC
/* 32C934 E0010194 E4860010 */ swc1 $f6, 0x10($a0)
/* 32C938 E0010198 3C013B83 */ lui $at, 0x3b83
/* 32C93C E001019C 3421126F */ ori $at, $at, 0x126f
/* 32C940 E00101A0 44810000 */ mtc1 $at, $f0
/* 32C944 E00101A4 00000000 */ nop
/* 32C948 E00101A8 E4800088 */ swc1 $f0, 0x88($a0)
.LE00101AC:
/* 32C94C E00101AC C4800024 */ lwc1 $f0, 0x24($a0)
/* 32C950 E00101B0 3C013F80 */ lui $at, 0x3f80
/* 32C954 E00101B4 44811000 */ mtc1 $at, $f2
/* 32C958 E00101B8 00000000 */ nop
/* 32C95C E00101BC 46020001 */ sub.s $f0, $f0, $f2
/* 32C960 E00101C0 3C01C2C8 */ lui $at, 0xc2c8
/* 32C964 E00101C4 44811000 */ mtc1 $at, $f2
/* 32C968 E00101C8 00000000 */ nop
/* 32C96C E00101CC 4602003C */ c.lt.s $f0, $f2
/* 32C970 E00101D0 00000000 */ nop
/* 32C974 E00101D4 45000002 */ bc1f .LE00101E0
/* 32C978 E00101D8 E4800024 */ swc1 $f0, 0x24($a0)
/* 32C97C E00101DC E4820024 */ swc1 $f2, 0x24($a0)
.LE00101E0:
/* 32C980 E00101E0 03E00008 */ jr $ra
/* 32C984 E00101E4 00000000 */ nop