Merge branch 'master' of https://github.com/pret/pmd-red into code_8010F28

This commit is contained in:
DizzyEggg 2025-02-21 09:11:13 +01:00
commit 13b49a48eb
155 changed files with 2053 additions and 3671 deletions

File diff suppressed because it is too large Load Diff

View File

@ -257,101 +257,3 @@ gUnknown_8106D8C: @ 8106D8C
@ ???
.align 2,0
.string "pksdir0\0"
@ sub_8067A80 - sub_806806C
.align 2,0
.string "pksdir0\0"
.align 2,0
.global gUnknown_8106DA4
gUnknown_8106DA4: @ 8106DA4
.byte 0x01, 0x00, 0x38, 0x00, 0x00, 0x00, 0x18, 0x00, 0x18, 0x00, 0x00, 0x00, 0x02, 0x00, 0x38, 0x00, 0x68, 0x00, 0x18, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00
.global gUnknown_8106DC8
gUnknown_8106DC8: @ 8106DC8
.byte 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x11, 0x00, 0x0e, 0x00, 0x12, 0x00, 0x02, 0x00, 0x08, 0xf3, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00
.byte 0x15, 0x00, 0x04, 0x00, 0x07, 0x00, 0x04, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.global gUnknown_8106E28
gUnknown_8106E28: @ 8106E28
.string "{POKEMON_0}\0"
.align 2,0
.global gUnknown_8106E2C
gUnknown_8106E2C: @ 8106E2C
.byte 0x87, 0x42, 0x00, 0x00
.global gUnknown_8106E30
gUnknown_8106E30: @ 8106E30
.byte 0x87, 0x40, 0x00, 0x00
.global gUnknown_8106E34
gUnknown_8106E34: @ 8106E34
.string "{MOVE_ITEM_0}{color CYAN}$v02:{POKEMON_0}{reset}\0"
.align 2,0
.global gUnknown_8106E48
gUnknown_8106E48: @ 8106E48
.string "{MOVE_ITEM_0}{color YELLOW}$v02:{POKEMON_0}{reset}\0"
.align 2,0
.global gUnknown_8106E5C
gUnknown_8106E5C: @ 8106E5C
.string "Press {B_BUTTON}\n"
.string "if OK.\0"
.align 2,0
.global gUnknown_8106E6C
gUnknown_8106E6C: @ 8106E6C
.string "Say bye to\n"
.string "{VALUE_0} more\0"
.align 2,0
.global gUnknown_8106E80
gUnknown_8106E80: @ 8106E80
.byte 0x02, 0x00, 0x00, 0x00
.byte 0x03, 0x00, 0x00, 0x00
.byte 0x04, 0x00, 0x00, 0x00
.byte 0x05, 0x00, 0x00, 0x00
@ sub_8068614 - sub_806A3D4
.string "pksdir0\0"
.align 2,0
.global gUnknown_8106E98
gUnknown_8106E98: @ 8106E98
.string "palet\0"
.align 2,0
.global gUnknown_8106EA0
gUnknown_8106EA0: @ 8106EA0
.string "ax%03d\0"
.align 2,0
.global gUnknown_8106EA8
gUnknown_8106EA8: @ 8106EA8
.string "talkp%d\0"
.align 2,0
.global gUnknown_8106EB0
gUnknown_8106EB0: @ 8106EB0
.string "talk%d\0"
@ ???
.align 2,0
.string "pksdir0\0"
@ sub_806C51C - sub_806E100
.align 2,0
.string "pksdir0\0"
.align 2,0
.global gUnknown_8106EC8
gUnknown_8106EC8: @ 8106EC8
.byte 0x00, 0x01, 0x07, 0x07, 0x07, 0x05, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07
.byte 0x07, 0x07, 0x05, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x05
.byte 0x06, 0x07, 0x07, 0x07, 0x07, 0x0b, 0x07

40
data/data_8106A4C_2.s Normal file
View File

@ -0,0 +1,40 @@
.section .rodata
.align 2,0
@ sub_8068614 - sub_806A3D4
.string "pksdir0\0"
.align 2,0
.global gUnknown_8106E98
gUnknown_8106E98: @ 8106E98
.string "palet\0"
.align 2,0
.global gUnknown_8106EA0
gUnknown_8106EA0: @ 8106EA0
.string "ax%03d\0"
.align 2,0
.global gUnknown_8106EA8
gUnknown_8106EA8: @ 8106EA8
.string "talkp%d\0"
.align 2,0
.global gUnknown_8106EB0
gUnknown_8106EB0: @ 8106EB0
.string "talk%d\0"
@ ???
.align 2,0
.string "pksdir0\0"
@ sub_806C51C - sub_806E100
.align 2,0
.string "pksdir0\0"
.align 2,0
.global gUnknown_8106EC8
gUnknown_8106EC8: @ 8106EC8
.byte 0x00, 0x01, 0x07, 0x07, 0x07, 0x05, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07
.byte 0x07, 0x07, 0x05, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x05
.byte 0x06, 0x07, 0x07, 0x07, 0x07, 0x0b, 0x07

View File

@ -17,7 +17,7 @@ typedef struct unkStruct_203B230
u8 fill18[0x20 - 0x18];
u32 unk20;
u32 unk24;
UnkTextStruct2 unk28[4];
UnkTextStruct3 unk28;
MenuInputStructSub unk88;
} unkStruct_203B230;
@ -25,4 +25,4 @@ bool8 sub_801B3C0(Item *item);
u32 sub_801B410(void);
void sub_801B450(void);
#endif // GUARD_CODE_801B3C0_H
#endif // GUARD_CODE_801B3C0_H

View File

@ -20,11 +20,11 @@ typedef struct unkStruct_203B234
MenuStruct unk78;
/* 0xC8 */ u32 menuAction;
MenuItem unkCC[5];
UnkTextStruct2 unkF4[4];
UnkTextStruct3 unkF4;
} unkStruct_203B234;
bool8 sub_801B60C(u32, u8 id, u8 quantity);
u32 sub_801B6AC(void);
void sub_801B72C(void);
#endif // GUARD_CODE_801B60C_H
#endif // GUARD_CODE_801B60C_H

View File

@ -15,7 +15,7 @@ struct unkStruct_203B244
/* 0x4B4 */ struct_Sub80095E4_2 unk4B4;
};
bool8 sub_801C8C4(s32, s32, UnkTextStruct2_sub *, u32);
bool8 sub_801C8C4(s32, s32, DungeonPos *, u32);
u32 sub_801CA08(bool8);
u8 sub_801CB24(void);
void sub_801CB5C(bool8);

View File

@ -21,7 +21,7 @@ struct unk_203B250
MenuStruct unk18;
MenuItem unk68[8];
u16 unkA8[8];
UnkTextStruct2 unkB8[4];
UnkTextStruct3 unkB8;
};
// size: 0x8

View File

@ -21,7 +21,7 @@ typedef struct unkStruct_203B270
/* 0x1C */ MenuInputStruct input;
u32 unk50;
u32 unk54;
UnkTextStruct2 unk58[4];
UnkTextStruct3 unk58;
const u8 *text;
} unkStruct_203B270;

View File

@ -26,11 +26,11 @@ typedef struct unkStruct_203B294
/* 0xF4 */ u32 menuAction;
MenuItem unkF8[8];
u16 unk138[8];
UnkTextStruct2 unk148[4];
UnkTextStruct3 unk148;
} unkStruct_203B294;
bool8 sub_80227B8(PokemonStruct1 *pkmn);
u32 sub_8022860(void);
void sub_8022908(void);
#endif // GUARD_CODE_80227B8_H
#endif // GUARD_CODE_80227B8_H

View File

@ -19,7 +19,7 @@ typedef struct unkStruct_3001B5C
/* 0x35C */ struct_Sub80095E4_2 s35C;
} unkStruct_3001B5C;
bool8 sub_8023144(s32, s32 index, UnkTextStruct2_sub *sub, u32);
bool8 sub_8023144(s32, s32 index, DungeonPos *sub, u32);
u32 sub_8023278(bool8);
s16 sub_802331C(void);
void sub_8023354(bool8 cursorSprite);

View File

@ -17,7 +17,7 @@ struct unkStruct_203B2AC
u8 fillB4[0xE0 - 0xB4];
u32 unkE0;
UnkTextStruct2 *unkE4;
UnkTextStruct2 unkE8[4];
UnkTextStruct3 unkE8;
UnkTextStruct2_sub2 unk148;
};

View File

@ -15,7 +15,7 @@ struct unkStruct_203B2FC
/* 0x30 */ u8 jobSlotIndex;
/* 0x34 */ WonderMail *jobInfo;
/* 0x38 */ struct MonPortraitMsg monPortrait;
UnkTextStruct2 unk48[4];
UnkTextStruct3 unk48;
};
bool8 sub_802DB28(u8 jobSlotIndex, u8 dungeon);

View File

@ -12,7 +12,7 @@ struct unkStruct_203B300
/* 0xC */ unkStruct_802C39C *mail;
u32 unk10;
UnkTextStruct2 *unk14;
UnkTextStruct2 unk18[4];
UnkTextStruct3 unk18;
u8 unk78[4];
};
@ -20,4 +20,4 @@ bool8 sub_802DE84(unkStruct_802C39C *mail);
u32 sub_802DEE0(void);
void sub_802DF24(void);
#endif // GUARD_CODE_802DE84_H
#endif // GUARD_CODE_802DE84_H

View File

@ -6,7 +6,7 @@
// size: 0x6C
typedef struct Credits1Work
{
UnkTextStruct2 unk0[4];
UnkTextStruct3 unk0;
s32 unk60;
s32 unk64;
/* 0x68 */ s32 creditsCategoryIndex;
@ -26,4 +26,4 @@ bool8 DrawCredits(s32 creditsCategoryIndex, s32);
s32 sub_8035574(void);
void sub_803565C(void);
#endif // GUARD_CREDITS1_H
#endif // GUARD_CREDITS1_H

View File

@ -8,7 +8,7 @@
struct DebugMenu
{
MenuStruct unk0[4];
UnkTextStruct2 unk140[4];
UnkTextStruct3 unk140;
u32 fill1A0;
};
@ -16,4 +16,4 @@ void CreateDebugMenu(void);
void DeleteDebugMenu(void);
u32 UpdateDebugMenu(void);
#endif // GUARD_DEBUG_MENU1_H
#endif // GUARD_DEBUG_MENU1_H

View File

@ -14,7 +14,7 @@ typedef struct unkStruct_203B3F0
MenuStruct unk4C;
unkStructFor8013AA0 unk9C;
u8 fillCC[0xD8 - 0xCC];
UnkTextStruct2 unkD8[4];
UnkTextStruct3 unkD8;
} unkStruct_203B3F0;
#endif // GUARD_DEBUG_MENU2_H
#endif // GUARD_DEBUG_MENU2_H

View File

@ -12,7 +12,7 @@ typedef struct unkStruct_203B3F4
/* 0x8 */ u32 menuAction;
/* 0xC */ MenuItem menuItems[8];
MenuStruct unk4C;
UnkTextStruct2 unk9C[4];
UnkTextStruct3 unk9C;
} unkStruct_203B3F4;
#endif // GUARD_DEBUG_MENU3_H
#endif // GUARD_DEBUG_MENU3_H

View File

@ -17,7 +17,7 @@ typedef struct unkStruct_203B3F8
unkStructFor8013AA0 unk60;
MenuItem unk90[8];
u16 unkD0[8];
UnkTextStruct2 unkE0[4];
UnkTextStruct3 unkE0;
} unkStruct_203B3F8;
#endif // GUARD_DEBUG_MENU4_H
#endif // GUARD_DEBUG_MENU4_H

9
include/dungeon_move.h Normal file
View File

@ -0,0 +1,9 @@
#ifndef GUARD_DUNGEON_MOVE_H
#define GUARD_DUNGEON_MOVE_H
#include "structs/str_pokemon.h"
#include "structs/str_moves.h"
bool8 TryUseChosenMove(struct Entity *attacker, u32 r6, s32 itemId, u32 var_30, bool32 isLinkedMove, struct Move *move);
#endif

View File

@ -22,7 +22,7 @@ typedef struct FelicityBankWork
unkStructFor8013AA0 unk64;
/* 0x94 */ struct MonPortraitMsg monPortrait;
struct MonPortraitMsg *monPortraitPtr;
UnkTextStruct2 unkA8[4];
UnkTextStruct3 unkA8;
} FelicityBankWork;
bool8 CreateFelicityBank(s32 mode);

View File

@ -65,11 +65,11 @@ struct unkStruct_203B2BC
MenuItem menuItems[4];
u8 fill120[0x16C - 0x13C];
u16 unk16C[10];
UnkTextStruct2 unk180[4];
UnkTextStruct3 unk180;
};
u32 sub_8027074(void);
u32 sub_80270A4(void);
void sub_8027168(void);
#endif // GUARD_FRIEND_AREA_ACTION_MENU_H
#endif // GUARD_FRIEND_AREA_ACTION_MENU_H

View File

@ -31,7 +31,7 @@ typedef struct unkStruct_203B2B4
MenuStruct unk78;
MenuItem unkC8[8];
u16 unk108[8];
UnkTextStruct2 unk118[4];
UnkTextStruct3 unk118;
} unkStruct_203B2B4;
bool8 CreateFriendListMenu(s32 param_1);

View File

@ -23,8 +23,8 @@ typedef struct WonderMailStruct_203B33C
unkStruct_203B480 unk1E8;
u8 unk218;
MenuStruct unk21C[4];
UnkTextStruct2 unk35C[4];
UnkTextStruct2 unk3BC[4];
UnkTextStruct3 unk35C;
UnkTextStruct3 unk3BC;
/* 0x41C */ Item item;
u32 unk420; // Is this supposed to be a File like 203B2C4?
u8 unk424[0x100];

View File

