diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/global.h | 1 | ||||
-rw-r--r-- | include/help_system.h | 93 | ||||
-rw-r--r-- | include/strings.h | 8 |
3 files changed, 63 insertions, 39 deletions
diff --git a/include/global.h b/include/global.h index b10f4af49..d08a1e0df 100644 --- a/include/global.h +++ b/include/global.h @@ -72,6 +72,7 @@ #define TEST_BUTTON(field, button) ({(field) & (button);}) #define JOY_NEW(button) TEST_BUTTON(gMain.newKeys, button) #define JOY_HELD(button) TEST_BUTTON(gMain.heldKeys, button) +#define JOY_REPT(button) TEST_BUTTON(gMain.newAndRepeatedKeys, button) extern u8 gStringVar1[]; extern u8 gStringVar2[]; diff --git a/include/help_system.h b/include/help_system.h index ff45125b2..3ba0cf475 100644 --- a/include/help_system.h +++ b/include/help_system.h @@ -3,27 +3,28 @@ #include "global.h" #include "list_menu.h" +#include "blit.h" -struct HelpSystemStruct_203F190_sub +struct HelpSystemListMenu_sub { - struct ListMenuItem * field_00; - u16 field_04; - u16 field_06; - u8 field_08; - u8 field_09; + struct ListMenuItem * items; + u16 totalItems; + u16 maxShowed; + u8 left; + u8 top; }; -struct HelpSystemStruct_203F190 +struct HelpSystemListMenu { - struct HelpSystemStruct_203F190_sub sub; + struct HelpSystemListMenu_sub sub; u8 field_0C; u8 field_0D; u8 field_0E; u8 filler_10[0xC]; }; -extern struct HelpSystemStruct_203F190 gUnknown_203F190; -extern struct ListMenuItem gUnknown_203F1AC[]; +extern struct HelpSystemListMenu gHelpSystemListMenu; +extern struct ListMenuItem gHelpSystemListMenuItems[]; extern bool8 gUnknown_3005ECC; extern u8 gUnknown_203F175; @@ -35,36 +36,58 @@ bool8 sub_812B45C(void); void sub_812B478(void); void sub_812B484(void); void sub_812B4B8(void); -bool8 sub_812BB9C(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1); -bool8 sub_812BC54(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1); -bool8 sub_812BC80(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1); -bool8 sub_812BCA8(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1); -bool8 sub_812BCD0(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1); -bool8 sub_812BD2C(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1); -bool8 sub_812BD64(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1); -bool8 sub_812BD98(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1); -bool8 sub_812BE10(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1); -bool8 sub_812BEEC(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1); -bool8 sub_812BF18(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1); +bool8 sub_812BB9C(struct HelpSystemListMenu * a0, struct ListMenuItem * a1); +bool8 sub_812BC54(struct HelpSystemListMenu * a0, struct ListMenuItem * a1); +bool8 sub_812BC80(struct HelpSystemListMenu * a0, struct ListMenuItem * a1); +bool8 sub_812BCA8(struct HelpSystemListMenu * a0, struct ListMenuItem * a1); +bool8 sub_812BCD0(struct HelpSystemListMenu * a0, struct ListMenuItem * a1); +bool8 sub_812BD2C(struct HelpSystemListMenu * a0, struct ListMenuItem * a1); +bool8 sub_812BD64(struct HelpSystemListMenu * a0, struct ListMenuItem * a1); +bool8 sub_812BD98(struct HelpSystemListMenu * a0, struct ListMenuItem * a1); +void sub_812BDEC(void); +bool8 sub_812BE10(struct HelpSystemListMenu * a0, struct ListMenuItem * a1); +bool8 sub_812BEEC(struct HelpSystemListMenu * a0, struct ListMenuItem * a1); +bool8 sub_812BF18(struct HelpSystemListMenu * a0, struct ListMenuItem * a1); +bool8 sub_812BF88(void); // help_system -void sub_813C64C(struct HelpSystemStruct_203F190 *, u8, u8); -void sub_813C4CC(const u8 *, u8, u8); -void sub_813BDA4(u8); +bool8 RunHelpSystemCallback(void); +void SaveCallbacks(void); +void SaveMapGPURegs(void); +void SaveMapTiles(void); +void SaveMapTextColors(void); +void RestoreCallbacks(void); +void RestoreGPURegs(void); +void RestoreMapTiles(void); +void RestoreMapTextColors(void); +void CommitTilemap(void); +void sub_813BCF4(void); +void sub_813BD14(u8); void sub_813BD5C(u8); +void sub_813BDA4(u8); void sub_813BDE8(u8); -void sub_813BFC0(u8); +void sub_813BE30(u8); void sub_813BE78(u8); -s32 sub_813C690(void); -void sub_813C75C(void); -void sub_813C684(u8); -void sub_813C004(u8, u8); -void sub_813C50C(const u8 *a0, const u8 *a1); void sub_813BEE4(u8); -void sub_813C624(void); -void sub_813C5FC(void); -void sub_813C488(const u8 *str); -void sub_813C584(const u8 *str); -void sub_813BE30(u8); +void sub_813BF50(u8); +void sub_813BFC0(u8); +void sub_813C004(u8, u8); +void HelpSystem_PrintTextRightAlign_Row52(const u8 *str); +void HelpSystem_PrintTextAt(const u8 *, u8, u8); +void HelpSystem_PrintTwoStrings(const u8 *a0, const u8 *a1); +void HelpSystem_PrintText_813C584(const u8 *str); +void HelpSystem_FillPanel2(void); +void HelpSystem_FillPanel1(void); +void HelpSystem_InitListMenuController(struct HelpSystemListMenu *, u8, u8); +void HelpSystem_SetInputDelay(u8); +s32 HelpSystem_GetMenuInput(void); +void sub_813C75C(void); + +void DecompressAndRenderGlyph(u8 font, u16 glyph, struct Bitmap *srcBlit, struct Bitmap *destBlit, u8 *destBuffer, u8 x, u8 y, u8 width, u8 height); +void HelpSystem_PrintText_Row61(const u8 * str); +void HelpSystem_FillPanel3(void); +void PrintListMenuItems(void); +void PlaceListMenuCursor(void); +bool8 MoveCursor(u8 by, u8 dirn); #endif //GUARD_HELP_SYSTEM_H diff --git a/include/strings.h b/include/strings.h index d85402de8..8a10f02d5 100644 --- a/include/strings.h +++ b/include/strings.h @@ -143,9 +143,9 @@ extern const u8 gUnknown_841DFBE[]; extern const u8 gUnknown_841DFC9[]; // help_system -extern const u8 gUnknown_841CB3C[]; -extern const u8 gUnknown_841CB41[]; -extern const u8 gUnknown_841CB49[]; -extern const u8 gUnknown_841CB4E[]; +extern const u8 gString_Bill[]; +extern const u8 gString_Someone[]; +extern const u8 gString_Help[]; +extern const u8 gString_HelpSystem_ClearTo8[]; #endif //GUARD_STRINGS_H |