mirror of
https://github.com/pmret/papermario.git
synced 2024-11-19 01:12:28 +01:00
77 lines
3.9 KiB
ArmAsm
77 lines
3.9 KiB
ArmAsm
.set noat # allow manual use of $at
|
|
.set noreorder # don't insert nops after branches
|
|
|
|
glabel func_80218220_6DBFC0
|
|
/* 6DBFC0 80218220 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
/* 6DBFC4 80218224 AFB20018 */ sw $s2, 0x18($sp)
|
|
/* 6DBFC8 80218228 0080902D */ daddu $s2, $a0, $zero
|
|
/* 6DBFCC 8021822C AFBF001C */ sw $ra, 0x1c($sp)
|
|
/* 6DBFD0 80218230 AFB10014 */ sw $s1, 0x14($sp)
|
|
/* 6DBFD4 80218234 AFB00010 */ sw $s0, 0x10($sp)
|
|
/* 6DBFD8 80218238 8E4400A8 */ lw $a0, 0xa8($s2)
|
|
/* 6DBFDC 8021823C 0C04417A */ jal get_entity_by_index
|
|
/* 6DBFE0 80218240 00A0802D */ daddu $s0, $a1, $zero
|
|
/* 6DBFE4 80218244 12000004 */ beqz $s0, .L80218258
|
|
/* 6DBFE8 80218248 0040882D */ daddu $s1, $v0, $zero
|
|
/* 6DBFEC 8021824C 2402003C */ addiu $v0, $zero, 0x3c
|
|
/* 6DBFF0 80218250 AE400070 */ sw $zero, 0x70($s2)
|
|
/* 6DBFF4 80218254 AE420074 */ sw $v0, 0x74($s2)
|
|
.L80218258:
|
|
/* 6DBFF8 80218258 2403003C */ addiu $v1, $zero, 0x3c
|
|
/* 6DBFFC 8021825C 8E420074 */ lw $v0, 0x74($s2)
|
|
/* 6DC000 80218260 3C014270 */ lui $at, 0x4270
|
|
/* 6DC004 80218264 44811000 */ mtc1 $at, $f2
|
|
/* 6DC008 80218268 00621023 */ subu $v0, $v1, $v0
|
|
/* 6DC00C 8021826C 44820000 */ mtc1 $v0, $f0
|
|
/* 6DC010 80218270 00000000 */ nop
|
|
/* 6DC014 80218274 46800020 */ cvt.s.w $f0, $f0
|
|
/* 6DC018 80218278 46020003 */ div.s $f0, $f0, $f2
|
|
/* 6DC01C 8021827C E6200054 */ swc1 $f0, 0x54($s1)
|
|
/* 6DC020 80218280 8E420074 */ lw $v0, 0x74($s2)
|
|
/* 6DC024 80218284 3C014049 */ lui $at, 0x4049
|
|
/* 6DC028 80218288 34210FD8 */ ori $at, $at, 0xfd8
|
|
/* 6DC02C 8021828C 44816000 */ mtc1 $at, $f12
|
|
/* 6DC030 80218290 00621023 */ subu $v0, $v1, $v0
|
|
/* 6DC034 80218294 44820000 */ mtc1 $v0, $f0
|
|
/* 6DC038 80218298 00000000 */ nop
|
|
/* 6DC03C 8021829C 46800020 */ cvt.s.w $f0, $f0
|
|
/* 6DC040 802182A0 46020003 */ div.s $f0, $f0, $f2
|
|
/* 6DC044 802182A4 E6200058 */ swc1 $f0, 0x58($s1)
|
|
/* 6DC048 802182A8 8E420074 */ lw $v0, 0x74($s2)
|
|
/* 6DC04C 802182AC 460C0302 */ mul.s $f12, $f0, $f12
|
|
/* 6DC050 802182B0 00000000 */ nop
|
|
/* 6DC054 802182B4 00621823 */ subu $v1, $v1, $v0
|
|
/* 6DC058 802182B8 44830000 */ mtc1 $v1, $f0
|
|
/* 6DC05C 802182BC 00000000 */ nop
|
|
/* 6DC060 802182C0 46800020 */ cvt.s.w $f0, $f0
|
|
/* 6DC064 802182C4 46020003 */ div.s $f0, $f0, $f2
|
|
/* 6DC068 802182C8 0C00A874 */ jal cos_rad
|
|
/* 6DC06C 802182CC E620005C */ swc1 $f0, 0x5c($s1)
|
|
/* 6DC070 802182D0 3C013F80 */ lui $at, 0x3f80
|
|
/* 6DC074 802182D4 44811000 */ mtc1 $at, $f2
|
|
/* 6DC078 802182D8 00000000 */ nop
|
|
/* 6DC07C 802182DC 46001081 */ sub.s $f2, $f2, $f0
|
|
/* 6DC080 802182E0 3C014487 */ lui $at, 0x4487
|
|
/* 6DC084 802182E4 44810000 */ mtc1 $at, $f0
|
|
/* 6DC088 802182E8 00000000 */ nop
|
|
/* 6DC08C 802182EC 46001082 */ mul.s $f2, $f2, $f0
|
|
/* 6DC090 802182F0 00000000 */ nop
|
|
/* 6DC094 802182F4 3C013F00 */ lui $at, 0x3f00
|
|
/* 6DC098 802182F8 44810000 */ mtc1 $at, $f0
|
|
/* 6DC09C 802182FC 00000000 */ nop
|
|
/* 6DC0A0 80218300 46001082 */ mul.s $f2, $f2, $f0
|
|
/* 6DC0A4 80218304 00000000 */ nop
|
|
/* 6DC0A8 80218308 E6220064 */ swc1 $f2, 0x64($s1)
|
|
/* 6DC0AC 8021830C 8E430074 */ lw $v1, 0x74($s2)
|
|
/* 6DC0B0 80218310 2463FFFF */ addiu $v1, $v1, -1
|
|
/* 6DC0B4 80218314 00031027 */ nor $v0, $zero, $v1
|
|
/* 6DC0B8 80218318 2C420001 */ sltiu $v0, $v0, 1
|
|
/* 6DC0BC 8021831C AE430074 */ sw $v1, 0x74($s2)
|
|
/* 6DC0C0 80218320 8FBF001C */ lw $ra, 0x1c($sp)
|
|
/* 6DC0C4 80218324 8FB20018 */ lw $s2, 0x18($sp)
|
|
/* 6DC0C8 80218328 8FB10014 */ lw $s1, 0x14($sp)
|
|
/* 6DC0CC 8021832C 8FB00010 */ lw $s0, 0x10($sp)
|
|
/* 6DC0D0 80218330 00021040 */ sll $v0, $v0, 1
|
|
/* 6DC0D4 80218334 03E00008 */ jr $ra
|
|
/* 6DC0D8 80218338 27BD0020 */ addiu $sp, $sp, 0x20
|