@ -31,6 +31,17 @@ static inline s16 Self_s16(s16 a)
return a;
}
// Needed to match a couple of functions.
static inline void InlineStrcpy(u8 *dst, const u8 *src)
{
strcpy(dst, src);
}
static inline void InlineStrncpy(u8 *dst, const u8 *src, s32 n)
{
strncpy(dst, src, n);
}
// Sometimes incrementing and decrementing a variable changes how registers are allocated, which helps with matching functions. Functionality-wise this doesn't do anything.
#ifdef NONMATCHING
#define ASM_MATCH_TRICK(a) {;}

View File

@ -27,7 +27,7 @@ typedef struct GulpinShopWork
u8 fillC8[0x118 - 0xC8];
/* 0x118 */ struct MonPortraitMsg monPortrait;
struct MonPortraitMsg *monPortraitPtr;
UnkTextStruct2 unk12C[4];
UnkTextStruct3 unk12C;
} GulpinShopWork;
bool8 CreateGulpinShop(u32 mode, s16 pokeSpecies, Move *moves);

View File

@ -35,7 +35,7 @@ typedef struct unkStruct_203B27C
u8 fill11C[0x16C - 0x11C];
/* 0x16C */ struct MonPortraitMsg monPortrait;
struct MonPortraitMsg *monPortraitPtr;
UnkTextStruct2 unk180[4];
UnkTextStruct3 unk180;
} unkStruct_203B27C;
bool8 sub_801FB50(u32 mode);

View File

@ -16,7 +16,7 @@ struct IQSkillInfoMenu
u8 fill14[0x20 - 0x18];
u32 unk20;
u32 unk24;
UnkTextStruct2 unk28[4];
UnkTextStruct3 unk28;
MenuInputStructSub unk88;
};

View File

@ -19,7 +19,7 @@ struct IQSkillMenu
/* 0x30 */ s32 menuAction;
MenuItem unk34[8];
MenuStruct unk74;
UnkTextStruct2 unkC4[4];
UnkTextStruct3 unkC4;
};
bool8 CreateIQSkillMenu(s16 species);

View File

@ -47,7 +47,7 @@ struct KangaskhanStorageWork
unkStructFor8013AA0 unkA8;
/* 0xD8 */ struct MonPortraitMsg monPortrait;
struct MonPortraitMsg *monPortraitPtr;
UnkTextStruct2 unkEC[4];
UnkTextStruct3 unkEC;
};
bool8 CreateKangaskhanStorage(u32 mode);

View File

@ -27,7 +27,7 @@ typedef struct unkStruct_203B20C
u16 unk60[8];
MenuStruct unk70;
unkStructFor8013AA0 unkC0;
UnkTextStruct2 unkF0[4];
UnkTextStruct3 unkF0;
} unkStruct_203B20C;
bool8 sub_8017E1C(void);

View File

@ -65,7 +65,7 @@ typedef struct KecleonBrosWork1
/* 0x84 */ MenuStruct menu;
/* 0xD4 */ struct MonPortraitMsg monPortrait;
struct MonPortraitMsg *monPortraitPtr;
UnkTextStruct2 unkE8[4];
UnkTextStruct3 unkE8;
} KecleonBrosWork1;
// mode corresponds to the enum: KecleonBrosMode

View File

@ -13,7 +13,7 @@ typedef struct unkStruct_203B224
/* 0x54 */ struct_Sub80095E4_2 unk54;
} unkStruct_203B224;
bool8 sub_801A5D8(u32, s32, UnkTextStruct2_sub *, u32);
bool8 sub_801A5D8(u32, s32, DungeonPos *, u32);
u32 sub_801A6E8(bool8);
s32 sub_801A8AC(void);
void sub_801A8D0(bool8);

View File

@ -33,7 +33,7 @@ typedef struct LuminousCaveWork
u8 unk110;
u8 unk111;
u8 unk112;
UnkTextStruct2 unk114[4];
UnkTextStruct3 unk114;
} LuminousCaveWork;
void CleanLuminousCave(void);

View File

@ -19,7 +19,7 @@ struct unkStruct_203B304
MenuStruct unk6C;
MenuItem menuItems[8];
u16 unkFC[8];
UnkTextStruct2 unk10C[4];
UnkTextStruct3 unk10C;
};
extern void SetMailboxState(u32);

View File

@ -38,12 +38,12 @@ void CleanUpMenu(void);
void DeleteMainMenu(void);
MainMenu1Work *GetMainMenu(void);
void InitMainMenu(void);
void SetMenuItems(MenuStruct *, UnkTextStruct2 *, s32 index, const UnkTextStruct2 *, const MenuItem *menuItems, bool8, u32 menuAction, bool8 unused);
void SetMenuItems(MenuStruct *, UnkTextStruct3 *, s32 index, const UnkTextStruct2 *, const MenuItem *menuItems, bool8, u32 menuAction, bool8 unused);
void SetUpMenu(void);
s32 UpdateMenu(void);
void sub_8035C1C(void);
void sub_8035CC0(UnkTextStruct2 *dataArray, u32 index);
void sub_8035CC0(UnkTextStruct3 *dataArray, u32 index);
void sub_8035CF4(MenuStruct *menu, u32 index, bool8);
void sub_8035D1C(void);
s16 sub_8035D3C(void);
@ -51,4 +51,4 @@ s32 sub_8035D74(void);
unkStruct_8035D94 *sub_8035D94(void);
void sub_8035DA0(void);
#endif // GUARD_MAIN_MENU1_H
#endif // GUARD_MAIN_MENU1_H

View File

@ -9,7 +9,7 @@ typedef struct MainMenu2Work
{
u32 unk0;
MenuStruct unk4[4];
UnkTextStruct2 unk144[4];
UnkTextStruct3 unk144;
/* 0x1A4 */ u32 currMenuChoice;
} MainMenu2Work;

View File

@ -30,7 +30,7 @@ typedef struct MakuhitaDojoWork1
u8 fill38[0x58 - 0x38];
/* 0x58 */ struct MonPortraitMsg monPortrait;
struct MonPortraitMsg *monPortraitPtr;
UnkTextStruct2 unk6C[4];
UnkTextStruct3 unk6C;
} MakuhitaDojoWork1;
void MakuhitaDojo_Delete(void);

View File

@ -15,7 +15,7 @@ typedef struct MakuhitaDojoWork2
bool8 MakuhitaDojo_ReturnFalse(void);
bool8 sub_80302E8(s32, UnkTextStruct2_sub *, u32);
bool8 sub_80302E8(s32, DungeonPos *, u32);
u32 sub_80303AC(bool8);
s16 sub_8030418(void);
void sub_8030480(void);

View File

@ -49,7 +49,7 @@ void sub_8013C68(unkStructFor8013AA0 *);
void sub_8013D10(unkStructFor8013AA0 *);
void sub_8013E54(void);
void sub_8013F84(void);
void sub_80140B4(UnkTextStruct2 *);
void sub_80140B4(UnkTextStruct3 *);
#endif // GUARD_MENU_INPUT_H

View File

@ -14,7 +14,7 @@ struct unkStruct_203B25C
/* 0x1C */ MenuStruct menu;
/* 0x6C */ MenuItem menuItems[8];
u16 unkAC[8];
UnkTextStruct2 unkBC[4];
UnkTextStruct3 unkBC;
};
bool8 sub_801DCC4(void);

View File

@ -12,7 +12,7 @@ struct unkStruct_203B260
/* 0x10 */ MenuInputStruct input;
u32 unk44;
UnkTextStruct2 *unk48;
UnkTextStruct2 unk4C[4];
UnkTextStruct3 unk4C;
};
bool8 sub_801E198(GameOptions *optionsMenu);

View File

@ -18,7 +18,7 @@ typedef struct unkStruct_203B35C
u32 unk14;
u8 fill18[0x1C - 0x18];
MenuStruct unk1C[4];
UnkTextStruct2 unk15C[4];
UnkTextStruct3 unk15C;
unkStruct_8035D94 unk1BC[2];
unkStruct_203B480 unk1CC;
unkStruct_203B480 unk1FC;

View File

@ -32,7 +32,7 @@ typedef struct unkStruct_203B2B8
MenuItem unk16C[10];
MenuItem unk1BC[10];
u16 unk20C[10];
UnkTextStruct2 unk220[4];
UnkTextStruct3 unk220;
} unkStruct_203B2B8;
bool8 CreatePartyListMenu(PokemonStruct1 *pokeStruct);

View File

@ -17,7 +17,7 @@ struct unkStruct_203B308
MenuStruct unk6C;
MenuItem menuItems[8];
u16 unkFC[8];
UnkTextStruct2 unk10C[4];
UnkTextStruct3 unk10C;
};
extern struct unkStruct_203B308 *gPelipperBoard;

View File

@ -16,7 +16,7 @@ struct unkStruct_203B2CC
u8 GetPokemonNewsIndex(void);
bool8 HasNoPKMNNews(void);
bool8 sub_802B640(u32, UnkTextStruct2_sub *, u32);
bool8 sub_802B640(u32, DungeonPos *, u32);
u32 sub_802B720(bool8);
void sub_802B7D0(bool8 cursorSprite);
void sub_802B81C(void);

View File

@ -14,7 +14,7 @@ struct unkStruct_203B2D4
const u8 *unk10[4];
u32 unk20;
u32 unk24;
UnkTextStruct2 unk28[4];
UnkTextStruct3 unk28;
MenuInputStructSub unk88;
};

View File

@ -14,7 +14,7 @@ struct unkStruct_203B2D8
void CreateMailMenu(void);
bool8 HasNoMailinMailbox(void);
bool8 sub_802BD14(s32, UnkTextStruct2_sub *, u32);
bool8 sub_802BD14(s32, DungeonPos *, u32);
u32 sub_802BDEC(bool8);
u8 sub_802BE74(void);
void sub_802BE94(bool8 cursorSprite);

View File

@ -12,7 +12,7 @@ typedef struct unkStruct_203B330
/* 0xD */ u8 dungeonIndex;
u32 unk10;
UnkTextStruct2 *unk14;
UnkTextStruct2 unk18[4];
UnkTextStruct3 unk18;
} unkStruct_203B330;
bool8 sub_80319A4(u8, u8 dungeon, s32);

View File

@ -12,8 +12,8 @@ struct RescuePasswordMenu
u32 currMenu;
u32 state;
MenuStruct unk8[4];
UnkTextStruct2 unk148[4];
UnkTextStruct2 unk1A8[4];
UnkTextStruct3 unk148;
UnkTextStruct3 unk1A8;
SpriteOAM unk208;
u32 unk210;
};

View File

@ -9,7 +9,7 @@ typedef struct SaveMenuWork
/* 0x0 */ u32 currMenu;
u32 unk4;
MenuStruct unk8[4];
UnkTextStruct2 unk148[4];
UnkTextStruct3 unk148;
SpriteOAM unk1A8;
u32 unk1B0; // Sprite count?
} SaveMenuWork;

View File

@ -273,7 +273,7 @@ typedef struct unkDungeon644
/* 0x30 */ u8 unk30;
/* 0x31 */ u8 unk31;
/* 0x32 */ bool8 itemHoldersIdentified;
/* 0x33 */ u8 fill33;
/* 0x33 */ u8 unk33;
/* 0x34 */ u8 unk34;
/* 0x35 */ u8 unk35;
/* 0x36 */ u8 unk36;

View File

@ -6,7 +6,7 @@
#include "structs/str_pokemon.h"
#include "structs/str_wonder_mail.h"
struct UnkStruct_xxx_dungeon_8042F6C
struct UnkStruct_RunDungeon
{
u8 unk0;
DungeonLocation unk4;
@ -30,7 +30,7 @@ struct UnkStruct_xxx_dungeon_8042F6C
WonderMailSub unk84;
};
void xxx_dungeon_8042F6C(struct UnkStruct_xxx_dungeon_8042F6C *r8);
void RunDungeon(struct UnkStruct_RunDungeon *r8);
#endif // GUARD_STR_DUNGEON_8042F6C_H

View File

@ -28,22 +28,6 @@ typedef struct UnkTextStruct1
u8 unk46;
} UnkTextStruct1;
// size: 0x4
typedef struct UnkTextStruct2_sub
{
// I haven't found a func that reads these separately yet, but simply making an arr[2] will cause assignments to break.
// Some funcs only match with this union for some reason even though they don't access the variables separately...
// The first func to break is currently sub_801A5D8 in kecleon_bros4.c
// The first func I matched that uses the array is sub_8006554 in text2.c (using the separated fields doesn't match or get even close)
union {
struct {
s16 unk0;
s16 unk2;
} separate;
s16 arr[2];
} unk0;
} UnkTextStruct2_sub;
typedef struct UnkTextStruct2_sub2
{
u8 f0;
@ -52,13 +36,15 @@ typedef struct UnkTextStruct2_sub2
u8 f3;
} UnkTextStruct2_sub2;
#include "structs/str_position.h"
// size: 0x18
typedef struct UnkTextStruct2
{
u8 unk0;
u8 fill1[0x4 - 0x1];
s32 unk4;
UnkTextStruct2_sub unk8;
DungeonPos pos;
s16 unkC;
s16 unkE;
s16 unk10;
@ -66,4 +52,12 @@ typedef struct UnkTextStruct2
const UnkTextStruct2_sub2 *unk14; // Pointer to 4 bytes which may be x-coord related. Could be window's header?
} UnkTextStruct2;
typedef struct UnkTextStruct3 {
UnkTextStruct2 a0[4];
// Something ugly, so that sub_805FD74 could match weird compiler memcpy/stack initialization
#ifndef NONMATCHING
u8 fakeMatch[0];
#endif // NONMATCHING
} UnkTextStruct3;
#endif // GUARD_STR_TEXT_H

View File

