From 7ff66bcb8c8b7ff042f0a8a9a8f55ed0c9444ba8 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Tue, 29 Oct 2019 21:52:47 +1000 Subject: [PATCH] Decompile func00001aa4 --- src/boot/boot.c | 48 +++++++++++++++-------------------- src/include/library/library.h | 5 ++++ src/library/library.c | 16 ++++++++++++ 3 files changed, 41 insertions(+), 28 deletions(-) diff --git a/src/boot/boot.c b/src/boot/boot.c index c0a5e224d..fee474db1 100644 --- a/src/boot/boot.c +++ b/src/boot/boot.c @@ -771,34 +771,26 @@ glabel func000019f4 /* 1a98: ac22dbc8 */ sw $v0,-0x2438($at) /* 1a9c: 03e00008 */ jr $ra /* 1aa0: 27bd0018 */ addiu $sp,$sp,0x18 -/* 1aa4: 27bdffe8 */ addiu $sp,$sp,-24 -/* 1aa8: afbf0014 */ sw $ra,0x14($sp) -/* 1aac: 0c000652 */ jal func00001948 -/* 1ab0: afa40018 */ sw $a0,0x18($sp) -/* 1ab4: 0c004dd4 */ jal 0x13750 -/* 1ab8: 00000000 */ sll $zero,$zero,0x0 -/* 1abc: 0c004dc4 */ jal 0x13710 -/* 1ac0: 00000000 */ sll $zero,$zero,0x0 -/* 1ac4: 0c000667 */ jal func0000199c -/* 1ac8: 00000000 */ sll $zero,$zero,0x0 -/* 1acc: 0c004bcc */ jal 0x12f30 -/* 1ad0: 00000000 */ sll $zero,$zero,0x0 -/* 1ad4: 50400004 */ beqzl $v0,.L00001ae8 -/* 1ad8: 00002025 */ or $a0,$zero,$zero -/* 1adc: 0c0120dc */ jal 0x48370 -/* 1ae0: 00002025 */ or $a0,$zero,$zero -/* 1ae4: 00002025 */ or $a0,$zero,$zero -.L00001ae8: -/* 1ae8: 0c01210c */ jal 0x48430 -/* 1aec: 2405000a */ addiu $a1,$zero,0xa -/* 1af0: 0c00067d */ jal func000019f4 -/* 1af4: 00000000 */ sll $zero,$zero,0x0 -/* 1af8: 0c0036ba */ jal 0xdae8 -/* 1afc: 00000000 */ sll $zero,$zero,0x0 -/* 1b00: 8fbf0014 */ lw $ra,0x14($sp) -/* 1b04: 27bd0018 */ addiu $sp,$sp,0x18 -/* 1b08: 03e00008 */ jr $ra -/* 1b0c: 00000000 */ sll $zero,$zero,0x0 +); + +void func00001aa4(u32 value) +{ + func00001948(); + func00013750(); + func00013710(); + func0000199c(); + + if (func00012f30()) { + func00048370(0); + } + + func00048430(0, 10); + func000019f4(); + func0000dae8(); +} + +GLOBAL_ASM( +glabel func00001b10 /* 1b10: 3c018006 */ lui $at,0x8006 /* 1b14: 03e00008 */ jr $ra /* 1b18: ac24ce64 */ sw $a0,-0x319c($at) diff --git a/src/include/library/library.h b/src/include/library/library.h index 208315b3a..341744e8f 100644 --- a/src/include/library/library.h +++ b/src/include/library/library.h @@ -2,6 +2,11 @@ #define _IN_LIBRARY_H #include +void func0000dae8(void); +s32 func00012f30(void); +void func00013710(void); +void func00013750(void); + u8 random(void); u8 *ailistFindById(u16 ailistid); diff --git a/src/library/library.c b/src/library/library.c index 445ee1d3e..7b44383e9 100644 --- a/src/library/library.c +++ b/src/library/library.c @@ -18515,6 +18515,10 @@ glabel func0000d520 /* dadc: ac20dd18 */ sw $zero,-0x22e8($at) /* dae0: 03e00008 */ jr $ra /* dae4: 27bd14d8 */ addiu $sp,$sp,0x14d8 +); + +GLOBAL_ASM( +glabel func0000dae8 /* dae8: 27bdffe8 */ addiu $sp,$sp,-24 /* daec: afbf0014 */ sw $ra,0x14($sp) /* daf0: 0c003548 */ jal func0000d520 @@ -24631,6 +24635,10 @@ glabel func00012efc /* 12f24: 27bd0018 */ addiu $sp,$sp,0x18 /* 12f28: 03e00008 */ jr $ra /* 12f2c: 00000000 */ sll $zero,$zero,0x0 +); + +GLOBAL_ASM( +glabel func00012f30 /* 12f30: 27bdffc8 */ addiu $sp,$sp,-56 /* 12f34: afb1001c */ sw $s1,0x1c($sp) /* 12f38: afbf0024 */ sw $ra,0x24($sp) @@ -25238,6 +25246,10 @@ glabel func00013408 /* 13704: 00000000 */ sll $zero,$zero,0x0 /* 13708: 00000000 */ sll $zero,$zero,0x0 /* 1370c: 00000000 */ sll $zero,$zero,0x0 +); + +GLOBAL_ASM( +glabel func00013710 /* 13710: 27bdffe8 */ addiu $sp,$sp,-24 /* 13714: afbf0014 */ sw $ra,0x14($sp) /* 13718: 3c05800a */ lui $a1,0x800a @@ -25254,6 +25266,10 @@ glabel func00013408 /* 13744: 00000000 */ sll $zero,$zero,0x0 /* 13748: 00000000 */ sll $zero,$zero,0x0 /* 1374c: 00000000 */ sll $zero,$zero,0x0 +); + +GLOBAL_ASM( +glabel func00013750 /* 13750: 03e00008 */ jr $ra /* 13754: 00000000 */ sll $zero,$zero,0x0 );