From efad45497dfb69cf2879d0bf2e318eaf8fc2252f Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Mon, 24 Jun 2019 14:37:45 +0800 Subject: through AddTextPrinterParameterized2() --- include/dma3.h | 6 +++--- include/menu.h | 14 +++++++------- include/new_menu_helpers.h | 6 +++--- include/quest_log.h | 1 + 4 files changed, 14 insertions(+), 13 deletions(-) (limited to 'include') diff --git a/include/dma3.h b/include/dma3.h index fcd7bae43..f97f97ecd 100644 --- a/include/dma3.h +++ b/include/dma3.h @@ -5,8 +5,8 @@ void ClearDma3Requests(void); void ProcessDma3Requests(void); -int RequestDma3Copy(const void *src, void *dest, u16 size, u8 mode); -int RequestDma3Fill(s32 value, void *dest, u16 size, u8 mode); -int CheckForSpaceForDma3Request(s16 index); +s16 RequestDma3Copy(const void *src, void *dest, u16 size, u8 mode); +s16 RequestDma3Fill(s32 value, void *dest, u16 size, u8 mode); +s16 CheckForSpaceForDma3Request(s16 index); #endif // GUARD_DMA3_H diff --git a/include/menu.h b/include/menu.h index bc45e7e61..3231587de 100644 --- a/include/menu.h +++ b/include/menu.h @@ -21,25 +21,25 @@ void AddTextPrinterParameterized3(u8, u8, u8, u8, const void *, s8, const u8 *); 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 ScheduleBgCopyTilemapToVram(u8 bgNum); void PrintMenuTable(u8 idx, u8 nstrs, const struct MenuAction *strs); void InitMenuInUpperLeftCornerPlaySoundWhenAPressed(u8 idx, u8 nstrs,u8); 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); -bool8 free_temp_tile_data_buffers_if_possible(void); +void ResetTempTileDataBuffers(void); +void *DecompressAndCopyTileDataToVram(u8 bg_id, const void *src, u32 size, u16 offset, u8 mode); +bool8 FreeTempTileDataBuffersIfPossible(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 //void CreateYesNoMenu(const struct WindowTemplate *windowTemplate, u16 borderFirstTileNum, u8 borderPalette, u8 initialCursorPos); s8 Menu_ProcessInputNoWrapClearOnChoose(void); -void do_scheduled_bg_tilemap_copies_to_vram(void); -void clear_scheduled_bg_copies_to_vram(void); +void DoScheduledBgTilemapCopiesToVram(void); +void ClearScheduledBgCopiesToVram(void); void AddTextPrinterParameterized4(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, const struct TextColor *color, s8 speed, const u8 *str); void sub_8197B1C(u8 windowId, bool8 copyToVram, u16 a2, u16 a3); void ClearMenuWindow(u8 windowId, bool8 copyToVram); -void *sub_80F68F0(u8 bgId, const void *src, u32 size, u16 offset, u8 mode); +void *DecompressAndCopyTileDataToVram2(u8 bgId, const void *src, u32 size, u16 offset, u8 mode); void CreateWindow_SnapRight_StdPal(u8, u8, u8, u8, u16); void Menu_PrintHelpSystemUIHeader(const u8 *, const u8 *, u8, u32, u8); void PrintTextOnRightSnappedWindow(const u8 *, u32, u8); diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h index ed933089f..bd39480d2 100644 --- a/include/new_menu_helpers.h +++ b/include/new_menu_helpers.h @@ -9,7 +9,7 @@ void sub_81973A4(void); void sub_81973C4(u8, u8); void sub_819746C(u8 windowId, bool8 copyToVram); void sub_81973FC(u8, u8); -u16 AddTextPrinterParameterized2(u8 windowId, u8 fontId, const u8 *str, u8 speed, void ( *callback)(u16, struct TextPrinter *), u8 fgColor, u8 bgColor, u8 shadowColor); +u16 AddTextPrinterParameterized2(u8 windowId, u8 fontId, const u8 *str, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16), u8 fgColor, u8 bgColor, u8 shadowColor); void DisplayItemMessageOnField(u8 taskId, u8 bgId, const u8 *src, TaskFunc callback); void sub_8197434(u8 a0, u8 a1); void SetStandardWindowBorderStyle(u8 a0, u8 a1); @@ -22,12 +22,12 @@ void DrawDialogueFrame(u8 windowId, bool8 transfer); void sub_80F7974(const u8 *); u8 GetStartMenuWindowId(void); void sub_80F7998(void); -void sub_80F69E8(u8 bgId, const void *src, u32 size, u16 offset, u8 mode); +void DecompressAndLoadBgGfxUsingHeap2(u8 bgId, const void *src, u32 size, u16 offset, u8 mode); void DrawStdWindowFrame(u8 windowId, bool8 copyNow); void InitStandardTextBoxWindows(void); void ResetBg0(void); void Menu_LoadStdPalAt(u16); -void * malloc_and_decompress(const void * src, u32 * size); +void * MallocAndDecompress(const void * src, u32 * size); u16 sub_80F796C(void); void SetBgRectPal(u8 bgId, u8 left, u8 top, u8 width, u8 height, u8 palette); void DecompressAndLoadBgGfxUsingHeap(u8 bgId, const void * gfx, u32 size, u16 a3, u8 a4); diff --git a/include/quest_log.h b/include/quest_log.h index cdd28371f..e9b0c8e51 100644 --- a/include/quest_log.h +++ b/include/quest_log.h @@ -26,6 +26,7 @@ void sub_8115748(u16); u8 sub_8112CAC(void); bool8 sub_81119D4(void (*func)(void)); void sub_8111F38(u16, u16); +void MapNamePopupWindowIdSetDummy(void); extern u8 gUnknown_203ADFA; -- cgit v1.2.3 From cc937d33b4ae33312d543269f78207037f86b4c3 Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Tue, 25 Jun 2019 04:51:59 +0800 Subject: thru WindowFunc_ClearDialogWindowAndFrame() --- include/gba/defines.h | 3 +++ include/new_menu_helpers.h | 13 ++++++++++--- include/quest_log.h | 1 + include/script.h | 1 + include/text_window.h | 3 ++- 5 files changed, 17 insertions(+), 4 deletions(-) (limited to 'include') diff --git a/include/gba/defines.h b/include/gba/defines.h index a0ef506dd..5489f9e14 100644 --- a/include/gba/defines.h +++ b/include/gba/defines.h @@ -40,6 +40,9 @@ #define BG_SCREEN_ADDR(n) (void *)(BG_VRAM + (BG_SCREEN_SIZE * (n))) #define BG_TILE_ADDR(n) (void *)(BG_VRAM + (0x80 * (n))) +#define BG_TILE_H_FLIP(n) (0x400 + (n)) +#define BG_TILE_V_FLIP(n) (0x800 + (n)) + // text-mode BG #define OBJ_VRAM0 (void *)(VRAM + 0x10000) #define OBJ_VRAM0_SIZE 0x8000 diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h index bd39480d2..30728ec09 100644 --- a/include/new_menu_helpers.h +++ b/include/new_menu_helpers.h @@ -22,15 +22,22 @@ void DrawDialogueFrame(u8 windowId, bool8 transfer); void sub_80F7974(const u8 *); u8 GetStartMenuWindowId(void); void sub_80F7998(void); -void DecompressAndLoadBgGfxUsingHeap2(u8 bgId, const void *src, u32 size, u16 offset, u8 mode); void DrawStdWindowFrame(u8 windowId, bool8 copyNow); void InitStandardTextBoxWindows(void); void ResetBg0(void); +void ResetBgPositions(void); +void CopyRectIntoAltRect(u8 bgId, u16 *dest, u8 left, u8 top, u8 width, u8 height); +void SetBgRectPal(u8 bgId, u8 left, u8 top, u8 width, u8 height, u8 palette); +void DecompressAndLoadBgGfxUsingHeap(u8 bgId, const void *src, u32 size, u16 offset, u8 mode); +void DecompressAndLoadBgGfxUsingHeap2(u8 bgId, const void *src, u32 size, u16 offset, u8 mode); void Menu_LoadStdPalAt(u16); void * MallocAndDecompress(const void * src, u32 * size); u16 sub_80F796C(void); -void SetBgRectPal(u8 bgId, u8 left, u8 top, u8 width, u8 height, u8 palette); -void DecompressAndLoadBgGfxUsingHeap(u8 bgId, const void * gfx, u32 size, u16 a3, u8 a4); void ClearStdWindowAndFrame(u8 taskId, bool8 copyNow); +void sub_80F77B8(void); +void sub_80F6E9C(void); +void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonPress, u8 speed); +void AddTextPrinterDiffStyle(bool8 allowSkippingDelayWithButtonPress); +void AddTextPrinterForMessage(bool8 allowSkippingDelayWithButtonPress); #endif // GUARD_NEW_MENU_HELPERS_H diff --git a/include/quest_log.h b/include/quest_log.h index e9b0c8e51..72b50e49e 100644 --- a/include/quest_log.h +++ b/include/quest_log.h @@ -26,6 +26,7 @@ void sub_8115748(u16); u8 sub_8112CAC(void); bool8 sub_81119D4(void (*func)(void)); void sub_8111F38(u16, u16); +void sub_8111134(void); void MapNamePopupWindowIdSetDummy(void); extern u8 gUnknown_203ADFA; diff --git a/include/script.h b/include/script.h index 8ffbe1563..4e8b8c305 100644 --- a/include/script.h +++ b/include/script.h @@ -72,6 +72,7 @@ void sub_80699A4(void); void sub_8069970(void); void sub_8069A20(void); void sub_8069A2C(void); +bool8 IsMsgSignPost(void); extern const u8 *gRAMScriptPtr; diff --git a/include/text_window.h b/include/text_window.h index cc1de56ae..3d64c0213 100644 --- a/include/text_window.h +++ b/include/text_window.h @@ -20,11 +20,12 @@ void rbox_fill_rectangle(u8 windowId); const u16* stdpal_get(u8 id); const u16* GetOverworldTextboxPalettePtr(void); void sub_8098C6C(u8 bg, u16 destOffset, u8 palOffset); -void TextWindow_SetBubbleFrame_841F1C8(u8 windowId, u16 tileStart, u8 palette); +void TextWindow_LoadResourcesStdFrame0(u8 windowId, u16 tileStart, u8 palette); void TextWindow_SetStdFrame0_WithPal(u8 windowId, u16 tileStart, u8 palette); void TextWindow_SetUserSelectedFrame(u8 windowId, u16 tileStart, u8 palette); void LoadUserWindowBorderGfx(u8 windowId, u16 tileStart, u8 palette); void sub_814FDA0(u8 windowId, u16 tileStart, u8 palette); void DrawTextBorderOuter(u8 windowId, u16 tileStart, u8 palette); +void TextWindow_LoadTilesStdFrame1(u8 windowId, u16 destOffset); #endif // GUARD_TEXT_WINDOW_H -- cgit v1.2.3 From 0d46c60b383d5feca05950e57bb05dc392f815cc Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Tue, 25 Jun 2019 05:47:01 +0800 Subject: thru DisplayYesNoMenuDefaultNo() --- include/new_menu_helpers.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h index 30728ec09..b817bc643 100644 --- a/include/new_menu_helpers.h +++ b/include/new_menu_helpers.h @@ -30,14 +30,19 @@ void CopyRectIntoAltRect(u8 bgId, u16 *dest, u8 left, u8 top, u8 width, u8 heigh void SetBgRectPal(u8 bgId, u8 left, u8 top, u8 width, u8 height, u8 palette); void DecompressAndLoadBgGfxUsingHeap(u8 bgId, const void *src, u32 size, u16 offset, u8 mode); void DecompressAndLoadBgGfxUsingHeap2(u8 bgId, const void *src, u32 size, u16 offset, u8 mode); +void Menu_LoadStdPal(void); void Menu_LoadStdPalAt(u16); void * MallocAndDecompress(const void * src, u32 * size); u16 sub_80F796C(void); void ClearStdWindowAndFrame(u8 taskId, bool8 copyNow); -void sub_80F77B8(void); void sub_80F6E9C(void); +void sub_80F771C(bool8 copyToVram); void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonPress, u8 speed); void AddTextPrinterDiffStyle(bool8 allowSkippingDelayWithButtonPress); void AddTextPrinterForMessage(bool8 allowSkippingDelayWithButtonPress); +void SetStdWindowBorderStyle(u8 windowId, bool8 copyToVram); +void sub_80F7768(u8 windowId, bool8 copyToVram); +void DisplayYesNoMenuDefaultYes(void); +void DisplayYesNoMenuDefaultNo(void); #endif // GUARD_NEW_MENU_HELPERS_H -- cgit v1.2.3 From 2a870d54fca85b6f4501cff857837c3f2940fd7d Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Tue, 25 Jun 2019 06:50:48 +0800 Subject: All Done --- include/new_menu_helpers.h | 10 +++++++--- include/quest_log.h | 3 +++ include/text.h | 1 + include/text_window.h | 2 ++ 4 files changed, 13 insertions(+), 3 deletions(-) (limited to 'include') diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h index b817bc643..caa7cfc3c 100644 --- a/include/new_menu_helpers.h +++ b/include/new_menu_helpers.h @@ -19,9 +19,9 @@ void ClearDialogWindowAndFrame(u8, u8); u8 GetTextSpeedSetting(void); void sub_80F6E9C(void); void DrawDialogueFrame(u8 windowId, bool8 transfer); -void sub_80F7974(const u8 *); -u8 GetStartMenuWindowId(void); +void sub_80F7974(const u8 * text); void sub_80F7998(void); +void sub_80F79A4(void); void DrawStdWindowFrame(u8 windowId, bool8 copyNow); void InitStandardTextBoxWindows(void); void ResetBg0(void); @@ -33,7 +33,7 @@ void DecompressAndLoadBgGfxUsingHeap2(u8 bgId, const void *src, u32 size, u16 of void Menu_LoadStdPal(void); void Menu_LoadStdPalAt(u16); void * MallocAndDecompress(const void * src, u32 * size); -u16 sub_80F796C(void); +u16 GetStdWindowBaseTileNum(void); void ClearStdWindowAndFrame(u8 taskId, bool8 copyNow); void sub_80F6E9C(void); void sub_80F771C(bool8 copyToVram); @@ -44,5 +44,9 @@ void SetStdWindowBorderStyle(u8 windowId, bool8 copyToVram); void sub_80F7768(u8 windowId, bool8 copyToVram); void DisplayYesNoMenuDefaultYes(void); void DisplayYesNoMenuDefaultNo(void); +u8 sub_80F78E0(u8 windowId); +u8 GetStartMenuWindowId(void); +void RemoveStartMenuWindow(void); +void SetDefaultFontsPointer(void); #endif // GUARD_NEW_MENU_HELPERS_H diff --git a/include/quest_log.h b/include/quest_log.h index 72b50e49e..4fb4fe0fa 100644 --- a/include/quest_log.h +++ b/include/quest_log.h @@ -27,6 +27,9 @@ u8 sub_8112CAC(void); bool8 sub_81119D4(void (*func)(void)); void sub_8111F38(u16, u16); void sub_8111134(void); +void sub_8112EDC(u8 a0); +u8 sub_8112EB4(void); +void sub_8113018(const u8 * text, u8 mode); void MapNamePopupWindowIdSetDummy(void); extern u8 gUnknown_203ADFA; diff --git a/include/text.h b/include/text.h index 2e6a8c837..07f6b29c2 100644 --- a/include/text.h +++ b/include/text.h @@ -230,6 +230,7 @@ u16 Font4Func(struct TextPrinter *textPrinter); u16 Font5Func(struct TextPrinter *textPrinter); u16 Font7Func(struct TextPrinter *textPrinter); u16 Font8Func(struct TextPrinter *textPrinter); +u16 Font6Func(struct TextPrinter *textPrinter); void TextPrinterInitDownArrowCounters(struct TextPrinter *textPrinter); void TextPrinterDrawDownArrow(struct TextPrinter *textPrinter); diff --git a/include/text_window.h b/include/text_window.h index 3d64c0213..c1463a9c7 100644 --- a/include/text_window.h +++ b/include/text_window.h @@ -27,5 +27,7 @@ void LoadUserWindowBorderGfx(u8 windowId, u16 tileStart, u8 palette); void sub_814FDA0(u8 windowId, u16 tileStart, u8 palette); void DrawTextBorderOuter(u8 windowId, u16 tileStart, u8 palette); void TextWindow_LoadTilesStdFrame1(u8 windowId, u16 destOffset); +void sub_814FE6C(u8 windowId, u16 destOffset, u8 palIdx); +void sub_814FEEC(u8 windowId, u16 destOffset, u8 palIdx); #endif // GUARD_TEXT_WINDOW_H -- cgit v1.2.3 From 1182626739fe90a687754709abc88cb896cc057e Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Tue, 25 Jun 2019 14:27:57 +0800 Subject: matched several functions from pokeem --- include/dma3.h | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) (limited to 'include') diff --git a/include/dma3.h b/include/dma3.h index f97f97ecd..381e1e322 100644 --- a/include/dma3.h +++ b/include/dma3.h @@ -3,6 +3,51 @@ #include "global.h" +// Maximum amount of data we will transfer in one operation +#define MAX_DMA_BLOCK_SIZE 0x1000 + +#define Dma3CopyLarge_(src, dest, size, bit) \ +{ \ + const void *_src = src; \ + void *_dest = dest; \ + u32 _size = size; \ + while (1) \ + { \ + if (_size <= MAX_DMA_BLOCK_SIZE) \ + { \ + DmaCopy##bit(3, _src, _dest, _size); \ + break; \ + } \ + DmaCopy##bit(3, _src, _dest, MAX_DMA_BLOCK_SIZE); \ + _src += MAX_DMA_BLOCK_SIZE; \ + _dest += MAX_DMA_BLOCK_SIZE; \ + _size -= MAX_DMA_BLOCK_SIZE; \ + } \ +} + +#define Dma3CopyLarge16_(src, dest, size) Dma3CopyLarge_(src, dest, size, 16) +#define Dma3CopyLarge32_(src, dest, size) Dma3CopyLarge_(src, dest, size, 32) + +#define Dma3FillLarge_(value, dest, size, bit) \ +{ \ + void *_dest = dest; \ + u32 _size = size; \ + while (1) \ + { \ + if (_size <= MAX_DMA_BLOCK_SIZE) \ + { \ + DmaFill##bit(3, value, _dest, _size); \ + break; \ + } \ + DmaFill##bit(3, value, _dest, MAX_DMA_BLOCK_SIZE); \ + _dest += MAX_DMA_BLOCK_SIZE; \ + _size -= MAX_DMA_BLOCK_SIZE; \ + } \ +} + +#define Dma3FillLarge16_(value, dest, size) Dma3FillLarge_(value, dest, size, 16) +#define Dma3FillLarge32_(value, dest, size) Dma3FillLarge_(value, dest, size, 32) + void ClearDma3Requests(void); void ProcessDma3Requests(void); s16 RequestDma3Copy(const void *src, void *dest, u16 size, u8 mode); -- cgit v1.2.3 From 11a8a016540c1ee251e20a2a11dfe6c9c3486d98 Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Wed, 26 Jun 2019 06:15:19 +0800 Subject: finished multiboot --- include/gba/multiboot.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'include') diff --git a/include/gba/multiboot.h b/include/gba/multiboot.h index e88b43a19..a8bc8fddf 100644 --- a/include/gba/multiboot.h +++ b/include/gba/multiboot.h @@ -18,9 +18,9 @@ struct MultiBootParam u8 response_bit; u8 client_bit; u8 reserved1; - u8 *boot_srcp; - u8 *boot_endp; - u8 *masterp; + const u8 *boot_srcp; + const u8 *boot_endp; + const u8 *masterp; u8 *reserved2[MULTIBOOT_NCHILD]; u32 system_work2[4]; u8 sendflag; -- cgit v1.2.3 From 1ba29fd2ed12d86d39e64b952f0f69cc36add132 Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Wed, 26 Jun 2019 06:30:22 +0800 Subject: fix return type --- include/multiboot.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/multiboot.h b/include/multiboot.h index 4b4a3693a..ee0a34c83 100644 --- a/include/multiboot.h +++ b/include/multiboot.h @@ -18,6 +18,6 @@ void MultiBootInit(struct MultiBootParam *mp); int MultiBootMain(struct MultiBootParam *mp); void MultiBootStartProbe(struct MultiBootParam *mp); void MultiBootStartMaster(struct MultiBootParam *mp, const u8 *srcp, int length, u8 palette_color, s8 palette_speed); -int MultiBootCheckComplete(struct MultiBootParam *mp); +bool32 MultiBootCheckComplete(struct MultiBootParam *mp); #endif // GUARD_MULTIBOOT_H -- cgit v1.2.3 From f7aaf6234311435ca7bb2e5b094df6dfa8ab1827 Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Wed, 26 Jun 2019 07:31:39 +0800 Subject: finished hof_pc --- include/hall_of_fame.h | 2 ++ include/overworld.h | 3 +-- include/script_menu.h | 3 +++ 3 files changed, 6 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/hall_of_fame.h b/include/hall_of_fame.h index 2dc9fae41..17786dad3 100644 --- a/include/hall_of_fame.h +++ b/include/hall_of_fame.h @@ -7,5 +7,7 @@ void CB2_DoHallOfFameScreen(void); void CB2_DoHallOfFameScreenDontSaveData(void); void CB2_DoHallOfFamePC(void); void sub_8175280(void); +void sub_80F2978(void); +void HallOfFamePCBeginFade(void); #endif // GUARD_HALL_OF_FAME_H diff --git a/include/overworld.h b/include/overworld.h index fed1a33a5..e08842143 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -86,7 +86,7 @@ void sub_8055D5C(struct WarpData *); void sub_80572A8(void); void sub_805726C(void); void sub_8057430(void); -void sub_8055DC4(void); +void Overworld_PlaySpecialMapMusic(void); u8 GetCurrentRegionMapSectionId(void); @@ -111,7 +111,6 @@ void Overworld_ResetStateAfterTeleport(void); void Overworld_FadeOutMapMusic(void); void sub_805671C(void); -void sub_8055DC4(void); bool8 sub_8055FC4(void); bool8 is_light_level_8_or_9(u8 mapType); bool32 sub_8055C9C(void); diff --git a/include/script_menu.h b/include/script_menu.h index f82b061a5..c1e32beae 100644 --- a/include/script_menu.h +++ b/include/script_menu.h @@ -10,6 +10,9 @@ bool8 ScriptMenu_MultichoiceWithDefault(u8 left, u8 top, u8 var3, u8 var4, u8 va bool8 ScriptMenu_YesNo(u8 var1, u8 var2); bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, u8 a4, u8 columnCount); bool8 ScriptMenu_ShowPokemonPic(u16 var1, u8 var2, u8 var3); +bool32 ScrSpecial_CreatePCMenu(void); +void ScriptMenu_DisplayPCStartupPrompt(void); + bool8 (*ScriptMenu_GetPicboxWaitFunc(void))(void); void sub_809D6D4(void); -- cgit v1.2.3 From 30ce36c7b08d01f6bb792d01d927bb28c35cd867 Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Wed, 26 Jun 2019 07:38:07 +0800 Subject: fix header --- include/hall_of_fame.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/hall_of_fame.h b/include/hall_of_fame.h index 17786dad3..1d2122399 100644 --- a/include/hall_of_fame.h +++ b/include/hall_of_fame.h @@ -9,5 +9,6 @@ void CB2_DoHallOfFamePC(void); void sub_8175280(void); void sub_80F2978(void); void HallOfFamePCBeginFade(void); +void ReturnFromHallOfFamePC(void); #endif // GUARD_HALL_OF_FAME_H -- cgit v1.2.3 From f52d439a8588f82268ed199ce08ce3c792071ff3 Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Fri, 28 Jun 2019 01:56:26 +0800 Subject: finished decompress (1 failed attempt) --- include/decompress.h | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) (limited to 'include') diff --git a/include/decompress.h b/include/decompress.h index 19b507525..03080fe48 100644 --- a/include/decompress.h +++ b/include/decompress.h @@ -10,15 +10,13 @@ extern u8 gDecompressionBuffer[0x4000]; void LZDecompressWram(const void *src, void *dest); void LZDecompressVram(const void *src, void *dest); -u16 LoadCompressedObjectPic(const struct CompressedSpriteSheet *src); -void LoadCompressedObjectPicOverrideBuffer(const struct CompressedSpriteSheet *src, void *buffer); -bool8 LoadCompressedObjectPicUsingHeap(const struct CompressedSpriteSheet* src); +u16 LoadCompressedSpriteSheet(const struct CompressedSpriteSheet *src); +void LoadCompressedSpriteSheetOverrideBuffer(const struct CompressedSpriteSheet *src, void *buffer); +bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet* src); -void LoadCompressedObjectPalette(const struct CompressedSpritePalette *src); -void LoadCompressedObjectPaletteOverrideBuffer(const struct CompressedSpritePalette *a, void *buffer); -bool8 LoadCompressedObjectPaletteUsingHeap(const struct CompressedSpritePalette *src); - -bool8 sub_800F078(const struct CompressedSpritePalette *src); +void LoadCompressedSpritePalette(const struct CompressedSpritePalette *src); +void LoadCompressedSpritePaletteOverrideBuffer(const struct CompressedSpritePalette *a, void *buffer); +bool8 LoadCompressedSpritePaletteUsingHeap(const struct CompressedSpritePalette *src); void DecompressPicFromTable(const struct CompressedSpriteSheet *src, void* buffer, s32 species); void DecompressPicFromTable_2(const struct CompressedSpriteSheet *src, void* buffer, s32 species); @@ -27,15 +25,12 @@ void DecompressPicFromTable_DontHandleDeoxys(const struct CompressedSpriteSheet void HandleLoadSpecialPokePic(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality); void HandleLoadSpecialPokePic_2(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality); void HandleLoadSpecialPokePic_DontHandleDeoxys(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality); -void sub_800ECC4(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality); +void HandleLoadSpecialPokePic(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality); void LoadSpecialPokePic(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality, bool8 isFrontPic); void LoadSpecialPokePic_2(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality, bool8 isFrontPic); void LoadSpecialPokePic_DontHandleDeoxys(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality, bool8 isFrontPic); -u32 sub_8034974(const u8 *ptr); - -void sub_800F034(const struct CompressedSpriteSheet *src); u32 GetDecompressedDataSize(const u8 *ptr); #endif // GUARD_DECOMPRESS_H -- cgit v1.2.3 From be2010e0db8ca527693d40a6f1410000033f7e7f Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Fri, 28 Jun 2019 04:30:45 +0800 Subject: finished reset_save_heap --- include/new_game.h | 1 + include/overworld.h | 2 +- include/reset_save_heap.h | 13 +++++++++++++ 3 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 include/reset_save_heap.h (limited to 'include') diff --git a/include/new_game.h b/include/new_game.h index c495a9585..a45b090c8 100644 --- a/include/new_game.h +++ b/include/new_game.h @@ -14,5 +14,6 @@ void NewGameInitData(void); void ResetMiniGamesResults(void); void sub_808447C(void); void Sav2_ClearSetDefault(void); +void ResetMenuAndMonGlobals(void); #endif // GUARD_NEW_GAME_H diff --git a/include/overworld.h b/include/overworld.h index e08842143..c867549f1 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -81,7 +81,7 @@ void mapldr_default(void); u32 GetGameStat(u8); -void sub_8056938(void); +void CB2_ContinueSavedGame(void); void sub_8055D5C(struct WarpData *); void sub_80572A8(void); void sub_805726C(void); diff --git a/include/reset_save_heap.h b/include/reset_save_heap.h new file mode 100644 index 000000000..8cb038906 --- /dev/null +++ b/include/reset_save_heap.h @@ -0,0 +1,13 @@ +#ifndef GUARD_RESET_SAVE_HEAP_H +#define GUARD_RESET_SAVE_HEAP_H + +// Exported type declarations + +// Exported RAM declarations + +// Exported ROM declarations + +void sub_8079B7C(void); + +#endif //GUARD_RESET_SAVE_HEAP_H + -- cgit v1.2.3 From 8e8fe3bf443cec46c0b7cc2072748c90bedc964d Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Fri, 28 Jun 2019 05:55:49 +0800 Subject: finished save_location --- include/global.h | 2 +- include/save_location.h | 13 ++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 050c311e4..12381c6f4 100644 --- a/include/global.h +++ b/include/global.h @@ -209,7 +209,7 @@ struct SaveBlock2 { /*0x000*/ u8 playerName[PLAYER_NAME_LENGTH]; /*0x008*/ u8 playerGender; // MALE, FEMALE - /*0x009*/ u8 specialSaveWarp; + /*0x009*/ u8 specialSaveWarpFlags; /*0x00A*/ u8 playerTrainerId[4]; /*0x00E*/ u16 playTimeHours; /*0x010*/ u8 playTimeMinutes; diff --git a/include/save_location.h b/include/save_location.h index cd499643e..4e01c64e4 100644 --- a/include/save_location.h +++ b/include/save_location.h @@ -1,12 +1,15 @@ #ifndef GUARD_SAVE_LOCATION_H #define GUARD_SAVE_LOCATION_H -#include "global.h" +// specialSaveWarp flags +#define CONTINUE_GAME_WARP (1 << 0) +#define POKECENTER_SAVEWARP (1 << 1) +#define LOBBY_SAVEWARP (1 << 2) +#define UNK_SPECIAL_SAVE_WARP_FLAG_3 (1 << 3) -bool32 sub_81AFCEC(void); void TrySetMapSaveWarpStatus(void); -void sub_81AFDA0(void); -void sub_81AFDD0(void); bool32 IsCurMapPokeCenter(void); +void sub_810B810(void); +void sub_810B82C(void); -#endif // GUARD_SAVE_LOCATION_H +#endif // GUARD_SAVE_LOCATION_H \ No newline at end of file -- cgit v1.2.3 From d06166633fe7cc97ec692131246bdc9121a71aaa Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Fri, 28 Jun 2019 11:04:15 +0800 Subject: finished mail_data --- include/mail.h | 6 ++---- include/mail_data.h | 11 ++++++++++- include/pokemon_icon.h | 1 + include/wild_encounter.h | 2 +- 4 files changed, 14 insertions(+), 6 deletions(-) (limited to 'include') diff --git a/include/mail.h b/include/mail.h index 9ffccbb5b..3ba731c66 100644 --- a/include/mail.h +++ b/include/mail.h @@ -3,6 +3,8 @@ #include "global.h" +#define MAIL_WORDS_COUNT 9 + #define IS_ITEM_MAIL(itemId)((itemId == ITEM_ORANGE_MAIL \ || itemId == ITEM_HARBOR_MAIL \ || itemId == ITEM_GLITTER_MAIL \ @@ -17,10 +19,6 @@ || itemId == ITEM_RETRO_MAIL)) -bool8 MonHasMail(struct Pokemon *mon); -void TakeMailFromMon(struct Pokemon *mon); -u8 GiveMailToMon2(struct Pokemon *mon, struct MailStruct *mail); -void ClearMailStruct(struct MailStruct *mail); void sub_80BEBEC(struct MailStruct * mail, void (* callback)(void), u8 a2); #endif // GUARD_MAIL_H diff --git a/include/mail_data.h b/include/mail_data.h index 79a4a7851..a5795ed7e 100644 --- a/include/mail_data.h +++ b/include/mail_data.h @@ -9,7 +9,16 @@ // Exported ROM declarations -u16 sub_80D45E8(u16, u16 *); +void ClearMailData(void); +void ClearMailStruct(struct MailStruct *mail); +bool8 MonHasMail(struct Pokemon *mon); +u8 GiveMailToMon(struct Pokemon *mon, u16 itemId); +u16 SpeciesToMailSpecies(u16 species, u32 personality); +u16 MailSpeciesToSpecies(u16 mailSpecies, u16 *buffer); +u8 GiveMailToMon2(struct Pokemon *mon, struct MailStruct *mail); +void TakeMailFromMon(struct Pokemon *mon); +void ClearMailItemId(u8 mailId); +u8 TakeMailFromMon2(struct Pokemon *mon); bool8 ItemIsMail(u16 itemId); #endif //GUARD_MAIL_DATA_H diff --git a/include/pokemon_icon.h b/include/pokemon_icon.h index 593715b7d..cd8c798f9 100644 --- a/include/pokemon_icon.h +++ b/include/pokemon_icon.h @@ -15,5 +15,6 @@ void FreeMonIconPalettes(void); u16 sub_8096FD4(u16); u8 sub_8096ECC(u16, void (*)(struct Sprite *), s16, s16, u8, bool32); void sub_8097070(struct Sprite *); +u16 GetUnownLetterByPersonality(u32 personality); #endif // GUARD_POKEMON_ICON_H diff --git a/include/wild_encounter.h b/include/wild_encounter.h index b4c42116a..2ca30ac8b 100644 --- a/include/wild_encounter.h +++ b/include/wild_encounter.h @@ -43,6 +43,6 @@ u16 GetLocalWildMon(bool8 *isWaterMon); u16 GetLocalWaterMon(void); bool8 UpdateRepelCounter(void); void sub_8082740(u8); -u8 GetUnownLetterByPersonality(u32 personality); +u8 GetUnownLetterByPersonalityLoByte(u32 personality); #endif // GUARD_WILD_ENCOUNTER_H -- cgit v1.2.3 From 3f43150b5a9cc41b1ccd488d864fc8adbdbf038b Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Fri, 28 Jun 2019 11:33:23 +0800 Subject: finished fldeff_poison --- include/bg.h | 2 +- include/fldeff.h | 4 ++++ include/fldeff_80F9BCC.h | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/bg.h b/include/bg.h index 003ffc916..6364d0806 100644 --- a/include/bg.h +++ b/include/bg.h @@ -71,7 +71,7 @@ u32 ChangeBgY(u8 bg, u32 value, u8 op); u32 ChangeBgY_ScreenOff(u8 bg, u32 value, u8 op); u32 GetBgY(u8 bg); void SetBgAffine(u8 bg, u32 srcCenterX, u32 srcCenterY, s16 dispCenterX, s16 dispCenterY, s16 scaleX, s16 scaleY, u16 rotationAngle); -u8 Unused_AdjustBgMosaic(u8 a1, u8 a2); +u8 AdjustBgMosaic(u8 a1, u8 a2); void SetBgTilemapBuffer(u8 bg, void *tilemap); void UnsetBgTilemapBuffer(u8 bg); void* GetBgTilemapBuffer(u8 bg); diff --git a/include/fldeff.h b/include/fldeff.h index 364cb7550..3120833e2 100644 --- a/include/fldeff.h +++ b/include/fldeff.h @@ -4,4 +4,8 @@ // rock smash u8 oei_task_add(void); +// poison +void FldEffPoison_Start(void); +bool32 FldEffPoison_IsActive(void); + #endif // GUARD_FLDEFF_H diff --git a/include/fldeff_80F9BCC.h b/include/fldeff_80F9BCC.h index 3960c6c65..411a2501f 100644 --- a/include/fldeff_80F9BCC.h +++ b/include/fldeff_80F9BCC.h @@ -11,6 +11,6 @@ void sub_80FA5E4(s16 id, s16 x, s16 y); void sub_80FA794(s16 x, s16 y); -void overworld_poison_effect(void); +void FldEffPoison_Start(void); #endif //GUARD_FLDEFF_80F9BCC_H -- cgit v1.2.3 From c994998aad22fcdb2fd5b4c20c730fa910cb30a9 Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Fri, 28 Jun 2019 14:41:29 +0800 Subject: AdjustBgMosaic Documentation --- include/bg.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/bg.h b/include/bg.h index 6364d0806..48610009d 100644 --- a/include/bg.h +++ b/include/bg.h @@ -71,7 +71,7 @@ u32 ChangeBgY(u8 bg, u32 value, u8 op); u32 ChangeBgY_ScreenOff(u8 bg, u32 value, u8 op); u32 GetBgY(u8 bg); void SetBgAffine(u8 bg, u32 srcCenterX, u32 srcCenterY, s16 dispCenterX, s16 dispCenterY, s16 scaleX, s16 scaleY, u16 rotationAngle); -u8 AdjustBgMosaic(u8 a1, u8 a2); +u8 AdjustBgMosaic(u8 value, u8 mode); void SetBgTilemapBuffer(u8 bg, void *tilemap); void UnsetBgTilemapBuffer(u8 bg); void* GetBgTilemapBuffer(u8 bg); -- cgit v1.2.3 From d09d78dca303386dd5d7fae0ec8e3f6c59d227bc Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Sat, 29 Jun 2019 03:30:48 +0800 Subject: finished fldeff_strength + lots of clean up --- include/event_scripts.h | 2 ++ include/fldeff.h | 21 ++++++++++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/event_scripts.h b/include/event_scripts.h index d5ee57d56..b1b65da11 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -1144,4 +1144,6 @@ extern const u8 gUnknown_81BB084[]; extern const u8 gUnknown_81BB0DF[]; extern const u8 gUnknown_81BB156[]; +extern const u8 EventScript_FldEffStrength[]; + #endif //GUARD_EVENT_SCRIPTS_H diff --git a/include/fldeff.h b/include/fldeff.h index 3120833e2..749b09da7 100644 --- a/include/fldeff.h +++ b/include/fldeff.h @@ -1,11 +1,30 @@ #ifndef GUARD_FLDEFF_H #define GUARD_FLDEFF_H -// rock smash +bool8 CheckObjectGraphicsInFrontOfPlayer(u8 graphicsId); u8 oei_task_add(void); +// rock smash + +// berrytree +void nullsub_56(void); + // poison void FldEffPoison_Start(void); bool32 FldEffPoison_IsActive(void); +// strength +bool8 SetUpFieldMove_Strength(void); +bool8 sub_80D0860(void); + +// teleport +bool8 SetUpFieldMove_Teleport(void); +bool8 FldEff_UseTeleport(void); + +// softboiled +bool8 hm_prepare_dive_probably(void); +void sub_80E56DC(u8 taskId); +void sub_80E5724(u8 taskId); + + #endif // GUARD_FLDEFF_H -- cgit v1.2.3 From 38febc8bafcab19965608e434135c054893dfb68 Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Sat, 29 Jun 2019 06:38:36 +0800 Subject: finished fldeff_sweetscent --- include/event_scripts.h | 1 + include/field_player_avatar.h | 1 + include/field_weather.h | 2 ++ include/fldeff.h | 3 +++ include/palette.h | 2 +- include/wild_encounter.h | 1 + 6 files changed, 9 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/event_scripts.h b/include/event_scripts.h index b1b65da11..b12539476 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -1145,5 +1145,6 @@ extern const u8 gUnknown_81BB0DF[]; extern const u8 gUnknown_81BB156[]; extern const u8 EventScript_FldEffStrength[]; +extern const u8 EventScript_FailSweetScent[]; #endif //GUARD_EVENT_SCRIPTS_H diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index 4871bd082..0e8877dca 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -24,5 +24,6 @@ void sub_805DAE4(u8 direction); void SetPlayerAvatarTransitionFlags(u16 a); bool8 IsPlayerFacingSurfableFishableWater(void); void sub_805D2C0(u8 secondaryId); +u8 GetPlayerAvatarObjectId(void); #endif //GUARD_FIELD_PLAYER_AVATAR_H diff --git a/include/field_weather.h b/include/field_weather.h index 13a1b4fcb..c3ecd4fa6 100644 --- a/include/field_weather.h +++ b/include/field_weather.h @@ -14,5 +14,7 @@ void SetSav1WeatherFromCurrMapHeader(void); void sub_807B0C4(u16 *, u16 *, u32); void PlayRainStoppingSoundEffect(void); bool8 sub_807AA70(void); +void SetWeatherScreenFadeOut(void); +void sub_807B070(void); #endif // GUARD_WEATHER_H diff --git a/include/fldeff.h b/include/fldeff.h index 749b09da7..3f2591516 100644 --- a/include/fldeff.h +++ b/include/fldeff.h @@ -26,5 +26,8 @@ bool8 hm_prepare_dive_probably(void); void sub_80E56DC(u8 taskId); void sub_80E5724(u8 taskId); +// sweetscent +bool8 SetUpFieldMove_SweetScent(void); +bool8 FldEff_SweetScent(void); #endif // GUARD_FLDEFF_H diff --git a/include/palette.h b/include/palette.h index 31c8ffefe..78f398873 100644 --- a/include/palette.h +++ b/include/palette.h @@ -43,7 +43,7 @@ struct PaletteFadeControl extern struct PaletteFadeControl gPaletteFade; extern u32 gPlttBufferTransferPending; -extern u8 gPaletteDecompressionBuffer[]; +extern u8 *gPaletteDecompressionBuffer; extern u16 gPlttBufferUnfaded[PLTT_BUFFER_SIZE]; extern u16 gPlttBufferFaded[PLTT_BUFFER_SIZE]; diff --git a/include/wild_encounter.h b/include/wild_encounter.h index 2ca30ac8b..bf53ed6ee 100644 --- a/include/wild_encounter.h +++ b/include/wild_encounter.h @@ -44,5 +44,6 @@ u16 GetLocalWaterMon(void); bool8 UpdateRepelCounter(void); void sub_8082740(u8); u8 GetUnownLetterByPersonalityLoByte(u32 personality); +bool8 SweetScentWildEncounter(void); #endif // GUARD_WILD_ENCOUNTER_H -- cgit v1.2.3 From b566ae26decaa937c72f608044d8ea604c643260 Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Sat, 29 Jun 2019 08:36:18 +0800 Subject: finished fldeff_dig + fldeff_rocksmash --- include/event_scripts.h | 1 + include/field_map_obj.h | 8 +++++--- include/field_player_avatar.h | 5 ++++- include/fldeff.h | 14 +++++++++++++- include/fldeff_80F9BCC.h | 16 ---------------- include/global.h | 8 +++++++- include/item_use.h | 2 ++ include/overworld.h | 2 +- 8 files changed, 33 insertions(+), 23 deletions(-) delete mode 100644 include/fldeff_80F9BCC.h (limited to 'include') diff --git a/include/event_scripts.h b/include/event_scripts.h index b12539476..917269de4 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -1146,5 +1146,6 @@ extern const u8 gUnknown_81BB156[]; extern const u8 EventScript_FldEffStrength[]; extern const u8 EventScript_FailSweetScent[]; +extern const u8 EventScript_FldEffRockSmash[]; #endif //GUARD_EVENT_SCRIPTS_H diff --git a/include/field_map_obj.h b/include/field_map_obj.h index 27a7f23d7..83cc263e5 100644 --- a/include/field_map_obj.h +++ b/include/field_map_obj.h @@ -76,18 +76,20 @@ u8 GetStepInPlaceDelay32AnimId(u32); u8 npc_block_way(struct MapObject *, s16, s16, u32); void MoveCoords(u8, s16 *, s16 *); bool8 FieldObjectIsSpecialAnimActive(struct MapObject *); -u8 FieldObjectClearAnimIfSpecialAnimFinished(struct MapObject *); +u8 FieldObjectClearHeldMovementIfFinished(struct MapObject *); u8 GetFieldObjectIdByXYZ(u16 x, u16 y, u8 z); void sub_8063E28(struct MapObject *, struct Sprite *); -void sub_8063CA4(struct MapObject *, u8); +void FieldObjectSetHeldMovement(struct MapObject *, u8); void npc_coords_shift_still(struct MapObject *); void sub_805FE7C(struct MapObject *, u8); void npc_set_running_behaviour_etc(struct MapObject *, u8); u8 sub_80634F0(u8 direction); u8 sub_8063500(u8 a0); -void sub_805F060(struct MapObject *mapObject, u8 a1); +void EventObjectSetGraphicsId(struct MapObject *mapObject, u8 a1); u8 sub_805EB44(u8, u8, s16, s16); void npc_paltag_set_load(u8 mode); +bool8 FieldObjectIsMovementOverridden(struct MapObject *mapObject); +u8 FieldObjectCheckHeldMovementStatus(struct MapObject *mapObject); // Exported data declarations diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index 0e8877dca..b87de3fef 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -8,7 +8,7 @@ void SetPlayerAvatarExtraStateTransition(u8, u8); u8 GetPlayerAvatarGenderByGraphicsId(u8); bool8 TestPlayerAvatarFlags(u8); void PlayerGetDestCoords(s16 *, s16 *); -u8 player_get_direction_lower_nybble(void); +u8 GetPlayerFacingDirection(void); u8 player_get_direction_upper_nybble(void); u8 player_get_x22(void); @@ -25,5 +25,8 @@ void SetPlayerAvatarTransitionFlags(u16 a); bool8 IsPlayerFacingSurfableFishableWater(void); void sub_805D2C0(u8 secondaryId); u8 GetPlayerAvatarObjectId(void); +u8 PlayerGetZCoord(void); +u8 GetPlayerAvatarGraphicsIdByCurrentState(void); +void sub_805CB70(void); #endif //GUARD_FIELD_PLAYER_AVATAR_H diff --git a/include/fldeff.h b/include/fldeff.h index 3f2591516..3d4d96e44 100644 --- a/include/fldeff.h +++ b/include/fldeff.h @@ -1,10 +1,22 @@ #ifndef GUARD_FLDEFF_H #define GUARD_FLDEFF_H +extern struct MapPosition gPlayerFacingPosition; + bool8 CheckObjectGraphicsInFrontOfPlayer(u8 graphicsId); u8 oei_task_add(void); -// rock smash +// flash + +// cut + +// dig +bool8 SetUpFieldMove_Dig(void); +bool8 FldEff_UseDig(void); + +// rocksmash +bool8 SetUpFieldMove_RockSmash(void); +bool8 FldEff_UseRockSmash(void); // berrytree void nullsub_56(void); diff --git a/include/fldeff_80F9BCC.h b/include/fldeff_80F9BCC.h deleted file mode 100644 index 411a2501f..000000000 --- a/include/fldeff_80F9BCC.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef GUARD_FLDEFF_80F9BCC_H -#define GUARD_FLDEFF_80F9BCC_H - -#include "global.h" - -// Exported type declarations - -// Exported RAM declarations - -// Exported ROM declarations - -void sub_80FA5E4(s16 id, s16 x, s16 y); -void sub_80FA794(s16 x, s16 y); -void FldEffPoison_Start(void); - -#endif //GUARD_FLDEFF_80F9BCC_H diff --git a/include/global.h b/include/global.h index 12381c6f4..e1f63213a 100644 --- a/include/global.h +++ b/include/global.h @@ -726,8 +726,14 @@ struct SaveBlock1 /*0x3D38*/ struct TrainerTowerLog unkArray[4]; }; -extern struct SaveBlock1* gSaveBlock1Ptr; +struct MapPosition +{ + s16 x; + s16 y; + s8 height; +}; +extern struct SaveBlock1* gSaveBlock1Ptr; extern u8 gReservedSpritePaletteCount; #endif // GUARD_GLOBAL_H diff --git a/include/item_use.h b/include/item_use.h index 0a45762f7..db98533f1 100644 --- a/include/item_use.h +++ b/include/item_use.h @@ -38,5 +38,7 @@ void ItemUseOutOfBattle_EscapeRope(u8 taskId); void ItemUseOutOfBattle_EnigmaBerry(u8 taskId); void ItemUseInBattle_EnigmaBerry(u8 taskId); void ItemUseOutOfBattle_Itemfinder(u8 taskId); +void sub_80A1C44(u8 taskId); +u8 CanUseEscapeRopeOnCurrMap(void); #endif //GUARD_ITEM_USE_H diff --git a/include/overworld.h b/include/overworld.h index c867549f1..bab4797ff 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -114,7 +114,7 @@ void sub_805671C(void); bool8 sub_8055FC4(void); bool8 is_light_level_8_or_9(u8 mapType); bool32 sub_8055C9C(void); -void sub_8054D70(void); +void Overworld_ResetStateAfterDigEscRope(void); bool32 sub_8058244(void); #endif //GUARD_ROM4_H -- cgit v1.2.3 From 3ec40eb8331db302b4c7b75450c19320aad3c010 Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Tue, 2 Jul 2019 06:25:17 +0800 Subject: AdjustBgMosaic documentation upgrade --- include/bg.h | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'include') diff --git a/include/bg.h b/include/bg.h index 48610009d..40c51167f 100644 --- a/include/bg.h +++ b/include/bg.h @@ -25,6 +25,17 @@ enum BG_CTRL_ATTR_WRAPAROUND = 8, }; +enum AdjustBgMosaicMode +{ + BG_MOSAIC_SET, + BG_MOSAIC_SET_H, + BG_MOSAIC_INC_H, + BG_MOSAIC_DEC_H, + BG_MOSAIC_SET_V, + BG_MOSAIC_INC_V, + BG_MOSAIC_DEC_V, +}; + enum BgTileAllocMode { BG_TILE_FIND_FREE_SPACE, -- cgit v1.2.3 From 5384fd020c0e390a677cecfe544529f55d0f0c9f Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Tue, 2 Jul 2019 09:38:28 +0800 Subject: multiple fixes --- include/fldeff.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'include') diff --git a/include/fldeff.h b/include/fldeff.h index 3d4d96e44..38a2b2a5e 100644 --- a/include/fldeff.h +++ b/include/fldeff.h @@ -1,6 +1,10 @@ #ifndef GUARD_FLDEFF_H #define GUARD_FLDEFF_H +#define FLDEFF_SET_FUNC_TO_DATA(func) \ +gTasks[taskId].data[8] = (u32)func >> 16; \ +gTasks[taskId].data[9] = (u32)func; + extern struct MapPosition gPlayerFacingPosition; bool8 CheckObjectGraphicsInFrontOfPlayer(u8 graphicsId); -- cgit v1.2.3 From 062238aa12cb4f54f70b73459ff5b5d775f69a54 Mon Sep 17 00:00:00 2001 From: jiangzhengwenjz Date: Tue, 2 Jul 2019 09:42:18 +0800 Subject: fixed another macro expansion --- include/fldeff.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include') diff --git a/include/fldeff.h b/include/fldeff.h index 38a2b2a5e..e5e7e5f7d 100644 --- a/include/fldeff.h +++ b/include/fldeff.h @@ -1,6 +1,8 @@ #ifndef GUARD_FLDEFF_H #define GUARD_FLDEFF_H +#define FLDEFF_CALL_FUNC_IN_DATA() ((void (*)(void))(((u16)gTasks[taskId].data[8] << 16) | (u16)gTasks[taskId].data[9]))(); + #define FLDEFF_SET_FUNC_TO_DATA(func) \ gTasks[taskId].data[8] = (u32)func >> 16; \ gTasks[taskId].data[9] = (u32)func; -- cgit v1.2.3