papermario/asm/nonmatchings/code_8560/func_8002E82C.s
2020-11-05 19:30:17 -05:00

64 lines
3.1 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_8002E82C
/* 9C2C 8002E82C 00A0302D */ daddu $a2, $a1, $zero
/* 9C30 8002E830 3C05800B */ lui $a1, %hi(gCameras)
/* 9C34 8002E834 24A51D80 */ addiu $a1, $a1, %lo(gCameras)
/* 9C38 8002E838 00041080 */ sll $v0, $a0, 2
/* 9C3C 8002E83C 00441021 */ addu $v0, $v0, $a0
/* 9C40 8002E840 00021080 */ sll $v0, $v0, 2
/* 9C44 8002E844 00441023 */ subu $v0, $v0, $a0
/* 9C48 8002E848 000218C0 */ sll $v1, $v0, 3
/* 9C4C 8002E84C 00431021 */ addu $v0, $v0, $v1
/* 9C50 8002E850 000210C0 */ sll $v0, $v0, 3
/* 9C54 8002E854 00452021 */ addu $a0, $v0, $a1
/* 9C58 8002E858 94820212 */ lhu $v0, 0x212($a0)
/* 9C5C 8002E85C 24420001 */ addiu $v0, $v0, 1
/* 9C60 8002E860 A4820212 */ sh $v0, 0x212($a0)
/* 9C64 8002E864 00021400 */ sll $v0, $v0, 0x10
/* 9C68 8002E868 00021403 */ sra $v0, $v0, 0x10
/* 9C6C 8002E86C 28420004 */ slti $v0, $v0, 4
/* 9C70 8002E870 14400003 */ bnez $v0, .L8002E880
/* 9C74 8002E874 00000000 */ nop
.L8002E878:
/* 9C78 8002E878 0800BA1E */ j .L8002E878
/* 9C7C 8002E87C 00000000 */ nop
.L8002E880:
/* 9C80 8002E880 84830212 */ lh $v1, 0x212($a0)
/* 9C84 8002E884 000310C0 */ sll $v0, $v1, 3
/* 9C88 8002E888 00431021 */ addu $v0, $v0, $v1
/* 9C8C 8002E88C 00021080 */ sll $v0, $v0, 2
/* 9C90 8002E890 00431023 */ subu $v0, $v0, $v1
/* 9C94 8002E894 00021080 */ sll $v0, $v0, 2
/* 9C98 8002E898 00821021 */ addu $v0, $a0, $v0
/* 9C9C 8002E89C AC460220 */ sw $a2, 0x220($v0)
/* 9CA0 8002E8A0 84830212 */ lh $v1, 0x212($a0)
/* 9CA4 8002E8A4 000310C0 */ sll $v0, $v1, 3
/* 9CA8 8002E8A8 00431021 */ addu $v0, $v0, $v1
/* 9CAC 8002E8AC 00021080 */ sll $v0, $v0, 2
/* 9CB0 8002E8B0 00431023 */ subu $v0, $v0, $v1
/* 9CB4 8002E8B4 00021080 */ sll $v0, $v0, 2
/* 9CB8 8002E8B8 00821021 */ addu $v0, $a0, $v0
/* 9CBC 8002E8BC 24030001 */ addiu $v1, $zero, 1
/* 9CC0 8002E8C0 A4430216 */ sh $v1, 0x216($v0)
/* 9CC4 8002E8C4 84830212 */ lh $v1, 0x212($a0)
/* 9CC8 8002E8C8 000310C0 */ sll $v0, $v1, 3
/* 9CCC 8002E8CC 00431021 */ addu $v0, $v0, $v1
/* 9CD0 8002E8D0 00021080 */ sll $v0, $v0, 2
/* 9CD4 8002E8D4 00431023 */ subu $v0, $v0, $v1
/* 9CD8 8002E8D8 00021080 */ sll $v0, $v0, 2
/* 9CDC 8002E8DC 00821021 */ addu $v0, $a0, $v0
/* 9CE0 8002E8E0 AC460278 */ sw $a2, 0x278($v0)
/* 9CE4 8002E8E4 84830212 */ lh $v1, 0x212($a0)
/* 9CE8 8002E8E8 000310C0 */ sll $v0, $v1, 3
/* 9CEC 8002E8EC 00431021 */ addu $v0, $v0, $v1
/* 9CF0 8002E8F0 00021080 */ sll $v0, $v0, 2
/* 9CF4 8002E8F4 00431023 */ subu $v0, $v0, $v1
/* 9CF8 8002E8F8 00021080 */ sll $v0, $v0, 2
/* 9CFC 8002E8FC 00821021 */ addu $v0, $a0, $v0
/* 9D00 8002E900 03E00008 */ jr $ra
/* 9D04 8002E904 A4400214 */ sh $zero, 0x214($v0)
/* 9D08 8002E908 00000000 */ nop
/* 9D0C 8002E90C 00000000 */ nop