papermario/asm/nonmatchings/code_2e230_len_2190/func_800538F8.s

37 lines
1.8 KiB
ArmAsm
Raw Normal View History

2020-09-24 05:16:13 +02:00
.set noat # allow manual use of $at
2020-08-04 08:49:11 +02:00
.set noreorder # don't insert nops after branches
glabel func_800538F8
2020-09-24 05:16:13 +02:00
/* 2ECF8 800538F8 0080282D */ daddu $a1, $a0, $zero
/* 2ECFC 800538FC 04A10010 */ bgez $a1, .L80053940
/* 2ED00 80053900 30A3007F */ andi $v1, $a1, 0x7f
/* 2ED04 80053904 00052823 */ negu $a1, $a1
2020-11-29 08:13:07 +01:00
/* 2ED08 80053908 3C048008 */ lui $a0, %hi(D_80078730)
/* 2ED0C 8005390C 24848730 */ addiu $a0, $a0, %lo(D_80078730)
2020-09-24 05:16:13 +02:00
/* 2ED10 80053910 30A2007F */ andi $v0, $a1, 0x7f
/* 2ED14 80053914 244200A0 */ addiu $v0, $v0, 0xa0
/* 2ED18 80053918 00021080 */ sll $v0, $v0, 2
/* 2ED1C 8005391C 00441021 */ addu $v0, $v0, $a0
/* 2ED20 80053920 30A33F80 */ andi $v1, $a1, 0x3f80
/* 2ED24 80053924 00031942 */ srl $v1, $v1, 5
/* 2ED28 80053928 00641821 */ addu $v1, $v1, $a0
/* 2ED2C 8005392C C4420000 */ lwc1 $f2, ($v0)
/* 2ED30 80053930 C4600480 */ lwc1 $f0, 0x480($v1)
/* 2ED34 80053934 46001002 */ mul.s $f0, $f2, $f0
/* 2ED38 80053938 03E00008 */ jr $ra
/* 2ED3C 8005393C 00000000 */ nop
2020-08-04 08:49:11 +02:00
.L80053940:
2020-11-29 08:13:07 +01:00
/* 2ED40 80053940 3C048008 */ lui $a0, %hi(D_80078730)
/* 2ED44 80053944 24848730 */ addiu $a0, $a0, %lo(D_80078730)
2020-09-24 05:16:13 +02:00
/* 2ED48 80053948 00031880 */ sll $v1, $v1, 2
/* 2ED4C 8005394C 00641821 */ addu $v1, $v1, $a0
/* 2ED50 80053950 30A20F80 */ andi $v0, $a1, 0xf80
/* 2ED54 80053954 00021142 */ srl $v0, $v0, 5
/* 2ED58 80053958 34420200 */ ori $v0, $v0, 0x200
/* 2ED5C 8005395C 00441021 */ addu $v0, $v0, $a0
/* 2ED60 80053960 C4620000 */ lwc1 $f2, ($v1)
/* 2ED64 80053964 C4400000 */ lwc1 $f0, ($v0)
/* 2ED68 80053968 46001002 */ mul.s $f0, $f2, $f0
/* 2ED6C 8005396C 03E00008 */ jr $ra
/* 2ED70 80053970 00000000 */ nop