Files
SpaghettiKart/asm/non_matchings/code_actors/func_80299144.s
T
CoderStig f959f03184 Matched some memory.c and other (#55)
* Matched some memory.c

* And more
2021-11-16 02:39:33 -07:00

120 lines
6.1 KiB
ArmAsm

glabel func_80299144
/* 102754 80299144 27BDFFB0 */ addiu $sp, $sp, -0x50
/* 102758 80299148 AFBF0024 */ sw $ra, 0x24($sp)
/* 10275C 8029914C AFB00020 */ sw $s0, 0x20($sp)
/* 102760 80299150 AFA50054 */ sw $a1, 0x54($sp)
/* 102764 80299154 84C20002 */ lh $v0, 2($a2)
/* 102768 80299158 00C08025 */ move $s0, $a2
/* 10276C 8029915C 24C50018 */ addiu $a1, $a2, 0x18
/* 102770 80299160 304E0800 */ andi $t6, $v0, 0x800
/* 102774 80299164 15C00064 */ bnez $t6, .L802992F8
/* 102778 80299168 24070000 */ li $a3, 0
/* 10277C 8029916C 3C0F800E */ lui $t7, %hi(camera1) # $t7, 0x800e
/* 102780 80299170 8DEFDB40 */ lw $t7, %lo(camera1)($t7)
/* 102784 80299174 240100B8 */ li $at, 184
/* 102788 80299178 94860026 */ lhu $a2, 0x26($a0)
/* 10278C 8029917C 008FC023 */ subu $t8, $a0, $t7
/* 102790 80299180 0301001A */ div $zero, $t8, $at
/* 102794 80299184 0000C812 */ mflo $t9
/* 102798 80299188 00195880 */ sll $t3, $t9, 2
/* 10279C 8029918C 3C018015 */ lui $at, %hi(D_80150130)
/* 1027A0 80299190 002B0821 */ addu $at, $at, $t3
/* 1027A4 80299194 C4240130 */ lwc1 $f4, %lo(D_80150130)($at)
/* 1027A8 80299198 3C01802C */ lui $at, %hi(D_802B9658) # $at, 0x802c
/* 1027AC 8029919C C4269658 */ lwc1 $f6, %lo(D_802B9658)($at)
/* 1027B0 802991A0 AFA50028 */ sw $a1, 0x28($sp)
/* 1027B4 802991A4 A7A2004A */ sh $v0, 0x4a($sp)
/* 1027B8 802991A8 E7A40010 */ swc1 $f4, 0x10($sp)
/* 1027BC 802991AC 0C0AE034 */ jal func_802B80D0
/* 1027C0 802991B0 E7A60014 */ swc1 $f6, 0x14($sp)
/* 1027C4 802991B4 44804000 */ mtc1 $zero, $f8
/* 1027C8 802991B8 87A2004A */ lh $v0, 0x4a($sp)
/* 1027CC 802991BC 8FA70054 */ lw $a3, 0x54($sp)
/* 1027D0 802991C0 4608003C */ c.lt.s $f0, $f8
/* 1027D4 802991C4 304C0400 */ andi $t4, $v0, 0x400
/* 1027D8 802991C8 4503004C */ bc1tl .L802992FC
/* 1027DC 802991CC 8FBF0024 */ lw $ra, 0x24($sp)
/* 1027E0 802991D0 1580000B */ bnez $t4, .L80299200
/* 1027E4 802991D4 3C01802C */ lui $at, %hi(D_802B965C) # $at, 0x802c
/* 1027E8 802991D8 C42A965C */ lwc1 $f10, %lo(D_802B965C)($at)
/* 1027EC 802991DC 8FA40028 */ lw $a0, 0x28($sp)
/* 1027F0 802991E0 26050010 */ addiu $a1, $s0, 0x10
/* 1027F4 802991E4 460A003C */ c.lt.s $f0, $f10
/* 1027F8 802991E8 00000000 */ nop
/* 1027FC 802991EC 45020005 */ bc1fl .L80299204
/* 102800 802991F0 C6100018 */ lwc1 $f16, 0x18($s0)
/* 102804 802991F4 0C0A5E53 */ jal func_8029794C
/* 102808 802991F8 3C064040 */ lui $a2, 0x4040
/* 10280C 802991FC 8FA70054 */ lw $a3, 0x54($sp)
.L80299200:
/* 102810 80299200 C6100018 */ lwc1 $f16, 0x18($s0)
.L80299204:
/* 102814 80299204 00E02025 */ move $a0, $a3
/* 102818 80299208 00002825 */ move $a1, $zero
/* 10281C 8029920C E4F00030 */ swc1 $f16, 0x30($a3)
/* 102820 80299210 C612001C */ lwc1 $f18, 0x1c($s0)
/* 102824 80299214 E4F20034 */ swc1 $f18, 0x34($a3)
/* 102828 80299218 C6040020 */ lwc1 $f4, 0x20($s0)
/* 10282C 8029921C 0C0AD3FE */ jal func_802B4FF8
/* 102830 80299220 E4E40038 */ swc1 $f4, 0x38($a3)
/* 102834 80299224 10400034 */ beqz $v0, .L802992F8
/* 102838 80299228 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
/* 10283C 8029922C 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
/* 102840 80299230 8C620000 */ lw $v0, ($v1)
/* 102844 80299234 3C0F0D00 */ lui $t7, %hi(D_0D004C68) # $t7, 0xd00
/* 102848 80299238 25EF4C68 */ addiu $t7, %lo(D_0D004C68) # addiu $t7, $t7, 0x4c68
/* 10284C 8029923C 244D0008 */ addiu $t5, $v0, 8
/* 102850 80299240 AC6D0000 */ sw $t5, ($v1)
/* 102854 80299244 3C0EFD10 */ lui $t6, 0xfd10
/* 102858 80299248 AC4E0000 */ sw $t6, ($v0)
/* 10285C 8029924C AC4F0004 */ sw $t7, 4($v0)
/* 102860 80299250 8C620000 */ lw $v0, ($v1)
/* 102864 80299254 3C19E800 */ lui $t9, 0xe800
/* 102868 80299258 3C0CF500 */ lui $t4, (0xF5000100 >> 16) # lui $t4, 0xf500
/* 10286C 8029925C 24580008 */ addiu $t8, $v0, 8
/* 102870 80299260 AC780000 */ sw $t8, ($v1)
/* 102874 80299264 AC400004 */ sw $zero, 4($v0)
/* 102878 80299268 AC590000 */ sw $t9, ($v0)
/* 10287C 8029926C 8C620000 */ lw $v0, ($v1)
/* 102880 80299270 358C0100 */ ori $t4, (0xF5000100 & 0xFFFF) # ori $t4, $t4, 0x100
/* 102884 80299274 3C0D0700 */ lui $t5, 0x700
/* 102888 80299278 244B0008 */ addiu $t3, $v0, 8
/* 10288C 8029927C AC6B0000 */ sw $t3, ($v1)
/* 102890 80299280 AC4D0004 */ sw $t5, 4($v0)
/* 102894 80299284 AC4C0000 */ sw $t4, ($v0)
/* 102898 80299288 8C620000 */ lw $v0, ($v1)
/* 10289C 8029928C 3C0FE600 */ lui $t7, 0xe600
/* 1028A0 80299290 3C0B073F */ lui $t3, (0x073FC000 >> 16) # lui $t3, 0x73f
/* 1028A4 80299294 244E0008 */ addiu $t6, $v0, 8
/* 1028A8 80299298 AC6E0000 */ sw $t6, ($v1)
/* 1028AC 8029929C AC400004 */ sw $zero, 4($v0)
/* 1028B0 802992A0 AC4F0000 */ sw $t7, ($v0)
/* 1028B4 802992A4 8C620000 */ lw $v0, ($v1)
/* 1028B8 802992A8 356BC000 */ ori $t3, (0x073FC000 & 0xFFFF) # ori $t3, $t3, 0xc000
/* 1028BC 802992AC 3C19F000 */ lui $t9, 0xf000
/* 1028C0 802992B0 24580008 */ addiu $t8, $v0, 8
/* 1028C4 802992B4 AC780000 */ sw $t8, ($v1)
/* 1028C8 802992B8 AC4B0004 */ sw $t3, 4($v0)
/* 1028CC 802992BC AC590000 */ sw $t9, ($v0)
/* 1028D0 802992C0 8C620000 */ lw $v0, ($v1)
/* 1028D4 802992C4 3C0DE700 */ lui $t5, 0xe700
/* 1028D8 802992C8 3C180600 */ lui $t8, %hi(D_06006A68) # $t8, 0x600
/* 1028DC 802992CC 244C0008 */ addiu $t4, $v0, 8
/* 1028E0 802992D0 AC6C0000 */ sw $t4, ($v1)
/* 1028E4 802992D4 AC400004 */ sw $zero, 4($v0)
/* 1028E8 802992D8 AC4D0000 */ sw $t5, ($v0)
/* 1028EC 802992DC 8C620000 */ lw $v0, ($v1)
/* 1028F0 802992E0 27186A68 */ addiu $t8, %lo(D_06006A68) # addiu $t8, $t8, 0x6a68
/* 1028F4 802992E4 3C0F0600 */ lui $t7, 0x600
/* 1028F8 802992E8 244E0008 */ addiu $t6, $v0, 8
/* 1028FC 802992EC AC6E0000 */ sw $t6, ($v1)
/* 102900 802992F0 AC580004 */ sw $t8, 4($v0)
/* 102904 802992F4 AC4F0000 */ sw $t7, ($v0)
.L802992F8:
/* 102908 802992F8 8FBF0024 */ lw $ra, 0x24($sp)
.L802992FC:
/* 10290C 802992FC 8FB00020 */ lw $s0, 0x20($sp)
/* 102910 80299300 27BD0050 */ addiu $sp, $sp, 0x50
/* 102914 80299304 03E00008 */ jr $ra
/* 102918 80299308 00000000 */ nop