papermario/ver/us/asm/nonmatchings/B4580/func_8011F304.s
alex df3ef58ba1
Crystal Palace reflection include & name some segments (#274)
* src/evt section

* evt data

* entity

* update entity func names

* names

* reflection wip

* lol

* ~pra_01

* nabbed em

* match func_80240500_D4D540

* match func_802402F0_D4D330

* last pra include func git add -A

* gCurrentCamID

* reflection.inc.c for pra_01

* reflection.inc.c

* rm

* match a few in tst_11

* use npc flags

Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2021-04-21 23:19:31 -04:00

65 lines
3.3 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_8011F304
/* B5A04 8011F304 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* B5A08 8011F308 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* B5A0C 8011F30C 27BDFFD8 */ addiu $sp, $sp, -0x28
/* B5A10 8011F310 AFBF0020 */ sw $ra, 0x20($sp)
/* B5A14 8011F314 80420070 */ lb $v0, 0x70($v0)
/* B5A18 8011F318 10400004 */ beqz $v0, .L8011F32C
/* B5A1C 8011F31C 27A80010 */ addiu $t0, $sp, 0x10
/* B5A20 8011F320 30820800 */ andi $v0, $a0, 0x800
/* B5A24 8011F324 1040002D */ beqz $v0, .L8011F3DC
/* B5A28 8011F328 00000000 */ nop
.L8011F32C:
/* B5A2C 8011F32C 2402F7FF */ addiu $v0, $zero, -0x801
/* B5A30 8011F330 00822024 */ and $a0, $a0, $v0
/* B5A34 8011F334 3C038015 */ lui $v1, %hi(gCurrentAnimMeshListPtr)
/* B5A38 8011F338 8C633A40 */ lw $v1, %lo(gCurrentAnimMeshListPtr)($v1)
/* B5A3C 8011F33C 00041080 */ sll $v0, $a0, 2
/* B5A40 8011F340 00431021 */ addu $v0, $v0, $v1
/* B5A44 8011F344 8C470000 */ lw $a3, ($v0)
/* B5A48 8011F348 10E00024 */ beqz $a3, .L8011F3DC
/* B5A4C 8011F34C 00000000 */ nop
/* B5A50 8011F350 8CE60000 */ lw $a2, ($a3)
/* B5A54 8011F354 10C00021 */ beqz $a2, .L8011F3DC
/* B5A58 8011F358 30C20040 */ andi $v0, $a2, 0x40
/* B5A5C 8011F35C 1440001F */ bnez $v0, .L8011F3DC
/* B5A60 8011F360 24020001 */ addiu $v0, $zero, 1
/* B5A64 8011F364 3C03800A */ lui $v1, %hi(gCurrentCamID)
/* B5A68 8011F368 8463A634 */ lh $v1, %lo(gCurrentCamID)($v1)
/* B5A6C 8011F36C 00621004 */ sllv $v0, $v0, $v1
/* B5A70 8011F370 00C21024 */ and $v0, $a2, $v0
/* B5A74 8011F374 10400019 */ beqz $v0, .L8011F3DC
/* B5A78 8011F378 30C20080 */ andi $v0, $a2, 0x80
/* B5A7C 8011F37C 14400017 */ bnez $v0, .L8011F3DC
/* B5A80 8011F380 24E20098 */ addiu $v0, $a3, 0x98
/* B5A84 8011F384 24A30040 */ addiu $v1, $a1, 0x40
.L8011F388:
/* B5A88 8011F388 8CA90000 */ lw $t1, ($a1)
/* B5A8C 8011F38C 8CAA0004 */ lw $t2, 4($a1)
/* B5A90 8011F390 8CAB0008 */ lw $t3, 8($a1)
/* B5A94 8011F394 8CAC000C */ lw $t4, 0xc($a1)
/* B5A98 8011F398 AC490000 */ sw $t1, ($v0)
/* B5A9C 8011F39C AC4A0004 */ sw $t2, 4($v0)
/* B5AA0 8011F3A0 AC4B0008 */ sw $t3, 8($v0)
/* B5AA4 8011F3A4 AC4C000C */ sw $t4, 0xc($v0)
/* B5AA8 8011F3A8 24A50010 */ addiu $a1, $a1, 0x10
/* B5AAC 8011F3AC 14A3FFF6 */ bne $a1, $v1, .L8011F388
/* B5AB0 8011F3B0 24420010 */ addiu $v0, $v0, 0x10
/* B5AB4 8011F3B4 3C028012 */ lui $v0, %hi(func_8011F4D4)
/* B5AB8 8011F3B8 2442F4D4 */ addiu $v0, $v0, %lo(func_8011F4D4)
/* B5ABC 8011F3BC ACE000D8 */ sw $zero, 0xd8($a3)
/* B5AC0 8011F3C0 AD070008 */ sw $a3, 8($t0)
/* B5AC4 8011F3C4 AD02000C */ sw $v0, 0xc($t0)
/* B5AC8 8011F3C8 AD000004 */ sw $zero, 4($t0)
/* B5ACC 8011F3CC 80E20004 */ lb $v0, 4($a3)
/* B5AD0 8011F3D0 0100202D */ daddu $a0, $t0, $zero
/* B5AD4 8011F3D4 0C047644 */ jal queue_render_task
/* B5AD8 8011F3D8 AD020000 */ sw $v0, ($t0)
.L8011F3DC:
/* B5ADC 8011F3DC 8FBF0020 */ lw $ra, 0x20($sp)
/* B5AE0 8011F3E0 03E00008 */ jr $ra
/* B5AE4 8011F3E4 27BD0028 */ addiu $sp, $sp, 0x28