@ -13,7 +13,7 @@ typedef struct struct_Sub80095E4
/* 0x0 */ MenuInputStruct input;
u32 unk34;
UnkTextStruct2 *unk38;
UnkTextStruct2 unk3C[4];
UnkTextStruct3 unk3C;
// size: 0x9C
} struct_Sub80095E4;
@ -33,16 +33,16 @@ typedef struct struct_Sub80095E4_2
s16 newE; \
s16 a0 = (_a0); \
UNUSED s32 a0_ = a0; \
UNUSED s16 oldE = (ptr).unk3C[(ptr).unk34].unkE; \
UNUSED s16 oldE = (ptr).unk3C.a0[(ptr).unk34].unkE; \
a0_ = 0; \
new10 = a0 + 2; \
newE = a0; \
\
(ptr).unk3C[(ptr).unk34].unkE = newE; \
(ptr).unk3C[(ptr).unk34].unk10 = a0 + 2; \
(ptr).unk3C.a0[(ptr).unk34].unkE = newE; \
(ptr).unk3C.a0[(ptr).unk34].unk10 = a0 + 2; \
\
ResetUnusedInputStruct(); \
xxx_call_save_unk_text_struct_800641C((ptr).unk3C, TRUE, TRUE); \
xxx_call_save_unk_text_struct_800641C(&(ptr).unk3C, TRUE, TRUE); \
}
#define SUB_80095E4_CALL(ptr) \
@ -54,14 +54,14 @@ typedef struct struct_Sub80095E4_2
#define SUB_80095E4_CALL_2(ptr) \
{ \
s32 a0 = sub_80095E4((ptr).input.unk1A, 12) + 2; \
UNUSED s16 oldE = (ptr).unk3C[(ptr).unk34].unkE; \
UNUSED s16 oldE = (ptr).unk3C.a0[(ptr).unk34].unkE; \
s16 newE = a0; \
\
(ptr).unk3C[(ptr).unk34].unkE = newE; \
(ptr).unk3C[(ptr).unk34].unk10 = newE; \
(ptr).unk3C.a0[(ptr).unk34].unkE = newE; \
(ptr).unk3C.a0[(ptr).unk34].unk10 = newE; \
\
ResetUnusedInputStruct(); \
xxx_call_save_unk_text_struct_800641C((ptr).unk3C, TRUE, TRUE); \
xxx_call_save_unk_text_struct_800641C(&(ptr).unk3C, TRUE, TRUE); \
}
// sub_802BF30 and sub_802C328 use a different function call, and 24 instead of 12

View File

@ -63,8 +63,8 @@ u32 UpdateFadeInTile(u32 a0);
u32 sub_80063B0(void);
void SelectCharmap(u32 a0);
void SetCharacterMask(int a0);
void xxx_call_save_unk_text_struct_800641C(const UnkTextStruct2 *a0, bool8 a1, bool8 a2);
void RestoreUnkTextStruct_8006518(UnkTextStruct2 *unkData);
void xxx_call_save_unk_text_struct_800641C(const UnkTextStruct3 *a0, bool8 a1, bool8 a2);
void RestoreUnkTextStruct_8006518(UnkTextStruct3 *unkData);
u32 sub_8006544(u32 index);
void sub_8007334(s32 a0);
void sub_80073B8(s32 a0);

View File

@ -22,8 +22,8 @@ typedef struct WonderMailStruct_203B2C4
unkStruct_203B480 unk1E8;
/* 0x218 */ s8 mailIndex;
MenuStruct unk21C[4];
UnkTextStruct2 unk35C[4];
UnkTextStruct2 unk3BC[4];
UnkTextStruct3 unk35C;
UnkTextStruct3 unk3BC;
Item unk41C;
/* 0x420 */ struct MonPortraitMsg monPortrait;
u32 unk430;

View File

@ -47,8 +47,8 @@ struct TradeItemsMenu
u32 unk10;
unkStructFor8013AA0 unk14;
MenuStruct unk44[4];
UnkTextStruct2 unk184[4];
UnkTextStruct2 unk1E4[4];
UnkTextStruct3 unk184;
UnkTextStruct3 unk1E4;
// TODO These might be structs...
struct TradeItem unk244;

View File

@ -14,7 +14,7 @@ typedef struct WigglytuffShop2Work
/* 0x70 */ s32 numPokemoninFriendArea;
s32 unk74;
UnkTextStruct2 *unk78;
UnkTextStruct2 unk7C[4];
UnkTextStruct3 unk7C;
u8 unkDC[4];
} WigglytuffShop2Work;

View File

@ -54,7 +54,7 @@ typedef struct WigglytuffShop3Work
MenuStruct unk6C;
/* 0xBC */ struct MonPortraitMsg monPortrait;
struct MonPortraitMsg *monPortraitPtr;
UnkTextStruct2 unkD0[4];
UnkTextStruct3 unkD0;
u32 unk130;
u32 unk134;
} WigglytuffShop3Work;

View File

@ -22,8 +22,8 @@ typedef struct WonderMailStruct_203B2C0
u8 fill16A[0x218 - 0x1B8];
/* 0x218 */ u8 mailIndex;
MenuStruct unk21C[4];
UnkTextStruct2 unk35C[4];
UnkTextStruct2 unk3BC[4];
UnkTextStruct3 unk35C;
UnkTextStruct3 unk3BC;
/* 0x41C */ u32 unkfill; // ItemSlot?
/* 0x420 */ struct MonPortraitMsg monPortrait;
/* 0x430 */ u8 padding3[0x534 - 0x430];

View File

@ -3,7 +3,7 @@
#include "structs/str_text.h"
u32 sub_80306A8(u32 wonderMailType, u32 r1, UnkTextStruct2_sub *r2, u32 r3);
u32 sub_80306A8(u32 wonderMailType, u32 r1, DungeonPos *r2, u32 r3);
u32 sub_8030768(u8 r0);
u8 sub_80307EC(void);
void sub_8030810(u8 r0);

View File

@ -15,7 +15,7 @@ struct unkStruct_203B2E0
void DrawPelipperBoardJobMenu(void);
bool8 HasNoPelipperBoardJobs(void);
bool8 sub_802C10C(s32, UnkTextStruct2_sub *, s32);
bool8 sub_802C10C(s32, DungeonPos *, s32);
u32 sub_802C1E4(bool8);
u8 sub_802C26C(void);
void sub_802C28C(bool8 cursorSprite);

View File

@ -7,7 +7,7 @@ void DrawJobListMenu(void);
bool8 HasNoAcceptedJobs(void);
u8 GetPelipperBoardSlotIndex(void);
bool8 sub_802C4C8(s32, UnkTextStruct2_sub *, u32);
bool8 sub_802C4C8(s32, DungeonPos *, u32);
u32 sub_802C598(bool8);
void sub_802C640(bool8 cursorSprite);
void sub_802C688(void);

View File

@ -19,7 +19,7 @@ struct unkStruct_203B2F0
MenuItem unk10C[8];
MenuItem unk14C[8];
u8 fill18C[0x19C - 0x18C];
UnkTextStruct2 unk19C[4];
UnkTextStruct3 unk19C;
};
bool8 InitializeJobListMenu(u32);

View File

@ -34,7 +34,7 @@ typedef struct unkStruct_203B2F8
MenuItem unk118[8];
MenuItem unk158[8];
u16 unk198[8];
UnkTextStruct2 unk1A8[4];
UnkTextStruct3 unk1A8;
} unkStruct_203B2F8;
bool8 GetWonderMailAccepted(void);

View File

@ -230,7 +230,6 @@ SECTIONS {
src/code_805D8C8_1.o(.text);
asm/code_805D8C8.o(.text);
src/code_8066D04.o(.text);
asm/code_8066D04.o(.text);
src/code_805D8C8.o(.text);
asm/code_805D8C8_1.o(.text);
src/code_8069D4C.o(.text);
@ -535,6 +534,8 @@ SECTIONS {
src/dungeon_message.o(.rodata);
src/dungeon_move.o(.rodata);
data/data_8106A4C.o(.rodata);
src/code_8066D04.o(.rodata);
data/data_8106A4C_2.o(.rodata);
src/code_806CD90.o(.rodata);
src/type_effectiveness.o(.data);
data/data_8106F7C.o(.rodata);

View File

@ -23,13 +23,13 @@ bool8 CreateAdventureLogScreen(u32 kind)
{
sAdventureLog = MemoryAlloc(sizeof(*sAdventureLog), 8);
sAdventureLog->s0.unk34 = kind;
sAdventureLog->s0.unk38 = &sAdventureLog->s0.unk3C[kind];
RestoreUnkTextStruct_8006518(sAdventureLog->s0.unk3C);
sAdventureLog->s0.unk3C[sAdventureLog->s0.unk34] = sUnknown_80E2008;
sAdventureLog->s0.unk38 = &sAdventureLog->s0.unk3C.a0[kind];
RestoreUnkTextStruct_8006518(&sAdventureLog->s0.unk3C);
sAdventureLog->s0.unk3C.a0[sAdventureLog->s0.unk34] = sUnknown_80E2008;
sAdventureLog->s0.unk38->unk14 = &sAdventureLog->unk9C;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sAdventureLog->s0.unk3C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sAdventureLog->s0.unk3C, TRUE, TRUE);
sub_8013818(&sAdventureLog->s0.input, 0x20, 8, kind);
sub_8032084();
DisplayAdventureLog();
@ -63,9 +63,9 @@ u32 HandleAdventureLogInput(bool8 a0)
void CleanAdventureLogScreen(void)
{
if (sAdventureLog != NULL) {
sAdventureLog->s0.unk3C[sAdventureLog->s0.unk34] = sUnknown_80E1FF0;
sAdventureLog->s0.unk3C.a0[sAdventureLog->s0.unk34] = sUnknown_80E1FF0;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sAdventureLog->s0.unk3C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sAdventureLog->s0.unk3C, TRUE, TRUE);
MemoryFree(sAdventureLog);
sAdventureLog = NULL;
}

View File

@ -31,7 +31,7 @@ extern void sub_808ED00();
extern void SetDungeonLocationInfo(DungeonLocation *dl);
extern void sub_808CE74(s16, bool32, u8*);
void xxx_dungeon_8001340(struct UnkStruct_xxx_dungeon_8042F6C *r0);
void xxx_dungeon_8001340(struct UnkStruct_RunDungeon *r0);
void sub_80011E8(u8 *param_1);
void sub_809542C(WonderMailSub *param_1);
@ -53,7 +53,7 @@ EWRAM_INIT struct PersonalityRelated gPersonalityRelated_203B040 = {
.PartnerNick = {""},
};
void SaveLoadRelated_8000EDC(struct UnkStruct_xxx_dungeon_8042F6C *param_1)
void SaveLoadRelated_8000EDC(struct UnkStruct_RunDungeon *param_1)
{
u8 quickSaveValid;
s32 quickSaveStatus;
@ -267,7 +267,7 @@ void NDS_LoadOverlay_GroundMain()
}
void nullsub_2(struct UnkStruct_xxx_dungeon_8042F6C *r0)
void nullsub_2(struct UnkStruct_RunDungeon *r0)
{
}
@ -277,10 +277,10 @@ u32 xxx_script_related_8001334(u32 r0)
return xxx_script_related_8098468(r0);
}
void xxx_dungeon_8001340(struct UnkStruct_xxx_dungeon_8042F6C *r0)
void xxx_dungeon_8001340(struct UnkStruct_RunDungeon *r0)
{
nullsub_2(r0);
xxx_dungeon_8042F6C(r0);
RunDungeon(r0);
NDS_LoadOverlay_GroundMain();
}

View File

@ -7,14 +7,14 @@ EWRAM_INIT void *gUnknown_203B0E8 = NULL; // Pointer to some unknown struct
EWRAM_INIT UnkTextStruct2 gUnknown_203B0EC[4] = { // Exact location of this variable is unknown. Find a better place for it once more code is decompiled.
[0] = {
.unk4 = 3,
.unk8 = {2, 10},
.pos = {2, 10},
.unkC = 26,
.unkE = 9,
.unk10 = 9,
},
[1] = {
.unk4 = 3,
.unk8 = {23, 6},
.pos = {23, 6},
.unkC = 5,
.unkE = 3,
.unk10 = 3,

View File

@ -16,7 +16,7 @@ struct unkStruct_203B1F8
// size: 0x4B4
u32 menuAction;
MenuStruct unk4;
UnkTextStruct2 unk54[4];
UnkTextStruct3 unk54;
u8 buffer[0x400];
};
@ -296,14 +296,14 @@ bool8 sub_8015080(u8 *buffer, const MenuItem *menuItems)
for(index = 0; index < 4; index++)
{
gUnknown_203B1F8->unk54[index] = gUnknown_80DAF70;
gUnknown_203B1F8->unk54.a0[index] = gUnknown_80DAF70;
}
gUnknown_203B1F8->unk54[0] = gUnknown_80DAF88;
gUnknown_203B1F8->unk54[2] = gUnknown_80DAFA0;
sub_8012CAC(&gUnknown_203B1F8->unk54[2], menuItems);
gUnknown_203B1F8->unk54.a0[0] = gUnknown_80DAF88;
gUnknown_203B1F8->unk54.a0[2] = gUnknown_80DAFA0;
sub_8012CAC(&gUnknown_203B1F8->unk54.a0[2], menuItems);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B1F8->unk54, 1, 1);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B1F8->unk54, 1, 1);
sub_80073B8(0);
FormatString(buffer, gUnknown_203B1F8->buffer, gUnknown_203B1F8->buffer + 0x400, 0);
PrintStringOnWindow(4, 4, gUnknown_203B1F8->buffer, 0, 0);
@ -356,7 +356,7 @@ struct unkStruct_203B1FC
u8 *unkF8;
u8 unkFC[56];
u8 *unk134;
UnkTextStruct2 unk138[4];
UnkTextStruct3 unk138;
};
extern struct unkStruct_203B1FC *gUnknown_203B1FC;
@ -471,19 +471,19 @@ u32 sub_80151C0(u32 r0, u8 *buffer)
gUnknown_203B1FC->unk17 = 0;
for (index = 0; index < 4; index++) {
gUnknown_203B1FC->unk138[index] = gUnknown_80DB538;
gUnknown_203B1FC->unk138.a0[index] = gUnknown_80DB538;
}
if(gUnknown_203B1FC->unk4 != 0) {
gUnknown_203B1FC->unk138[1] = gUnknown_80DB580;
gUnknown_203B1FC->unk138.a0[1] = gUnknown_80DB580;
}
else {
gUnknown_203B1FC->unk138[1] = gUnknown_80DB568;
gUnknown_203B1FC->unk138.a0[1] = gUnknown_80DB568;
}
gUnknown_203B1FC->unk138[0] = gUnknown_80DB550;
gUnknown_203B1FC->unk138.a0[0] = gUnknown_80DB550;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B1FC->unk138, 1, 1);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B1FC->unk138, 1, 1);
sub_8015A08(1);
sub_8015C1C();

