mirror of https://github.com/zeldaret/oot.git
127 lines
5.5 KiB
ArmAsm
127 lines
5.5 KiB
ArmAsm
.late_rodata
|
|
glabel jtbl_8014A620
|
|
.word L800F7534
|
|
.word L800F7560
|
|
.word L800F759C
|
|
.word L800F75C0
|
|
.word L800F75F4
|
|
.word L800F7628
|
|
|
|
.text
|
|
glabel func_800F74E0
|
|
/* B6E680 800F74E0 3C028013 */ lui $v0, %hi(D_801333A0) # $v0, 0x8013
|
|
/* B6E684 800F74E4 3C038013 */ lui $v1, %hi(D_801333A0) # $v1, 0x8013
|
|
/* B6E688 800F74E8 904233A4 */ lbu $v0, %lo(D_801333A4)($v0)
|
|
/* B6E68C 800F74EC 906333A0 */ lbu $v1, %lo(D_801333A0)($v1)
|
|
/* B6E690 800F74F0 AFA40000 */ sw $a0, ($sp)
|
|
/* B6E694 800F74F4 308400FF */ andi $a0, $a0, 0xff
|
|
/* B6E698 800F74F8 1062005F */ beq $v1, $v0, .L800F7678
|
|
/* B6E69C 800F74FC 00A03825 */ move $a3, $a1
|
|
/* B6E6A0 800F7500 3C088017 */ lui $t0, %hi(D_8016C9A0) # $t0, 0x8017
|
|
/* B6E6A4 800F7504 2508C9A0 */ addiu $t0, %lo(D_8016C9A0) # addiu $t0, $t0, -0x3660
|
|
/* B6E6A8 800F7508 00803025 */ move $a2, $a0
|
|
/* B6E6AC 800F750C 24090018 */ li $t1, 24
|
|
/* B6E6B0 800F7510 2CC10006 */ sltiu $at, $a2, 6
|
|
.L800F7514:
|
|
/* B6E6B4 800F7514 1020004C */ beqz $at, .L800F7648
|
|
/* B6E6B8 800F7518 00002025 */ move $a0, $zero
|
|
/* B6E6BC 800F751C 00067080 */ sll $t6, $a2, 2
|
|
/* B6E6C0 800F7520 3C018015 */ lui $at, %hi(jtbl_8014A620)
|
|
/* B6E6C4 800F7524 002E0821 */ addu $at, $at, $t6
|
|
/* B6E6C8 800F7528 8C2EA620 */ lw $t6, %lo(jtbl_8014A620)($at)
|
|
/* B6E6CC 800F752C 01C00008 */ jr $t6
|
|
/* B6E6D0 800F7530 00000000 */ nop
|
|
glabel L800F7534
|
|
/* B6E6D4 800F7534 00490019 */ multu $v0, $t1
|
|
/* B6E6D8 800F7538 94EF0028 */ lhu $t7, 0x28($a3)
|
|
/* B6E6DC 800F753C 31F8F000 */ andi $t8, $t7, 0xf000
|
|
/* B6E6E0 800F7540 0000C812 */ mflo $t9
|
|
/* B6E6E4 800F7544 01195021 */ addu $t2, $t0, $t9
|
|
/* B6E6E8 800F7548 954B0000 */ lhu $t3, ($t2)
|
|
/* B6E6EC 800F754C 316CF000 */ andi $t4, $t3, 0xf000
|
|
/* B6E6F0 800F7550 170C003D */ bne $t8, $t4, .L800F7648
|
|
/* B6E6F4 800F7554 00000000 */ nop
|
|
/* B6E6F8 800F7558 1000003B */ b .L800F7648
|
|
/* B6E6FC 800F755C 24040001 */ li $a0, 1
|
|
glabel L800F7560
|
|
/* B6E700 800F7560 00490019 */ multu $v0, $t1
|
|
/* B6E704 800F7564 94EE0028 */ lhu $t6, 0x28($a3)
|
|
/* B6E708 800F7568 31CFF000 */ andi $t7, $t6, 0xf000
|
|
/* B6E70C 800F756C 00006812 */ mflo $t5
|
|
/* B6E710 800F7570 010D2821 */ addu $a1, $t0, $t5
|
|
/* B6E714 800F7574 94B90000 */ lhu $t9, ($a1)
|
|
/* B6E718 800F7578 332AF000 */ andi $t2, $t9, 0xf000
|
|
/* B6E71C 800F757C 15EA0032 */ bne $t7, $t2, .L800F7648
|
|
/* B6E720 800F7580 00000000 */ nop
|
|
/* B6E724 800F7584 8CEB0000 */ lw $t3, ($a3)
|
|
/* B6E728 800F7588 8CB80004 */ lw $t8, 4($a1)
|
|
/* B6E72C 800F758C 1578002E */ bne $t3, $t8, .L800F7648
|
|
/* B6E730 800F7590 00000000 */ nop
|
|
/* B6E734 800F7594 1000002C */ b .L800F7648
|
|
/* B6E738 800F7598 24040001 */ li $a0, 1
|
|
glabel L800F759C
|
|
/* B6E73C 800F759C 00490019 */ multu $v0, $t1
|
|
/* B6E740 800F75A0 8CEC0000 */ lw $t4, ($a3)
|
|
/* B6E744 800F75A4 00006812 */ mflo $t5
|
|
/* B6E748 800F75A8 010D7021 */ addu $t6, $t0, $t5
|
|
/* B6E74C 800F75AC 8DD90004 */ lw $t9, 4($t6)
|
|
/* B6E750 800F75B0 15990025 */ bne $t4, $t9, .L800F7648
|
|
/* B6E754 800F75B4 00000000 */ nop
|
|
/* B6E758 800F75B8 10000023 */ b .L800F7648
|
|
/* B6E75C 800F75BC 24040001 */ li $a0, 1
|
|
glabel L800F75C0
|
|
/* B6E760 800F75C0 00490019 */ multu $v0, $t1
|
|
/* B6E764 800F75C4 8CEA0000 */ lw $t2, ($a3)
|
|
/* B6E768 800F75C8 00007812 */ mflo $t7
|
|
/* B6E76C 800F75CC 010F2821 */ addu $a1, $t0, $t7
|
|
/* B6E770 800F75D0 8CAB0004 */ lw $t3, 4($a1)
|
|
/* B6E774 800F75D4 154B001C */ bne $t2, $t3, .L800F7648
|
|
/* B6E778 800F75D8 00000000 */ nop
|
|
/* B6E77C 800F75DC 94F80028 */ lhu $t8, 0x28($a3)
|
|
/* B6E780 800F75E0 94AD0000 */ lhu $t5, ($a1)
|
|
/* B6E784 800F75E4 170D0018 */ bne $t8, $t5, .L800F7648
|
|
/* B6E788 800F75E8 00000000 */ nop
|
|
/* B6E78C 800F75EC 10000016 */ b .L800F7648
|
|
/* B6E790 800F75F0 24040001 */ li $a0, 1
|
|
glabel L800F75F4
|
|
/* B6E794 800F75F4 00490019 */ multu $v0, $t1
|
|
/* B6E798 800F75F8 90EC000C */ lbu $t4, 0xc($a3)
|
|
/* B6E79C 800F75FC 00007012 */ mflo $t6
|
|
/* B6E7A0 800F7600 010E2821 */ addu $a1, $t0, $t6
|
|
/* B6E7A4 800F7604 90B90008 */ lbu $t9, 8($a1)
|
|
/* B6E7A8 800F7608 1599000F */ bne $t4, $t9, .L800F7648
|
|
/* B6E7AC 800F760C 00000000 */ nop
|
|
/* B6E7B0 800F7610 94EF0028 */ lhu $t7, 0x28($a3)
|
|
/* B6E7B4 800F7614 94AA0000 */ lhu $t2, ($a1)
|
|
/* B6E7B8 800F7618 15EA000B */ bne $t7, $t2, .L800F7648
|
|
/* B6E7BC 800F761C 00000000 */ nop
|
|
/* B6E7C0 800F7620 10000009 */ b .L800F7648
|
|
/* B6E7C4 800F7624 24040001 */ li $a0, 1
|
|
glabel L800F7628
|
|
/* B6E7C8 800F7628 00490019 */ multu $v0, $t1
|
|
/* B6E7CC 800F762C 94EB0028 */ lhu $t3, 0x28($a3)
|
|
/* B6E7D0 800F7630 0000C012 */ mflo $t8
|
|
/* B6E7D4 800F7634 01186821 */ addu $t5, $t0, $t8
|
|
/* B6E7D8 800F7638 95AE0000 */ lhu $t6, ($t5)
|
|
/* B6E7DC 800F763C 156E0002 */ bne $t3, $t6, .L800F7648
|
|
/* B6E7E0 800F7640 00000000 */ nop
|
|
/* B6E7E4 800F7644 24040001 */ li $a0, 1
|
|
.L800F7648:
|
|
/* B6E7E8 800F7648 50800008 */ beql $a0, $zero, .L800F766C
|
|
/* B6E7EC 800F764C 24420001 */ addiu $v0, $v0, 1
|
|
/* B6E7F0 800F7650 00490019 */ multu $v0, $t1
|
|
/* B6E7F4 800F7654 3C038013 */ lui $v1, %hi(D_801333A0) # $v1, 0x8013
|
|
/* B6E7F8 800F7658 00006012 */ mflo $t4
|
|
/* B6E7FC 800F765C 010CC821 */ addu $t9, $t0, $t4
|
|
/* B6E800 800F7660 A7200000 */ sh $zero, ($t9)
|
|
/* B6E804 800F7664 906333A0 */ lbu $v1, %lo(D_801333A0)($v1)
|
|
/* B6E808 800F7668 24420001 */ addiu $v0, $v0, 1
|
|
.L800F766C:
|
|
/* B6E80C 800F766C 304200FF */ andi $v0, $v0, 0xff
|
|
/* B6E810 800F7670 5462FFA8 */ bnel $v1, $v0, .L800F7514
|
|
/* B6E814 800F7674 2CC10006 */ sltiu $at, $a2, 6
|
|
.L800F7678:
|
|
/* B6E818 800F7678 03E00008 */ jr $ra
|
|
/* B6E81C 800F767C 00000000 */ nop
|
|
|