diff options
author | PikalaxALT <PikalaxALT@users.noreply.github.com> | 2021-03-09 19:34:51 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-03-09 19:34:51 -0500 |
commit | 10e6f870acce9b206280bd58b18a3269ef76447b (patch) | |
tree | bb59ff9b7f093534dddc05e771ab7a96316b39c4 /arm9/src | |
parent | d032e35566418f0706c892d7227fe7e5dc8f7f58 (diff) | |
parent | 0baefc2c19596012af3403b28d1c258ee0438b9d (diff) |
Merge pull request #327 from red031000/master
decompile text_02054590
Diffstat (limited to 'arm9/src')
-rw-r--r-- | arm9/src/text_02054590.c | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/arm9/src/text_02054590.c b/arm9/src/text_02054590.c new file mode 100644 index 00000000..f0c63a2b --- /dev/null +++ b/arm9/src/text_02054590.c @@ -0,0 +1,110 @@ +#include "text_02054590.h" + +extern void FUN_0201BD5C(void); +extern void FUN_02002ED0(u32 param0, u32 param1, u32 param2); +extern void FUN_02002EEC(u32 param0, u32 param1, u32 param2); + +extern void FUN_02019064(u32 param0, u32 param1, u32 param2, u8 param3, u32 param4, u8 param5, u32 param6, u32 param7, u32 param8); + +extern void FUN_0200CD68(u32 param0, u32 param1, u32 param2, u32 param3, u8 param4, u32 param5); +extern u32 FUN_0201AB08(u32 *param0); +extern void FUN_0200D0BC(u32 *param0, u32 param1, u32 param2, u32 param3); + +extern void FUN_02019620(u32 *param0, u32 param1); + +extern void FUN_02002B60(u8 param0); +extern void FUN_02002B7C(u32 param0); +extern void FUN_02002BB8(u32 param0); +extern void AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u32 speed, void (*callback)(void *, u16)); + +extern u32 FUN_0201BD70(void); + +extern void FUN_0200D300(u32 param0, u32 param1, u32 param2, u32 param3, u8 param4, u32 param5, u32 param6); +extern void FUN_0200D6F8(u32 *param0, u32 param1, u32 param2, u32 param3, u8 param4); + + +THUMB_FUNC void FUN_02054590(u32 param0, u32 param1) +{ + if (param1 == 1) + { + FUN_0201BD5C(); + } + FUN_02002ED0(param0, 416, 4); + FUN_02002EEC(param0, 384, 4); +} + +THUMB_FUNC void FUN_020545B8(u32 param0, u32 param1, u32 param2) +{ + if (param2 == 3) + { + FUN_02019064(param0, param1, 3, 2, 19, 27, 4, 12, 813); + } + else + { + FUN_02019064(param0, param1, 7, 2, 19, 27, 4, 12, 404); + } +} + +THUMB_FUNC void FUN_02054608(u32 *param0, struct Options *options) +{ + FUN_0200CD68(*param0, FUN_0201AB08(param0), 994, 10, (u8)Options_GetFrame(options), 4); + FUN_0205464C(param0); + FUN_0200D0BC(param0, 0, 994, 10); +} + +THUMB_FUNC void FUN_0205464C(u32 *param0) +{ + FUN_02019620(param0, 15); +} + +THUMB_FUNC void FUN_02054658(u8 windowId, const u8 *str, struct Options *options, u8 param3) +{ + FUN_02002B60(param3); + FUN_02002B7C(0); + FUN_02002BB8(0); + AddTextPrinterParameterized(windowId, 1, str, 0, 0, (u32)Options_GetTextFrameDelay(options), NULL); +} + +THUMB_FUNC void DrawFieldMessage(u8 windowId, const u8 *str, u8 fontId, u32 speed, u8 a4, u32 a5) +{ + FUN_02002B60(a4); + FUN_02002B7C(a5); + FUN_02002BB8(0); + AddTextPrinterParameterized(windowId, fontId, str, 0, 0, speed, NULL); +} + +THUMB_FUNC u8 FUN_020546C8(void) //bool8? +{ + return !FUN_0201BD70(); +} + +THUMB_FUNC void FUN_020546E0(u32 param0, u32 param1, u32 param2, u32 param3) +{ + u32 r4 = 0; + u32 r5 = 0; + if (param2 <= 1) + { + r4 = 9; + r5 = 20; + } + else + { + r4 = 2; + r5 = 27; + } + if (param3 == 3) + { + FUN_02019064(param0, param1, 3, (u8)r4, 19, (u8)r5, 4, 9, 813); + } + else + { + FUN_02019064(param0, param1, 7, (u8)r4, 19, (u8)r5, 4, 9, 404); + } +} + +THUMB_FUNC void FUN_02054744(u32 *param0, u32 param1, u32 param2) +{ + FUN_0200D300(*param0, FUN_0201AB08(param0), 0x399, 9, (u8)param1, param2, 4); + FUN_02019620(param0, 15); + FUN_0200D6F8(param0, 0, 0x399, 9, (u8)param1); +} |