diff options
Diffstat (limited to 'include/menu.h')
-rw-r--r-- | include/menu.h | 65 |
1 files changed, 59 insertions, 6 deletions
diff --git a/include/menu.h b/include/menu.h index e93d688e4..888d898b6 100644 --- a/include/menu.h +++ b/include/menu.h @@ -1,8 +1,14 @@ + #ifndef GUARD_MENU_H #define GUARD_MENU_H +#include "task.h" +#include "text.h" #include "window.h" +#define MENU_NOTHING_CHOSEN -2 +#define MENU_B_PRESSED -1 + struct MenuAction { const u8 *text; @@ -12,24 +18,71 @@ struct MenuAction } func; }; -void box_print(u8, u8, u8, u8, const void *, s8, const u8 *); +extern const u16 gUnknown_0860F074[]; + +void sub_81971D0(void); +void sub_8197200(void); +u16 sub_8197224(void); +void sub_81973A4(void); +void NewMenuHelpers_DrawDialogueFrame(u8, u8); +void sub_819746C(u8 windowId, bool8 copyToVram); +void NewMenuHelpers_DrawStdWindowFrame(u8, u8); +u16 AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str, u8 speed, void (*callback)(struct TextSubPrinter *, u16), u8 fgColor, u8 bgColor, u8 shadowColor); +void PrintPlayerNameOnWindow(u8, const u8*, u16, u16); +void DisplayItemMessageOnField(u8 taskId, const u8 *src, TaskFunc callback); +void sub_8197434(u8 windowId, bool8 copyToVram); +void SetStandardWindowBorderStyle(u8 a0, u8 a1); +void sub_8197930(void); +u8 GetPlayerTextSpeed(void); +void sub_81978B0(u16 arg0); + +void AddTextPrinterWithCallbackForMessage(bool8 a1, void (*callback)(struct TextSubPrinter *, u16)); +void box_print(u8 windowId, u8 fontId, u8 left, u8 top, const u8 *color, s8 speed, const u8 *str); void sub_8198070(u8 windowId, bool8 copyToVram); void SetWindowTemplateFields(struct WindowTemplate* template, u8 priority, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 palNum, u16 baseBlock); void SetWindowBorderStyle(u8 windowId, bool8 copyToVram, u16 tileStart, u8 palette); void schedule_bg_copy_tilemap_to_vram(u8 bgNum); -void PrintMenuTable(u8 idx, u8 nstrs, const struct MenuAction *strs); -void InitMenuInUpperLeftCornerPlaySoundWhenAPressed(u8 idx, u8 nstrs,u8); +void PrintMenuTable(u8 windowId, u8 itemCount, const struct MenuAction *strs); +u8 InitMenuInUpperLeftCornerPlaySoundWhenAPressed(u8 windowId, u8 numItems, u8 initialCursorPos); u8 GetMenuCursorPos(void); s8 ProcessMenuInput(void); s8 ProcessMenuInputNoWrapAround(void); void blit_move_info_icon(u8 winId, u8 a2, u16 x, u16 y); void reset_temp_tile_data_buffers(void); -int decompress_and_copy_tile_data_to_vram(u8 bg_id, const void *src, int size, u16 offset, u8 mode); +void *decompress_and_copy_tile_data_to_vram(u8 bgId, const void *src, int size, u16 offset, u8 mode); bool8 free_temp_tile_data_buffers_if_possible(void); -u64 sub_8198A50(struct WindowTemplate*, u8, u8, u8, u8, u8, u8, u16); // returns something but it isn't used, fix when menu.s is decomp'd +struct WindowTemplate sub_8198A50(u8, u8, u8, u8, u8, u8, u16); void CreateYesNoMenu(const struct WindowTemplate *windowTemplate, u16 borderFirstTileNum, u8 borderPalette, u8 initialCursorPos); -s8 sub_8198C58(void); +void copy_decompressed_tile_data_to_vram_autofree(u8 bgId, const void *src, int size, u16 offset, u8 mode); +s8 ProcessMenuInputNoWrap_(void); +s8 ProcessMenuInput_other(void); void do_scheduled_bg_tilemap_copies_to_vram(void); void clear_scheduled_bg_copies_to_vram(void); +void AddTextPrinterParameterized2(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, const u8 *color, s8 speed, const u8 *str); +void sub_8197B1C(u8 windowId, bool8 copyToVram, u16 a2, u8 a3); +void sub_81995E4(u8 windowId, u8 optionsNo, const struct MenuAction *actions, const u8 *actionIds); +void sub_8197DF8(u8 windowId, bool8 copyToVram); +u16 sub_8198AA4(u8, u8, u8, u8, u8, u8, u16); +void *malloc_and_decompress(const void *src, int *sizeOut); +u16 copy_decompressed_tile_data_to_vram(u8 bgId, const void *src, u16 size, u16 offset, u8 mode); +void AddTextPrinterForMessage(bool8 allowSkippingDelayWithButtonPress); +void AddItemMenuActionTextPrinters (u8, u8, u8, u8, u8, u8, u8, const struct MenuAction*, const u8*); +void sub_8198DBC(u8, u8, u8, u8, u8, u8, u8, const struct MenuAction*, const u8*); +u8 sub_8199944(u8, u8, u8, u8, u8); +u8 sub_8199134(s8, s8); +u8 GetStartMenuWindowId(void); +void sub_819A2BC(u8, u8); +u8 MoveMenuCursor(s8 cursorDelta); +void NewMenuHelpers_DrawStdWindowFrame(u8 windowId, bool8 CopyToVram); +u8 sub_81979C4(u8 a1); +u8 sub_81983AC(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPos); +void sub_819786C(u8 windowId, bool8 copyToVram); +void AddTextPrinterForMessage_2(bool8 allowSkippingDelayWithButtonPress); +void RemoveStartMenuWindow(void); +void sub_8197948(u8 initialCursorPos); +void sub_819A344(u8 a0, u8 *dest, u8 color); +void RemoveMapNamePopUpWindow(void); +u8 GetMapNamePopUpWindowId(void); +u8 AddMapNamePopUpWindow(void); #endif // GUARD_MENU_H |