View File

@ -26,9 +26,9 @@ bool8 sub_801B3C0(Item *item)
sUnknown_203B230->item = *item;
sub_801317C(&sUnknown_203B230->unk88);
sUnknown_203B230->unk24 = 0;
sub_80140B4(sUnknown_203B230->unk28);
sub_80140B4(&sUnknown_203B230->unk28);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B230->unk28, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B230->unk28, TRUE, TRUE);
sub_801B46C(0);
return TRUE;
}

View File

@ -124,26 +124,26 @@ static void sub_801B760(void)
case 13:
case 14:
case 15:
RestoreUnkTextStruct_8006518(sUnknown_203B234->unkF4);
RestoreUnkTextStruct_8006518(&sUnknown_203B234->unkF4);
for (i = 0; i < 4; i++)
sUnknown_203B234->unkF4[i] = sUnknown_80DBA58;
sUnknown_203B234->unkF4.a0[i] = sUnknown_80DBA58;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B234->unkF4, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B234->unkF4, TRUE, TRUE);
break;
case 10:
RestoreUnkTextStruct_8006518(sUnknown_203B234->unkF4);
RestoreUnkTextStruct_8006518(&sUnknown_203B234->unkF4);
sub_801BB5C();
sUnknown_203B234->unkF4[2] = sUnknown_80DBA70;
sub_8012CAC(&sUnknown_203B234->unkF4[2], sUnknown_203B234->unkCC);
sUnknown_203B234->unkF4.a0[2] = sUnknown_80DBA70;
sub_8012CAC(&sUnknown_203B234->unkF4.a0[2], sUnknown_203B234->unkCC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B234->unkF4, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B234->unkF4, TRUE, TRUE);
break;
case 12:
RestoreUnkTextStruct_8006518(sUnknown_203B234->unkF4);
sUnknown_203B234->unkF4[1] = sUnknown_80DBA88;
RestoreUnkTextStruct_8006518(&sUnknown_203B234->unkF4);
sUnknown_203B234->unkF4.a0[1] = sUnknown_80DBA88;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B234->unkF4, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B234->unkF4, TRUE, TRUE);
break;
}
}

View File

@ -18,7 +18,7 @@ static EWRAM_INIT u16 sUnknown_203B24E = {0};
static void sub_801CC38(void);
static u32 sub_801CE58(void);
bool8 sub_801C8C4(s32 a0, s32 a1, UnkTextStruct2_sub *a2, u32 a3)
bool8 sub_801C8C4(s32 a0, s32 a1, DungeonPos *a2, u32 a3)
{
if (sub_801CF14(a0))
return FALSE;
@ -29,17 +29,17 @@ bool8 sub_801C8C4(s32 a0, s32 a1, UnkTextStruct2_sub *a2, u32 a3)
sUnknown_203B244->unk0 = a0;
sub_801CF94();
sUnknown_203B244->unk4B4.s0.unk34 = a1;
sUnknown_203B244->unk4B4.s0.unk38 = &sUnknown_203B244->unk4B4.s0.unk3C[a1];
RestoreUnkTextStruct_8006518(sUnknown_203B244->unk4B4.s0.unk3C);
sUnknown_203B244->unk4B4.s0.unk3C[sUnknown_203B244->unk4B4.s0.unk34] = sUnknown_80DBE54;
sUnknown_203B244->unk4B4.s0.unk38 = &sUnknown_203B244->unk4B4.s0.unk3C.a0[a1];
RestoreUnkTextStruct_8006518(&sUnknown_203B244->unk4B4.s0.unk3C);
sUnknown_203B244->unk4B4.s0.unk3C.a0[sUnknown_203B244->unk4B4.s0.unk34] = sUnknown_80DBE54;
sUnknown_203B244->unk4B4.s0.unk38->unk14 = &sUnknown_203B244->unk4B4.unk9C;
if (a2 != NULL)
sUnknown_203B244->unk4B4.s0.unk3C[sUnknown_203B244->unk4B4.s0.unk34].unk8 = *a2;
sUnknown_203B244->unk4B4.s0.unk3C.a0[sUnknown_203B244->unk4B4.s0.unk34].pos = *a2;
sub_8012D08(sUnknown_203B244->unk4B4.s0.unk38, a3);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B244->unk4B4.s0.unk3C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B244->unk4B4.s0.unk3C, TRUE, TRUE);
sub_8013818(&sUnknown_203B244->unk4B4.s0.input, sub_801CE58(), a3, a1);
if (sUnknown_203B248 == sUnknown_203B244->unk0) {
@ -111,7 +111,7 @@ u8 sub_801CB24(void)
void sub_801CB5C(bool8 a0)
{
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B244->unk4B4.s0.unk3C, FALSE, FALSE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B244->unk4B4.s0.unk3C, FALSE, FALSE);
sUnknown_203B244->unk4B4.s0.input.unk22 = sub_801CE58();
sub_8013984(&sUnknown_203B244->unk4B4.s0.input);
sub_801CC38();
@ -127,9 +127,9 @@ void sub_801CBB8(void)
sUnknown_203B248 = sUnknown_203B244->unk0;
sUnknown_203B24C = sUnknown_203B244->unk4B4.s0.input.menuIndex;
sUnknown_203B24E = sUnknown_203B244->unk4B4.s0.input.unk1E;
sUnknown_203B244->unk4B4.s0.unk3C[sUnknown_203B244->unk4B4.s0.unk34] = sUnknown_80DBE3C;
sUnknown_203B244->unk4B4.s0.unk3C.a0[sUnknown_203B244->unk4B4.s0.unk34] = sUnknown_80DBE3C;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B244->unk4B4.s0.unk3C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B244->unk4B4.s0.unk3C, TRUE, TRUE);
MemoryFree(sUnknown_203B244);
sUnknown_203B244 = NULL;
}

View File

@ -188,7 +188,7 @@ static void sub_801D220(void)
{
s32 i;
RestoreUnkTextStruct_8006518(sUnknown_203B250->unkB8);
RestoreUnkTextStruct_8006518(&sUnknown_203B250->unkB8);
switch (sUnknown_203B250->state) {
case 0:
@ -196,18 +196,18 @@ static void sub_801D220(void)
if (sUnknown_203B250->pokeStruct != NULL) {
for (i = 0; i < 4; i++)
sUnknown_203B250->unkB8[i] = sUnknown_80DBE7C;
sUnknown_203B250->unkB8.a0[i] = sUnknown_80DBE7C;
sUnknown_203B250->unkB8[0] = sUnknown_80DBE98;
sub_8012CAC(sUnknown_203B250->unkB8, sUnknown_203B250->unk68);
sUnknown_203B250->unkB8[0].unkC = 9;
sUnknown_203B250->unkB8.a0[0] = sUnknown_80DBE98;
sub_8012CAC(&sUnknown_203B250->unkB8.a0[0], sUnknown_203B250->unk68);
sUnknown_203B250->unkB8.a0[0].unkC = 9;
}
else {
for (i = 0; i < 4; i++)
sUnknown_203B250->unkB8[i] = sUnknown_80DBEB0[i];
sUnknown_203B250->unkB8.a0[i] = sUnknown_80DBEB0[i];
sub_8012CAC(sUnknown_203B250->unkB8, sUnknown_203B250->unk68);
sUnknown_203B250->unkB8[0].unkC = 8;
sub_8012CAC(&sUnknown_203B250->unkB8.a0[0], sUnknown_203B250->unk68);
sUnknown_203B250->unkB8.a0[0].unkC = 8;
}
break;
case 1:
@ -215,28 +215,28 @@ static void sub_801D220(void)
if (sUnknown_203B250->pokeStruct != NULL) {
for (i = 0; i < 4; i++)
sUnknown_203B250->unkB8[i] = sUnknown_80DBE7C;
sUnknown_203B250->unkB8.a0[i] = sUnknown_80DBE7C;
sUnknown_203B250->unkB8[0] = sUnknown_80DBE98;
sub_8012CAC(sUnknown_203B250->unkB8, sUnknown_203B250->unk68);
sUnknown_203B250->unkB8[0].unkC = 9;
sUnknown_203B250->unkB8.a0[0] = sUnknown_80DBE98;
sub_8012CAC(&sUnknown_203B250->unkB8.a0[0], sUnknown_203B250->unk68);
sUnknown_203B250->unkB8.a0[0].unkC = 9;
}
else {
for (i = 0; i < 4; i++)
sUnknown_203B250->unkB8[i] = sUnknown_80DBEB0[i];
sUnknown_203B250->unkB8.a0[i] = sUnknown_80DBEB0[i];
sub_8012CAC(sUnknown_203B250->unkB8, sUnknown_203B250->unk68);
sUnknown_203B250->unkB8[0].unkC = 8;
sub_8012CAC(&sUnknown_203B250->unkB8.a0[0], sUnknown_203B250->unk68);
sUnknown_203B250->unkB8.a0[0].unkC = 8;
}
break;
default:
for (i = 0; i < 4; i++)
sUnknown_203B250->unkB8[i] = sUnknown_80DBE7C;
sUnknown_203B250->unkB8.a0[i] = sUnknown_80DBE7C;
break;
}
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B250->unkB8, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B250->unkB8, TRUE, TRUE);
}
static void sub_801D3A8(void)

View File

@ -23,12 +23,12 @@ bool8 sub_801D9E4(void)
{
sUnknown_203B258 = MemoryAlloc(sizeof(*sUnknown_203B258), 8);
sUnknown_203B258->s0.unk34 = 3;
sUnknown_203B258->s0.unk38 = &sUnknown_203B258->s0.unk3C[3];
RestoreUnkTextStruct_8006518(sUnknown_203B258->s0.unk3C);
sUnknown_203B258->s0.unk3C[sUnknown_203B258->s0.unk34] = sUnknown_80DBF88;
sUnknown_203B258->s0.unk38 = &sUnknown_203B258->s0.unk3C.a0[3];
RestoreUnkTextStruct_8006518(&sUnknown_203B258->s0.unk3C);
sUnknown_203B258->s0.unk3C.a0[sUnknown_203B258->s0.unk34] = sUnknown_80DBF88;
sUnknown_203B258->s0.unk38->unk14 = &sUnknown_203B258->unk9C;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B258->s0.unk3C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B258->s0.unk3C, TRUE, TRUE);
sub_8013818(&sUnknown_203B258->s0.input, 229, 10, sUnknown_203B258->s0.unk34);
sub_801DB54();
sub_801DBD4();
@ -80,9 +80,9 @@ UNUSED static void sub_801DADC(bool8 a0)
void sub_801DB0C(void)
{
if (sUnknown_203B258 != NULL) {
sUnknown_203B258->s0.unk3C[sUnknown_203B258->s0.unk34] = sUnknown_80DBF70;
sUnknown_203B258->s0.unk3C.a0[sUnknown_203B258->s0.unk34] = sUnknown_80DBF70;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B258->s0.unk3C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B258->s0.unk3C, TRUE, TRUE);
MemoryFree(sUnknown_203B258);
sUnknown_203B258 = NULL;
}
@ -96,7 +96,7 @@ static void sub_801DB54(void)
sUnknown_203B258->unk9C.f3 = 0;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B258->s0.unk3C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B258->s0.unk3C, TRUE, TRUE);
SUB_80095E4_CALL(sUnknown_203B258->s0);
}

View File

@ -84,16 +84,16 @@ u8 sub_801EE10(u32 param_1, s16 species, Move *moves, u32 param_4, const u8 *tex
if (iVar8 < four) {
iVar8 = 4;
}
RestoreUnkTextStruct_8006518(gUnknown_203B270->unk58);
RestoreUnkTextStruct_8006518(&gUnknown_203B270->unk58);
gUnknown_203B270->unk50 = param_6;
gUnknown_203B270->unk58[param_6] = gUnknown_80DC25C;
gUnknown_203B270->unk58.a0[param_6] = gUnknown_80DC25C;
if (gUnknown_203B270->text != NULL) {
gUnknown_203B270->unk54 = sub_8006544(param_6);
gUnknown_203B270->unk58[gUnknown_203B270->unk54] = gUnknown_80DC274;
gUnknown_203B270->unk58.a0[gUnknown_203B270->unk54] = gUnknown_80DC274;
}
sub_8012D08(&gUnknown_203B270->unk58[gUnknown_203B270->unk50],iVar8);
sub_8012D08(&gUnknown_203B270->unk58.a0[gUnknown_203B270->unk50],iVar8);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B270->unk58, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B270->unk58, TRUE, TRUE);
sub_8013818(&gUnknown_203B270->input,iVar5,iVar5,param_6);
sub_8013780(&gUnknown_203B270->input,0);
sub_801F280(TRUE);
@ -250,7 +250,7 @@ void sub_801F1B0(bool8 param_1, bool8 param_2)
if(!gUnknown_203B270->unk4)
gUnknown_203B270->unk4 = param_2;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B270->unk58, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B270->unk58, TRUE, TRUE);
gUnknown_203B270->input.unk22 = sub_801F3F8();
sub_8013984(&gUnknown_203B270->input);
gUnknown_203B270->input.menuIndex = sub_8092F4C(gUnknown_203B270->moves, gUnknown_203B270->input.menuIndex);
@ -263,13 +263,13 @@ void sub_801F214(void)
{
if(gUnknown_203B270)
{
gUnknown_203B270->unk58[gUnknown_203B270->unk50] = gUnknown_80DC240;
gUnknown_203B270->unk58.a0[gUnknown_203B270->unk50] = gUnknown_80DC240;
if(gUnknown_203B270->text)
{
gUnknown_203B270->unk58[gUnknown_203B270->unk54] = gUnknown_80DC240;
gUnknown_203B270->unk58.a0[gUnknown_203B270->unk54] = gUnknown_80DC240;
}
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B270->unk58, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B270->unk58, TRUE, TRUE);
MemoryFree(gUnknown_203B270);
gUnknown_203B270 = NULL;
}

