From b9b1d2f0c17f74e0fb068c67db05db4d82dd3abc Mon Sep 17 00:00:00 2001 From: Joshua Peisach Date: Sat, 26 Aug 2023 13:46:54 -0400 Subject: [PATCH] audio/external: func_800C357C func_800C9D0C (#386) Signed-off-by: Joshua Peisach --- .../audio/external/func_800C357C.s | 31 ------------ .../audio/external/func_800C9D0C.s | 30 ------------ src/audio/external.c | 47 +++++-------------- src/audio/external.h | 2 +- 4 files changed, 14 insertions(+), 96 deletions(-) delete mode 100644 asm/non_matchings/audio/external/func_800C357C.s delete mode 100644 asm/non_matchings/audio/external/func_800C9D0C.s diff --git a/asm/non_matchings/audio/external/func_800C357C.s b/asm/non_matchings/audio/external/func_800C357C.s deleted file mode 100644 index cdf48e83f..000000000 --- a/asm/non_matchings/audio/external/func_800C357C.s +++ /dev/null @@ -1,31 +0,0 @@ -glabel func_800C357C -/* 0C417C 800C357C 3C02800F */ lui $v0, %hi(D_800EA1E8) # $v0, 0x800f -/* 0C4180 800C3580 3C05800F */ lui $a1, %hi(D_800EA1E4) # $a1, 0x800f -/* 0C4184 800C3584 90A5A1E4 */ lbu $a1, %lo(D_800EA1E4)($a1) -/* 0C4188 800C3588 9042A1E8 */ lbu $v0, %lo(D_800EA1E8)($v0) -/* 0C418C 800C358C 27ADFFF0 */ addiu $t5, $sp, -0x10 -/* 0C4190 800C3590 24030001 */ li $v1, 1 -/* 0C4194 800C3594 0045082A */ slt $at, $v0, $a1 -/* 0C4198 800C3598 1020000F */ beqz $at, .L800C35D8 -/* 0C419C 800C359C 00A03025 */ move $a2, $a1 -/* 0C41A0 800C35A0 3C078019 */ lui $a3, %hi(D_80192CD0) # $a3, 0x8019 -/* 0C41A4 800C35A4 24E72CD0 */ addiu $a3, %lo(D_80192CD0) # addiu $a3, $a3, 0x2cd0 -.L800C35A8: -/* 0C41A8 800C35A8 00027080 */ sll $t6, $v0, 2 -/* 0C41AC 800C35AC 00EE7821 */ addu $t7, $a3, $t6 -/* 0C41B0 800C35B0 8DF80000 */ lw $t8, ($t7) -/* 0C41B4 800C35B4 54980004 */ bnel $a0, $t8, .L800C35C8 -/* 0C41B8 800C35B8 24420001 */ addiu $v0, $v0, 1 -/* 0C41BC 800C35BC 00001825 */ move $v1, $zero -/* 0C41C0 800C35C0 30A200FF */ andi $v0, $a1, 0xff -/* 0C41C4 800C35C4 24420001 */ addiu $v0, $v0, 1 -.L800C35C8: -/* 0C41C8 800C35C8 305900FF */ andi $t9, $v0, 0xff -/* 0C41CC 800C35CC 0326082A */ slt $at, $t9, $a2 -/* 0C41D0 800C35D0 1420FFF5 */ bnez $at, .L800C35A8 -/* 0C41D4 800C35D4 03201025 */ move $v0, $t9 -.L800C35D8: -/* 0C41D8 800C35D8 01A0E825 */ move $sp, $t5 -/* 0C41DC 800C35DC 25BD0010 */ addiu $sp, $t5, 0x10 -/* 0C41E0 800C35E0 03E00008 */ jr $ra -/* 0C41E4 800C35E4 00601025 */ move $v0, $v1 diff --git a/asm/non_matchings/audio/external/func_800C9D0C.s b/asm/non_matchings/audio/external/func_800C9D0C.s deleted file mode 100644 index 02a5dbda5..000000000 --- a/asm/non_matchings/audio/external/func_800C9D0C.s +++ /dev/null @@ -1,30 +0,0 @@ -glabel func_800C9D0C -/* 0CA90C 800C9D0C 308600FF */ andi $a2, $a0, 0xff -/* 0CA910 800C9D10 000670C0 */ sll $t6, $a2, 3 -/* 0CA914 800C9D14 01C67023 */ subu $t6, $t6, $a2 -/* 0CA918 800C9D18 000E7100 */ sll $t6, $t6, 4 -/* 0CA91C 800C9D1C 01C67023 */ subu $t6, $t6, $a2 -/* 0CA920 800C9D20 000E7080 */ sll $t6, $t6, 2 -/* 0CA924 800C9D24 01C67023 */ subu $t6, $t6, $a2 -/* 0CA928 800C9D28 3C0F800F */ lui $t7, %hi(gPlayers) # $t7, 0x800f -/* 0CA92C 800C9D2C 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0CA930 800C9D30 25EF6990 */ addiu $t7, %lo(gPlayers) # addiu $t7, $t7, 0x6990 -/* 0CA934 800C9D34 000E70C0 */ sll $t6, $t6, 3 -/* 0CA938 800C9D38 01CF1021 */ addu $v0, $t6, $t7 -/* 0CA93C 800C9D3C 94450254 */ lhu $a1, 0x254($v0) -/* 0CA940 800C9D40 3C013102 */ lui $at, (0x31028000 >> 16) # lui $at, 0x3102 -/* 0CA944 800C9D44 AFBF002C */ sw $ra, 0x2c($sp) -/* 0CA948 800C9D48 AFBE0028 */ sw $fp, 0x28($sp) -/* 0CA94C 800C9D4C AFA40030 */ sw $a0, 0x30($sp) -/* 0CA950 800C9D50 34218000 */ ori $at, (0x31028000 & 0xFFFF) # ori $at, $at, 0x8000 -/* 0CA954 800C9D54 03A0F025 */ move $fp, $sp -/* 0CA958 800C9D58 24440014 */ addiu $a0, $v0, 0x14 -/* 0CA95C 800C9D5C 0C03087A */ jal func_800C21E8 -/* 0CA960 800C9D60 00A12821 */ addu $a1, $a1, $at -/* 0CA964 800C9D64 0C031543 */ jal func_800C550C -/* 0CA968 800C9D68 00402025 */ move $a0, $v0 -/* 0CA96C 800C9D6C 8FDF002C */ lw $ra, 0x2c($fp) -/* 0CA970 800C9D70 03C0E825 */ move $sp, $fp -/* 0CA974 800C9D74 8FDE0028 */ lw $fp, 0x28($fp) -/* 0CA978 800C9D78 03E00008 */ jr $ra -/* 0CA97C 800C9D7C 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/src/audio/external.c b/src/audio/external.c index b386f5059..6161231b7 100644 --- a/src/audio/external.c +++ b/src/audio/external.c @@ -1121,34 +1121,23 @@ u16 func_800C3508(s32 player) { GLOBAL_ASM("asm/non_matchings/audio/external/func_800C3508.s") #endif -#ifdef MIPS_TO_C -//generated by m2c commit eefca95b040d7ee0c617bc58f9ac6cd1cf7bce87 on Aug-14-2023 -extern ? D_80192CD0; -static u8 D_800EA1E4 = 0; -static u8 D_800EA1E8 = 0; +extern u8 D_800EA1E8; -s32 func_800C357C(s32 arg0) { - s32 temp_t9; - s32 var_v1; - u8 var_v0; +u8 func_800C357C(s32 arg0) { + u8 var_v1; + u8 i; - var_v0 = D_800EA1E8; + i = D_800EA1E8; var_v1 = 1; - if ((s32) var_v0 < (s32) D_800EA1E4) { - do { - if (arg0 == *(&D_80192CD0 + (var_v0 * 4))) { - var_v1 = 0; - var_v0 = D_800EA1E4 & 0xFF; - } - temp_t9 = (var_v0 + 1) & 0xFF; - var_v0 = (u8) temp_t9; - } while (temp_t9 < (s32) D_800EA1E4); + for(i = D_800EA1E8; i < (s32) D_800EA1E4; i++) { + if (arg0 == D_80192CD0[i]) { + var_v1 = 0; + i = D_800EA1E4; + } } return var_v1; } -#else -GLOBAL_ASM("asm/non_matchings/audio/external/func_800C357C.s") -#endif + void func_800C35E8(u8 arg0) { D_80192CC6[arg0] = 0; @@ -4412,19 +4401,9 @@ void func_800C9A88(u8 playerId) { } } -#ifdef MIPS_TO_C -//generated by m2c commit 0927f17aac197848d4ebdf0c6bbad74b01f0851c -? func_800C550C(f32 *); /* extern */ - -void func_800C9D0C(s32 playerId) { - Player *temp_v0; - - temp_v0 = &gPlayers[playerId & 0xFF]; - func_800C550C(func_800C21E8(temp_v0->pos, temp_v0->characterId + 0x31028000)); +void func_800C9D0C(u8 playerId) { + func_800C550C(func_800C21E8(gPlayers[playerId].pos, gPlayers[playerId].characterId + 0x31028000)); } -#else -GLOBAL_ASM("asm/non_matchings/audio/external/func_800C9D0C.s") -#endif #ifdef MIPS_TO_C //generated by m2c commit 0927f17aac197848d4ebdf0c6bbad74b01f0851c diff --git a/src/audio/external.h b/src/audio/external.h index 4bacb9eb9..bc64ba81f 100644 --- a/src/audio/external.h +++ b/src/audio/external.h @@ -145,7 +145,7 @@ void func_800C9060(u8, u32); void func_800C90F4(u8, uintptr_t); void func_800C97C4(u8); void func_800C9A88(u8); -void func_800C9D0C(s32); +void func_800C9D0C(u8); void func_800C9D80(Vec3f, Vec3f, u32); void func_800C9EF4(Vec3f, u32); void func_800C9F90(u8);