summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/event_scripts.h7
-rw-r--r--include/field_fadetransition.h1
-rw-r--r--include/fieldmap.h2
-rw-r--r--include/gba/macro.h31
-rw-r--r--include/help_system.h6
-rw-r--r--include/item_menu.h2
-rw-r--r--include/link_rfu.h1
-rw-r--r--include/load_save.h2
-rw-r--r--include/menu.h2
-rw-r--r--include/new_game.h2
-rw-r--r--include/new_menu_helpers.h8
-rw-r--r--include/option_menu.h6
-rw-r--r--include/overworld.h3
-rw-r--r--include/party_menu.h1
-rw-r--r--include/pokedex_screen.h6
-rw-r--r--include/quest_log.h10
-rw-r--r--include/save.h2
-rw-r--r--include/save_menu_util.h15
-rw-r--r--include/start_menu.h7
-rw-r--r--include/strings.h32
-rw-r--r--include/trainer_card.h3
21 files changed, 131 insertions, 18 deletions
diff --git a/include/event_scripts.h b/include/event_scripts.h
index ce9d0bbf5..99b453c85 100644
--- a/include/event_scripts.h
+++ b/include/event_scripts.h
@@ -1161,4 +1161,11 @@ extern const u8 EventScript_ResetAllMapFlags[];
// player_pc
extern const u8 EventScript_PalletTown_PlayersHouse_2F_ShutDownPC[];
+// start_menu
+extern const u8 gText_WouldYouLikeToSaveTheGame[];
+extern const u8 gText_AlreadySaveFile_WouldLikeToOverwrite[];
+extern const u8 gText_SavingDontTurnOffThePower[];
+extern const u8 gText_PlayerSavedTheGame[];
+extern const u8 gText_DifferentGameFile[];
+
#endif //GUARD_EVENT_SCRIPTS_H
diff --git a/include/field_fadetransition.h b/include/field_fadetransition.h
index fe67fec30..22849a37d 100644
--- a/include/field_fadetransition.h
+++ b/include/field_fadetransition.h
@@ -15,6 +15,7 @@ void sub_807DF64(void);
void sub_807DC18(void);
void FieldCallback_ReturnToEventScript2(void);
void sub_807DC00(void);
+void FadeTransition_FadeInOnReturnToStartMenu(void);
bool32 sub_807E418(void);
diff --git a/include/fieldmap.h b/include/fieldmap.h
index 7bedb1d94..dde05b7ed 100644
--- a/include/fieldmap.h
+++ b/include/fieldmap.h
@@ -26,4 +26,6 @@ u32 GetBehaviorByMetatileIdAndMapData(struct MapData *mapData, u16 metatile, u8
const struct MapHeader * mapconnection_get_mapheader(struct MapConnection * connection);
struct MapConnection * GetMapConnectionAtPos(s16 x, s16 y);
+void save_serialize_map(void);
+
#endif //GUARD_FIELDMAP_H
diff --git a/include/gba/macro.h b/include/gba/macro.h
index c0a4e481b..01bb85b7a 100644
--- a/include/gba/macro.h
+++ b/include/gba/macro.h
@@ -121,10 +121,31 @@
} \
}
+#define DmaFillLarge(dmaNum, value, dest, size, block, bit) \
+{ \
+ void *_dest = (void *)dest; \
+ u32 _size = size; \
+ while (1) \
+ { \
+ DmaFill##bit(dmaNum, value, _dest, (block)); \
+ _dest += (block); \
+ _size -= (block); \
+ if (_size <= (block)) \
+ { \
+ DmaFill##bit(dmaNum, value, _dest, _size); \
+ break; \
+ } \
+ } \
+}
+
#define DmaCopyLarge16(dmaNum, src, dest, size, block) DmaCopyLarge(dmaNum, src, dest, size, block, 16)
#define DmaCopyLarge32(dmaNum, src, dest, size, block) DmaCopyLarge(dmaNum, src, dest, size, block, 32)
+#define DmaFillLarge16(dmaNum, value, dest, size, block) DmaFillLarge(dmaNum, value, dest, size, block, 16)
+
+#define DmaFillLarge32(dmaNum, value, dest, size, block) DmaFillLarge(dmaNum, value, dest, size, block, 32)
+
#define DmaClearLarge16(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 16)
#define DmaClearLarge32(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 32)
@@ -139,4 +160,14 @@
#define DmaCopy16Defvars(dmaNum, src, dest, size) DmaCopyDefvars(dmaNum, src, dest, size, 16)
#define DmaCopy32Defvars(dmaNum, src, dest, size) DmaCopyDefvars(dmaNum, src, dest, size, 32)
+#define DmaFillDefvars(dmaNum, value, dest, size, bit) \
+{ \
+ void *_dest = (void *)dest; \
+ u32 _size = size; \
+ DmaFill##bit(dmaNum, value, _dest, _size); \
+}
+
+#define DmaFill16Defvars(dmaNum, value, dest, size) DmaFillDefvars(dmaNum, value, dest, size, 16)
+#define DmaFill32Defvars(dmaNum, value, dest, size) DmaFillDefvars(dmaNum, value, dest, size, 32)
+
#endif // GUARD_GBA_MACRO_H
diff --git a/include/help_system.h b/include/help_system.h
index ff77d01d6..53dc45014 100644
--- a/include/help_system.h
+++ b/include/help_system.h
@@ -29,7 +29,7 @@ extern bool8 gHelpSystemEnabled;
extern u8 gUnknown_203F175;
// help_system_812B1E0
-void sub_812B1E0(u8);
+void HelpSystem_SetSomeVariable(u8);
void HelpSystem_SetSomeVariable2(u8);
bool8 sub_812B40C(void);
bool8 sub_812B45C(void);
@@ -89,7 +89,7 @@ void HelpSystem_FillPanel3(void);
void PrintListMenuItems(void);
void PlaceListMenuCursor(void);
bool8 MoveCursor(u8 by, u8 dirn);
-void sub_812B234(void);
-void sub_812B248(void);
+void HelpSystem_BackupSomeVariable(void);
+void HelpSystem_RestoreSomeVariable(void);
#endif //GUARD_HELP_SYSTEM_H
diff --git a/include/item_menu.h b/include/item_menu.h
index 83b8d6d15..166906ebe 100644
--- a/include/item_menu.h
+++ b/include/item_menu.h
@@ -28,7 +28,7 @@ void sub_81AAC70(void);
void sub_8108CF0(void);
void sub_81089BC(void);
void sub_810B108(u8);
-void ReturnToBagFromKeyItem(void);
+void CB2_BagMenuFromStartMenu(void);
void ItemMenu_MoveItemSlotToNewPositionInArray(struct ItemSlot * slots, int pos1, int pos2);
void ItemMenu_StartFadeToExitCallback(u8 taskId);
void sub_8108CB4(void);
diff --git a/include/link_rfu.h b/include/link_rfu.h
index 2757e5296..2be9dd3c9 100644
--- a/include/link_rfu.h
+++ b/include/link_rfu.h
@@ -39,5 +39,6 @@ bool32 sub_80FAEF0(void);
bool32 IsRfuRecvQueueEmpty(void);
u32 GetRfuRecvQueueLength(void);
void sub_80F8DC0(void);
+void var_800D_set_xB(void);
#endif //GUARD_LINK_RFU_H
diff --git a/include/load_save.h b/include/load_save.h
index bd33f89c8..2406b5f03 100644
--- a/include/load_save.h
+++ b/include/load_save.h
@@ -26,5 +26,7 @@ void ApplyNewEncryptionKeyToAllEncryptedData(u32 encryptionKey);
void ApplyNewEncryptionKeyToBagItems(u32 encryptionKey);
void ApplyNewEncryptionKeyToWord(u32 * word, u32 encryptionKey);
void ApplyNewEncryptionKeyToHword(u16 * hword, u32 encryptionKey);
+void sav2_gender2_inplace_and_xFE(void);
+void sub_804C1C0(void);
#endif // GUARD_LOAD_SAVE_H
diff --git a/include/menu.h b/include/menu.h
index 6f358d34e..b6d757f85 100644
--- a/include/menu.h
+++ b/include/menu.h
@@ -21,7 +21,7 @@ struct MenuAction
void AddTextPrinterParameterized3(u8 windowId, u8 fontId, u8 x, u8 y, const u8 * color, s8 speed, const u8 * str);
void AddTextPrinterParameterized4(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, const u8 *color, s8 speed, const u8 *str);
void AddTextPrinterParameterized5(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16), u8 letterSpacing, u8 lineSpacing);
-void sub_812E6DC(u8 windowId, const u8 * src, u16 x, u16 y);
+void Menu_PrintFormatIntlPlayerName(u8 windowId, const u8 * src, u16 x, u16 y);
void StartBlendTask(u8 eva_start, u8 evb_start, u8 eva_end, u8 evb_end, u8 ev_step, u8 priority);
bool8 IsBlendTaskActive(void);
u8 sub_812EA78(u16 species, u32 personality, u8 a2);
diff --git a/include/new_game.h b/include/new_game.h
index ed40546ba..bf048718a 100644
--- a/include/new_game.h
+++ b/include/new_game.h
@@ -3,6 +3,8 @@
#include "global.h"
+extern bool8 gDifferentSaveFile;
+
void SetTrainerId(u32 trainerId, u8 *dst);
void CopyTrainerId(u8 *dst, u8 *src);
void NewGameInitData(void);
diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h
index a7555c505..644e65289 100644
--- a/include/new_menu_helpers.h
+++ b/include/new_menu_helpers.h
@@ -26,7 +26,7 @@ u16 AddTextPrinterParameterized2(u8 windowId, u8 fontId, const u8 *str, u8 speed
void AddTextPrinterDiffStyle(bool8 allowSkippingDelayWithButtonPress);
void AddTextPrinterForMessage(bool8 allowSkippingDelayWithButtonPress);
void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonPress, u8 speed);
-void sub_80F6E9C(void);
+void LoadStdWindowFrameGfx(void);
void DrawDialogueFrame(u8 windowId, bool8 transfer);
void DrawStdWindowFrame(u8 windowId, bool8 copyNow);
void ClearDialogWindowAndFrame(u8 windowId, bool8 copyToVram);
@@ -41,12 +41,12 @@ void DisplayItemMessageOnField(u8 taskId, u8 bgId, const u8 *src, TaskFunc callb
void DisplayYesNoMenuDefaultYes(void);
void DisplayYesNoMenuDefaultNo(void);
u8 GetTextSpeedSetting(void);
-u8 sub_80F78E0(u8 height);
+u8 CreateStartMenuWindow(u8 height);
u8 GetStartMenuWindowId(void);
void RemoveStartMenuWindow(void);
u16 GetStdWindowBaseTileNum(void);
-void sub_80F7974(const u8 * text);
-void sub_80F7998(void);
+void DrawHelpMessageWindowWithText(const u8 * text);
+void DestroyHelpMessageWindow_(void);
void sub_80F79A4(void);
void SetDefaultFontsPointer(void);
diff --git a/include/option_menu.h b/include/option_menu.h
new file mode 100644
index 000000000..21a508973
--- /dev/null
+++ b/include/option_menu.h
@@ -0,0 +1,6 @@
+#ifndef GUARD_OPTION_MENU_H
+#define GUARD_OPTION_MENU_H
+
+void CB2_OptionsMenuFromStartMenu(void);
+
+#endif //GUARD_OPTION_MENU_H
diff --git a/include/overworld.h b/include/overworld.h
index d221e88d1..38c213707 100644
--- a/include/overworld.h
+++ b/include/overworld.h
@@ -38,6 +38,7 @@ extern MainCallback gFieldCallback;
extern struct WarpData gUnknown_2031DBC;
extern u8 gUnknown_2031DE0;
+extern u8 gUnknown_300502C;
void IncrementGameStat(u8 index);
@@ -138,4 +139,6 @@ bool32 Overworld_DoScrollSceneForCredits(u8 *, const struct CreditsOverworldCmd
bool32 sub_8058318(void);
+void CB2_ReturnToStartMenu(void);
+
#endif //GUARD_OVERWORLD_H
diff --git a/include/party_menu.h b/include/party_menu.h
index 16dccb6d8..5b9b6e1c4 100644
--- a/include/party_menu.h
+++ b/include/party_menu.h
@@ -83,5 +83,6 @@ void sub_8127EC4(u8 battlerId, u8 unk, u8 arrayIndex);
bool8 IsMultiBattle(void);
void sub_8126EDC(void);
void PartyMenuInit_FromPlayerPc(void);
+void CB2_PartyMenuFromStartMenu(void);
#endif // GUARD_PARTY_MENU_H
diff --git a/include/pokedex_screen.h b/include/pokedex_screen.h
new file mode 100644
index 000000000..8855a47fc
--- /dev/null
+++ b/include/pokedex_screen.h
@@ -0,0 +1,6 @@
+#ifndef GUARD_POKEDEX_SCREEN_H
+#define GUARD_POKEDEX_SCREEN_H
+
+void CB2_OpenPokedexFromStartMenu(void);
+
+#endif //GUARD_POKEDEX_SCREEN_H
diff --git a/include/quest_log.h b/include/quest_log.h
index 8a2816c74..d3ccbe3da 100644
--- a/include/quest_log.h
+++ b/include/quest_log.h
@@ -28,14 +28,18 @@ 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 DestroyHelpMessageWindow(u8 a0);
+u8 CreateHelpMessageWindow(void);
+void PrintTextOnHelpMessageWindow(const u8 * text, u8 mode);
void MapNamePopupWindowIdSetDummy(void);
void sub_8111CF0(void);
void sub_811089C(void);
void sub_8113044(void);
void TrySetUpQuestLogScenes_ElseContinueFromSave(u8 taskId);
+void sub_8112450(void);
+void sub_8112364(void);
+u8 sub_8112CAC(void);
+void sub_81138F8(void);
extern u8 gUnknown_203ADFA;
diff --git a/include/save.h b/include/save.h
index 7a74373c8..41d2ec666 100644
--- a/include/save.h
+++ b/include/save.h
@@ -84,7 +84,7 @@ extern u16 gSaveUnusedVar;
extern u16 gSaveFileStatus;
extern void (*gGameContinueCallback)(void);
extern struct SaveBlockChunk gRamSaveSectionLocations[0xE];
-extern u16 gUnknown_3005420;
+extern u16 gSaveSucceeded;
extern struct SaveSection gSaveDataBuffer;
diff --git a/include/save_menu_util.h b/include/save_menu_util.h
new file mode 100644
index 000000000..f2a18a777
--- /dev/null
+++ b/include/save_menu_util.h
@@ -0,0 +1,15 @@
+#ifndef GUARD_SAVE_MENU_UTIL_H
+#define GUARD_SAVE_MENU_UTIL_H
+
+enum SaveStat
+{
+ SAVE_STAT_NAME = 0,
+ SAVE_STAT_POKEDEX,
+ SAVE_STAT_TIME,
+ SAVE_STAT_LOCATION,
+ SAVE_STAT_BADGES
+};
+
+void SaveStatToString(u8 a0, u8 *a1, u8 a2);
+
+#endif //GUARD_SAVE_MENU_UTIL_H
diff --git a/include/start_menu.h b/include/start_menu.h
index c4a3ce19d..90fe7109a 100644
--- a/include/start_menu.h
+++ b/include/start_menu.h
@@ -4,7 +4,10 @@
#include "global.h"
void AppendToList(u8* list, u8* pos, u8 newEntry);
-void sub_806F1F0(u8 taskId);
-void sub_806F1D4(void);
+void Task_StartMenuHandleInput(u8 taskId);
+void SetUpReturnToStartMenu(void);
+void ShowStartMenu(void);
+void Field_AskSaveTheGame(void);
+void CB2_SetUpSaveAfterLinkBattle(void);
#endif // GUARD_START_MENU_H
diff --git a/include/strings.h b/include/strings.h
index d6608812f..2c2756eb5 100644
--- a/include/strings.h
+++ b/include/strings.h
@@ -77,8 +77,8 @@ extern const u8 gText_Ferry[];
extern const u8 gText_SecretBase[];
extern const u8 gText_Hideout[];
extern const u8 gText_FlyToWhere[];
-extern const u8 gText_PokemonLeague[];
-extern const u8 gText_PokemonCenter[];
+extern const u8 gStartMenuText_PokemonLeague[];
+extern const u8 gStartMenuText_PokemonCenter[];
extern const u8 gText_ApostropheSBase[];
extern const u8 gText_NoRegistry[];
extern const u8 gText_OkayToDeleteFromRegistry[];
@@ -90,7 +90,7 @@ extern const u8 gText_IsThisTheCorrectTime[];
extern const u8 gText_PkmnFainted3[];
extern const u8 gText_Coins[];
extern const u8 gText_EggNickname[];
-extern const u8 gText_Pokemon[];
+extern const u8 gStartMenuText_Pokemon[];
extern const u8 gText_PkmnFainted3[];
extern const u8 gOtherText_Use[];
@@ -446,4 +446,30 @@ extern const u8 gText_MessageWillBeLost[];
extern const u8 gText_BagIsFull[];
extern const u8 gText_MailReturnedToBagMessageErased[];
+// start_menu
+extern const u8 gStartMenuText_Pokedex[];
+extern const u8 gStartMenuText_Pokemon[];
+extern const u8 gStartMenuText_Bag[];
+extern const u8 gStartMenuText_Player[];
+extern const u8 gStartMenuText_Save[];
+extern const u8 gStartMenuText_Option[];
+extern const u8 gStartMenuText_Exit[];
+extern const u8 gStartMenuText_Retire[];
+extern const u8 gUnknown_84162A9[];
+extern const u8 gStartMenuDesc_Pokedex[];
+extern const u8 gStartMenuDesc_Pokemon[];
+extern const u8 gStartMenuDesc_Bag[];
+extern const u8 gStartMenuDesc_Player[];
+extern const u8 gStartMenuDesc_Save[];
+extern const u8 gStartMenuDesc_Option[];
+extern const u8 gStartMenuDesc_Exit[];
+extern const u8 gStartMenuDesc_Retire[];
+extern const u8 gStartMenuDesc_Player[];
+extern const u8 gText_SaveError_PleaseExchangeBackupMemory[];
+extern const u8 gText_SavingDontTurnOffThePower2[];
+extern const u8 gSaveStatName_Player[];
+extern const u8 gSaveStatName_Badges[];
+extern const u8 gSaveStatName_Pokedex[];
+extern const u8 gSaveStatName_Time[];
+
#endif //GUARD_STRINGS_H
diff --git a/include/trainer_card.h b/include/trainer_card.h
index e8531cef5..b38754988 100644
--- a/include/trainer_card.h
+++ b/include/trainer_card.h
@@ -40,4 +40,7 @@ struct TrainerCard
extern struct TrainerCard gTrainerCards[4];
+void InitTrainerCard(MainCallback callback);
+void InitLinkPartnerTrainerCard(u8 whoseCard, MainCallback callback);
+
#endif //GUARD_TRAINER_CARD_H