View File

@ -52,16 +52,16 @@ bool8 sub_801F428(s16 index, s32 param_2)
gUnknown_203B274->pokeStruct = &gRecruitedPokemonRef->pokemon[index_s32];
gUnknown_203B274->unk4 = &gUnknown_203B274->unk8;
gUnknown_203B274->s348.s0.unk34 = param_2;
gUnknown_203B274->s348.s0.unk38 = &gUnknown_203B274->s348.s0.unk3C[gUnknown_203B274->s348.s0.unk34];
RestoreUnkTextStruct_8006518(gUnknown_203B274->s348.s0.unk3C);
gUnknown_203B274->s348.s0.unk3C[gUnknown_203B274->s348.s0.unk34] = sUnknown_80DC2C4;
gUnknown_203B274->s348.s0.unk38 = &gUnknown_203B274->s348.s0.unk3C.a0[gUnknown_203B274->s348.s0.unk34];
RestoreUnkTextStruct_8006518(&gUnknown_203B274->s348.s0.unk3C);
gUnknown_203B274->s348.s0.unk3C.a0[gUnknown_203B274->s348.s0.unk34] = sUnknown_80DC2C4;
gUnknown_203B274->s348.s0.unk38->unk14 = &gUnknown_203B274->s348.unk9C;
gUnknown_203B274->s348.unk9C.f0 = 1;
gUnknown_203B274->s348.unk9C.f1 = 0;
gUnknown_203B274->s348.unk9C.f2 = 0xC;
gUnknown_203B274->s348.unk9C.f3 = 0;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B274->s348.s0.unk3C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B274->s348.s0.unk3C, TRUE, TRUE);
sub_8013818(&gUnknown_203B274->s348.s0.input, sub_801F7E4(), 4, param_2);
sub_801F690();
sub_801F700();
@ -108,7 +108,7 @@ u16 sub_801F5B4(void)
void sub_801F5F0(bool8 r0)
{
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B274->s348.s0.unk3C, FALSE, FALSE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B274->s348.s0.unk3C, FALSE, FALSE);
sub_8013984(&gUnknown_203B274->s348.s0.input);
sub_801F690();
sub_801F700();
@ -120,9 +120,9 @@ void sub_801F63C(void)
{
if(gUnknown_203B274 != NULL)
{
gUnknown_203B274->s348.s0.unk3C[gUnknown_203B274->s348.s0.unk34] = sUnknown_80DC2AC;
gUnknown_203B274->s348.s0.unk3C.a0[gUnknown_203B274->s348.s0.unk34] = sUnknown_80DC2AC;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B274->s348.s0.unk3C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B274->s348.s0.unk3C, TRUE, TRUE);
MemoryFree(gUnknown_203B274);
gUnknown_203B274 = NULL;
}

View File

@ -24,7 +24,7 @@ struct unkStruct_203B278
MenuInputStruct unk28;
u32 unk5C;
UnkTextStruct2 *unk60;
UnkTextStruct2 unk64[4];
UnkTextStruct3 unk64;
UnkTextStruct2_sub2 unkC4;
MenuInputStructSub unkC8;
};
@ -55,10 +55,10 @@ bool8 sub_801F808(u16 *moveIDs)
ResetSprites(TRUE);
gUnknown_203B278 = MemoryAlloc(sizeof(struct unkStruct_203B278), 8);
gUnknown_203B278->unk5C = 0;
gUnknown_203B278->unk60 = gUnknown_203B278->unk64;
sub_80140B4(gUnknown_203B278->unk64);
gUnknown_203B278->unk60 = &gUnknown_203B278->unk64.a0[0];
sub_80140B4(&gUnknown_203B278->unk64);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B278->unk64, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B278->unk64, TRUE, TRUE);
gUnknown_203B278->moveIDs = moveIDs;
for(index = 4; index > 1; index--)
@ -93,9 +93,9 @@ void sub_801F8D0(void)
{
if(gUnknown_203B278)
{
gUnknown_203B278->unk64[gUnknown_203B278->unk5C] = sUnknown_80DC2F8;
gUnknown_203B278->unk64.a0[gUnknown_203B278->unk5C] = sUnknown_80DC2F8;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B278->unk64, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B278->unk64, TRUE, TRUE);
MemoryFree(gUnknown_203B278);
gUnknown_203B278 = NULL;
}
@ -110,7 +110,7 @@ void sub_801F918(s32 newState)
void sub_801F930(void)
{
sub_80140B4(gUnknown_203B278->unk64);
sub_80140B4(&gUnknown_203B278->unk64);
switch(gUnknown_203B278->state)
{
case 0:
@ -120,11 +120,11 @@ void sub_801F930(void)
gUnknown_203B278->unkC4.f2 = 0x10;
gUnknown_203B278->unkC4.f3 = 0;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B278->unk64, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B278->unk64, TRUE, TRUE);
break;
case 1:
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B278->unk64, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B278->unk64, TRUE, TRUE);
break;
default:
break;

View File

@ -109,28 +109,28 @@ static void sub_802293C(void)
{
s32 i;
RestoreUnkTextStruct_8006518(sUnknown_203B294->unk148);
RestoreUnkTextStruct_8006518(&sUnknown_203B294->unk148);
switch (sUnknown_203B294->state) {
case 2:
sub_8022D2C();
sUnknown_203B294->unk148[2] = sUnknown_80DC5BC;
sub_8012CAC(&sUnknown_203B294->unk148[2], sUnknown_203B294->unkF8);
sUnknown_203B294->unk148[2].unkC = 6;
sUnknown_203B294->unk148.a0[2] = sUnknown_80DC5BC;
sub_8012CAC(&sUnknown_203B294->unk148.a0[2], sUnknown_203B294->unkF8);
sUnknown_203B294->unk148.a0[2].unkC = 6;
break;
case 3:
sUnknown_203B294->unk148[1] = sUnknown_80DC5D4;
sUnknown_203B294->unk148.a0[1] = sUnknown_80DC5D4;
break;
default:
for (i = 0; i < 4; i++)
sUnknown_203B294->unk148[i] = sUnknown_80DC5A4;
sUnknown_203B294->unk148.a0[i] = sUnknown_80DC5A4;
break;
case 10 ... 16:
break;
}
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B294->unk148, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B294->unk148, TRUE, TRUE);
}
static void sub_8022A10(void)

View File

@ -33,7 +33,7 @@ static void sub_8023730(void);
static void sub_8023758(void);
static void sub_80237E0(void);
bool8 sub_8023144(s32 a0, s32 index, UnkTextStruct2_sub *sub, u32 a3)
bool8 sub_8023144(s32 a0, s32 index, DungeonPos *sub, u32 a3)
{
u8 param_1_u8 = a0;
@ -47,18 +47,18 @@ bool8 sub_8023144(s32 a0, s32 index, UnkTextStruct2_sub *sub, u32 a3)
gUnknown_3001B5C->unk4 = gUnknown_203B298;
gUnknown_3001B5C->s35C.s0.unk34 = index;
gUnknown_3001B5C->s35C.s0.unk38 = &gUnknown_3001B5C->s35C.s0.unk3C[index];
RestoreUnkTextStruct_8006518(gUnknown_3001B5C->s35C.s0.unk3C);
gUnknown_3001B5C->s35C.s0.unk3C[gUnknown_3001B5C->s35C.s0.unk34] = sUnknown_80DC91C;
gUnknown_3001B5C->s35C.s0.unk38 = &gUnknown_3001B5C->s35C.s0.unk3C.a0[index];
RestoreUnkTextStruct_8006518(&gUnknown_3001B5C->s35C.s0.unk3C);
gUnknown_3001B5C->s35C.s0.unk3C.a0[gUnknown_3001B5C->s35C.s0.unk34] = sUnknown_80DC91C;
gUnknown_3001B5C->s35C.s0.unk38->unk14 = &gUnknown_3001B5C->s35C.unk9C;
if (sub != NULL)
gUnknown_3001B5C->s35C.s0.unk3C[gUnknown_3001B5C->s35C.s0.unk34].unk8 = *sub;
gUnknown_3001B5C->s35C.s0.unk3C.a0[gUnknown_3001B5C->s35C.s0.unk34].pos = *sub;
sub_8012D08(gUnknown_3001B5C->s35C.s0.unk38, a3);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_3001B5C->s35C.s0.unk3C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_3001B5C->s35C.s0.unk3C, TRUE, TRUE);
sub_8013818(&gUnknown_3001B5C->s35C.s0.input, sub_80236A4(), a3, index);
gUnknown_3001B5C->s35C.s0.input.menuIndex = gUnknown_203B29C;
gUnknown_3001B5C->s35C.s0.input.unk1E = gUnknown_203B29E;
@ -112,7 +112,7 @@ s16 sub_802331C(void)
void sub_8023354(bool8 cursorSprite)
{
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_3001B5C->s35C.s0.unk3C, FALSE, FALSE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_3001B5C->s35C.s0.unk3C, FALSE, FALSE);
sub_8013984(&gUnknown_3001B5C->s35C.s0.input);
sub_8023420();
sub_80234BC();
@ -127,9 +127,9 @@ void sub_80233A0(void)
gUnknown_203B298 = gUnknown_3001B5C->unk4;
gUnknown_203B29C = gUnknown_3001B5C->s35C.s0.input.menuIndex;
gUnknown_203B29E = gUnknown_3001B5C->s35C.s0.input.unk1E;
gUnknown_3001B5C->s35C.s0.unk3C[gUnknown_3001B5C->s35C.s0.unk34] = sUnknown_80DC904;
gUnknown_3001B5C->s35C.s0.unk3C.a0[gUnknown_3001B5C->s35C.s0.unk34] = sUnknown_80DC904;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_3001B5C->s35C.s0.unk3C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_3001B5C->s35C.s0.unk3C, TRUE, TRUE);
MemoryFree(gUnknown_3001B5C);
gUnknown_3001B5C = NULL;
}

View File

@ -26,9 +26,9 @@ bool8 sub_8024458(s16 speciesNum, s32 a1)
sUnknown_203B2AC = MemoryAlloc(sizeof(struct unkStruct_203B2AC), 8);
sUnknown_203B2AC->speciesNum = speciesNum_s32;
sUnknown_203B2AC->unkE0 = a1;
sUnknown_203B2AC->unkE4 = &sUnknown_203B2AC->unkE8[a1];
RestoreUnkTextStruct_8006518(sUnknown_203B2AC->unkE8);
sUnknown_203B2AC->unkE8[sUnknown_203B2AC->unkE0] = sUnknown_80DC9C8;
sUnknown_203B2AC->unkE4 = &sUnknown_203B2AC->unkE8.a0[a1];
RestoreUnkTextStruct_8006518(&sUnknown_203B2AC->unkE8);
sUnknown_203B2AC->unkE8.a0[sUnknown_203B2AC->unkE0] = sUnknown_80DC9C8;
sUnknown_203B2AC->unkE4->unk14 = &sUnknown_203B2AC->unk148;
sUnknown_203B2AC->unk148.f2 = 10;
sub_8024604();
@ -64,9 +64,9 @@ void sub_802452C(void)
void sub_802453C(void)
{
if (sUnknown_203B2AC != NULL) {
sUnknown_203B2AC->unkE8[sUnknown_203B2AC->unkE0] = sUnknown_80DC9B0;
sUnknown_203B2AC->unkE8.a0[sUnknown_203B2AC->unkE0] = sUnknown_80DC9B0;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B2AC->unkE8, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B2AC->unkE8, TRUE, TRUE);
MemoryFree(sUnknown_203B2AC);
sUnknown_203B2AC = NULL;
}
@ -78,7 +78,7 @@ static void sub_8024588(void)
sUnknown_203B2AC->unk148.f1 = sUnknown_203B2AC->input.unk1E;
sUnknown_203B2AC->unk148.f3 = 0;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B2AC->unkE8, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B2AC->unkE8, TRUE, TRUE);
}
static void sub_80245D0(void)

View File

@ -92,18 +92,18 @@ static void sub_802DC40(void)
{
s32 i;
RestoreUnkTextStruct_8006518(sUnknown_203B2FC->unk48);
RestoreUnkTextStruct_8006518(&sUnknown_203B2FC->unk48);
switch (sUnknown_203B2FC->state) {
case 0:
case 7:
for (i = 0; i < 4; i++)
sUnknown_203B2FC->unk48[i] = sUnknown_80E016C;
sUnknown_203B2FC->unk48.a0[i] = sUnknown_80E016C;
break;
}
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B2FC->unk48, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B2FC->unk48, TRUE, TRUE);
}
static void sub_802DC9C(void)

View File

