From c4c00f159845fddd1eced906c14cc25a0cb7a10b Mon Sep 17 00:00:00 2001 From: Joshua Peisach Date: Thu, 31 Aug 2023 22:28:49 -0400 Subject: [PATCH] more audio/external stuff (#392) * audio/external: 800C3478 * audio/external: Match func_800C98B8, func_800C9DB0 * Fix build --- .../audio/external/func_800C3478.s | 39 ------- .../audio/external/func_800C98B8.s | 79 -------------- .../audio/external/func_800C9D80.s | 99 ----------------- src/audio/external.c | 101 +++++------------- 4 files changed, 26 insertions(+), 292 deletions(-) delete mode 100644 asm/non_matchings/audio/external/func_800C3478.s delete mode 100644 asm/non_matchings/audio/external/func_800C98B8.s delete mode 100644 asm/non_matchings/audio/external/func_800C9D80.s diff --git a/asm/non_matchings/audio/external/func_800C3478.s b/asm/non_matchings/audio/external/func_800C3478.s deleted file mode 100644 index 725dbf2f4..000000000 --- a/asm/non_matchings/audio/external/func_800C3478.s +++ /dev/null @@ -1,39 +0,0 @@ -glabel func_800C3478 -/* 0C4078 800C3478 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 0C407C 800C347C AFB20030 */ sw $s2, 0x30($sp) -/* 0C4080 800C3480 AFB1002C */ sw $s1, 0x2c($sp) -/* 0C4084 800C3484 3C11800F */ lui $s1, %hi(D_800EA1E8) # $s1, 0x800f -/* 0C4088 800C3488 3C12800F */ lui $s2, %hi(D_800EA1E4) # $s2, 0x800f -/* 0C408C 800C348C 2652A1E4 */ addiu $s2, %lo(D_800EA1E4) # addiu $s2, $s2, -0x5e1c -/* 0C4090 800C3490 2631A1E8 */ addiu $s1, %lo(D_800EA1E8) # addiu $s1, $s1, -0x5e18 -/* 0C4094 800C3494 AFB00028 */ sw $s0, 0x28($sp) -/* 0C4098 800C3498 92300000 */ lbu $s0, ($s1) -/* 0C409C 800C349C 924E0000 */ lbu $t6, ($s2) -/* 0C40A0 800C34A0 AFBE0038 */ sw $fp, 0x38($sp) -/* 0C40A4 800C34A4 03A0F025 */ move $fp, $sp -/* 0C40A8 800C34A8 AFBF003C */ sw $ra, 0x3c($sp) -/* 0C40AC 800C34AC 120E000D */ beq $s0, $t6, .L800C34E4 -/* 0C40B0 800C34B0 AFB30034 */ sw $s3, 0x34($sp) -/* 0C40B4 800C34B4 3C138019 */ lui $s3, %hi(D_80192CD0) # $s3, 0x8019 -/* 0C40B8 800C34B8 26732CD0 */ addiu $s3, %lo(D_80192CD0) # addiu $s3, $s3, 0x2cd0 -/* 0C40BC 800C34BC 00107880 */ sll $t7, $s0, 2 -.L800C34C0: -/* 0C40C0 800C34C0 026FC021 */ addu $t8, $s3, $t7 -/* 0C40C4 800C34C4 8F040000 */ lw $a0, ($t8) -/* 0C40C8 800C34C8 26190001 */ addiu $t9, $s0, 1 -/* 0C40CC 800C34CC 0C030A8B */ jal func_800C2A2C -/* 0C40D0 800C34D0 A2390000 */ sb $t9, ($s1) -/* 0C40D4 800C34D4 92300000 */ lbu $s0, ($s1) -/* 0C40D8 800C34D8 92480000 */ lbu $t0, ($s2) -/* 0C40DC 800C34DC 5608FFF8 */ bnel $s0, $t0, .L800C34C0 -/* 0C40E0 800C34E0 00107880 */ sll $t7, $s0, 2 -.L800C34E4: -/* 0C40E4 800C34E4 8FDF003C */ lw $ra, 0x3c($fp) -/* 0C40E8 800C34E8 03C0E825 */ move $sp, $fp -/* 0C40EC 800C34EC 8FD00028 */ lw $s0, 0x28($fp) -/* 0C40F0 800C34F0 8FD1002C */ lw $s1, 0x2c($fp) -/* 0C40F4 800C34F4 8FD20030 */ lw $s2, 0x30($fp) -/* 0C40F8 800C34F8 8FD30034 */ lw $s3, 0x34($fp) -/* 0C40FC 800C34FC 8FDE0038 */ lw $fp, 0x38($fp) -/* 0C4100 800C3500 03E00008 */ jr $ra -/* 0C4104 800C3504 27BD0040 */ addiu $sp, $sp, 0x40 diff --git a/asm/non_matchings/audio/external/func_800C98B8.s b/asm/non_matchings/audio/external/func_800C98B8.s deleted file mode 100644 index e3f762177..000000000 --- a/asm/non_matchings/audio/external/func_800C98B8.s +++ /dev/null @@ -1,79 +0,0 @@ -glabel func_800C98B8 -/* 0CA4B8 800C98B8 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 0CA4BC 800C98BC 3C0E800F */ lui $t6, %hi(D_800EA108) # $t6, 0x800f -/* 0CA4C0 800C98C0 91CEA108 */ lbu $t6, %lo(D_800EA108)($t6) -/* 0CA4C4 800C98C4 AFBE0058 */ sw $fp, 0x58($sp) -/* 0CA4C8 800C98C8 AFB60050 */ sw $s6, 0x50($sp) -/* 0CA4CC 800C98CC AFB5004C */ sw $s5, 0x4c($sp) -/* 0CA4D0 800C98D0 AFB1003C */ sw $s1, 0x3c($sp) -/* 0CA4D4 800C98D4 00C08825 */ move $s1, $a2 -/* 0CA4D8 800C98D8 0080A825 */ move $s5, $a0 -/* 0CA4DC 800C98DC 00A0B025 */ move $s6, $a1 -/* 0CA4E0 800C98E0 03A0F025 */ move $fp, $sp -/* 0CA4E4 800C98E4 AFBF005C */ sw $ra, 0x5c($sp) -/* 0CA4E8 800C98E8 AFB70054 */ sw $s7, 0x54($sp) -/* 0CA4EC 800C98EC AFB40048 */ sw $s4, 0x48($sp) -/* 0CA4F0 800C98F0 AFB30044 */ sw $s3, 0x44($sp) -/* 0CA4F4 800C98F4 AFB20040 */ sw $s2, 0x40($sp) -/* 0CA4F8 800C98F8 AFB00038 */ sw $s0, 0x38($sp) -/* 0CA4FC 800C98FC 15C0002A */ bnez $t6, .L800C99A8 -/* 0CA500 800C9900 F7B40030 */ sdc1 $f20, 0x30($sp) -/* 0CA504 800C9904 3C0F800F */ lui $t7, %hi(D_800EA0F0) # $t7, 0x800f -/* 0CA508 800C9908 91EFA0F0 */ lbu $t7, %lo(D_800EA0F0)($t7) -/* 0CA50C 800C990C 3C17800F */ lui $s7, %hi(D_800EA1C0) # $s7, 0x800f -/* 0CA510 800C9910 26F7A1C0 */ addiu $s7, %lo(D_800EA1C0) # addiu $s7, $s7, -0x5e40 -/* 0CA514 800C9914 55E00025 */ bnel $t7, $zero, .L800C99AC -/* 0CA518 800C9918 8FDF005C */ lw $ra, 0x5c($fp) -/* 0CA51C 800C991C 92F80000 */ lbu $t8, ($s7) -/* 0CA520 800C9920 00008025 */ move $s0, $zero -/* 0CA524 800C9924 3C01432A */ li $at, 0x432A0000 # 170.000000 -/* 0CA528 800C9928 27190001 */ addiu $t9, $t8, 1 -/* 0CA52C 800C992C 1B20001E */ blez $t9, .L800C99A8 -/* 0CA530 800C9930 3C14800F */ lui $s4, %hi(D_800EA1DC) # $s4, 0x800f -/* 0CA534 800C9934 3C13800F */ lui $s3, %hi(D_800EA1D4) # $s3, 0x800f -/* 0CA538 800C9938 3C12800F */ lui $s2, %hi(D_800EA1C8) # $s2, 0x800f -/* 0CA53C 800C993C 4481A000 */ mtc1 $at, $f20 -/* 0CA540 800C9940 2652A1C8 */ addiu $s2, %lo(D_800EA1C8) # addiu $s2, $s2, -0x5e38 -/* 0CA544 800C9944 2673A1D4 */ addiu $s3, %lo(D_800EA1D4) # addiu $s3, $s3, -0x5e2c -/* 0CA548 800C9948 2694A1DC */ addiu $s4, %lo(D_800EA1DC) # addiu $s4, $s4, -0x5e24 -.L800C994C: -/* 0CA54C 800C994C 00002025 */ move $a0, $zero -/* 0CA550 800C9950 02A02825 */ move $a1, $s5 -/* 0CA554 800C9954 02C03025 */ move $a2, $s6 -/* 0CA558 800C9958 02403825 */ move $a3, $s2 -/* 0CA55C 800C995C AFB00010 */ sw $s0, 0x10($sp) -/* 0CA560 800C9960 0C030722 */ jal func_800C1C88 -/* 0CA564 800C9964 AFB10014 */ sw $s1, 0x14($sp) -/* 0CA568 800C9968 10400008 */ beqz $v0, .L800C998C -/* 0CA56C 800C996C 02202025 */ move $a0, $s1 -/* 0CA570 800C9970 E4540034 */ swc1 $f20, 0x34($v0) -/* 0CA574 800C9974 AFB40014 */ sw $s4, 0x14($sp) -/* 0CA578 800C9978 AFB30010 */ sw $s3, 0x10($sp) -/* 0CA57C 800C997C 24450018 */ addiu $a1, $v0, 0x18 -/* 0CA580 800C9980 320600FF */ andi $a2, $s0, 0xff -/* 0CA584 800C9984 0C031052 */ jal play_sound -/* 0CA588 800C9988 2447002C */ addiu $a3, $v0, 0x2c -.L800C998C: -/* 0CA58C 800C998C 92E90000 */ lbu $t1, ($s7) -/* 0CA590 800C9990 26100001 */ addiu $s0, $s0, 1 -/* 0CA594 800C9994 320800FF */ andi $t0, $s0, 0xff -/* 0CA598 800C9998 252A0001 */ addiu $t2, $t1, 1 -/* 0CA59C 800C999C 010A082A */ slt $at, $t0, $t2 -/* 0CA5A0 800C99A0 1420FFEA */ bnez $at, .L800C994C -/* 0CA5A4 800C99A4 01008025 */ move $s0, $t0 -.L800C99A8: -/* 0CA5A8 800C99A8 8FDF005C */ lw $ra, 0x5c($fp) -.L800C99AC: -/* 0CA5AC 800C99AC 03C0E825 */ move $sp, $fp -/* 0CA5B0 800C99B0 D7D40030 */ ldc1 $f20, 0x30($fp) -/* 0CA5B4 800C99B4 8FD00038 */ lw $s0, 0x38($fp) -/* 0CA5B8 800C99B8 8FD1003C */ lw $s1, 0x3c($fp) -/* 0CA5BC 800C99BC 8FD20040 */ lw $s2, 0x40($fp) -/* 0CA5C0 800C99C0 8FD30044 */ lw $s3, 0x44($fp) -/* 0CA5C4 800C99C4 8FD40048 */ lw $s4, 0x48($fp) -/* 0CA5C8 800C99C8 8FD5004C */ lw $s5, 0x4c($fp) -/* 0CA5CC 800C99CC 8FD60050 */ lw $s6, 0x50($fp) -/* 0CA5D0 800C99D0 8FD70054 */ lw $s7, 0x54($fp) -/* 0CA5D4 800C99D4 8FDE0058 */ lw $fp, 0x58($fp) -/* 0CA5D8 800C99D8 03E00008 */ jr $ra -/* 0CA5DC 800C99DC 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/asm/non_matchings/audio/external/func_800C9D80.s b/asm/non_matchings/audio/external/func_800C9D80.s deleted file mode 100644 index 0bb5c0cc5..000000000 --- a/asm/non_matchings/audio/external/func_800C9D80.s +++ /dev/null @@ -1,99 +0,0 @@ -glabel func_800C9D80 -/* 0CA980 800C9D80 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 0CA984 800C9D84 3C0E800F */ lui $t6, %hi(D_800EA108) # $t6, 0x800f -/* 0CA988 800C9D88 91CEA108 */ lbu $t6, %lo(D_800EA108)($t6) -/* 0CA98C 800C9D8C AFBE0058 */ sw $fp, 0x58($sp) -/* 0CA990 800C9D90 AFB1003C */ sw $s1, 0x3c($sp) -/* 0CA994 800C9D94 00C08825 */ move $s1, $a2 -/* 0CA998 800C9D98 03A0F025 */ move $fp, $sp -/* 0CA99C 800C9D9C AFBF005C */ sw $ra, 0x5c($sp) -/* 0CA9A0 800C9DA0 AFB70054 */ sw $s7, 0x54($sp) -/* 0CA9A4 800C9DA4 AFB60050 */ sw $s6, 0x50($sp) -/* 0CA9A8 800C9DA8 AFB5004C */ sw $s5, 0x4c($sp) -/* 0CA9AC 800C9DAC AFB40048 */ sw $s4, 0x48($sp) -/* 0CA9B0 800C9DB0 AFB30044 */ sw $s3, 0x44($sp) -/* 0CA9B4 800C9DB4 AFB20040 */ sw $s2, 0x40($sp) -/* 0CA9B8 800C9DB8 AFB00038 */ sw $s0, 0x38($sp) -/* 0CA9BC 800C9DBC F7B40030 */ sdc1 $f20, 0x30($sp) -/* 0CA9C0 800C9DC0 AFA40060 */ sw $a0, 0x60($sp) -/* 0CA9C4 800C9DC4 15C0003D */ bnez $t6, .L800C9EBC -/* 0CA9C8 800C9DC8 AFA50064 */ sw $a1, 0x64($sp) -/* 0CA9CC 800C9DCC 3C0F800F */ lui $t7, %hi(D_800EA0F0) # $t7, 0x800f -/* 0CA9D0 800C9DD0 91EFA0F0 */ lbu $t7, %lo(D_800EA0F0)($t7) -/* 0CA9D4 800C9DD4 3C02800F */ lui $v0, %hi(D_800EA1C0) # $v0, 0x800f -/* 0CA9D8 800C9DD8 55E00039 */ bnel $t7, $zero, .L800C9EC0 -/* 0CA9DC 800C9DDC 8FDF005C */ lw $ra, 0x5c($fp) -/* 0CA9E0 800C9DE0 9042A1C0 */ lbu $v0, %lo(D_800EA1C0)($v0) -/* 0CA9E4 800C9DE4 28410004 */ slti $at, $v0, 4 -/* 0CA9E8 800C9DE8 50200035 */ beql $at, $zero, .L800C9EC0 -/* 0CA9EC 800C9DEC 8FDF005C */ lw $ra, 0x5c($fp) -/* 0CA9F0 800C9DF0 04400032 */ bltz $v0, .L800C9EBC -/* 0CA9F4 800C9DF4 00008025 */ move $s0, $zero -/* 0CA9F8 800C9DF8 3C01432A */ li $at, 0x432A0000 # 170.000000 -/* 0CA9FC 800C9DFC 3C17800F */ lui $s7, %hi(D_800EA1D4) # $s7, 0x800f -/* 0CAA00 800C9E00 3C16800F */ lui $s6, %hi(D_800EA17C) # $s6, 0x800f -/* 0CAA04 800C9E04 3C15800F */ lui $s5, %hi(D_800EA178) # $s5, 0x800f -/* 0CAA08 800C9E08 3C145103 */ lui $s4, (0x5103700B >> 16) # lui $s4, 0x5103 -/* 0CAA0C 800C9E0C 3C13800F */ lui $s3, %hi(D_800EA1C8) # $s3, 0x800f -/* 0CAA10 800C9E10 3C12800F */ lui $s2, %hi(D_800EA1DC) # $s2, 0x800f -/* 0CAA14 800C9E14 4481A000 */ mtc1 $at, $f20 -/* 0CAA18 800C9E18 2652A1DC */ addiu $s2, %lo(D_800EA1DC) # addiu $s2, $s2, -0x5e24 -/* 0CAA1C 800C9E1C 2673A1C8 */ addiu $s3, %lo(D_800EA1C8) # addiu $s3, $s3, -0x5e38 -/* 0CAA20 800C9E20 3694700B */ ori $s4, (0x5103700B & 0xFFFF) # ori $s4, $s4, 0x700b -/* 0CAA24 800C9E24 26B5A178 */ addiu $s5, %lo(D_800EA178) # addiu $s5, $s5, -0x5e88 -/* 0CAA28 800C9E28 26D6A17C */ addiu $s6, %lo(D_800EA17C) # addiu $s6, $s6, -0x5e84 -/* 0CAA2C 800C9E2C 26F7A1D4 */ addiu $s7, %lo(D_800EA1D4) # addiu $s7, $s7, -0x5e2c -.L800C9E30: -/* 0CAA30 800C9E30 8FC50060 */ lw $a1, 0x60($fp) -/* 0CAA34 800C9E34 8FC60064 */ lw $a2, 0x64($fp) -/* 0CAA38 800C9E38 AFB10014 */ sw $s1, 0x14($sp) -/* 0CAA3C 800C9E3C AFB00010 */ sw $s0, 0x10($sp) -/* 0CAA40 800C9E40 00002025 */ move $a0, $zero -/* 0CAA44 800C9E44 0C030722 */ jal func_800C1C88 -/* 0CAA48 800C9E48 02603825 */ move $a3, $s3 -/* 0CAA4C 800C9E4C 10400013 */ beqz $v0, .L800C9E9C -/* 0CAA50 800C9E50 00401825 */ move $v1, $v0 -/* 0CAA54 800C9E54 1634000A */ bne $s1, $s4, .L800C9E80 -/* 0CAA58 800C9E58 E4540034 */ swc1 $f20, 0x34($v0) -/* 0CAA5C 800C9E5C 02202025 */ move $a0, $s1 -/* 0CAA60 800C9E60 24450018 */ addiu $a1, $v0, 0x18 -/* 0CAA64 800C9E64 320600FF */ andi $a2, $s0, 0xff -/* 0CAA68 800C9E68 02A03825 */ move $a3, $s5 -/* 0CAA6C 800C9E6C AFB60010 */ sw $s6, 0x10($sp) -/* 0CAA70 800C9E70 0C031052 */ jal play_sound -/* 0CAA74 800C9E74 AFB20014 */ sw $s2, 0x14($sp) -/* 0CAA78 800C9E78 10000008 */ b .L800C9E9C -/* 0CAA7C 800C9E7C 00000000 */ nop -.L800C9E80: -/* 0CAA80 800C9E80 02202025 */ move $a0, $s1 -/* 0CAA84 800C9E84 24650018 */ addiu $a1, $v1, 0x18 -/* 0CAA88 800C9E88 320600FF */ andi $a2, $s0, 0xff -/* 0CAA8C 800C9E8C 2467002C */ addiu $a3, $v1, 0x2c -/* 0CAA90 800C9E90 AFB70010 */ sw $s7, 0x10($sp) -/* 0CAA94 800C9E94 0C031052 */ jal play_sound -/* 0CAA98 800C9E98 AFB20014 */ sw $s2, 0x14($sp) -.L800C9E9C: -/* 0CAA9C 800C9E9C 3C19800F */ lui $t9, %hi(D_800EA1C0) # $t9, 0x800f -/* 0CAAA0 800C9EA0 9339A1C0 */ lbu $t9, %lo(D_800EA1C0)($t9) -/* 0CAAA4 800C9EA4 26100001 */ addiu $s0, $s0, 1 -/* 0CAAA8 800C9EA8 321800FF */ andi $t8, $s0, 0xff -/* 0CAAAC 800C9EAC 27280001 */ addiu $t0, $t9, 1 -/* 0CAAB0 800C9EB0 0308082A */ slt $at, $t8, $t0 -/* 0CAAB4 800C9EB4 1420FFDE */ bnez $at, .L800C9E30 -/* 0CAAB8 800C9EB8 03008025 */ move $s0, $t8 -.L800C9EBC: -/* 0CAABC 800C9EBC 8FDF005C */ lw $ra, 0x5c($fp) -.L800C9EC0: -/* 0CAAC0 800C9EC0 03C0E825 */ move $sp, $fp -/* 0CAAC4 800C9EC4 D7D40030 */ ldc1 $f20, 0x30($fp) -/* 0CAAC8 800C9EC8 8FD00038 */ lw $s0, 0x38($fp) -/* 0CAACC 800C9ECC 8FD1003C */ lw $s1, 0x3c($fp) -/* 0CAAD0 800C9ED0 8FD20040 */ lw $s2, 0x40($fp) -/* 0CAAD4 800C9ED4 8FD30044 */ lw $s3, 0x44($fp) -/* 0CAAD8 800C9ED8 8FD40048 */ lw $s4, 0x48($fp) -/* 0CAADC 800C9EDC 8FD5004C */ lw $s5, 0x4c($fp) -/* 0CAAE0 800C9EE0 8FD60050 */ lw $s6, 0x50($fp) -/* 0CAAE4 800C9EE4 8FD70054 */ lw $s7, 0x54($fp) -/* 0CAAE8 800C9EE8 8FDE0058 */ lw $fp, 0x58($fp) -/* 0CAAEC 800C9EEC 03E00008 */ jr $ra -/* 0CAAF0 800C9EF0 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/src/audio/external.c b/src/audio/external.c index 6307b3b72..d1b82177f 100644 --- a/src/audio/external.c +++ b/src/audio/external.c @@ -1081,27 +1081,13 @@ void func_800C3448(s32 arg0) { D_800EA1E4 += 1; } -#ifdef MIPS_TO_C -//generated by m2c commit eefca95b040d7ee0c617bc58f9ac6cd1cf7bce87 on Aug-14-2023 -? func_800C2A2C(s32); /* extern */ -extern ? D_80192CD0; -static u8 D_800EA1E4 = 0; -static u8 D_800EA1E8 = 0; +extern u8 D_800EA1E8; void func_800C3478(void) { - u8 temp_s0; - - temp_s0 = D_800EA1E8; - if (temp_s0 != D_800EA1E4) { - do { - D_800EA1E8 = temp_s0 + 1; - func_800C2A2C(*(&D_80192CD0 + (temp_s0 * 4))); - } while (D_800EA1E8 != D_800EA1E4); + for(D_800EA1E8; D_800EA1E4 != D_800EA1E8;) { + func_800C2A2C(D_80192CD0[D_800EA1E8++]); } } -#else -GLOBAL_ASM("asm/non_matchings/audio/external/func_800C3478.s") -#endif #ifdef MIPS_TO_C //generated by m2c commit eefca95b040d7ee0c617bc58f9ac6cd1cf7bce87 on Aug-14-2023 @@ -4287,38 +4273,21 @@ void func_800C97C4(u8 arg0) { func_800C5578((f32* ) &D_800E9F7C[arg0], gPlayers[arg0].characterId + 0x0104FF3E); } - -#ifdef MIPS_TO_C -//generated by m2c commit 0927f17aac197848d4ebdf0c6bbad74b01f0851c -static u8 D_800EA1DC = 0; /* const */ -u8 D_800EA0F0 = 0; /* const */ -u8 D_800EA108 = 0; /* const */ -u8 D_800EA1C0 = 0; /* const */ -f32 D_800EA1C8[3] = { 0.0f, 0.0f, 0.0f }; /* const */ - -void func_800C98B8(f32 *position, f32 *velocity, u32 soundBits) { - s32 temp_t0; - s32 var_s0; - struct Unk_8018EFD8 *temp_v0; +void func_800C98B8(f32* position, f32* velocity, u32 soundBits) { + u8 var_s0; + struct Unk_8018EFD8* temp_v0; if ((D_800EA108 == 0) && (D_800EA0F0 == 0)) { - var_s0 = 0; - if ((D_800EA1C0 + 1) > 0) { - do { - temp_v0 = func_800C1C88(0U, position, velocity, D_800EA1C8, (u8) var_s0, soundBits); - if (temp_v0 != NULL) { - temp_v0->unk34 = 170.0f; - play_sound(soundBits, temp_v0->unk18, var_s0 & 0xFF, &temp_v0->unk2C, &D_800EA1D4, &D_800EA1DC); - } - temp_t0 = (var_s0 + 1) & 0xFF; - var_s0 = temp_t0; - } while (temp_t0 < (D_800EA1C0 + 1)); + for (var_s0 = 0; var_s0 < (D_800EA1C0 + 1); var_s0++) { + temp_v0 = func_800C1C88(0U, position, velocity, D_800EA1C8, (u8) var_s0, soundBits); + if (temp_v0 != 0) { + temp_v0->unk34 = 170.0f; + play_sound(soundBits, temp_v0->unk18, var_s0, &temp_v0->unk2C, D_800EA1D4, &D_800EA1DC); + } } } } -#else -GLOBAL_ASM("asm/non_matchings/audio/external/func_800C98B8.s") -#endif + void func_800C99E0(Vec3f arg0, s32 arg1) { f32* temp_v0; @@ -4391,43 +4360,25 @@ void func_800C9D0C(u8 playerId) { func_800C550C(func_800C21E8(gPlayers[playerId].pos, gPlayers[playerId].characterId + 0x31028000)); } -#ifdef MIPS_TO_C -//generated by m2c commit 0927f17aac197848d4ebdf0c6bbad74b01f0851c -static u8 D_800EA0F0 = 0; /* const */ -static u8 D_800EA1C0 = 0; /* const */ -s8 D_800EA108 = 0; /* const */ - void func_800C9D80(Vec3f position, Vec3f velocity, u32 soundBits) { - s32 temp_t8; - s32 var_s0; - struct Unk_8018EFD8 *temp_v0_2; - u8 temp_v0; + u8 var_s0; + struct Unk_8018EFD8* temp_v0; - if (((u8) D_800EA108 == 0) && (D_800EA0F0 == 0)) { - temp_v0 = D_800EA1C0; - if ((s32) temp_v0 < 4) { - var_s0 = 0; - if ((s32) temp_v0 >= 0) { - do { - temp_v0_2 = func_800C1C88(0U, position, velocity, &D_800EA1C8, (u8) var_s0, soundBits); - if (temp_v0_2 != NULL) { - temp_v0_2->unk34 = 170.0f; - if (soundBits == 0x5103700B) { - play_sound(soundBits, temp_v0_2->unk18, var_s0 & 0xFF, &D_800EA178, &D_800EA17C, &D_800EA1DC); - } else { - play_sound(soundBits, temp_v0_2->unk18, var_s0 & 0xFF, &temp_v0_2->unk2C, &D_800EA1D4, &D_800EA1DC); - } - } - temp_t8 = (var_s0 + 1) & 0xFF; - var_s0 = temp_t8; - } while (temp_t8 < (D_800EA1C0 + 1)); + if ((D_800EA108 == 0) && (D_800EA0F0 == 0) && ((s32) D_800EA1C0 < 4)) { + for(var_s0 = 0; var_s0 < ((D_800EA1C0 + 1)); var_s0++) { + temp_v0 = func_800C1C88(0U, position, velocity, D_800EA1C8, (u8) var_s0, soundBits); + if (temp_v0 != 0) { + temp_v0->unk34 = 170.0f; + if (soundBits == 0x5103700B) { + play_sound(soundBits, temp_v0->unk18, var_s0, &D_800EA178, &D_800EA17C, &D_800EA1DC); + } else { + play_sound(soundBits, temp_v0->unk18, var_s0, &temp_v0->unk2C, D_800EA1D4, &D_800EA1DC); + } } } } } -#else -GLOBAL_ASM("asm/non_matchings/audio/external/func_800C9D80.s") -#endif + void func_800C9EF4(Vec3f arg0, u32 arg1) { f32 *temp;