From ecbc60c0d558ac15414d424a81fa0a555b84cc53 Mon Sep 17 00:00:00 2001 From: Faschz Date: Sat, 1 Aug 2020 15:08:47 -0500 Subject: [PATCH] Decomp 2 functions in unknown_001050 func_800011E8 and func_80001228 --- .../unknown_001050/func_800011E8.s | 38 ------------------- src/unknown_001050.c | 21 +++++++++- 2 files changed, 19 insertions(+), 40 deletions(-) delete mode 100644 asm/non_matchings/unknown_001050/func_800011E8.s diff --git a/asm/non_matchings/unknown_001050/func_800011E8.s b/asm/non_matchings/unknown_001050/func_800011E8.s deleted file mode 100644 index 7f05bdaa..00000000 --- a/asm/non_matchings/unknown_001050/func_800011E8.s +++ /dev/null @@ -1,38 +0,0 @@ -glabel func_800011E8 -/* 001DE8 800011E8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 001DEC 800011EC 308700FF */ andi $a3, $a0, 0xff -/* 001DF0 800011F0 28E10010 */ slti $at, $a3, 0x10 -/* 001DF4 800011F4 AFBF0014 */ sw $ra, 0x14($sp) -/* 001DF8 800011F8 AFA40018 */ sw $a0, 0x18($sp) -/* 001DFC 800011FC AFA5001C */ sw $a1, 0x1c($sp) -/* 001E00 80001200 10200005 */ beqz $at, .L80001218 -/* 001E04 80001204 30A600FF */ andi $a2, $a1, 0xff -/* 001E08 80001208 3C04800E */ lui $a0, %hi(D_800DC630) # $a0, 0x800e -/* 001E0C 8000120C 8C84C630 */ lw $a0, %lo(D_800DC630)($a0) -/* 001E10 80001210 0C031E50 */ jal func_800C7940 -/* 001E14 80001214 30E500FF */ andi $a1, $a3, 0xff -.L80001218: -/* 001E18 80001218 8FBF0014 */ lw $ra, 0x14($sp) -/* 001E1C 8000121C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 001E20 80001220 03E00008 */ jr $ra -/* 001E24 80001224 00000000 */ nop - -/* 001E28 80001228 308500FF */ andi $a1, $a0, 0xff -/* 001E2C 8000122C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 001E30 80001230 28A10010 */ slti $at, $a1, 0x10 -/* 001E34 80001234 AFBF0014 */ sw $ra, 0x14($sp) -/* 001E38 80001238 14200003 */ bnez $at, .L80001248 -/* 001E3C 8000123C AFA40018 */ sw $a0, 0x18($sp) -/* 001E40 80001240 10000005 */ b .L80001258 -/* 001E44 80001244 00001025 */ move $v0, $zero -.L80001248: -/* 001E48 80001248 3C04800E */ lui $a0, %hi(D_800DC630) # $a0, 0x800e -/* 001E4C 8000124C 8C84C630 */ lw $a0, %lo(D_800DC630)($a0) -/* 001E50 80001250 0C031E68 */ jal func_800C79A0 -/* 001E54 80001254 00000000 */ nop -.L80001258: -/* 001E58 80001258 8FBF0014 */ lw $ra, 0x14($sp) -/* 001E5C 8000125C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 001E60 80001260 03E00008 */ jr $ra -/* 001E64 80001264 00000000 */ nop - diff --git a/src/unknown_001050.c b/src/unknown_001050.c index 0ea154b8..196ace28 100644 --- a/src/unknown_001050.c +++ b/src/unknown_001050.c @@ -35,7 +35,7 @@ extern u8 D_800DC670; /* Unknown size */ typedef struct unk80115CF8 { u8 pad0[2]; - s16 unk2; + s16 unk2; } unk80115CF8; extern unk80115CF8 *D_80115CF8; @@ -234,7 +234,24 @@ void func_800011A8(u8 arg0, u8 arg1) { } } -GLOBAL_ASM("asm/non_matchings/unknown_001050/func_800011E8.s") +void func_800C7940(unk800DC630*, u8 arg1, u8 arg2); + +void func_800011E8(u8 arg0, u8 arg1) { + if (arg0 < 0x10) { + func_800C7940(D_800DC630, arg0, arg1); + } +} + +s32 func_800C79A0(unk800DC630*, u8 arg1); + +/* Unused?*/ +s32 func_80001228(u8 arg0) { + if (arg0 >= 0x10) { + return 0; + } else { + return func_800C79A0(D_800DC630, arg0); + } +} s32 func_80063BA0(unk800DC630*, u8 arg1, u8 arg2);