@ -22,9 +22,9 @@ bool8 sub_802DE84(unkStruct_802C39C *mail)
sUnknown_203B300->mail = mail;
sub_801317C(&sUnknown_203B300->unk0);
sUnknown_203B300->unk10 = sUnknown_203B300->mail->unk0[0];
sUnknown_203B300->unk14 = &sUnknown_203B300->unk18[sUnknown_203B300->unk10];
RestoreUnkTextStruct_8006518(sUnknown_203B300->unk18);
sUnknown_203B300->unk18[sUnknown_203B300->unk10] = sUnknown_80E0264;
sUnknown_203B300->unk14 = &sUnknown_203B300->unk18.a0[sUnknown_203B300->unk10];
RestoreUnkTextStruct_8006518(&sUnknown_203B300->unk18);
sUnknown_203B300->unk18.a0[sUnknown_203B300->unk10] = sUnknown_80E0264;
sub_802DF14();
return TRUE;
}
@ -52,9 +52,9 @@ static void sub_802DF14(void)
void sub_802DF24(void)
{
if (sUnknown_203B300 != NULL) {
sUnknown_203B300->unk18[sUnknown_203B300->unk10] = sUnknown_80E0248;
sUnknown_203B300->unk18.a0[sUnknown_203B300->unk10] = sUnknown_80E0248;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B300->unk18, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B300->unk18, TRUE, TRUE);
MemoryFree(sUnknown_203B300);
sUnknown_203B300 = NULL;
}
@ -63,7 +63,7 @@ void sub_802DF24(void)
static void sub_802DF6C(void)
{
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B300->unk18, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B300->unk18, TRUE, TRUE);
}
static void sub_802DF88(void)

View File

@ -19,7 +19,7 @@ struct unkStruct_203B334
MenuInputStructSub unk4;
u32 unk10;
UnkTextStruct2 *unk14;
UnkTextStruct2 unk18[4];
UnkTextStruct3 unk18;
u8 unk78[4];
};
@ -58,9 +58,9 @@ bool8 sub_8031D70(u32 mailIndex, s32 param_2)
gUnknown_203B334->mailIndex = mailIndex;
sub_801317C(&gUnknown_203B334->unk4);
gUnknown_203B334->unk10 = param_2;
gUnknown_203B334->unk14 = &gUnknown_203B334->unk18[param_2];
RestoreUnkTextStruct_8006518(gUnknown_203B334->unk18);
gUnknown_203B334->unk18[gUnknown_203B334->unk10] = gUnknown_80E1FC4;
gUnknown_203B334->unk14 = &gUnknown_203B334->unk18.a0[param_2];
RestoreUnkTextStruct_8006518(&gUnknown_203B334->unk18);
gUnknown_203B334->unk18.a0[gUnknown_203B334->unk10] = gUnknown_80E1FC4;
sub_8031E00();
return TRUE;
}
@ -90,9 +90,9 @@ void sub_8031E10(void)
{
if(gUnknown_203B334)
{
gUnknown_203B334->unk18[gUnknown_203B334->unk10] = gUnknown_80E1FA8;
gUnknown_203B334->unk18.a0[gUnknown_203B334->unk10] = gUnknown_80E1FA8;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B334->unk18, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B334->unk18, TRUE, TRUE);
MemoryFree(gUnknown_203B334);
gUnknown_203B334 = NULL;
}
@ -101,7 +101,7 @@ void sub_8031E10(void)
void sub_8031E58(void)
{
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B334->unk18, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B334->unk18, TRUE, TRUE);
}
void DrawSOSPasswordScreen(void)

View File

