more textbox

This commit is contained in:
theo3 2021-01-31 20:33:33 -08:00
parent 44a7255d63
commit d58f3fbd63
7 changed files with 299 additions and 336 deletions

View File

@ -6,311 +6,6 @@
.text
thumb_func_start sub_08056458
sub_08056458: @ 0x08056458
push {r4, r5, lr}
ldr r0, _08056484 @ =gTextBox
ldrb r0, [r0]
cmp r0, #1
bne _08056470
ldr r0, _08056488 @ =gUnk_02022780
movs r1, #0xa8
bl _DmaZero
movs r0, #1
bl sub_080564C8
_08056470:
ldr r2, _08056488 @ =gUnk_02022780
adds r1, r2, #0
adds r1, #0x8a
ldrb r0, [r1]
cmp r0, #0
beq _0805648C
subs r0, #1
strb r0, [r1]
b _080564A2
.align 2, 0
_08056484: .4byte gTextBox
_08056488: .4byte gUnk_02022780
_0805648C:
ldr r5, _080564C0 @ =gUnk_08107BC8
adds r4, r2, #0
adds r4, #0x88
_08056492:
ldrb r0, [r4]
lsls r0, r0, #2
adds r0, r0, r5
ldr r0, [r0]
bl _call_via_r0
cmp r0, #0
bne _08056492
_080564A2:
ldr r0, _080564C4 @ =gUnk_02022780
adds r1, r0, #0
adds r1, #0x9d
ldrb r0, [r1]
cmp r0, #0
beq _080564B6
movs r0, #0
strb r0, [r1]
bl sub_08056F70
_080564B6:
bl sub_08056C68
bl sub_08056D70
pop {r4, r5, pc}
.align 2, 0
_080564C0: .4byte gUnk_08107BC8
_080564C4: .4byte gUnk_02022780
thumb_func_start sub_080564C8
sub_080564C8: @ 0x080564C8
ldr r1, _080564D8 @ =gUnk_02022780
adds r2, r1, #0
adds r2, #0x88
movs r3, #0
strb r0, [r2]
adds r1, #0x89
strb r3, [r1]
bx lr
.align 2, 0
_080564D8: .4byte gUnk_02022780
thumb_func_start sub_080564DC
sub_080564DC: @ 0x080564DC
ldr r0, _080564E8 @ =gUnk_02022780
adds r0, #0x99
movs r1, #0
strb r1, [r0]
movs r0, #0
bx lr
.align 2, 0
_080564E8: .4byte gUnk_02022780
thumb_func_start sub_080564EC
sub_080564EC: @ 0x080564EC
push {r4, lr}
ldr r0, _08056598 @ =gUnk_02036A40
movs r1, #8
bl _DmaZero
ldr r0, _0805659C @ =gUnk_02024030
movs r1, #0x18
bl _DmaZero
ldr r4, _080565A0 @ =gUnk_02022780
adds r0, r4, #0
movs r1, #0xa8
bl _DmaZero
ldr r0, _080565A4 @ =gTextBox
adds r1, r4, #0
movs r2, #0x20
bl _DmaCopy
ldrb r0, [r4, #2]
cmp r0, #0x63
bne _08056520
movs r0, #0x80
lsls r0, r0, #0x12
ldrb r0, [r0, #5]
strb r0, [r4, #2]
_08056520:
adds r1, r4, #0
adds r1, #0x9c
movs r0, #0xff
strb r0, [r1]
adds r0, r4, #0
adds r0, #0x20
ldrh r1, [r4, #8]
bl sub_0805EEB4
adds r3, r4, #0
adds r3, #0x5c
movs r0, #2
strb r0, [r3]
movs r0, #0xe
strb r0, [r3, #1]
adds r3, #2
movs r2, #0
ldr r0, _080565A8 @ =gUnk_02002A40
adds r0, #0x80
ldrb r1, [r0]
cmp r1, #0
beq _08056560
adds r4, r0, #0
_0805654E:
strb r1, [r3]
adds r3, #1
adds r2, #1
cmp r2, #5
bhi _08056560
adds r0, r2, r4
ldrb r1, [r0]
cmp r1, #0
bne _0805654E
_08056560:
movs r0, #2
strb r0, [r3]
movs r0, #0xf
strb r0, [r3, #1]
movs r0, #0
strb r0, [r3, #2]
ldr r4, _080565A0 @ =gUnk_02022780
adds r0, r4, #0
bl sub_08056FBC
ldr r0, _080565AC @ =gUnk_08107BE0
str r0, [r4, #0x2c]
ldr r0, _080565B0 @ =gUnk_02000D00
str r0, [r4, #0x58]
adds r4, #0x54
movs r0, #0xd0
strh r0, [r4]
movs r0, #2
bl sub_08056C54
movs r0, #0
bl sub_08056BDC
movs r0, #2
bl sub_080564C8
movs r0, #1
pop {r4, pc}
.align 2, 0
_08056598: .4byte gUnk_02036A40
_0805659C: .4byte gUnk_02024030
_080565A0: .4byte gUnk_02022780
_080565A4: .4byte gTextBox
_080565A8: .4byte gUnk_02002A40
_080565AC: .4byte gUnk_08107BE0
_080565B0: .4byte gUnk_02000D00
thumb_func_start sub_080565B4
sub_080565B4: @ 0x080565B4
push {r4, lr}
ldr r4, _080565F4 @ =gUnk_02022780
adds r1, r4, #0
adds r1, #0x89
ldrb r0, [r1]
cmp r0, #0
bne _080565DA
movs r0, #1
strb r0, [r1]
adds r1, #0x10
strb r0, [r1]
ldrb r0, [r4, #3]
subs r1, #0x46
ldrb r1, [r1]
bl sub_08056F88
movs r0, #0x65
bl PlaySFX
_080565DA:
movs r0, #1
bl sub_08056CC0
cmp r0, #0
beq _080565F0
adds r1, r4, #0
adds r1, #0x99
movs r0, #2
strb r0, [r1]
bl sub_080564C8
_080565F0:
movs r0, #0
pop {r4, pc}
.align 2, 0
_080565F4: .4byte gUnk_02022780
thumb_func_start sub_080565F8
sub_080565F8: @ 0x080565F8
push {r4, lr}
ldr r4, _0805663C @ =gUnk_02022780
adds r1, r4, #0
adds r1, #0x89
ldrb r0, [r1]
cmp r0, #0
bne _0805661C
movs r0, #1
strb r0, [r1]
adds r1, #0x10
movs r0, #3
strb r0, [r1]
movs r0, #0
bl sub_08056BDC
movs r0, #0x66
bl PlaySFX
_0805661C:
movs r0, #1
rsbs r0, r0, #0
bl sub_08056CC0
cmp r0, #0
beq _08056636
adds r1, r4, #0
adds r1, #0x99
movs r0, #0
strb r0, [r1]
movs r0, #2
bl sub_080564C8
_08056636:
movs r0, #0
pop {r4, pc}
.align 2, 0
_0805663C: .4byte gUnk_02022780
thumb_func_start sub_08056640
sub_08056640: @ 0x08056640
push {lr}
movs r0, #0
bl sub_08056C54
movs r0, #0
bl sub_080564C8
movs r0, #0
pop {pc}
.align 2, 0
thumb_func_start sub_08056654
sub_08056654: @ 0x08056654
push {lr}
movs r0, #4
bl sub_08056C54
ldr r2, _0805667C @ =gUnk_08107BF4
ldr r0, _08056680 @ =gUnk_02022780
adds r1, r0, #0
adds r1, #0x89
ldrb r1, [r1]
lsls r1, r1, #2
adds r1, r1, r2
ldr r1, [r1]
bl _call_via_r1
movs r0, #0
bl sub_08056CC0
movs r0, #0
pop {pc}
.align 2, 0
_0805667C: .4byte gUnk_08107BF4
_08056680: .4byte gUnk_02022780
thumb_func_start sub_08056684
sub_08056684: @ 0x08056684
push {r4, lr}
adds r2, r0, #0
ldr r4, _080566AC @ =gUnk_02022780
adds r0, r4, #0
adds r0, #0x20
ldrb r1, [r0]
movs r3, #1
adds r0, r3, #0
ands r0, r1
cmp r0, #0
bne _080566B0
adds r0, r4, #0
adds r0, #0x99
ldrb r0, [r0]
cmp r0, #0
bne _080566B6
movs r0, #5
bl sub_080564C8
b _080566B6
.align 2, 0
_080566AC: .4byte gUnk_02022780
_080566B0:
adds r0, r2, #0
adds r0, #0x89
strb r3, [r0]
_080566B6:
pop {r4, pc}
thumb_func_start sub_080566B8
sub_080566B8: @ 0x080566B8
push {r4, r5, r6, r7, lr}

View File

@ -0,0 +1,90 @@
.syntax unified
push {r4, lr}
ldr r0, _08056598 @ =gUnk_02036A40
movs r1, #8
bl _DmaZero
ldr r0, _0805659C @ =gUnk_02024030
movs r1, #0x18
bl _DmaZero
ldr r4, _080565A0 @ =gUnk_02022780
adds r0, r4, #0
movs r1, #0xa8
bl _DmaZero
ldr r0, _080565A4 @ =gTextBox
adds r1, r4, #0
movs r2, #0x20
bl _DmaCopy
ldrb r0, [r4, #2]
cmp r0, #0x63
bne _08056520
movs r0, #0x80
lsls r0, r0, #0x12
ldrb r0, [r0, #5]
strb r0, [r4, #2]
_08056520:
adds r1, r4, #0
adds r1, #0x9c
movs r0, #0xff
strb r0, [r1]
adds r0, r4, #0
adds r0, #0x20
ldrh r1, [r4, #8]
bl sub_0805EEB4
adds r3, r4, #0
adds r3, #0x5c
movs r0, #2
strb r0, [r3]
movs r0, #0xe
strb r0, [r3, #1]
adds r3, #2
movs r2, #0
ldr r0, _080565A8 @ =gUnk_02002A40
adds r0, #0x80
ldrb r1, [r0]
cmp r1, #0
beq _08056560
adds r4, r0, #0
_0805654E:
strb r1, [r3]
adds r3, #1
adds r2, #1
cmp r2, #5
bhi _08056560
adds r0, r2, r4
ldrb r1, [r0]
cmp r1, #0
bne _0805654E
_08056560:
movs r0, #2
strb r0, [r3]
movs r0, #0xf
strb r0, [r3, #1]
movs r0, #0
strb r0, [r3, #2]
ldr r4, _080565A0 @ =gUnk_02022780
adds r0, r4, #0
bl sub_08056FBC
ldr r0, _080565AC @ =gUnk_08107BE0
str r0, [r4, #0x2c]
ldr r0, _080565B0 @ =gUnk_02000D00
str r0, [r4, #0x58]
adds r4, #0x54
movs r0, #0xd0
strh r0, [r4]
movs r0, #2
bl sub_08056C54
movs r0, #0
bl sub_08056BDC
movs r0, #2
bl sub_080564C8
movs r0, #1
pop {r4, pc}
.align 2, 0
_08056598: .4byte gUnk_02036A40
_0805659C: .4byte gUnk_02024030
_080565A0: .4byte gUnk_02022780
_080565A4: .4byte gTextBox
_080565A8: .4byte gUnk_02002A40
_080565AC: .4byte gUnk_08107BE0
_080565B0: .4byte gUnk_02000D00
.syntax divided

View File

@ -46,6 +46,32 @@ extern u32 LoadFixedGFX(Entity*, u32);
extern void ExecuteScriptCommandSet();
extern void _DmaFill32(u32, void*, u32);
extern Entity* CreateItemEntity(u32, u32, u32);
void _DmaCopy(const void* src, void* dst, u32 size);
extern u32 ProcessMovement(Entity*);
extern Entity* FindEntityInListBySubtype(u32, u32, u32);
extern Entity* FindEntityInListByForm(u32, u32, u32, u32, u32);
extern void _DmaZero(void*, u32);
extern void MenuFadeIn(u32, u32);
extern void LoadAssetAsync(const void*, u32, u32);
extern void LoadPaletteGroup(u32);
extern void TryLoadPrologueHyruleTown(void);
extern Manager* GetEmptyManager(void);
extern void AppendEntityToList(void*, u32);
extern void LoadGfxGroup(u32);
extern void EnqueueSFX(u32);
extern void ResetPlayer(void);
extern void CreateDust(Entity*);
extern u32 IsItemEquipped(u32);
extern void DeleteManager(Manager*);
extern bool32 CheckPlayerInRegion(u32 centerX, u32 centerY, u32 radiusX, u32 radiusY);
extern u32 CheckIsDungeon();
extern void HandleIntroScreen(void);
extern void HandleChooseFileScreen(void);
extern void HandleGameplayScreen(void);
extern void HandleGameOverScreen(void);
extern void HandleCreditsScreen(void);
extern void HandleDebugTextScreen(void);
extern u32 GetTileTypeByEntity(Entity*);
// Unidentified
extern u32 sub_0806ED78(Entity*);
@ -53,7 +79,6 @@ extern void sub_0806920C(Entity*);
extern u32 sub_0805ACC0(Entity*);
extern u32 sub_0801E99C(Entity*);
extern void sub_0806924C(Entity*);
extern u32 ProcessMovement(Entity*);
extern Entity* sub_080873AC(Entity*, u32, u32);
extern void sub_08078778(Entity*);
extern void sub_080787A8(Entity*, u32);
@ -74,8 +99,6 @@ extern u32 sub_0806F5A4(u32);
extern void sub_08078784(Entity*, u32);
extern void sub_0807DD50(Entity*);
extern void sub_0807DD94(Entity*, u32);
extern Entity* FindEntityInListBySubtype(u32, u32, u32);
extern Entity* FindEntityInListByForm(u32, u32, u32, u32, u32);
extern s32 sub_0806ED9C(Entity*, u32, u32);
extern void sub_0807000C(Entity*);
extern void sub_0805E47C(Entity*);
@ -105,7 +128,6 @@ extern Entity* sub_0804A98C(Entity*, u8, u8);
extern u32 sub_080544DC(u32);
extern void sub_08077E54(Entity*);
extern void sub_080042BA(Entity*, u32);
extern void _DmaZero(void*, u32);
extern void sub_08077F24(ItemBehavior*, u32);
extern void sub_08079184();
extern void sub_08077F50(ItemBehavior* beh, u32 arg1);
@ -118,7 +140,6 @@ extern void sub_080AD90C(void);
extern void sub_080AD9B0(void);
extern void sub_080AD918(void);
extern void sub_0801E104(void);
extern void MenuFadeIn(u32, u32);
extern void sub_080A57F4(void);
extern void sub_0804B29C(void*);
extern void sub_08030118(u32);
@ -139,8 +160,6 @@ extern void sub_0804C2F0(void);
extern void sub_0801AFE4(void);
extern u32 sub_08060354(void);
extern void sub_08057E64(void);
extern void LoadAssetAsync(const void*, u32, u32);
extern void LoadPaletteGroup(u32);
extern void sub_0809F814(u32);
extern void sub_080300E8(void);
extern void sub_0801DA90(u32);
@ -157,7 +176,6 @@ extern void sub_080534AC();
extern void sub_0807BA8C(u32, u32);
extern void sub_0804D9B0();
extern void sub_0807BB98(u32, u32, u32, u32);
extern void TryLoadPrologueHyruleTown(void);
extern void sub_0801D000(u32);
extern void sub_08018C58(u32);
extern void sub_0804E150(void);
@ -170,7 +188,6 @@ extern void sub_080AF2E4(void);
extern void sub_0805ADD8(u32);
extern void sub_0804F578(void);
extern void sub_08059994(void);
extern void LoadGfxGroup(u32);
extern s32 sub_0801CFA8(u32);
extern void sub_080A3210(void);
extern void sub_080ADA14(u32, u32);
@ -193,15 +210,10 @@ extern void sub_08001242(Entity*);
extern u32 sub_08003FC4(Entity*, u32);
extern u32 sub_080043E8(Entity*);
extern void sub_08001290(Entity*, u32);
extern void EnqueueSFX(u32);
extern void sub_08004596(Entity*, u32);
extern u32 sub_080045B4(Entity*, u32, u32);
extern u32 sub_0807953C(void);
extern void ResetPlayer(void);
extern void CreateDust(Entity*);
extern void sub_080AE068(Entity*);
extern Manager* GetEmptyManager(void);
extern void AppendEntityToList(void*, u32);
extern u32 sub_0800445C(Entity*);
extern void sub_0807A108(void);
extern void sub_0801766C(Entity*);
@ -233,7 +245,6 @@ extern u32 sub_0808288C(Entity*, u32, u32, u32);
extern void sub_0806FDA0(Entity*);
extern void sub_080AE008(Entity*, u32, u32);
extern u32 sub_08016A30(Entity*);
extern u32 IsItemEquipped(u32);
extern void sub_08077728();
extern void sub_0807AEE4();
extern u32 sub_08078EFC();
@ -241,12 +252,6 @@ extern void sub_0807921C();
extern void sub_0807A1B8();
extern void sub_08079938();
extern void sub_0807ACCC(Entity*);
extern void HandleIntroScreen(void);
extern void HandleChooseFileScreen(void);
extern void HandleGameplayScreen(void);
extern void HandleGameOverScreen(void);
extern void HandleCreditsScreen(void);
extern void HandleDebugTextScreen(void);
extern void sub_080A2BE4(Entity*, u32);
extern u32 sub_08097ADC(Entity*);
extern void sub_08097B24(Entity*);
@ -265,7 +270,6 @@ extern u32 sub_080040A8(Entity*);
extern u32 sub_08017850(Entity*);
extern void sub_080809D4(void);
extern void sub_08080CB4(Entity*);
extern u32 GetTileTypeByEntity(Entity*);
extern u32 sub_0800442E(Entity*);
extern void sub_08081404(Entity*, u32);
extern void sub_0807B7D8(u32, u32, u32);
@ -288,8 +292,6 @@ extern void sub_080A1D70(Entity*, u32);
extern void sub_0806F62C(Entity*, u32, u32);
extern u32 sub_08079F8C(void);
extern void sub_080A1ED0(u32, u32, u32);
extern void DeleteManager(Manager*);
extern bool32 CheckPlayerInRegion(u32 centerX, u32 centerY, u32 radiusX, u32 radiusY);
extern u32 sub_0806F5B0(u32);
extern void sub_0801DFB4(Entity*, u32, u32, u32);
extern void sub_0801E00C();
@ -318,10 +320,19 @@ extern void sub_0807A108();
extern u32 sub_08079FC4(u32);
extern void sub_0800455E(Entity*);
extern void sub_08008790(Entity*, u32);
extern u32 CheckIsDungeon();
extern void sub_0804ACF8();
extern void sub_08073904(Entity*);
extern u32 sub_08056134(void);
extern u32 sub_0807CF30(void*);
extern void sub_08004484(Entity*, Entity*);
extern void sub_080564C8(u32);
extern void sub_08056F70(void);
extern void sub_08056C68(void);
extern void sub_08056D70(void);
extern void sub_0805EEB4(u8*, u32, u32);
extern void sub_08056FBC(void*);
extern void sub_08056C54(u32);
extern void sub_08056BDC(u32);
extern void sub_08056F88(u32, u32);
extern u32 sub_08056CC0(u32);
#endif

View File

@ -47,7 +47,6 @@ static void sub_08050624(u32);
static void sub_0805066C(void);
static void sub_080507FC(void);
extern void _DmaCopy(const void* src, void* dest, u32 size);
extern void sub_08056FEC(u32, struct_020227E8*);
extern void sub_0805F46C(u32, struct_080FC844*);
extern void sub_0801C4A0(u32, u32);

View File

@ -12,7 +12,6 @@ extern void sub_0804FF84(u32);
extern u16 gPaletteBuffer[];
extern void VBlankInterruptWait(void);
extern void DisableInterruptsAndDMA(void);
extern void _DmaCopy(void*, u8*, int);
extern void sub_08016B34(void);
static void sub_08055F70(void);

View File

@ -1,16 +1,57 @@
#include "global.h"
#include "room.h"
#include "entity.h"
#include "functions.h"
#include "textbox.h"
#include "structures.h"
void _DmaZero();
void ShowTextbox();
void TextboxAtPosition();
extern u32 gUnk_02022780;
typedef struct {
u8 _0;
u8 _1;
u8 _2;
u8 _3[5];
u16 _8;
u8 _b[0x16];
u8 _20;
u8 _21;
u8 _22[0xa];
void* _2c;
u8 _30[0x23];
u8 _53;
u16 _54;
u8 _56[0x2];
void* _58;
u8 _5c;
u8 _5d;
u8 _5e[24];
u8 _76;
u8 _77[0x11];
u8 _88;
u8 _89;
u8 _8a;
u8 _8b[0xe];
u8 _99;
u8 _9a;
u8 _9b;
u8 _9c;
u8 _9d;
u8 _9e[0xa];
} struct_02022780;
extern struct_02022780 gUnk_02022780;
static_assert(sizeof(struct_02022780) == 0xa8);
extern const s32 (*const gUnk_08107BC8[])();
extern const void (*const gUnk_08107BF4[])(struct_02022780*);
extern u32 gUnk_02036A40;
extern u32 gUnk_02036A38;
extern u8 gUnk_02024030;
extern u8 gUnk_020227A0;
extern u8 gUnk_02000D00;
extern u8 gUnk_08107BE0;
s32 sub_08056338(void) {
s32 result;
@ -60,7 +101,7 @@ void TextboxAtPosition(u32 index, u32 x, u32 y) {
}
void ShowTextbox(u32 index, u32 param_2, u32* dest) {
_DmaZero(&gTextBox, 32, dest);
_DmaZero(&gTextBox, 32);
gTextBox.textIndex = index;
gTextBox.textSpeed = 99;
gTextBox.textWindowWidth = 26;
@ -77,3 +118,129 @@ void sub_08056418(void) {
_DmaZero(&gUnk_02036A38, 8);
_DmaZero(&gUnk_02000040, 4);
}
void sub_08056458(void) {
int iVar1;
if (gTextBox.doTextBox == 1) {
_DmaZero((u32*)&gUnk_02022780, sizeof(gUnk_02022780));
sub_080564C8(1);
}
if (gUnk_02022780._8a != 0) {
gUnk_02022780._8a--;
} else {
do {
iVar1 = gUnk_08107BC8[gUnk_02022780._88]();
} while (iVar1 != 0);
}
if (gUnk_02022780._9d != 0) {
gUnk_02022780._9d = 0;
sub_08056F70();
}
sub_08056C68();
sub_08056D70();
}
void sub_080564C8(u32 a1) {
gUnk_02022780._88 = a1;
gUnk_02022780._89 = 0;
}
u32 sub_080564DC(void) {
gUnk_02022780._99 = 0;
return 0;
}
// regalloc in loop
NONMATCH("asm/non_matching/textbox/sub_080564EC.inc", u32 sub_080564EC(void)) {
u32 uVar1;
char* dest;
u32 i;
char c;
_DmaZero((void *)&gUnk_02036A40, 8);
_DmaZero((void *)&gUnk_02024030, 0x18);
_DmaZero((void *)&gUnk_02022780, 0xa8);
_DmaCopy(&gTextBox, &gUnk_02022780, 32);
if (gUnk_02022780._2 == 0x63) {
gUnk_02022780._2 = gUnk_02000000->messageSpeed;
}
gUnk_02022780._9c = 0xff;
sub_0805EEB4(&gUnk_02022780._20, gUnk_02022780._8, 32);
gUnk_02022780._5c = 2;
gUnk_02022780._5d = 0xe;
dest = gUnk_02022780._5e;
for (i = 0; i < 6; ++i) {
c = gUnk_02002A40.playerName[i];
if (c == '\0') break;
dest[i] = c;
}
dest[0] = 2;
dest[1] = 15;
dest[2] = 0;
sub_08056FBC(&gUnk_02022780);
gUnk_02022780._2c = &gUnk_08107BE0;
gUnk_02022780._58 = &gUnk_02000D00;
gUnk_02022780._54 = 0xd0;
sub_08056C54(2);
sub_08056BDC(0);
sub_080564C8(2);
return 1;
}
END_NONMATCH
u32 sub_080565B4(void) {
if (gUnk_02022780._89 == 0) {
gUnk_02022780._89 = 1;
gUnk_02022780._99 = 1;
sub_08056F88(gUnk_02022780._3[0], gUnk_02022780._53);
PlaySFX(0x65);
}
if (sub_08056CC0(1)) {
gUnk_02022780._99 = 2;
sub_080564C8(2);
}
return 0;
}
u32 sub_080565F8(void) {
if (gUnk_02022780._89 == 0) {
gUnk_02022780._89 = 1;
gUnk_02022780._99 = 3;
sub_08056BDC(0);
PlaySFX(0x66);
}
if (sub_08056CC0(-1)) {
gUnk_02022780._99 = 0;
sub_080564C8(2);
}
return 0;
}
u32 sub_08056640() {
sub_08056C54(0);
sub_080564C8(0);
return 0;
}
u32 sub_08056654(void) {
sub_08056C54(4);
gUnk_08107BF4[gUnk_02022780._89](&gUnk_02022780);
sub_08056CC0(0);
return 0;
}
void sub_08056684(struct_02022780* this) {
if ((gUnk_02022780._20 & 1) == 0) {
if (gUnk_02022780._99 == '\0') {
sub_080564C8(5);
}
} else {
this->_89 = 1;
}
}

View File

@ -3,7 +3,9 @@
"files.associations" : {
"algorithm": "cpp",
"ios": "c",
"functions.h": "c"
"functions.h": "c",
"textbox.h": "c",
"structures.h": "c"
}
}
}