From dcdab9710c6f14e44570fb839cbd6caae9b6bda6 Mon Sep 17 00:00:00 2001 From: Ethan Roseman Date: Wed, 9 Dec 2020 13:24:00 +0900 Subject: [PATCH] 1 more --- .../code_303c0_len_3e10/func_800565A4.s | 12 ------------ asm/nonmatchings/code_31650/func_800565A4.s | 12 ------------ src/audio.h | 3 ++- src/code_31650.c | 15 ++++++++++++++- tools/splat.yaml | 2 +- 5 files changed, 17 insertions(+), 27 deletions(-) delete mode 100644 asm/nonmatchings/code_303c0_len_3e10/func_800565A4.s delete mode 100644 asm/nonmatchings/code_31650/func_800565A4.s diff --git a/asm/nonmatchings/code_303c0_len_3e10/func_800565A4.s b/asm/nonmatchings/code_303c0_len_3e10/func_800565A4.s deleted file mode 100644 index d831b054be..0000000000 --- a/asm/nonmatchings/code_303c0_len_3e10/func_800565A4.s +++ /dev/null @@ -1,12 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_800565A4 -/* 319A4 800565A4 3C038008 */ lui $v1, %hi(D_80078E50) -/* 319A8 800565A8 24638E50 */ addiu $v1, $v1, %lo(D_80078E50) -/* 319AC 800565AC 8C620000 */ lw $v0, ($v1) -/* 319B0 800565B0 54400001 */ bnel $v0, $zero, .L800565B8 -/* 319B4 800565B4 AC600000 */ sw $zero, ($v1) -.L800565B8: -/* 319B8 800565B8 03E00008 */ jr $ra -/* 319BC 800565BC 00000000 */ nop diff --git a/asm/nonmatchings/code_31650/func_800565A4.s b/asm/nonmatchings/code_31650/func_800565A4.s deleted file mode 100644 index d831b054be..0000000000 --- a/asm/nonmatchings/code_31650/func_800565A4.s +++ /dev/null @@ -1,12 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_800565A4 -/* 319A4 800565A4 3C038008 */ lui $v1, %hi(D_80078E50) -/* 319A8 800565A8 24638E50 */ addiu $v1, $v1, %lo(D_80078E50) -/* 319AC 800565AC 8C620000 */ lw $v0, ($v1) -/* 319B0 800565B0 54400001 */ bnel $v0, $zero, .L800565B8 -/* 319B4 800565B4 AC600000 */ sw $zero, ($v1) -.L800565B8: -/* 319B8 800565B8 03E00008 */ jr $ra -/* 319BC 800565BC 00000000 */ nop diff --git a/src/audio.h b/src/audio.h index a4349b9f31..ce8bb0cefb 100644 --- a/src/audio.h +++ b/src/audio.h @@ -28,7 +28,7 @@ typedef struct UnkAl2 { } UnkAl2; typedef struct UnkLen18 { - /* 0x00 */ s16 unk_00; + /* 0x00 */ u16 unk_00; /* 0x02 */ char unk_02[0x2]; /* 0x04 */ s32 unk_04; /* 0x08 */ s32 unk_08; @@ -314,6 +314,7 @@ typedef struct UnkAl834 { /* 0x021 */ char unk_21[0x813]; } UnkAl834; +extern s32 D_80078E50; extern UnkAl0* D_80078E54; extern s8* D_80078181; extern s32* D_80078190; diff --git a/src/code_31650.c b/src/code_31650.c index c8b717eaf3..3f19d4555d 100644 --- a/src/code_31650.c +++ b/src/code_31650.c @@ -3,7 +3,13 @@ INCLUDE_ASM(s32, "code_31650", func_80056250); -INCLUDE_ASM(s32, "code_31650", func_800565A4); +void func_800565A4(void) { + s32 *sym = &D_80078E50; + + if (*sym != 0) { + *sym = 0; + } +} INCLUDE_ASM(Acmd*, "code_31650", alAudioFrame, Acmd* cmdList, s32* cmdLen, s16* outBuf, s32 outLen); @@ -31,7 +37,14 @@ s16 func_80056D50(void) { INCLUDE_ASM(s16, "code_31650", func_80056D50); #endif +#ifdef NON_MATCHING +void func_80056D5C(s8 arg0) { + D_80078181 = arg0; + D_80078E5C = 1; +} +#else INCLUDE_ASM(s32, "code_31650", func_80056D5C); +#endif #ifdef NON_MATCHING void func_80056D78(u8 arg0, u16 arg1) { diff --git a/tools/splat.yaml b/tools/splat.yaml index af710520c2..e0f4362933 100644 --- a/tools/splat.yaml +++ b/tools/splat.yaml @@ -206,7 +206,7 @@ segments: - [0x4a360, c, os/code_4a360_len_930] - [0x4ac90, c, os/code_4ac90_len_3910] - [0x4E5A0, data, code_1000_len_60] - - [0x52D50, bin] + - [0x52D50, data, code_10400_len_d30] - [0x6B450, .data, world/world] - [0x6EAC0, bin] # has scripts - [0x70E30, bin, battle/battle]