@ -45,10 +45,10 @@ extern MenuInputStruct gUnknown_202EE10;
extern SpriteOAM gUnknown_202EDDC;
extern const RGB gUnknown_80F62AC;
extern const struct UnkTextStruct2 gUnknown_80F62B0[];
extern const struct UnkTextStruct2 gUnknown_80F6310[];
extern const struct UnkTextStruct2 gUnknown_80F6370[];
extern const struct UnkTextStruct2 gUnknown_80F63D0[];
extern const struct UnkTextStruct3 gUnknown_80F62B0;
extern const struct UnkTextStruct3 gUnknown_80F6310;
extern const struct UnkTextStruct3 gUnknown_80F6370;
extern const struct UnkTextStruct3 gUnknown_80F63D0;
extern const u32 gUnknown_80F6490[];
extern const s32 gUnknown_80F64B4[];
extern const s32 gUnknown_80F64FC[];
@ -203,7 +203,7 @@ void sub_803EAF0(u32 a0, u8 *a1)
}
break;
case 3:
xxx_call_save_unk_text_struct_800641C(gUnknown_80F62B0, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_80F62B0, TRUE, TRUE);
if (gUnknown_203B40C != 0) {
sub_8040ABC(1);
}
@ -213,14 +213,14 @@ void sub_803EAF0(u32 a0, u8 *a1)
sub_8052210(0);
}
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_80F6310, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_80F6310, TRUE, TRUE);
break;
case 7:
if (gUnknown_203B40C != 0) {
sub_8052210(0);
}
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_80F6370, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_80F6370, TRUE, TRUE);
break;
case 2:
case 4:
@ -250,7 +250,7 @@ void sub_803EAF0(u32 a0, u8 *a1)
sub_8083D44();
}
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_80F63D0, FALSE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_80F63D0, FALSE, TRUE);
break;
case 10:
sub_8083D44();
@ -272,7 +272,7 @@ void sub_803EC94(void)
sub_801317C(&gUnknown_202EE10.unk28);
}
void sub_803ECB4(UnkTextStruct2 *a0, bool8 a1)
void sub_803ECB4(UnkTextStruct3 *a0, bool8 a1)
{
gUnknown_202EDD0 = 10;
sub_8052210(0);

View File

@ -345,7 +345,7 @@ extern s32 gDungeonBrightness;
extern Entity *gLeaderPointer;
void EnforceMaxItemsAndMoney(void);
void sub_8043FD0(void);
static void sub_8043FD0(void);
void sub_806B404(void);
u8 GetFloorType(void);
@ -362,7 +362,8 @@ extern const s16 gUnknown_80F6850[4];
extern OpenedFile *gDungeonNameBannerPalette;
void xxx_dungeon_8042F6C(struct UnkStruct_xxx_dungeon_8042F6C *r8)
// This functions is the main 'loop' when the player is in a Dungeon. It runs from the moment the player enters a dungeon, until they leave(by completing or by fainting).
void RunDungeon(struct UnkStruct_RunDungeon *r8)
{
bool8 check;
Entity *leader;
@ -1074,10 +1075,10 @@ bool8 sub_8043ED0(bool8 a0)
return ret;
}
void sub_8043FD0(void)
static void sub_8043FD0(void)
{
s32 level;
for (level = 2; level < 6; level++) {
for (level = 2; level <= 5; level++) {
s32 i, monId, movesCount;
for (monId = 0; monId < NUM_MONSTERS; monId++) {
PokemonStruct1 *monStruct = &gRecruitedPokemonRef->pokemon[monId];

View File

@ -111,7 +111,7 @@ void sub_806752C(ActionContainer *a0);
bool8 sub_8061A38(ActionContainer *a0, bool8 a1);
void sub_8063A70(ActionContainer *a0, bool8 a1);
void sub_8063CF0(ActionContainer *a0, bool8 a1);
void sub_8067768(UNUSED ActionContainer *a0);
void sub_8067768(ActionContainer *a0);
void ShowTacticsMenu(ActionContainer *a0);
void sub_804A728(DungeonPos *pos, s32 a1, u8 a2, u8 a3);
extern bool8 sub_8071A8C(Entity *pokemon);
@ -1675,14 +1675,6 @@ extern bool8 sub_8044F3C(s32 param_1);
extern s32 gUnknown_202EE6C;
extern const u8 gUnknown_8106B50[];
typedef struct UnkTextStruct3 {
UnkTextStruct2 a0[4];
// Something ugly, so that sub_805FD74 could match weird compiler memcpy/stack initialization
#ifndef NONMATCHING
u8 fakeMatch[0];
#endif // NONMATCHING
} UnkTextStruct3;
extern void sub_803ECB4(UnkTextStruct3 *a0, u8 a1);
static void CreateFieldItemMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, UnkTextStruct3 *a4, UnkTextStruct2_sub2 *a5);
@ -1692,8 +1684,8 @@ static inline void sub_805FC30_SetUpTxtStruct(UnkTextStruct3 *src)
memset(src, 0, sizeof(*src));
src->a0[0].unk4 = 3;
src->a0[1].unk4 = 3;
src->a0[1].unk8.unk0.separate.unk0 = 0x16;
src->a0[1].unk8.unk0.separate.unk2 = 4;
src->a0[1].pos.x = 0x16;
src->a0[1].pos.y = 4;
src->a0[1].unkC = 6;
src->a0[1].unkE = 4;
src->a0[1].unk10 = 4;
@ -1724,7 +1716,7 @@ void sub_805FC30(UnkTextStruct3 *a0, s32 a1)
sub_801317C(&gUnknown_202EE10.unk28);
sp.a0[1].unk8.unk0.separate.unk0 = a1;
sp.a0[1].pos.x = a1;
sp.a0[1].unkC = 28 - a1;
sp.a0[1].unkE = sp.a0[1].unk10 = sub_80095E4(gUnknown_202EE10.unk1C, 0);
sub_803ECB4(&sp, 0);
@ -1792,7 +1784,7 @@ bool8 sub_805FD74(Entity * a0, struct UnkMenuBitsStruct *a1)
[0] =
{
.unk4 = 6,
.unk8 = {2, 2},
.pos = {2, 2},
.unkC = 0x12,
.unkE = 0x10,
.unk10 = 0x10,
@ -2097,11 +2089,11 @@ static void CreateFieldItemMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, UnkTextS
if (a2) {
gUnknown_202EE10.unkC += 0x40;
a4->a0[0].unk8.unk0.separate.unk0 = 0xA;
a4->a0[0].pos.x = 0xA;
a4->a0[1] = var_94;
}
else {
a4->a0[0].unk8.unk0.separate.unk0 = 2;
a4->a0[0].pos.x = 2;
a4->a0[1] = a4->a0[3];
}
@ -2531,8 +2523,8 @@ bool8 sub_8060E38(Entity *a0)
UnkTextStruct3 var_84 = {0};
var_84.a0[0].unk4 = 6;
var_84.a0[0].unk8.unk0.separate.unk0 = 2;
var_84.a0[0].unk8.unk0.separate.unk2 = 2;
var_84.a0[0].pos.x = 2;
var_84.a0[0].pos.y = 2;
var_84.a0[0].unkC = 0xE;
var_84.a0[0].unkE = 0x10;
var_84.a0[0].unk10 = 0x10;
@ -2550,7 +2542,7 @@ bool8 sub_8060E38(Entity *a0)
if (!gDungeon->unk644.unk17) {
var_84.a0[0].unk4 = 3;
var_84.a0[0].unk8.unk0.arr[1]++;
var_84.a0[0].pos.y++;
}
while (1) {
@ -2884,8 +2876,8 @@ static inline void SetTxtStruct(UnkTextStruct3 *sp)
{
memset(sp, 0, sizeof(*sp));
sp->a0[0].unk4 = 6;
sp->a0[0].unk8.unk0.separate.unk0 = 2;
sp->a0[0].unk8.unk0.separate.unk2 = 2;
sp->a0[0].pos.x = 2;
sp->a0[0].pos.y = 2;
sp->a0[0].unkC = 0x12;
sp->a0[0].unkE = 0xE;
sp->a0[0].unk10 = 0x12;

File diff suppressed because it is too large Load Diff

View File

@ -66,7 +66,7 @@ extern bool8 sub_802FCF0(void);
s32 sub_802FBF4(void);
extern u8 sub_8097384(s16);
u32 sub_802F73C(u32 r0, UnkTextStruct2_sub *r1, u32 r2, u8 r3)
u32 sub_802F73C(u32 r0, DungeonPos *r1, u32 r2, u8 r3)
{
if (sub_802FCF0())
return 0;
@ -76,22 +76,22 @@ u32 sub_802F73C(u32 r0, UnkTextStruct2_sub *r1, u32 r2, u8 r3)
gUnknown_203B314->unkB8 = r3;
gUnknown_203B314->sBC.s0.unk34 = r0;
gUnknown_203B314->sBC.s0.unk38 = &gUnknown_203B314->sBC.s0.unk3C[gUnknown_203B314->sBC.s0.unk34];
RestoreUnkTextStruct_8006518(gUnknown_203B314->sBC.s0.unk3C);
gUnknown_203B314->sBC.s0.unk38 = &gUnknown_203B314->sBC.s0.unk3C.a0[gUnknown_203B314->sBC.s0.unk34];
RestoreUnkTextStruct_8006518(&gUnknown_203B314->sBC.s0.unk3C);
if (r3 != 0)
gUnknown_203B314->sBC.s0.unk3C[gUnknown_203B314->sBC.s0.unk34] = gUnknown_80E072C;
gUnknown_203B314->sBC.s0.unk3C.a0[gUnknown_203B314->sBC.s0.unk34] = gUnknown_80E072C;
else
gUnknown_203B314->sBC.s0.unk3C[gUnknown_203B314->sBC.s0.unk34] = gUnknown_80E0714;
gUnknown_203B314->sBC.s0.unk3C.a0[gUnknown_203B314->sBC.s0.unk34] = gUnknown_80E0714;
gUnknown_203B314->sBC.s0.unk38->unk14 = &gUnknown_203B314->sBC.unk9C;
if (r1 != 0)
gUnknown_203B314->sBC.s0.unk3C[gUnknown_203B314->sBC.s0.unk34].unk8 = *r1;
gUnknown_203B314->sBC.s0.unk3C.a0[gUnknown_203B314->sBC.s0.unk34].pos = *r1;
sub_8012D08(gUnknown_203B314->sBC.s0.unk38, r2);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B314->sBC.s0.unk3C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B314->sBC.s0.unk3C, TRUE, TRUE);
sub_8013818(&gUnknown_203B314->sBC.s0.input, sub_802FBF4(), r2, r0);
sub_802F9C0();
sub_802FA50();
@ -169,9 +169,9 @@ void sub_802F974(void)
{
if(gUnknown_203B314 != NULL)
{
gUnknown_203B314->sBC.s0.unk3C[gUnknown_203B314->sBC.s0.unk34] = gUnknown_80E06FC;
gUnknown_203B314->sBC.s0.unk3C.a0[gUnknown_203B314->sBC.s0.unk34] = gUnknown_80E06FC;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B314->sBC.s0.unk3C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B314->sBC.s0.unk3C, TRUE, TRUE);
MemoryFree(gUnknown_203B314);
gUnknown_203B314 = NULL;
}

View File

@ -31,11 +31,11 @@ bool8 DrawCredits(s32 creditsCategoryIndex, s32 param_2)
sCredits1Work->creditsCategoryIndex = creditsCategoryIndex;
for (i = 0; i < 4; i++)
sCredits1Work->unk0[i] = gUnknown_80E4A10;
sCredits1Work->unk0[0] = gUnknown_80E4A28;
sCredits1Work->unk0.a0[i] = gUnknown_80E4A10;
sCredits1Work->unk0.a0[0] = gUnknown_80E4A28;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(&sCredits1Work->unk0[0], TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sCredits1Work->unk0, TRUE, TRUE);
sub_8099690(2);
sub_80073B8(0);

View File

@ -47,10 +47,10 @@ void CreateDebugMenu(void)
}
for (i = 0; i < 4; i++)
sDebugMenu->unk140[i] = sUnknown_80E7D40;
sDebugMenu->unk140.a0[i] = sUnknown_80E7D40;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sDebugMenu->unk140, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sDebugMenu->unk140, TRUE, TRUE);
SetDebugMenuItems();
}
@ -118,13 +118,13 @@ u32 UpdateDebugMenu(void)
static void SetDebugMenuItems(void)
{
SetMenuItems(sDebugMenu->unk0, sDebugMenu->unk140, 0, &sUnknown_80E7D58, sDebugMenuItems, TRUE, 13, FALSE);
SetMenuItems(sDebugMenu->unk0, &sDebugMenu->unk140, 0, &sUnknown_80E7D58, sDebugMenuItems, TRUE, 13, FALSE);
sub_8035CF4(sDebugMenu->unk0, 0, 1);
}
static void sub_803A3A0(void)
{
sub_8035CC0(sDebugMenu->unk140, 0);
sub_8035CC0(&sDebugMenu->unk140, 0);
}
static void sub_803A3BC(void)

View File

@ -80,23 +80,23 @@ static void sub_803A51C(void)
{
s32 i;
RestoreUnkTextStruct_8006518(sUnknown_203B3F0->unkD8);
RestoreUnkTextStruct_8006518(&sUnknown_203B3F0->unkD8);
switch (sUnknown_203B3F0->state) {
case 3:
sUnknown_203B3F0->unkD8[1] = sUnknown_80E7E64;
sUnknown_203B3F0->unkD8.a0[1] = sUnknown_80E7E64;
break;
case 2:
sUnknown_203B3F0->unkD8[2] = sUnknown_80E7E4C;
sUnknown_203B3F0->unkD8.a0[2] = sUnknown_80E7E4C;
break;
default:
for (i = 0; i < 4; i++)
sUnknown_203B3F0->unkD8[i] = sUnknown_80E7E34;
sUnknown_203B3F0->unkD8.a0[i] = sUnknown_80E7E34;
break;
}
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B3F0->unkD8, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B3F0->unkD8, TRUE, TRUE);
}
static void sub_803A5A0(void)
@ -121,7 +121,7 @@ static void sub_803A5A0(void)
sUnknown_203B3F0->unk9C.unkC = 999;
sUnknown_203B3F0->unk9C.unk4 = gTeamInventoryRef->teamStorage[sUnknown_203B3F0->id];
sUnknown_203B3F0->unk9C.unk14 = 1;
sUnknown_203B3F0->unk9C.unk18 = &sUnknown_203B3F0->unkD8[1];
sUnknown_203B3F0->unk9C.unk18 = &sUnknown_203B3F0->unkD8.a0[1];
sUnknown_203B3F0->unk9C.unk1C = 44;
sUnknown_203B3F0->unk9C.unk20 = 18;
sub_8013AA0(&sUnknown_203B3F0->unk9C);

View File

@ -79,17 +79,17 @@ static void sub_803A93C(void)
{
s32 i;
RestoreUnkTextStruct_8006518(sUnknown_203B3F4->unk9C);
RestoreUnkTextStruct_8006518(&sUnknown_203B3F4->unk9C);
if (sUnknown_203B3F4->state == 2)
sUnknown_203B3F4->unk9C[2] = sUnknown_80E7EA4;
sUnknown_203B3F4->unk9C.a0[2] = sUnknown_80E7EA4;
else {
for(i = 0; i < 4; i++)
sUnknown_203B3F4->unk9C[i] = sUnknown_80E7E8C;
sUnknown_203B3F4->unk9C.a0[i] = sUnknown_80E7E8C;
}
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B3F4->unk9C, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B3F4->unk9C, TRUE, TRUE);
}
static void sub_803A9AC(void)

View File

@ -82,25 +82,25 @@ static void sub_803ACE8(void)
{
s32 i;
RestoreUnkTextStruct_8006518(sUnknown_203B3F8->unkE0);
RestoreUnkTextStruct_8006518(&sUnknown_203B3F8->unkE0);
switch (sUnknown_203B3F8->state) {
case 3:
sub_803AEB0();
sUnknown_203B3F8->unkE0[2] = sUnknown_80E7EEC;
sub_8012CAC(&sUnknown_203B3F8->unkE0[2], sUnknown_203B3F8->unk90);
sUnknown_203B3F8->unkE0.a0[2] = sUnknown_80E7EEC;
sub_8012CAC(&sUnknown_203B3F8->unkE0.a0[2], sUnknown_203B3F8->unk90);
break;
case 5:
sUnknown_203B3F8->unkE0[3] = sUnknown_80E7F04;
sUnknown_203B3F8->unkE0.a0[3] = sUnknown_80E7F04;
break;
default:
for (i = 0; i < 4; i++)
sUnknown_203B3F8->unkE0[i] = sUnknown_80E7ED4;
sUnknown_203B3F8->unkE0.a0[i] = sUnknown_80E7ED4;
break;
}
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B3F8->unkE0, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B3F8->unkE0, TRUE, TRUE);
}
static void sub_803AD88(void)
@ -122,7 +122,7 @@ static void sub_803AD88(void)
sUnknown_203B3F8->unk60.unkC = 100;
sUnknown_203B3F8->unk60.unk4 = sUnknown_203B3F8->pokemon->level;
sUnknown_203B3F8->unk60.unk14 = 3;
sUnknown_203B3F8->unk60.unk18 = &sUnknown_203B3F8->unkE0[3];
sUnknown_203B3F8->unk60.unk18 = &sUnknown_203B3F8->unkE0.a0[3];
sUnknown_203B3F8->unk60.unk1C = 44;
sUnknown_203B3F8->unk60.unk20 = 18;
sub_8013AA0(&sUnknown_203B3F8->unk60);

View File

@ -65,17 +65,6 @@ EWRAM_INIT u8 gUnknown_203B434 = 1;
#define FLAG_CAN_SCROLL_UP 0x1
#define FLAG_CAN_SCROLL_DOWN 0x2
// Needed to match :shrug:
static inline void InlineStrcpy(u8 *dst, const u8 *src)
{
strcpy(dst, src);
}
static inline void InlineStrncpy(u8 *dst, const u8 *src, s32 n)
{
strncpy(dst, src, n);
}
void sub_80521D0(void)
{
s32 i;

View File

@ -1,4 +1,5 @@
#include "global.h"
#include "dungeon_move.h"
#include "dungeon_pokemon_attributes.h"
#include "dungeon_util.h"
#include "dungeon_message.h"
@ -304,7 +305,6 @@ s32 HandleDamagingMove(Entity *, Entity *, Move *, s24_8, s32);
static s32 TryHitTarget(Entity *attacker, Entity *target, Move *move, struct DamageStruct *dmgStruct, s16 unk);
static void TriggerTargetAbilityEffect(Entity *attacker);
static bool8 AccuracyCalc(Entity *attacker, Entity *target, Move *move, s32 accuracyType, bool8 selfAlwaysHits);
bool8 TryUseChosenMove(struct Entity *attacker, u32 r6, s32 itemId, u32 var_30, bool32 isLinkedMove, struct Move *move);
bool8 sub_8056468(Entity *entity, Move *move, const u8 *str, Entity **unkArray, bool32 itemId, bool8 arg_4, bool32 unused);
bool8 sub_805744C(Entity * pokemon, Move *move, bool8 param_3);
static void SetTargetsForMove(Entity **targetsArray, Entity *attacker, Move *move);

View File

@ -130,32 +130,32 @@ static void sub_801645C(void)
{
s32 i;
RestoreUnkTextStruct_8006518(sFelicityBankWork->unkA8);
RestoreUnkTextStruct_8006518(&sFelicityBankWork->unkA8);
switch (sFelicityBankWork->currState) {
case 2:
sFelicityBankWork->unkA8[0].unk0 = 0x80;
sFelicityBankWork->unkA8[1].unk0 = 0x80;
sFelicityBankWork->unkA8[2].unk0 = 0x80;
sFelicityBankWork->unkA8[3] = sUnknown_80DB6F4;
sFelicityBankWork->unkA8.a0[0].unk0 = 0x80;
sFelicityBankWork->unkA8.a0[1].unk0 = 0x80;
sFelicityBankWork->unkA8.a0[2].unk0 = 0x80;
sFelicityBankWork->unkA8.a0[3] = sUnknown_80DB6F4;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sFelicityBankWork->unkA8, TRUE, FALSE);
xxx_call_save_unk_text_struct_800641C(&sFelicityBankWork->unkA8, TRUE, FALSE);
break;
case FELICITY_BANK_STORE_HOW_MUCH:
case FELICITY_BANK_TAKE_HOW_MUCH:
sFelicityBankWork->unkA8[0].unk0 = 0x80;
sFelicityBankWork->unkA8[1].unk0 = 0x80;
sFelicityBankWork->unkA8[3] = sUnknown_80DB6F4;
sFelicityBankWork->unkA8[2] = sUnknown_80DB70C;
sFelicityBankWork->unkA8.a0[0].unk0 = 0x80;
sFelicityBankWork->unkA8.a0[1].unk0 = 0x80;
sFelicityBankWork->unkA8.a0[3] = sUnknown_80DB6F4;
sFelicityBankWork->unkA8.a0[2] = sUnknown_80DB70C;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sFelicityBankWork->unkA8, TRUE, FALSE);
xxx_call_save_unk_text_struct_800641C(&sFelicityBankWork->unkA8, TRUE, FALSE);
break;
default:
for (i = 0; i < 4; i++)
sFelicityBankWork->unkA8[i] = sUnknown_80DB6DC;
sFelicityBankWork->unkA8.a0[i] = sUnknown_80DB6DC;
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sFelicityBankWork->unkA8, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sFelicityBankWork->unkA8, TRUE, TRUE);
break;
}
}
@ -218,7 +218,7 @@ static void UpdateFelicityBankDialogue(void)
sFelicityBankWork->unk64.unk8 = 1;
sFelicityBankWork->unk64.unk10 = 5;
sFelicityBankWork->unk64.unk14 = 2;
sFelicityBankWork->unk64.unk18 = &sFelicityBankWork->unkA8[2];
sFelicityBankWork->unk64.unk18 = &sFelicityBankWork->unkA8.a0[2];
sFelicityBankWork->unk64.unk1C = 0x50;
sFelicityBankWork->unk64.unk20 = 0x12;
sub_8013AA0(&sFelicityBankWork->unk64);
@ -253,7 +253,7 @@ static void UpdateFelicityBankDialogue(void)
sFelicityBankWork->unk64.unk8 = 1;
sFelicityBankWork->unk64.unk10 = 5;
sFelicityBankWork->unk64.unk14 = 2;
sFelicityBankWork->unk64.unk18 = &sFelicityBankWork->unkA8[2];
sFelicityBankWork->unk64.unk18 = &sFelicityBankWork->unkA8.a0[2];
sFelicityBankWork->unk64.unk1C = 0x50;
sFelicityBankWork->unk64.unk20 = 0x12;
sub_8013AA0(&sFelicityBankWork->unk64);

View File

@ -142,29 +142,29 @@ void sub_802719C(void)
{
s32 index;
RestoreUnkTextStruct_8006518(sUnknown_203B2BC->unk180);
RestoreUnkTextStruct_8006518(&sUnknown_203B2BC->unk180);
switch(sUnknown_203B2BC->state)
{
case 3:
sUnknown_203B2BC->unk180[3] = sUnknown_80DD74C;
sUnknown_203B2BC->unk180.a0[3] = sUnknown_80DD74C;
CreateFriendActionMenu();
sUnknown_203B2BC->unk180[2] = sUnknown_80DD704;
sub_8012CAC(&sUnknown_203B2BC->unk180[2], sUnknown_203B2BC->menuItems);
sUnknown_203B2BC->unk180.a0[2] = sUnknown_80DD704;
sub_8012CAC(&sUnknown_203B2BC->unk180.a0[2], sUnknown_203B2BC->menuItems);
break;
case 0xC:
sub_80276A8();
sUnknown_203B2BC->unk180[2] = sUnknown_80DD71C;
sub_8012CAC(&sUnknown_203B2BC->unk180[2], sUnknown_203B2BC->menuItems);
sUnknown_203B2BC->unk180.a0[2] = sUnknown_80DD71C;
sub_8012CAC(&sUnknown_203B2BC->unk180.a0[2], sUnknown_203B2BC->menuItems);
break;
default:
for(index = 0; index < 4; index++)
{
sUnknown_203B2BC->unk180[index] = sUnknown_80DD6EC;
sUnknown_203B2BC->unk180.a0[index] = sUnknown_80DD6EC;
}
break;
}
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(sUnknown_203B2BC->unk180, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&sUnknown_203B2BC->unk180, TRUE, TRUE);
}
void sub_8027274(void)

