mirror of https://github.com/n64decomp/mk64.git
Audio/external matches (#412)
* Match func_800C8920, func_800C8AE4, and.. Introduce struct Unk_800E9F7C and cleanup existing code * Match func_800C40F0, add the likely other pos vars in the unk struct * func_800C8CCC
This commit is contained in:
parent
70207db13b
commit
b0ca74ff0d
|
|
@ -1,24 +0,0 @@
|
|||
glabel func_800C40F0
|
||||
/* 0C4CF0 800C40F0 27ADFFF0 */ addiu $t5, $sp, -0x10
|
||||
/* 0C4CF4 800C40F4 3C02800F */ lui $v0, %hi(D_800EA1C4) # $v0, 0x800f
|
||||
/* 0C4CF8 800C40F8 2442A1C4 */ addiu $v0, %lo(D_800EA1C4) # addiu $v0, $v0, -0x5e3c
|
||||
/* 0C4CFC 800C40FC ADA40010 */ sw $a0, 0x10($t5)
|
||||
/* 0C4D00 800C4100 944F0000 */ lhu $t7, ($v0)
|
||||
/* 0C4D04 800C4104 308E00FF */ andi $t6, $a0, 0xff
|
||||
/* 0C4D08 800C4108 24180001 */ li $t8, 1
|
||||
/* 0C4D0C 800C410C 01D8C804 */ sllv $t9, $t8, $t6
|
||||
/* 0C4D10 800C4110 3B28FFFF */ xori $t0, $t9, 0xffff
|
||||
/* 0C4D14 800C4114 01E84824 */ and $t1, $t7, $t0
|
||||
/* 0C4D18 800C4118 312AFFFF */ andi $t2, $t1, 0xffff
|
||||
/* 0C4D1C 800C411C 15400007 */ bnez $t2, .L800C413C
|
||||
/* 0C4D20 800C4120 A4490000 */ sh $t1, ($v0)
|
||||
/* 0C4D24 800C4124 3C028019 */ lui $v0, %hi(D_801930D0) # $v0, 0x8019
|
||||
/* 0C4D28 800C4128 244230D0 */ addiu $v0, %lo(D_801930D0) # addiu $v0, $v0, 0x30d0
|
||||
/* 0C4D2C 800C412C 240B0001 */ li $t3, 1
|
||||
/* 0C4D30 800C4130 240C007F */ li $t4, 127
|
||||
/* 0C4D34 800C4134 A04B0012 */ sb $t3, 0x12($v0)
|
||||
/* 0C4D38 800C4138 A04C0010 */ sb $t4, 0x10($v0)
|
||||
.L800C413C:
|
||||
/* 0C4D3C 800C413C 01A0E825 */ move $sp, $t5
|
||||
/* 0C4D40 800C4140 03E00008 */ jr $ra
|
||||
/* 0C4D44 800C4144 25BD0010 */ addiu $sp, $t5, 0x10
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
glabel func_800C8920
|
||||
/* 0C9520 800C8920 3C0E800F */ lui $t6, %hi(D_800EA168) # $t6, 0x800f
|
||||
/* 0C9524 800C8924 91CEA168 */ lbu $t6, %lo(D_800EA168)($t6)
|
||||
/* 0C9528 800C8928 27BDFFD0 */ addiu $sp, $sp, -0x30
|
||||
/* 0C952C 800C892C AFBE0028 */ sw $fp, 0x28($sp)
|
||||
/* 0C9530 800C8930 03A0F025 */ move $fp, $sp
|
||||
/* 0C9534 800C8934 11C00026 */ beqz $t6, .L800C89D0
|
||||
/* 0C9538 800C8938 AFBF002C */ sw $ra, 0x2c($sp)
|
||||
/* 0C953C 800C893C 3C03800F */ lui $v1, %hi(gPlayers) # $v1, 0x800f
|
||||
/* 0C9540 800C8940 24636990 */ addiu $v1, %lo(gPlayers) # addiu $v1, $v1, 0x6990
|
||||
/* 0C9544 800C8944 8C6F00BC */ lw $t7, 0xbc($v1)
|
||||
/* 0C9548 800C8948 3C024000 */ lui $v0, 0x4000
|
||||
/* 0C954C 800C894C 01E2C024 */ and $t8, $t7, $v0
|
||||
/* 0C9550 800C8950 50580020 */ beql $v0, $t8, .L800C89D4
|
||||
/* 0C9554 800C8954 8FDF002C */ lw $ra, 0x2c($fp)
|
||||
/* 0C9558 800C8958 8C790E94 */ lw $t9, 0xe94($v1)
|
||||
/* 0C955C 800C895C 03224024 */ and $t0, $t9, $v0
|
||||
/* 0C9560 800C8960 5048001C */ beql $v0, $t0, .L800C89D4
|
||||
/* 0C9564 800C8964 8FDF002C */ lw $ra, 0x2c($fp)
|
||||
/* 0C9568 800C8968 8C691C6C */ lw $t1, 0x1c6c($v1)
|
||||
/* 0C956C 800C896C 01225024 */ and $t2, $t1, $v0
|
||||
/* 0C9570 800C8970 504A0018 */ beql $v0, $t2, .L800C89D4
|
||||
/* 0C9574 800C8974 8FDF002C */ lw $ra, 0x2c($fp)
|
||||
/* 0C9578 800C8978 8C6B2A44 */ lw $t3, 0x2a44($v1)
|
||||
/* 0C957C 800C897C 01626024 */ and $t4, $t3, $v0
|
||||
/* 0C9580 800C8980 504C0014 */ beql $v0, $t4, .L800C89D4
|
||||
/* 0C9584 800C8984 8FDF002C */ lw $ra, 0x2c($fp)
|
||||
/* 0C9588 800C8988 8C6D381C */ lw $t5, 0x381c($v1)
|
||||
/* 0C958C 800C898C 01A27024 */ and $t6, $t5, $v0
|
||||
/* 0C9590 800C8990 504E0010 */ beql $v0, $t6, .L800C89D4
|
||||
/* 0C9594 800C8994 8FDF002C */ lw $ra, 0x2c($fp)
|
||||
/* 0C9598 800C8998 8C6F45F4 */ lw $t7, 0x45f4($v1)
|
||||
/* 0C959C 800C899C 01E2C024 */ and $t8, $t7, $v0
|
||||
/* 0C95A0 800C89A0 5058000C */ beql $v0, $t8, .L800C89D4
|
||||
/* 0C95A4 800C89A4 8FDF002C */ lw $ra, 0x2c($fp)
|
||||
/* 0C95A8 800C89A8 8C7953CC */ lw $t9, 0x53cc($v1)
|
||||
/* 0C95AC 800C89AC 03224024 */ and $t0, $t9, $v0
|
||||
/* 0C95B0 800C89B0 50480008 */ beql $v0, $t0, .L800C89D4
|
||||
/* 0C95B4 800C89B4 8FDF002C */ lw $ra, 0x2c($fp)
|
||||
/* 0C95B8 800C89B8 8C6961A4 */ lw $t1, 0x61a4($v1)
|
||||
/* 0C95BC 800C89BC 01225024 */ and $t2, $t1, $v0
|
||||
/* 0C95C0 800C89C0 504A0004 */ beql $v0, $t2, .L800C89D4
|
||||
/* 0C95C4 800C89C4 8FDF002C */ lw $ra, 0x2c($fp)
|
||||
/* 0C95C8 800C89C8 0C032B02 */ jal func_800CAC08
|
||||
/* 0C95CC 800C89CC 00000000 */ nop
|
||||
.L800C89D0:
|
||||
/* 0C95D0 800C89D0 8FDF002C */ lw $ra, 0x2c($fp)
|
||||
.L800C89D4:
|
||||
/* 0C95D4 800C89D4 03C0E825 */ move $sp, $fp
|
||||
/* 0C95D8 800C89D8 8FDE0028 */ lw $fp, 0x28($fp)
|
||||
/* 0C95DC 800C89DC 03E00008 */ jr $ra
|
||||
/* 0C95E0 800C89E0 27BD0030 */ addiu $sp, $sp, 0x30
|
||||
|
|
@ -1,120 +0,0 @@
|
|||
.section .late_rodata
|
||||
|
||||
glabel D_800F38B4
|
||||
.float 0.85
|
||||
|
||||
.section .text
|
||||
|
||||
glabel func_800C8AE4
|
||||
/* 0C96E4 800C8AE4 3C0E800E */ lui $t6, %hi(gCurrentCourseId) # $t6, 0x800e
|
||||
/* 0C96E8 800C8AE8 85CEC5A0 */ lh $t6, %lo(gCurrentCourseId)($t6)
|
||||
/* 0C96EC 800C8AEC 27ADFFF0 */ addiu $t5, $sp, -0x10
|
||||
/* 0C96F0 800C8AF0 24010008 */ li $at, 8
|
||||
/* 0C96F4 800C8AF4 15C1005F */ bne $t6, $at, .L800C8C74
|
||||
/* 0C96F8 800C8AF8 01A0E825 */ move $sp, $t5
|
||||
/* 0C96FC 800C8AFC 3C03800F */ lui $v1, %hi(D_800EA184) # $v1, 0x800f
|
||||
/* 0C9700 800C8B00 2463A184 */ addiu $v1, %lo(D_800EA184) # addiu $v1, $v1, -0x5e7c
|
||||
/* 0C9704 800C8B04 94620000 */ lhu $v0, ($v1)
|
||||
/* 0C9708 800C8B08 3C0F800F */ lui $t7, %hi(D_800EA16C) # $t7, 0x800f
|
||||
/* 0C970C 800C8B0C 2401012C */ li $at, 300
|
||||
/* 0C9710 800C8B10 1040000E */ beqz $v0, .L800C8B4C
|
||||
/* 0C9714 800C8B14 00000000 */ nop
|
||||
/* 0C9718 800C8B18 91EFA16C */ lbu $t7, %lo(D_800EA16C)($t7)
|
||||
/* 0C971C 800C8B1C 24580001 */ addiu $t8, $v0, 1
|
||||
/* 0C9720 800C8B20 15E00003 */ bnez $t7, .L800C8B30
|
||||
/* 0C9724 800C8B24 00000000 */ nop
|
||||
/* 0C9728 800C8B28 A4780000 */ sh $t8, ($v1)
|
||||
/* 0C972C 800C8B2C 3302FFFF */ andi $v0, $t8, 0xffff
|
||||
.L800C8B30:
|
||||
/* 0C9730 800C8B30 14410050 */ bne $v0, $at, .L800C8C74
|
||||
/* 0C9734 800C8B34 3C01800F */ lui $at, %hi(D_800F38B4) # $at, 0x800f
|
||||
/* 0C9738 800C8B38 C42438B4 */ lwc1 $f4, %lo(D_800F38B4)($at)
|
||||
/* 0C973C 800C8B3C 3C01800F */ lui $at, %hi(D_800EA17C) # $at, 0x800f
|
||||
/* 0C9740 800C8B40 E424A17C */ swc1 $f4, %lo(D_800EA17C)($at)
|
||||
/* 0C9744 800C8B44 1000004B */ b .L800C8C74
|
||||
/* 0C9748 800C8B48 A4600000 */ sh $zero, ($v1)
|
||||
.L800C8B4C:
|
||||
/* 0C974C 800C8B4C 3C02800F */ lui $v0, %hi(D_800EA1C0) # $v0, 0x800f
|
||||
/* 0C9750 800C8B50 9042A1C0 */ lbu $v0, %lo(D_800EA1C0)($v0)
|
||||
/* 0C9754 800C8B54 24010001 */ li $at, 1
|
||||
/* 0C9758 800C8B58 10400009 */ beqz $v0, .L800C8B80
|
||||
/* 0C975C 800C8B5C 00000000 */ nop
|
||||
/* 0C9760 800C8B60 10410012 */ beq $v0, $at, .L800C8BAC
|
||||
/* 0C9764 800C8B64 24010002 */ li $at, 2
|
||||
/* 0C9768 800C8B68 1041001E */ beq $v0, $at, .L800C8BE4
|
||||
/* 0C976C 800C8B6C 24010003 */ li $at, 3
|
||||
/* 0C9770 800C8B70 1041002D */ beq $v0, $at, .L800C8C28
|
||||
/* 0C9774 800C8B74 00000000 */ nop
|
||||
/* 0C9778 800C8B78 1000003E */ b .L800C8C74
|
||||
/* 0C977C 800C8B7C 00000000 */ nop
|
||||
.L800C8B80:
|
||||
/* 0C9780 800C8B80 3C02800F */ lui $v0, %hi(D_800E9F7C) # $v0, 0x800f
|
||||
/* 0C9784 800C8B84 24429F7C */ addiu $v0, %lo(D_800E9F7C) # addiu $v0, $v0, -0x6084
|
||||
/* 0C9788 800C8B88 80590014 */ lb $t9, 0x14($v0)
|
||||
/* 0C978C 800C8B8C 13200039 */ beqz $t9, .L800C8C74
|
||||
/* 0C9790 800C8B90 00000000 */ nop
|
||||
/* 0C9794 800C8B94 44803000 */ mtc1 $zero, $f6
|
||||
/* 0C9798 800C8B98 3C01800F */ lui $at, %hi(D_800EA17C) # $at, 0x800f
|
||||
/* 0C979C 800C8B9C 24080001 */ li $t0, 1
|
||||
/* 0C97A0 800C8BA0 E426A17C */ swc1 $f6, %lo(D_800EA17C)($at)
|
||||
/* 0C97A4 800C8BA4 10000033 */ b .L800C8C74
|
||||
/* 0C97A8 800C8BA8 A4680000 */ sh $t0, ($v1)
|
||||
.L800C8BAC:
|
||||
/* 0C97AC 800C8BAC 3C02800F */ lui $v0, %hi(D_800E9F7C) # $v0, 0x800f
|
||||
/* 0C97B0 800C8BB0 24429F7C */ addiu $v0, %lo(D_800E9F7C) # addiu $v0, $v0, -0x6084
|
||||
/* 0C97B4 800C8BB4 80490014 */ lb $t1, 0x14($v0)
|
||||
/* 0C97B8 800C8BB8 55200005 */ bnel $t1, $zero, .L800C8BD0
|
||||
/* 0C97BC 800C8BBC 44804000 */ mtc1 $zero, $f8
|
||||
/* 0C97C0 800C8BC0 804A0050 */ lb $t2, 0x50($v0)
|
||||
/* 0C97C4 800C8BC4 1140002B */ beqz $t2, .L800C8C74
|
||||
/* 0C97C8 800C8BC8 00000000 */ nop
|
||||
/* 0C97CC 800C8BCC 44804000 */ mtc1 $zero, $f8
|
||||
.L800C8BD0:
|
||||
/* 0C97D0 800C8BD0 3C01800F */ lui $at, %hi(D_800EA17C) # $at, 0x800f
|
||||
/* 0C97D4 800C8BD4 240B0001 */ li $t3, 1
|
||||
/* 0C97D8 800C8BD8 E428A17C */ swc1 $f8, %lo(D_800EA17C)($at)
|
||||
/* 0C97DC 800C8BDC 10000025 */ b .L800C8C74
|
||||
/* 0C97E0 800C8BE0 A46B0000 */ sh $t3, ($v1)
|
||||
.L800C8BE4:
|
||||
/* 0C97E4 800C8BE4 3C02800F */ lui $v0, %hi(D_800E9F7C) # $v0, 0x800f
|
||||
/* 0C97E8 800C8BE8 24429F7C */ addiu $v0, %lo(D_800E9F7C) # addiu $v0, $v0, -0x6084
|
||||
/* 0C97EC 800C8BEC 804C0014 */ lb $t4, 0x14($v0)
|
||||
/* 0C97F0 800C8BF0 55800008 */ bnel $t4, $zero, .L800C8C14
|
||||
/* 0C97F4 800C8BF4 44805000 */ mtc1 $zero, $f10
|
||||
/* 0C97F8 800C8BF8 804E0050 */ lb $t6, 0x50($v0)
|
||||
/* 0C97FC 800C8BFC 55C00005 */ bnel $t6, $zero, .L800C8C14
|
||||
/* 0C9800 800C8C00 44805000 */ mtc1 $zero, $f10
|
||||
/* 0C9804 800C8C04 804F008C */ lb $t7, 0x8c($v0)
|
||||
/* 0C9808 800C8C08 11E0001A */ beqz $t7, .L800C8C74
|
||||
/* 0C980C 800C8C0C 00000000 */ nop
|
||||
/* 0C9810 800C8C10 44805000 */ mtc1 $zero, $f10
|
||||
.L800C8C14:
|
||||
/* 0C9814 800C8C14 3C01800F */ lui $at, %hi(D_800EA17C) # $at, 0x800f
|
||||
/* 0C9818 800C8C18 24180001 */ li $t8, 1
|
||||
/* 0C981C 800C8C1C E42AA17C */ swc1 $f10, %lo(D_800EA17C)($at)
|
||||
/* 0C9820 800C8C20 10000014 */ b .L800C8C74
|
||||
/* 0C9824 800C8C24 A4780000 */ sh $t8, ($v1)
|
||||
.L800C8C28:
|
||||
/* 0C9828 800C8C28 3C02800F */ lui $v0, %hi(D_800E9F7C) # $v0, 0x800f
|
||||
/* 0C982C 800C8C2C 24429F7C */ addiu $v0, %lo(D_800E9F7C) # addiu $v0, $v0, -0x6084
|
||||
/* 0C9830 800C8C30 80590014 */ lb $t9, 0x14($v0)
|
||||
/* 0C9834 800C8C34 5720000B */ bnel $t9, $zero, .L800C8C64
|
||||
/* 0C9838 800C8C38 44808000 */ mtc1 $zero, $f16
|
||||
/* 0C983C 800C8C3C 80480050 */ lb $t0, 0x50($v0)
|
||||
/* 0C9840 800C8C40 55000008 */ bnel $t0, $zero, .L800C8C64
|
||||
/* 0C9844 800C8C44 44808000 */ mtc1 $zero, $f16
|
||||
/* 0C9848 800C8C48 8049008C */ lb $t1, 0x8c($v0)
|
||||
/* 0C984C 800C8C4C 55200005 */ bnel $t1, $zero, .L800C8C64
|
||||
/* 0C9850 800C8C50 44808000 */ mtc1 $zero, $f16
|
||||
/* 0C9854 800C8C54 804A00C8 */ lb $t2, 0xc8($v0)
|
||||
/* 0C9858 800C8C58 11400006 */ beqz $t2, .L800C8C74
|
||||
/* 0C985C 800C8C5C 00000000 */ nop
|
||||
/* 0C9860 800C8C60 44808000 */ mtc1 $zero, $f16
|
||||
.L800C8C64:
|
||||
/* 0C9864 800C8C64 3C01800F */ lui $at, %hi(D_800EA17C) # $at, 0x800f
|
||||
/* 0C9868 800C8C68 240B0001 */ li $t3, 1
|
||||
/* 0C986C 800C8C6C E430A17C */ swc1 $f16, %lo(D_800EA17C)($at)
|
||||
/* 0C9870 800C8C70 A46B0000 */ sh $t3, ($v1)
|
||||
.L800C8C74:
|
||||
/* 0C9874 800C8C74 03E00008 */ jr $ra
|
||||
/* 0C9878 800C8C78 25BD0010 */ addiu $sp, $t5, 0x10
|
||||
|
|
@ -1,88 +0,0 @@
|
|||
glabel func_800C8CCC
|
||||
/* 0C98CC 800C8CCC 27BDFFD0 */ addiu $sp, $sp, -0x30
|
||||
/* 0C98D0 800C8CD0 AFB10024 */ sw $s1, 0x24($sp)
|
||||
/* 0C98D4 800C8CD4 3C11800F */ lui $s1, %hi(D_800EA1C0) # $s1, 0x800f
|
||||
/* 0C98D8 800C8CD8 2631A1C0 */ addiu $s1, %lo(D_800EA1C0) # addiu $s1, $s1, -0x5e40
|
||||
/* 0C98DC 800C8CDC 92220000 */ lbu $v0, ($s1)
|
||||
/* 0C98E0 800C8CE0 AFBE0028 */ sw $fp, 0x28($sp)
|
||||
/* 0C98E4 800C8CE4 AFB00020 */ sw $s0, 0x20($sp)
|
||||
/* 0C98E8 800C8CE8 24420001 */ addiu $v0, $v0, 1
|
||||
/* 0C98EC 800C8CEC 03A0F025 */ move $fp, $sp
|
||||
/* 0C98F0 800C8CF0 AFBF002C */ sw $ra, 0x2c($sp)
|
||||
/* 0C98F4 800C8CF4 1840001D */ blez $v0, .L800C8D6C
|
||||
/* 0C98F8 800C8CF8 00008025 */ move $s0, $zero
|
||||
.L800C8CFC:
|
||||
/* 0C98FC 800C8CFC 0C031741 */ jal func_800C5D04
|
||||
/* 0C9900 800C8D00 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C9904 800C8D04 0C03178E */ jal func_800C5E38
|
||||
/* 0C9908 800C8D08 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C990C 800C8D0C 0C031842 */ jal func_800C6108
|
||||
/* 0C9910 800C8D10 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C9914 800C8D14 0C031928 */ jal func_800C64A0
|
||||
/* 0C9918 800C8D18 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C991C 800C8D1C 0C0319D6 */ jal func_800C6758
|
||||
/* 0C9920 800C8D20 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C9924 800C8D24 0C031A0F */ jal func_800C683C
|
||||
/* 0C9928 800C8D28 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C992C 800C8D2C 0C031C2A */ jal func_800C70A8
|
||||
/* 0C9930 800C8D30 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C9934 800C8D34 0C031DB0 */ jal func_800C76C0
|
||||
/* 0C9938 800C8D38 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C993C 800C8D3C 0C03211F */ jal func_800C847C
|
||||
/* 0C9940 800C8D40 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C9944 800C8D44 0C0321B6 */ jal func_800C86D8
|
||||
/* 0C9948 800C8D48 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C994C 800C8D4C 92220000 */ lbu $v0, ($s1)
|
||||
/* 0C9950 800C8D50 26100001 */ addiu $s0, $s0, 1
|
||||
/* 0C9954 800C8D54 320E00FF */ andi $t6, $s0, 0xff
|
||||
/* 0C9958 800C8D58 24420001 */ addiu $v0, $v0, 1
|
||||
/* 0C995C 800C8D5C 01C2082A */ slt $at, $t6, $v0
|
||||
/* 0C9960 800C8D60 1420FFE6 */ bnez $at, .L800C8CFC
|
||||
/* 0C9964 800C8D64 01C08025 */ move $s0, $t6
|
||||
/* 0C9968 800C8D68 00008025 */ move $s0, $zero
|
||||
.L800C8D6C:
|
||||
/* 0C996C 800C8D6C 3C0F800E */ lui $t7, %hi(gModeSelection) # $t7, 0x800e
|
||||
/* 0C9970 800C8D70 8DEFC53C */ lw $t7, %lo(gModeSelection)($t7)
|
||||
/* 0C9974 800C8D74 15E0000C */ bnez $t7, .L800C8DA8
|
||||
/* 0C9978 800C8D78 00000000 */ nop
|
||||
.L800C8D7C:
|
||||
/* 0C997C 800C8D7C 0C0321DC */ jal func_800C8770
|
||||
/* 0C9980 800C8D80 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C9984 800C8D84 0C03231F */ jal func_800C8C7C
|
||||
/* 0C9988 800C8D88 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C998C 800C8D8C 26100001 */ addiu $s0, $s0, 1
|
||||
/* 0C9990 800C8D90 321800FF */ andi $t8, $s0, 0xff
|
||||
/* 0C9994 800C8D94 2B010008 */ slti $at, $t8, 8
|
||||
/* 0C9998 800C8D98 1420FFF8 */ bnez $at, .L800C8D7C
|
||||
/* 0C999C 800C8D9C 03008025 */ move $s0, $t8
|
||||
/* 0C99A0 800C8DA0 1000000E */ b .L800C8DDC
|
||||
/* 0C99A4 800C8DA4 00000000 */ nop
|
||||
.L800C8DA8:
|
||||
/* 0C99A8 800C8DA8 1840000C */ blez $v0, .L800C8DDC
|
||||
/* 0C99AC 800C8DAC 00000000 */ nop
|
||||
.L800C8DB0:
|
||||
/* 0C99B0 800C8DB0 0C0321DC */ jal func_800C8770
|
||||
/* 0C99B4 800C8DB4 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C99B8 800C8DB8 0C03231F */ jal func_800C8C7C
|
||||
/* 0C99BC 800C8DBC 320400FF */ andi $a0, $s0, 0xff
|
||||
/* 0C99C0 800C8DC0 92280000 */ lbu $t0, ($s1)
|
||||
/* 0C99C4 800C8DC4 26100001 */ addiu $s0, $s0, 1
|
||||
/* 0C99C8 800C8DC8 321900FF */ andi $t9, $s0, 0xff
|
||||
/* 0C99CC 800C8DCC 25090001 */ addiu $t1, $t0, 1
|
||||
/* 0C99D0 800C8DD0 0329082A */ slt $at, $t9, $t1
|
||||
/* 0C99D4 800C8DD4 1420FFF6 */ bnez $at, .L800C8DB0
|
||||
/* 0C99D8 800C8DD8 03208025 */ move $s0, $t9
|
||||
.L800C8DDC:
|
||||
/* 0C99DC 800C8DDC 0C032248 */ jal func_800C8920
|
||||
/* 0C99E0 800C8DE0 00000000 */ nop
|
||||
/* 0C99E4 800C8DE4 0C032279 */ jal func_800C89E4
|
||||
/* 0C99E8 800C8DE8 00000000 */ nop
|
||||
/* 0C99EC 800C8DEC 0C0322B9 */ jal func_800C8AE4
|
||||
/* 0C99F0 800C8DF0 00000000 */ nop
|
||||
/* 0C99F4 800C8DF4 8FDF002C */ lw $ra, 0x2c($fp)
|
||||
/* 0C99F8 800C8DF8 03C0E825 */ move $sp, $fp
|
||||
/* 0C99FC 800C8DFC 8FD00020 */ lw $s0, 0x20($fp)
|
||||
/* 0C9A00 800C8E00 8FD10024 */ lw $s1, 0x24($fp)
|
||||
/* 0C9A04 800C8E04 8FDE0028 */ lw $fp, 0x28($fp)
|
||||
/* 0C9A08 800C8E08 03E00008 */ jr $ra
|
||||
/* 0C9A0C 800C8E0C 27BD0030 */ addiu $sp, $sp, 0x30
|
||||
|
|
@ -1545,25 +1545,17 @@ void func_800C4084(u16 bankMask) {
|
|||
}
|
||||
}
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by m2c commit eefca95b040d7ee0c617bc58f9ac6cd1cf7bce87 on Aug-14-2023
|
||||
extern ? D_801930D0;
|
||||
static u16 D_800EA1C4 = 0;
|
||||
extern u16 D_800EA1C4;
|
||||
extern u8 D_801930D0[];
|
||||
|
||||
void func_800C40F0(s32 arg0) {
|
||||
u16 temp_t1;
|
||||
|
||||
unksp-10.unk10 = arg0;
|
||||
temp_t1 = D_800EA1C4 & ((1 << (arg0 & 0xFF)) ^ 0xFFFF);
|
||||
D_800EA1C4 = temp_t1;
|
||||
if (!(temp_t1 & 0xFFFF)) {
|
||||
D_801930D0.unk12 = 1;
|
||||
D_801930D0.unk10 = 0x7F;
|
||||
void func_800C40F0(u8 arg0) {
|
||||
D_800EA1C4 &= ((1 << (arg0)) ^ (u16) -1);
|
||||
if (!D_800EA1C4) {
|
||||
D_801930D0[18] = 1;
|
||||
D_801930D0[16] = 0x7F;
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/audio/external/func_800C40F0.s")
|
||||
#endif
|
||||
|
||||
|
||||
void play_sound(u32 soundBits, f32 *position, u8 arg2, f32 *arg3, f32 *arg4, u8 *arg5) {
|
||||
u8 bank;
|
||||
|
|
@ -3805,19 +3797,20 @@ void func_800C8770(u8 playerId) {
|
|||
}
|
||||
}
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by m2c commit eefca95b040d7ee0c617bc58f9ac6cd1cf7bce87 on Aug-14-2023
|
||||
? func_800CAC08(); /* extern */
|
||||
static u8 D_800EA168 = 0;
|
||||
|
||||
// Checks the same field for all players before doing something?
|
||||
void func_800C8920(void) {
|
||||
if ((D_800EA168 != 0) && ((gPlayers->unk_0BC & 0x40000000) != 0x40000000) && ((gPlayers->unkE94 & 0x40000000) != 0x40000000) && ((gPlayers->unk1C6C & 0x40000000) != 0x40000000) && ((gPlayers->unk2A44 & 0x40000000) != 0x40000000) && ((gPlayers->unk381C & 0x40000000) != 0x40000000) && ((gPlayers->unk45F4 & 0x40000000) != 0x40000000) && ((gPlayers->unk53CC & 0x40000000) != 0x40000000) && ((gPlayers->unk61A4 & 0x40000000) != 0x40000000)) {
|
||||
func_800CAC08();
|
||||
}
|
||||
if (((u8) D_800EA168 != 0)
|
||||
&& ((gPlayers[0].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[1].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[2].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[3].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[4].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[5].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[6].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[7].unk_0BC & 0x40000000) != 0x40000000)) {
|
||||
func_800CAC08();
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/audio/external/func_800C8920.s")
|
||||
#endif
|
||||
|
||||
void func_800C89E4(void) {
|
||||
if (D_800EA180 != 0) {
|
||||
|
|
@ -3842,68 +3835,50 @@ void func_800C89E4(void) {
|
|||
}
|
||||
}
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by m2c commit 0927f17aac197848d4ebdf0c6bbad74b01f0851c
|
||||
static ? D_800E9F7C; /* unable to generate initializer; const */
|
||||
static u8 D_800EA16C = 0; /* const */
|
||||
static u16 D_800EA184 = 0; /* const */
|
||||
static u8 D_800EA1C0 = 0; /* const */
|
||||
s16 gCurrentCourseId; /* unable to generate initializer */
|
||||
extern struct Unk_800E9F7C D_800E9F7C[];
|
||||
extern u16 D_800EA184;
|
||||
static f64 D_800F38B4 = 0.85;
|
||||
|
||||
void func_800C8AE4(void) {
|
||||
u16 temp_t8;
|
||||
u16 var_v0;
|
||||
u8 temp_v0;
|
||||
|
||||
if (gCurrentCourseId == 8) {
|
||||
var_v0 = D_800EA184;
|
||||
if (var_v0 != 0) {
|
||||
temp_t8 = var_v0 + 1;
|
||||
if (D_800EA16C == 0) {
|
||||
D_800EA184 = temp_t8;
|
||||
var_v0 = temp_t8 & 0xFFFF;
|
||||
if (D_800EA184 != 0) {
|
||||
if ((u8) D_800EA16C == 0) {
|
||||
D_800EA184 += 1;
|
||||
}
|
||||
if (var_v0 == 0x012C) {
|
||||
D_800EA17C = 0.85f;
|
||||
if (D_800EA184 == 0x12C) {
|
||||
D_800EA17C = 0.85;
|
||||
D_800EA184 = 0;
|
||||
}
|
||||
} else {
|
||||
temp_v0 = D_800EA1C0;
|
||||
switch (temp_v0) { /* irregular */
|
||||
switch (D_800EA1C0) { /* irregular */
|
||||
case 0:
|
||||
if (D_800E9F7C.unk14 != 0) {
|
||||
if (D_800E9F7C[0].unk14[0] != 0) {
|
||||
D_800EA17C = 0.0f;
|
||||
D_800EA184 = 1;
|
||||
return;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if ((D_800E9F7C.unk14 != 0) || (D_800E9F7C.unk50 != 0)) {
|
||||
if ((D_800E9F7C[0].unk14[0] != 0) || (D_800E9F7C[1].unk14[0] != 0)) {
|
||||
D_800EA17C = 0.0f;
|
||||
block_25:
|
||||
D_800EA184 = 1;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if ((D_800E9F7C.unk14 != 0) || (D_800E9F7C.unk50 != 0) || (D_800E9F7C.unk8C != 0)) {
|
||||
if ((D_800E9F7C[0].unk14[0] != 0) || (D_800E9F7C[1].unk14[0] != 0) || (D_800E9F7C[2].unk14[0] != 0)) {
|
||||
D_800EA17C = 0.0f;
|
||||
D_800EA184 = 1;
|
||||
return;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if ((D_800E9F7C.unk14 != 0) || (D_800E9F7C.unk50 != 0) || (D_800E9F7C.unk8C != 0) || (D_800E9F7C.unkC8 != 0)) {
|
||||
if ((D_800E9F7C[0].unk14[0] != 0) || (D_800E9F7C[1].unk14[0] != 0) || (D_800E9F7C[2].unk14[0] != 0) || (D_800E9F7C[3].unk14[0] != 0)) {
|
||||
D_800EA17C = 0.0f;
|
||||
goto block_25;
|
||||
D_800EA184 = 1;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/audio/external/func_800C8AE4.s")
|
||||
#endif
|
||||
|
||||
extern f32 D_800EA130;
|
||||
|
||||
|
|
@ -3911,70 +3886,47 @@ void func_800C8C7C(u8 arg0) {
|
|||
*(&D_800EA06C[arg0].unk00[2]) = (1.0f - D_800E9F54[arg0]) - (&D_800EA130)[arg0];
|
||||
}
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by m2c commit eefca95b040d7ee0c617bc58f9ac6cd1cf7bce87 on Aug-14-2023
|
||||
? func_800C5D04(s32); /* extern */
|
||||
? func_800C5E38(s32); /* extern */
|
||||
? func_800C6108(s32); /* extern */
|
||||
? func_800C64A0(s32); /* extern */
|
||||
? func_800C683C(s32); /* extern */
|
||||
? func_800C70A8(s32); /* extern */
|
||||
? func_800C76C0(s32); /* extern */
|
||||
? func_800C847C(s32); /* extern */
|
||||
? func_800C8920(); /* extern */
|
||||
? func_800C8AE4(); /* extern */
|
||||
? func_800C8C7C(s32); /* extern */
|
||||
u8 D_800EA1C0 = 0;
|
||||
extern void func_800C5D04(u8); /* extern */
|
||||
extern void func_800C5E38(u8); /* extern */
|
||||
extern void func_800C6108(u8); /* extern */
|
||||
extern void func_800C64A0(u8); /* extern */
|
||||
extern void func_800C683C(u8); /* extern */
|
||||
extern void func_800C70A8(u8); /* extern */
|
||||
extern void func_800C76C0(u8); /* extern */
|
||||
extern void func_800C847C(u8); /* extern */
|
||||
extern void func_800C8920(); /* extern */
|
||||
extern void func_800C8AE4(); /* extern */
|
||||
|
||||
void func_800C8CCC(void) {
|
||||
s32 temp_t6;
|
||||
s32 temp_t8;
|
||||
s32 temp_t9;
|
||||
s32 var_s0;
|
||||
s32 var_v0;
|
||||
void func_800C8CCC() {
|
||||
u8 i;
|
||||
|
||||
var_v0 = D_800EA1C0 + 1;
|
||||
var_s0 = 0;
|
||||
if (var_v0 > 0) {
|
||||
do {
|
||||
func_800C5D04(var_s0 & 0xFF);
|
||||
func_800C5E38(var_s0 & 0xFF);
|
||||
func_800C6108(var_s0 & 0xFF);
|
||||
func_800C64A0(var_s0 & 0xFF);
|
||||
func_800C6758(var_s0 & 0xFF);
|
||||
func_800C683C(var_s0 & 0xFF);
|
||||
func_800C70A8(var_s0 & 0xFF);
|
||||
func_800C76C0(var_s0 & 0xFF);
|
||||
func_800C847C(var_s0 & 0xFF);
|
||||
func_800C86D8(var_s0 & 0xFF);
|
||||
temp_t6 = (var_s0 + 1) & 0xFF;
|
||||
var_v0 = D_800EA1C0 + 1;
|
||||
var_s0 = temp_t6;
|
||||
} while (temp_t6 < var_v0);
|
||||
var_s0 = 0;
|
||||
for (i = 0; i < D_800EA1C0 + 1; i++) {
|
||||
func_800C5D04(i);
|
||||
func_800C5E38(i);
|
||||
func_800C6108(i);
|
||||
func_800C64A0(i);
|
||||
func_800C6758(i);
|
||||
func_800C683C(i);
|
||||
func_800C70A8(i);
|
||||
func_800C76C0(i);
|
||||
func_800C847C(i);
|
||||
func_800C86D8(i);
|
||||
}
|
||||
if (gModeSelection == 0) {
|
||||
do {
|
||||
func_800C8770(var_s0 & 0xFF);
|
||||
func_800C8C7C(var_s0 & 0xFF);
|
||||
temp_t8 = (var_s0 + 1) & 0xFF;
|
||||
var_s0 = temp_t8;
|
||||
} while (temp_t8 < 8);
|
||||
} else if (var_v0 > 0) {
|
||||
do {
|
||||
func_800C8770(var_s0 & 0xFF);
|
||||
func_800C8C7C(var_s0 & 0xFF);
|
||||
temp_t9 = (var_s0 + 1) & 0xFF;
|
||||
var_s0 = temp_t9;
|
||||
} while (temp_t9 < (D_800EA1C0 + 1));
|
||||
for(i = 0; i < 8; i++) {
|
||||
func_800C8770(i);
|
||||
func_800C8C7C(i);
|
||||
}
|
||||
} else {
|
||||
for(i = 0; i < D_800EA1C0 + 1; i++) {
|
||||
func_800C8770(i);
|
||||
func_800C8C7C(i);
|
||||
}
|
||||
}
|
||||
func_800C8920();
|
||||
func_800C89E4();
|
||||
func_800C8AE4();
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/audio/external/func_800C8CCC.s")
|
||||
#endif
|
||||
|
||||
void play_sound2(s32 soundBits) {
|
||||
|
||||
|
|
@ -4002,8 +3954,6 @@ void func_800C8F44(u8 arg0) {
|
|||
func_800C36C4(0, 0, arg0, 1);
|
||||
}
|
||||
|
||||
extern struct Unk_8018EFD8 D_800E9F7C[];
|
||||
|
||||
void func_800C8F80(u8 arg0, s32 arg1) {
|
||||
u8 temp_v0;
|
||||
u8* temp_v1;
|
||||
|
|
@ -4015,7 +3965,7 @@ void func_800C8F80(u8 arg0, s32 arg1) {
|
|||
case 2:
|
||||
*temp_v1 = 1;
|
||||
case 0:
|
||||
play_sound((u32) arg1, (f32* ) &D_800E9F7C[arg0], arg0, D_800EA1D4, D_800EA1D4, &D_800EA1DC);
|
||||
play_sound((u32) arg1, &D_800E9F7C[arg0], arg0, D_800EA1D4, D_800EA1D4, &D_800EA1DC);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -4032,7 +3982,7 @@ void func_800C9060(u8 arg0, u32 arg1) {
|
|||
case 2:
|
||||
D_800EA0EC[arg0] = 1;
|
||||
case 0:
|
||||
play_sound(arg1, (f32*) &D_800E9F7C[arg0].posX, arg0, D_800EA1D4, D_800EA1D4, (u8*) &D_800E9F7C[arg0].velZ);
|
||||
play_sound(arg1, &D_800E9F7C[arg0], arg0, D_800EA1D4, D_800EA1D4, (u8*) &D_800E9F7C[arg0].unk14[0]);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -4259,11 +4209,11 @@ GLOBAL_ASM("asm/non_matchings/audio/external/func_800C94A4.s")
|
|||
#endif
|
||||
|
||||
void func_800C97C4(u8 arg0) {
|
||||
func_800C5578((f32* ) &D_800E9F7C[arg0], gPlayers[arg0].characterId + 0x0104FF00);
|
||||
func_800C5578((f32* ) &D_800E9F7C[arg0], gPlayers[arg0].characterId + 0x0104FF14);
|
||||
func_800C5578((f32* ) &D_800E9F7C[arg0], gPlayers[arg0].characterId + 0x0104FF2E);
|
||||
func_800C5578((f32* ) &D_800E9F7C[arg0], gPlayers[arg0].characterId + 0x0104FF36);
|
||||
func_800C5578((f32* ) &D_800E9F7C[arg0], gPlayers[arg0].characterId + 0x0104FF3E);
|
||||
func_800C5578(&D_800E9F7C[arg0], gPlayers[arg0].characterId + 0x0104FF00);
|
||||
func_800C5578(&D_800E9F7C[arg0], gPlayers[arg0].characterId + 0x0104FF14);
|
||||
func_800C5578(&D_800E9F7C[arg0], gPlayers[arg0].characterId + 0x0104FF2E);
|
||||
func_800C5578(&D_800E9F7C[arg0], gPlayers[arg0].characterId + 0x0104FF36);
|
||||
func_800C5578(&D_800E9F7C[arg0], gPlayers[arg0].characterId + 0x0104FF3E);
|
||||
}
|
||||
|
||||
void func_800C98B8(f32* position, f32* velocity, u32 soundBits) {
|
||||
|
|
|
|||
|
|
@ -88,6 +88,15 @@ struct Unk_800EA06C {
|
|||
/* 0x0D */ // u8 compilerPadding0[3];
|
||||
};
|
||||
|
||||
// Similar to Unk_8018EFD8
|
||||
// Should look like 5 f32's, then 4 u8's, then 9 f32's.
|
||||
struct Unk_800E9F7C {
|
||||
Vec3f pos;
|
||||
f32 unk4[2];
|
||||
s8 unk14[4];
|
||||
f32 unk18[9];
|
||||
}; // Size is still 0x3C.
|
||||
|
||||
void func_800C94A4(u8);
|
||||
void func_800CADD0(u8, f32);
|
||||
void func_800C13F0(void);
|
||||
|
|
@ -134,6 +143,7 @@ void func_800C6758(u8);
|
|||
|
||||
void func_800C86D8(u8);
|
||||
void func_800C8770(u8);
|
||||
void func_800C8920(void);
|
||||
void func_800C89E4(void);
|
||||
void func_800C8CCC(void);
|
||||
void play_sound2(s32);
|
||||
|
|
@ -169,6 +179,7 @@ void func_800CA388(u8);
|
|||
void func_800CA414(u16, u16);
|
||||
void func_800CA49C(u8);
|
||||
void func_800CAACC(u8);
|
||||
void func_800CAC08();
|
||||
void func_800CAC60(s32);
|
||||
void func_800CAD40(s32);
|
||||
void func_800CAEC4(u8, f32);
|
||||
|
|
|
|||
Loading…
Reference in New Issue