View File

@ -145,31 +145,31 @@ void sub_802544C(void)
{
s32 i;
RestoreUnkTextStruct_8006518(gUnknown_203B2B4->unk118);
RestoreUnkTextStruct_8006518(&gUnknown_203B2B4->unk118);
switch (gUnknown_203B2B4->state) {
case 3:
if (gUnknown_203B2B4->unk0 == 0)
gUnknown_203B2B4->unk118[3] = sUnknown_80DD190;
gUnknown_203B2B4->unk118.a0[3] = sUnknown_80DD190;
sub_8025728();
gUnknown_203B2B4->unk118[2] = sUnknown_80DD160;
sub_8012CAC(&gUnknown_203B2B4->unk118[2], gUnknown_203B2B4->unkC8);
gUnknown_203B2B4->unk118.a0[2] = sUnknown_80DD160;
sub_8012CAC(&gUnknown_203B2B4->unk118.a0[2], gUnknown_203B2B4->unkC8);
break;
case 13:
sub_802591C();
gUnknown_203B2B4->unk118[2] = sUnknown_80DD178;
sub_8012CAC(&gUnknown_203B2B4->unk118[2], gUnknown_203B2B4->unkC8);
gUnknown_203B2B4->unk118.a0[2] = sUnknown_80DD178;
sub_8012CAC(&gUnknown_203B2B4->unk118.a0[2], gUnknown_203B2B4->unkC8);
break;
default:
for (i = 0; i < 4; i++)
gUnknown_203B2B4->unk118[i] = sUnknown_80DD148;
gUnknown_203B2B4->unk118.a0[i] = sUnknown_80DD148;
break;
}
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B2B4->unk118, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B2B4->unk118, TRUE, TRUE);
}
void sub_8025518(void)

View File

@ -842,7 +842,7 @@ void sub_8032828(void)
CreateDialogueBoxAndPortrait(&gUnknown_80E2A0C[0], 0, 0, 0x101);
break;
case 0x3A:
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_8031D70(gUnknown_203B33C->unk218, 0);
@ -900,8 +900,8 @@ void sub_8032828(void)
sub_8023868(3, 0, 0, 9);
break;
case 0x27:
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk35C);
SetMenuItems(gUnknown_203B33C->unk21C, gUnknown_203B33C->unk35C, 3, &gUnknown_80E2334, gUnknown_80E234C, TRUE, 0, FALSE);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk35C);
SetMenuItems(gUnknown_203B33C->unk21C, &gUnknown_203B33C->unk35C, 3, &gUnknown_80E2334, gUnknown_80E234C, TRUE, 0, FALSE);
sub_8023DA4();
sub_8035CF4(gUnknown_203B33C->unk21C, 3, 1);
break;
@ -1051,7 +1051,7 @@ void sub_8032828(void)
CreateDialogueBoxAndPortrait(&gUnknown_80E3078[0], 0, 0, 0x101);
break;
case 0x1A:
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_80151C0(4, gUnknown_203B33C->passwordBuffer);
@ -1063,8 +1063,8 @@ void sub_8032828(void)
CreateDialogueBoxAndPortrait(gUnknown_80E30D0, 0, 0, 0x101);
break;
case 0x5D:
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk35C);
SetMenuItems(gUnknown_203B33C->unk21C, gUnknown_203B33C->unk35C, 3, &gUnknown_80E231C, gUnknown_80E2408, TRUE, 0, FALSE);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk35C);
SetMenuItems(gUnknown_203B33C->unk21C, &gUnknown_203B33C->unk35C, 3, &gUnknown_80E231C, gUnknown_80E2408, TRUE, 0, FALSE);
sub_803092C();
sub_8035CF4(gUnknown_203B33C->unk21C, 3, 1);
break;
@ -1073,14 +1073,14 @@ void sub_8032828(void)
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
{
UnkTextStruct2_sub local_x = {3, 2};
DungeonPos local_x = {3, 2};
sub_801C8C4(0, 1, &local_x, 9);
}
}
break;
case 0x60:
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk35C);
SetMenuItems(gUnknown_203B33C->unk21C, gUnknown_203B33C->unk35C, 3, &gUnknown_80E23F0, gUnknown_80E2408, TRUE, 0, FALSE);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk35C);
SetMenuItems(gUnknown_203B33C->unk21C, &gUnknown_203B33C->unk35C, 3, &gUnknown_80E23F0, gUnknown_80E2408, TRUE, 0, FALSE);
sub_801CCD8();
sub_8035CF4(gUnknown_203B33C->unk21C, 3, 1);
break;
@ -1116,7 +1116,7 @@ void sub_8032828(void)
CreateDialogueBoxAndPortrait(gUnknown_80E311C, 0, 0, 0x101);
break;
case 0x73:
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_80151C0(4, gUnknown_203B33C->passwordBuffer);
@ -1126,7 +1126,7 @@ void sub_8032828(void)
break;
case 0x67:
case 0x2E:
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_8031D70(gUnknown_203B33C->unk218, 0);
@ -1242,8 +1242,8 @@ void sub_8032828(void)
case 0x13:
case 0x1E:
case 0x33:
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk35C);
SetMenuItems(gUnknown_203B33C->unk21C, gUnknown_203B33C->unk35C, 3, &gUnknown_80E231C, gUnknown_80E234C, TRUE, 0, FALSE);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk35C);
SetMenuItems(gUnknown_203B33C->unk21C, &gUnknown_203B33C->unk35C, 3, &gUnknown_80E231C, gUnknown_80E234C, TRUE, 0, FALSE);
sub_803092C();
sub_8035CF4(gUnknown_203B33C->unk21C, 3, 1);
break;
@ -1714,7 +1714,7 @@ void sub_8033DBC(void)
case 2:
sub_80155F0();
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B33C->unk3BC, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B33C->unk3BC, TRUE, TRUE);
SetFriendRescueMenuState(FRIEND_RESCUE_MENU_MAIN);
break;
default:
@ -1784,7 +1784,7 @@ void sub_8033FE4(void)
case 4:
gUnknown_203B33C->fallbackState = 0x1D;
gUnknown_203B33C->unk218 = sub_80307EC();
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_8030D40(gUnknown_203B33C->unk218, 0);
@ -1809,7 +1809,7 @@ void sub_8034074(void)
break;
case 10:
gUnknown_203B33C->fallbackState = FRIEND_RESCUE_MENU_DEFAULT_FALLBACK;
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_8030D40(gUnknown_203B33C->unk218, 0);
@ -1817,7 +1817,7 @@ void sub_8034074(void)
break;
case 5:
case 8:
sub_8035CC0(gUnknown_203B33C->unk35C, 2);
sub_8035CC0(&gUnknown_203B33C->unk35C, 2);
sub_8030810(0x1);
SetFriendRescueMenuState(0x1D);
break;
@ -1832,7 +1832,7 @@ void sub_8034130(void)
case 3:
sub_8030DE4();
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B33C->unk3BC, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B33C->unk3BC, TRUE, TRUE);
sub_803092C();
if(gUnknown_203B33C->fallbackState == FRIEND_RESCUE_MENU_DEFAULT_FALLBACK)
{
@ -1867,7 +1867,7 @@ void sub_803418C(void)
case 4:
gUnknown_203B33C->fallbackState = 0x26;
gUnknown_203B33C->speciesNum = sub_8023B44();
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_8024458(gUnknown_203B33C->speciesNum, 0);
@ -1892,7 +1892,7 @@ void sub_8034254(void)
break;
case 10:
gUnknown_203B33C->fallbackState = FRIEND_RESCUE_MENU_DEFAULT_FALLBACK;
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_8024458(gUnknown_203B33C->speciesNum, 0);
@ -1900,7 +1900,7 @@ void sub_8034254(void)
break;
case 5:
case 8:
sub_8035CC0(gUnknown_203B33C->unk35C, 3);
sub_8035CC0(&gUnknown_203B33C->unk35C, 3);
sub_8023DA4();
SetFriendRescueMenuState(0x26);
break;
@ -1918,7 +1918,7 @@ void sub_8034310(void)
case 3:
sub_802453C();
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B33C->unk3BC, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B33C->unk3BC, TRUE, TRUE);
sub_8023B7C(1);
if(gUnknown_203B33C->fallbackState == FRIEND_RESCUE_MENU_DEFAULT_FALLBACK)
{
@ -2036,7 +2036,7 @@ void sub_80344C0(void)
case 3:
sub_8031E10();
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B33C->unk3BC, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B33C->unk3BC, TRUE, TRUE);
SetFriendRescueMenuState(0x2F);
break;
case 1:
@ -2062,7 +2062,7 @@ void sub_8034500(void)
case 4:
gUnknown_203B33C->fallbackState = 0x32;
gUnknown_203B33C->unk218 = sub_80307EC();
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_8030D40(gUnknown_203B33C->unk218, 0);
@ -2087,7 +2087,7 @@ void sub_8034590(void)
break;
case 10:
gUnknown_203B33C->fallbackState = FRIEND_RESCUE_MENU_DEFAULT_FALLBACK;
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_8030D40(gUnknown_203B33C->unk218, 0);
@ -2095,7 +2095,7 @@ void sub_8034590(void)
break;
case 5:
case 8:
sub_8035CC0(gUnknown_203B33C->unk35C, 2);
sub_8035CC0(&gUnknown_203B33C->unk35C, 2);
sub_8030810(0x1);
SetFriendRescueMenuState(0x32);
break;
@ -2110,7 +2110,7 @@ void sub_803464C(void)
case 3:
sub_8030DE4();
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B33C->unk3BC, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B33C->unk3BC, TRUE, TRUE);
sub_803092C();
if(gUnknown_203B33C->fallbackState == FRIEND_RESCUE_MENU_DEFAULT_FALLBACK)
{
@ -2183,7 +2183,7 @@ void sub_803473C(void)
case 3:
sub_8031E10();
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B33C->unk3BC, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B33C->unk3BC, TRUE, TRUE);
SetFriendRescueMenuState(0x3B);
break;
case 1:
@ -2342,7 +2342,7 @@ void sub_8034970(void)
case 3:
sub_8031E10();
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B33C->unk3BC, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B33C->unk3BC, TRUE, TRUE);
SetFriendRescueMenuState(0x68);
break;
case 1:
@ -2386,7 +2386,7 @@ void sub_80349E0(void)
case 4:
gUnknown_203B33C->fallbackState = 0x5C;
gUnknown_203B33C->unk218 = sub_80307EC();
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_8030D40(gUnknown_203B33C->unk218, 0);
@ -2411,7 +2411,7 @@ void sub_8034A70(void)
break;
case 10:
gUnknown_203B33C->fallbackState = FRIEND_RESCUE_MENU_DEFAULT_FALLBACK;
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_8030D40(gUnknown_203B33C->unk218, 0);
@ -2419,7 +2419,7 @@ void sub_8034A70(void)
break;
case 5:
case 8:
sub_8035CC0(gUnknown_203B33C->unk35C, 2);
sub_8035CC0(&gUnknown_203B33C->unk35C, 2);
sub_8030810(0x1);
SetFriendRescueMenuState(0x5C);
break;
@ -2434,7 +2434,7 @@ void sub_8034B2C(void)
case 3:
sub_8030DE4();
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B33C->unk3BC, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B33C->unk3BC, TRUE, TRUE);
sub_803092C();
if(gUnknown_203B33C->fallbackState == FRIEND_RESCUE_MENU_DEFAULT_FALLBACK)
{
@ -2467,7 +2467,7 @@ void sub_8034B88(void)
case 4:
gUnknown_203B33C->fallbackState = 0x5F;
gUnknown_203B33C->item.id = sub_801CB24();
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_801B3C0(&gUnknown_203B33C->item);
@ -2484,7 +2484,7 @@ void sub_8034C38(void)
case 3:
sub_801B450();
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B33C->unk3BC, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B33C->unk3BC, TRUE, TRUE);
sub_801CB5C(TRUE);
if(gUnknown_203B33C->fallbackState == FRIEND_RESCUE_MENU_DEFAULT_FALLBACK)
{
@ -2516,7 +2516,7 @@ void sub_8034C98(void)
break;
case 10:
gUnknown_203B33C->fallbackState = FRIEND_RESCUE_MENU_DEFAULT_FALLBACK;
RestoreUnkTextStruct_8006518(gUnknown_203B33C->unk3BC);
RestoreUnkTextStruct_8006518(&gUnknown_203B33C->unk3BC);
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(NULL, TRUE, TRUE);
sub_801B3C0(&gUnknown_203B33C->item);
@ -2524,7 +2524,7 @@ void sub_8034C98(void)
break;
case 5:
case 8:
sub_8035CC0(gUnknown_203B33C->unk35C, 3);
sub_8035CC0(&gUnknown_203B33C->unk35C, 3);
sub_801CB5C(TRUE);
SetFriendRescueMenuState(0x5F);
break;
@ -2582,7 +2582,7 @@ void sub_8034D74(void)
case 2:
sub_80155F0();
ResetUnusedInputStruct();
xxx_call_save_unk_text_struct_800641C(gUnknown_203B33C->unk3BC, TRUE, TRUE);
xxx_call_save_unk_text_struct_800641C(&gUnknown_203B33C->unk3BC, TRUE, TRUE);
SetFriendRescueMenuState(FRIEND_RESCUE_MENU_MAIN);
break;
default:

Some files were not shown because too many files have changed in this diff Show More