diff options
Diffstat (limited to 'include')
-rw-r--r--[-rwxr-xr-x] | include/battle.h | 0 | ||||
-rw-r--r-- | include/battle_records.h | 5 | ||||
-rw-r--r--[-rwxr-xr-x] | include/decoration.h | 13 | ||||
-rw-r--r-- | include/decoration_inventory.h | 2 | ||||
-rw-r--r-- | include/field_effect.h | 2 | ||||
-rw-r--r-- | include/flags.h | 24 | ||||
-rw-r--r-- | include/global.fieldmap.h | 2 | ||||
-rw-r--r-- | include/global.h | 34 | ||||
-rw-r--r-- | include/graphics.h | 15 | ||||
-rw-r--r-- | include/item.h | 6 | ||||
-rw-r--r-- | include/item_use.h | 25 | ||||
-rw-r--r--[-rwxr-xr-x] | include/menu.h | 4 | ||||
-rw-r--r--[-rwxr-xr-x] | include/menu_helpers.h | 23 | ||||
-rw-r--r--[-rwxr-xr-x] | include/pokeblock.h | 0 | ||||
-rw-r--r--[-rwxr-xr-x] | include/pokemon.h | 0 | ||||
-rw-r--r-- | include/pokemon_menu.h | 1 | ||||
-rw-r--r--[-rwxr-xr-x] | include/pokenav.h | 0 | ||||
-rw-r--r-- | include/record_mixing.h | 10 | ||||
-rw-r--r--[-rwxr-xr-x] | include/region_map.h | 73 | ||||
-rw-r--r-- | include/rom4.h | 6 | ||||
-rw-r--r-- | include/save.h | 2 | ||||
-rw-r--r-- | include/secret_base.h | 1 | ||||
-rw-r--r--[-rwxr-xr-x] | include/strings.h | 0 | ||||
-rw-r--r-- | include/text.h | 2 | ||||
-rw-r--r-- | include/trainer_card.h | 16 | ||||
-rw-r--r--[-rwxr-xr-x] | include/use_pokeblock.h | 0 | ||||
-rw-r--r--[-rwxr-xr-x] | include/vars.h | 1 |
27 files changed, 203 insertions, 64 deletions
diff --git a/include/battle.h b/include/battle.h index d4cb53689..d4cb53689 100755..100644 --- a/include/battle.h +++ b/include/battle.h diff --git a/include/battle_records.h b/include/battle_records.h index f0c1a101b..ac6c3cbdb 100644 --- a/include/battle_records.h +++ b/include/battle_records.h @@ -2,7 +2,8 @@ #define GUARD_BATTLE_RECORDS_H void InitLinkBattleRecords(void); -void PrintLinkBattleWinsLossesDraws(void *); -void PrintLinkBattleRecord(void *, u8); +void UpdateLinkBattleRecords(int id); +void ShowLinkBattleRecords(void); +void ShowBattleTowerRecords(void); #endif // GUARD_BATTLE_RECORDS_H diff --git a/include/decoration.h b/include/decoration.h index 7a6d8ef5a..2e72e305a 100755..100644 --- a/include/decoration.h +++ b/include/decoration.h @@ -289,16 +289,6 @@ extern u8 sub_8134194(u8); // src/decoration_inventory extern bool8 sub_81341D4(void); // src/decoration_inventory extern void sub_8134104(u8); // src/decoration_inventory extern bool8 sub_807D770(void); -extern void sub_80F944C(void); // src/menu_helpers -extern void sub_80F9480(u8 *, u8); // src/menu_helpers -extern void sub_80F94A4(u8, u8 *, u8, s16); // src/menu_helpers -extern void sub_80F94F8(u8 *); // src/menu_helpers -extern void sub_80F9520(u8 *, u8); // src/menu_helpers -extern void DestroyVerticalScrollIndicator(u8); // src/menu_helpers -extern void CreateVerticalScrollIndicators(u8, u8, u8); // src/menu_helpers -extern void LoadScrollIndicatorPalette(void); // src/menu_helpers -extern void DisplayItemMessageOnField(u8, const u8 *, TaskFunc, u16); // src/menu_helpers -extern void BuyMenuFreeMemory(void); // src/menu_helpers extern void sub_8109DAC(u8); // src/trader extern void ReshowPlayerPC(u8); // src/player_pc @@ -310,6 +300,8 @@ void sub_80FE5AC(u8); void sub_80FE604(u8); void sub_80FE728(u8); void sub_80FE758(u8); +void sub_80FE7A8(u8); +void sub_80FE7D4(u8 *, u8); void sub_80FE868(u8); void sub_80FE948(u8); void sub_80FEABC(u8, u8); @@ -317,6 +309,7 @@ void sub_80FEC94(u8); void sub_80FECB8(u8); void sub_80FECE0(u8); void sub_80FEF50(u8); +bool8 sub_80FEFA4(void); void sub_80FF394(u16, u16, u16); void sub_80FF6AC(u8); void sub_80FF960(u8); diff --git a/include/decoration_inventory.h b/include/decoration_inventory.h index afc354237..e59a23008 100644 --- a/include/decoration_inventory.h +++ b/include/decoration_inventory.h @@ -2,9 +2,11 @@ #define GUARD_DECORATION_INVENTORY_H void ClearDecorationInventories(void); +s8 sub_8133F9C(u8); u8 sub_8133FE4(u8); u8 IsThereStorageSpaceForDecoration(u8); u8 sub_8134074(u8); s8 sub_81340A8(u8); +u8 sub_8134194(u8); #endif // GUARD_DECORATION_INVENTORY_H diff --git a/include/field_effect.h b/include/field_effect.h index 294844b3e..bf80ca0dc 100644 --- a/include/field_effect.h +++ b/include/field_effect.h @@ -109,6 +109,8 @@ void SpriteCB_PokeballGlow(struct Sprite *); void SpriteCB_PokecenterMonitor(struct Sprite *); void SpriteCB_HallOfFameMonitor(struct Sprite *); +void sub_80865BC(void); + void PokecenterHealEffect_0(struct Task *); void PokecenterHealEffect_1(struct Task *); void PokecenterHealEffect_2(struct Task *); diff --git a/include/flags.h b/include/flags.h index 0e408a833..a60de6ea0 100644 --- a/include/flags.h +++ b/include/flags.h @@ -22,6 +22,24 @@ #define BADGE07_GET 0x80D #define BADGE08_GET 0x80E +// cities and towns +#define FLAG_VISITED_LITTLEROOT_TOWN 0x80F +#define FLAG_VISITED_OLDALE_TOWN 0x810 +#define FLAG_VISITED_DEWFORD_TOWN 0x811 +#define FLAG_VISITED_LAVARIDGE_TOWN 0x812 +#define FLAG_VISITED_FALLARBOR_TOWN 0x813 +#define FLAG_VISITED_VERDANTURF_TOWN 0x814 +#define FLAG_VISITED_PACIFIDLOG_TOWN 0x815 +#define FLAG_VISITED_PETALBURG_CITY 0x816 +#define FLAG_VISITED_SLATEPORT_CITY 0x817 +#define FLAG_VISITED_MAUVILLE_CITY 0x818 +#define FLAG_VISITED_RUSTBORO_CITY 0x819 +#define FLAG_VISITED_FORTREE_CITY 0x81A +#define FLAG_VISITED_LILYCOVE_CITY 0x81B +#define FLAG_VISITED_MOSSDEEP_CITY 0x81C +#define FLAG_VISITED_SOOTOPOLIS_CITY 0x81D +#define FLAG_VISITED_EVER_GRANDE_CITY 0x81E + #define SYS_USE_FLASH 0x828 #define SYS_USE_STRENGTH 0x829 #define SYS_WEATHER_CTRL 0x82A @@ -42,6 +60,9 @@ #define SYS_SHOAL_TIDE 0x83A #define SYS_RIBBON_GET 0x83B +#define FLAG_UNLOCK_BATTLE_TOWER 0x848 +#define FLAG_UNLOCK_SOUTHERN_ISLAND 0x849 + #define SYS_PC_LANETTE 0x84B #define SYS_EXDATA_ENABLE 0x84C #define SYS_ENC_UP_ITEM 0x84D @@ -50,6 +71,9 @@ #define SYS_BRAILLE_STRENGTH 0x850 #define SYS_BRAILLE_WAIT 0x851 #define SYS_BRAILLE_FLY 0x852 +#define SYS_HAS_EON_TICKET 0x853 + +#define SYS_POKEMON_LEAGUE_FLY 0x854 #define SYS_TV_LATI 0x85D diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 7589de029..4029132e8 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -166,7 +166,7 @@ struct MapHeader /* 0x0C */ struct MapConnections *connections; /* 0x10 */ u16 music; /* 0x12 */ u16 mapDataId; - /* 0x14 */ u8 name; + /* 0x14 */ u8 regionMapSectionId; /* 0x15 */ u8 cave; /* 0x16 */ u8 weather; /* 0x17 */ u8 mapType; diff --git a/include/global.h b/include/global.h index 4d20ea4fc..73f73093d 100644 --- a/include/global.h +++ b/include/global.h @@ -469,10 +469,20 @@ struct UnkMauvilleOldManStruct2 u8 fillerF[0x2]; }; /*size = 0x2C*/ +struct MauvilleOldManTrader +{ + u8 unk0; + u8 unk1[4]; + u8 unk5[4][11]; + u8 unk31; +}; + typedef union OldMan { struct UnkMauvilleOldManStruct oldMan1; struct UnkMauvilleOldManStruct2 oldMan2; + struct MauvilleOldManTrader trader; + u8 filler[0x40]; } OldMan; struct Unk_SB_Access_Struct1 @@ -526,7 +536,9 @@ struct GabbyAndTyData struct RecordMixing_UnknownStructSub { - u8 data[0x38]; + u32 unk0; + u8 data[0x34]; + //u8 data[0x38]; }; struct RecordMixing_UnknownStruct @@ -536,6 +548,15 @@ struct RecordMixing_UnknownStruct u16 unk74[0x2]; }; +struct LinkBattleRecord +{ + u8 name[8]; + u16 trainerId; + u16 wins; + u16 losses; + u16 draws; +}; + struct SaveBlock1 /* 0x02025734 */ { /*0x00*/ struct Coords16 pos; @@ -606,7 +627,6 @@ struct SaveBlock1 /* 0x02025734 */ /*0x2D8C*/ u8 unk2D8C[4]; /*0x2D90*/ u8 filler_2D90[0x4]; /*0x2D94*/ OldMan oldMan; - /*0x2DC0*/ u8 unk_2DC0[0x14]; /*0x2DD4*/ struct EasyChatPair easyChatPairs[5]; //Dewford trend [0] and some other stuff /*0x2DFC*/ u8 filler_2DFC[0x8]; /*0x2E04*/ SB_Struct sbStruct; @@ -615,7 +635,7 @@ struct SaveBlock1 /* 0x02025734 */ /*0x30AC*/ u8 filler_30B4[0x2]; /*0x30B6*/ u8 filler_30B6; /*0x30B7*/ u8 filler_30B7[1]; - /*0x30B8*/ u8 linkBattleRecords[5][16]; + /*0x30B8*/ struct LinkBattleRecord linkBattleRecords[5]; /*0x3108*/ u8 filler_3108[8]; /*0x3110*/ u8 giftRibbons[7]; /*0x3117*/ u8 filler_311B[0x2D]; @@ -657,16 +677,16 @@ struct SaveBlock2_Sub /*0x03DC, 0x0484*/ u8 filler_3DC[0xD0]; /*0x04AC, 0x0554*/ u8 var_4AC; /*0x04AD, 0x0555*/ u8 var_4AD; - /*0x04AE, 0x0556*/ u8 var_4AE; - /*0x04AF, 0x0557*/ u8 var_4AF; + /*0x04AE, 0x0556*/ u8 var_4AE[2]; /*0x04B0, 0x0558*/ u16 var_4B0; /*0x04B2, 0x055A*/ u16 var_4B2; /*0x04B4, 0x055C*/ u16 var_4B4; /*0x04B6, 0x055E*/ u16 var_4B6; - /*0x04B8, 0x0560*/ u8 filler_4B8[0x10]; + /*0x04B8, 0x0560*/ u16 recordWinStreak[2]; + /*0x04BC, 0x0564*/ u8 filler_4BC[0xC]; /*0x04C8, 0x0570*/ u16 var_4C8; /*0x04CA, 0x0572*/ u16 var_4CA; - /*0x04CC, 0x0574*/ u8 filler_4CC[4]; + /*0x04CC, 0x0574*/ u16 winStreak[2]; /*0x04D0, 0x0578*/ u8 var_4D0; /*0x04D1, 0x0579*/ u8 filler_4D1[0x317]; }; diff --git a/include/graphics.h b/include/graphics.h index fb9781147..5632cb831 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -2435,6 +2435,10 @@ extern const u8 gMonFrontPic_UnownQuestionMark[]; extern const u8 gMonBackPic_UnownQuestionMark[]; extern const u8 gMonIcon_UnownQuestionMark[]; +extern const u8 gMonIcon_QuestionMark[]; +extern const u8 gMonIcon_Egg[]; +extern const u16 gMonIconPalettes[][16]; + // data/graphics.s extern const u8 gBagMaleTiles[]; extern const u8 gBagFemaleTiles[]; @@ -2549,4 +2553,15 @@ extern const u8 gBerryPalette_Enigma[]; extern const u8 gUnknown_08E96EC8[]; +extern const u8 gMenuTrainerCard_Gfx[]; +extern const u16 gMenuTrainerCard0Star_Pal[]; +extern const u16 gMenuTrainerCard1Star_Pal[]; +extern const u16 gMenuTrainerCard2Star_Pal[]; +extern const u16 gMenuTrainerCard3Star_Pal[]; +extern const u16 gMenuTrainerCard4Star_Pal[]; +extern const u8 gUnknown_08E8CAC0[]; +extern const u8 gUnknown_08E8CFC0[]; +extern const u8 gUnknown_08E8D4C0[]; +extern const u8 gUnknown_08E8D9C0[]; + #endif // GUARD_GRAPHICS_H diff --git a/include/item.h b/include/item.h index 80a460caa..8f6cc883b 100644 --- a/include/item.h +++ b/include/item.h @@ -11,7 +11,7 @@ struct Item u16 price; u8 holdEffect; u8 holdEffectParam; - u8 *description; + const u8 *description; u8 importance; u8 unk19; u8 pocket; @@ -45,12 +45,12 @@ bool8 CheckPCHasItem(u16 itemId, u16 count); bool8 AddPCItem(u16 itemId, u16 count); void RemovePCItem(u8 index, u16 count); void SwapRegisteredBike(void); -struct Item *ItemId_GetItem(u16 itemId); +const struct Item *ItemId_GetItem(u16 itemId); u16 ItemId_GetId(u16 itemId); u16 ItemId_GetPrice(u16 itemId); u8 ItemId_GetHoldEffect(u16 itemId); u8 ItemId_GetHoldEffectParam(u16 itemId); -u8 *ItemId_GetDescription(u16 itemId); +const u8 *ItemId_GetDescription(u16 itemId); bool32 ItemId_CopyDescription(u8 *a, u32 itemId, u32 c); u8 ItemId_GetImportance(u16 itemId); u8 ItemId_GetUnknownValue(u16 itemId); diff --git a/include/item_use.h b/include/item_use.h index 61a3b4f7a..1558f7691 100644 --- a/include/item_use.h +++ b/include/item_use.h @@ -3,28 +3,51 @@ extern u16 gScriptItemId; +void ItemUseOutOfBattle_Mail(u8); +void ItemUseOutOfBattle_Bike(u8); void ItemUseOnFieldCB_Bike(u8); +void ItemUseOutOfBattle_Rod(u8); void ItemUseOnFieldCB_Rod(u8); +void ItemUseOutOfBattle_Itemfinder(u8); void ItemUseOnFieldCB_Itemfinder(u8); void RunItemfinderResults(u8); void ExitItemfinder(u8); -bool8 ItemfinderCheckForHiddenItems(struct MapEvents *events, u8 taskId); +bool8 ItemfinderCheckForHiddenItems(struct MapEvents *, u8); void sub_80C9720(u8); void sub_80C9838(u8, s16, s16); u8 GetPlayerDirectionTowardsHiddenItem(s16, s16); void SetPlayerDirectionTowardsItem(u8); void DisplayItemRespondingMessageAndExitItemfinder(u8); void RotatePlayerAndExitItemfinder(u8); +void ItemUseOutOfBattle_PokeblockCase(u8); +void ItemUseOutOfBattle_CoinCase(u8); +void ItemUseOutOfBattle_SSTicket(u8); void sub_80C9D00(u8); +void ItemUseOutOfBattle_WailmerPail(u8); void sub_80C9D74(u8); +void ItemUseOutOfBattle_Medicine(u8); +void ItemUseOutOfBattle_SacredAsh(u8); +void ItemUseOutOfBattle_PPRecovery(u8); +void ItemUseOutOfBattle_PPUp(u8); +void ItemUseOutOfBattle_RareCandy(u8); void ItemUseOutOfBattle_TMHM(u8); void sub_80C9EE4(u8); void sub_80C9F10(u8); void sub_80C9F80(u8); void sub_80C9FC0(u8); +void ItemUseOutOfBattle_Repel(u8); +void ItemUseOutOfBattle_BlackWhiteFlute(u8); void task08_080A1C44(u8); u8 sub_80CA1C8(void); +void ItemUseOutOfBattle_EscapeRope(u8); void ItemUseOutOfBattle_EvolutionStone(u8); +void ItemUseInBattle_PokeBall(u8); +void ItemUseInBattle_StatIncrease(u8); +void ItemUseInBattle_Medicine(u8); +void ItemUseInBattle_PPRecovery(u8); +void ItemUseInBattle_Escape(u8); +void ItemUseOutOfBattle_EnigmaBerry(u8); +void ItemUseInBattle_EnigmaBerry(u8); void ItemUseOutOfBattle_CannotUse(u8); #endif // GUARD_ITEM_USE_H diff --git a/include/menu.h b/include/menu.h index 9b48ab79b..e1bb4f1e4 100755..100644 --- a/include/menu.h +++ b/include/menu.h @@ -38,7 +38,7 @@ void MenuFillWindowRectWithBlankTile(u8, u8, u8, u8); void MenuZeroFillScreen(void); void MenuDrawTextWindow(u8, u8, u8, u8); void sub_8071F40(const u8 *); -void sub_8071F60(u8, u8, u8, u8); +void sub_8071F60(u8, u8, u8); u16 unref_sub_8071F98(u8, u8); void unref_sub_8071FBC(u16, u8, u8, u8, u8); void MenuDisplayMessageBox(void); @@ -67,7 +67,7 @@ u8 MenuPrint_PixelCoords(const u8 *, u8, u16, u8); u8 sub_8072A18(const u8 *, u8, u16, u8, u32); u8 unref_sub_8072A5C(u8 *, u8 *, u8, u16, u8, u32); int sub_8072AB0(const u8 *, u8, u16, u8, u8, u32); -void MenuPrint_RightAligned(u8 *, u8, u8); +void MenuPrint_RightAligned(const u8 *, u8, u8); void sub_8072B80(const u8 *, u8, u8, const u8 *); void sub_8072BD8(const u8 *, u8, u8, u16); u8 *sub_8072C14(u8 *, s32, u8, u8); diff --git a/include/menu_helpers.h b/include/menu_helpers.h index 1df5053e7..993d698bd 100755..100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -9,22 +9,31 @@ struct YesNoFuncTable void (*noFunc)(u8); }; +void sub_80F9020(void); +void DisplayItemMessageOnField(u8, const u8 *, TaskFunc, u16); void DoYesNoFuncWithChoice(u8, const struct YesNoFuncTable *); void sub_80F914C(u8, const struct YesNoFuncTable *); -void DisplayItemMessageOnField(u8, const u8 *, TaskFunc, u16); +u8 sub_80F9284(void); +u8 sub_80F92BC(void); +bool8 sub_80F92F4(u16); +bool8 sub_80F931C(u16); bool8 sub_80F9344(void); -u8 sub_80F9344(void); void sub_80F9368(void); void sub_80F9438(void); void sub_80F944C(void); -void CreateVerticalScrollIndicators(u8, u8, u8); // include/decoration.h -void sub_80F979C(u32, u32); // unknown args +void sub_80F9480(u8 *, u8); +void sub_80F94A4(u8, u8 *, s16, s16); +void sub_80F94F8(u8 *); +void sub_80F9520(u8 *, u8); +void CreateVerticalScrollIndicators(u8, u16, u16); +void sub_80F979C(u8, bool8); void DestroyVerticalScrollIndicator(u8); -void BuyMenuFreeMemory(void); -void sub_80F98DC(int); -void sub_80F996C(u8); void LoadScrollIndicatorPalette(void); +void BuyMenuFreeMemory(void); void sub_80F98A4(u8); void StartVerticalScrollIndicators(u8); +void sub_80F98DC(u8); +void PauseVerticalScrollIndicator(u8); +void sub_80F9988(u8, u8); #endif // GUARD_MENU_HELPERS_H diff --git a/include/pokeblock.h b/include/pokeblock.h index 0d8e965e4..0d8e965e4 100755..100644 --- a/include/pokeblock.h +++ b/include/pokeblock.h diff --git a/include/pokemon.h b/include/pokemon.h index c69fb87e0..c69fb87e0 100755..100644 --- a/include/pokemon.h +++ b/include/pokemon.h diff --git a/include/pokemon_menu.h b/include/pokemon_menu.h index d22dbb708..fc43a44c6 100644 --- a/include/pokemon_menu.h +++ b/include/pokemon_menu.h @@ -6,6 +6,7 @@ void sub_808A004(); void sub_808AB90(void); void sub_808AB90(void); // unknown args void sub_808AB90(void); +void sub_808AD58(void); void sub_808B020(void); void sub_808B0C0(u8); void sub_808B508(u8); diff --git a/include/pokenav.h b/include/pokenav.h index 70cc4135f..70cc4135f 100755..100644 --- a/include/pokenav.h +++ b/include/pokenav.h diff --git a/include/record_mixing.h b/include/record_mixing.h index 103f5ad64..ca60b04a7 100644 --- a/include/record_mixing.h +++ b/include/record_mixing.h @@ -14,8 +14,8 @@ void Task_RecordMixing_CopyReceiveBuffer(u8 taskId); void sub_80B99B4(u8 taskId); void Task_RecordMixing_ReceivePacket(u8 taskId); void Task_RecordMixing_SendPacket_SwitchToReceive(u8 taskId); -void *LoadPtrFromTaskData(u16 *ptr); -void StorePtrInTaskData(void *ptr, u16 *data); +void *LoadPtrFromTaskData(u16 *); +void StorePtrInTaskData(void *, u16 *); u8 GetMultiplayerId_(void); u16 *GetPlayerRecvBuffer(u8 player); void sub_80B9A78(void); @@ -23,12 +23,12 @@ void sub_80B9A88(u8 *a); void sub_80B9B1C(u8 *a, size_t size, u8 index); void sub_80B9B70(u8 *a, size_t size, u8 index); u8 sub_80B9BBC(u16 *a); -void sub_80B9BC4(struct RecordMixing_UnknownStruct *, size_t, u8 [][2], u8, u8); +void sub_80B9BC4(u8 *, size_t, u8[][2], u8 d, u8 e); u8 sub_80B9C4C(u8 *a); // ASM -void sub_80B9C6C(struct RecordMixing_UnknownStruct *, u32, u8, void *); -void sub_80B9F3C(void *, u8); +void sub_80B9C6C(u8 *, u32, u8, void *); +void sub_80B9F3C(u16 *, u8); void sub_80BA00C(u8); #endif // GUARD_RECORD_MIXING_H diff --git a/include/region_map.h b/include/region_map.h index 6dfa4dcf0..3d970fa0a 100755..100644 --- a/include/region_map.h +++ b/include/region_map.h @@ -1,13 +1,72 @@ #ifndef GUARD_REGION_MAP_H #define GUARD_REGION_MAP_H -void sub_80FA8EC(u32, u8); -void sub_80FAB10(void); +struct RegionMap +{ + u8 mapSecName[0x14]; + u16 mapSecId; + u8 unk16; + u8 everGrandeCityArea; + u8 (*inputCallback)(void); + struct Sprite *cursorSprite; + struct Sprite *playerIconSprite; + s32 bg2x; + s32 bg2y; + u32 unk2C; // + u32 unk30; // Map rotation parameters + u32 unk34; // Likely a scrapped feature + u32 unk38; // + s32 unk3C; + s32 unk40; + s32 unk44; + s32 unk48; + s32 unk4C; + s32 unk50; + u16 cursorPosX; + u16 cursorPosY; + u16 cursorTileTag; + u16 cursorPaletteTag; + s16 scrollX; + s16 scrollY; + s16 unk60; + s16 unk62; + u16 unk64; + u16 unk66; + u16 unk68; + u16 unk6A; + u16 unk6C; + u16 unk6E; + u16 playerIconTileTag; + u16 playerIconPaletteTag; + u16 unk74; + u16 unk76; + bool8 zoomed; + u8 initStep; + s8 unk7A; + s8 cursorDeltaX; + s8 cursorDeltaY; + bool8 needUpdateVideoRegs; + bool8 blinkPlayerIcon; + bool8 playerIsInCave; + /*0x080*/ u8 filler80[0x100]; + /*0x180*/ u8 cursorSmallImage[0x100]; + /*0x280*/ u8 cursorLargeImage[0x600]; +}; + +void InitRegionMap(struct RegionMap *regionMap, bool8 zoomed); +void sub_80FA904(struct RegionMap *regionMap, bool8 zoomed); +bool8 sub_80FA940(void); +void FreeRegionMapIconResources(void); u8 sub_80FAB60(void); -void sub_80FBB3C(u16, u16); -void sub_80FBCF0(u32, u8); -void sub_80FBFB4(u8 *str, u16 region, u8); -void CopyMapName(); -u8 *CopyLocationName(u8 *dest, u8 location); +void sub_80FAEC4(void); +u8 sub_80FAFC0(void); +void UpdateRegionMapVideoRegs(void); +void sub_80FB2A4(s16, s16); +u16 sub_80FBA04(u16 mapSecId); +void CreateRegionMapCursor(u16, u16); +void CreateRegionMapPlayerIcon(u16, u16); +const u8 *GetMapSectionName(u8 *dest, u16 mapSecId, u16 length); +const u8 *CopyMapName(u8 *dest, u16 b); +const u8 *CopyLocationName(u8 *dest, u16 b); #endif // GUARD_REGION_MAP_H diff --git a/include/rom4.h b/include/rom4.h index 803a38162..fabd25302 100644 --- a/include/rom4.h +++ b/include/rom4.h @@ -55,7 +55,7 @@ void warp1_set_2(s8 mapGroup, s8 mapNum, s8 warpId); void saved_warp2_set(int unused, s8 mapGroup, s8 mapNum, s8 warpId); void saved_warp2_set_2(int unused, s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); void copy_saved_warp2_bank_and_enter_x_to_warp1(u8 unused); -// sub_8053538 +void sub_8053538(u8); void sub_8053570(void); void sub_8053588(u8); void sub_80535C4(s16 a1, s16 a2); @@ -100,8 +100,8 @@ void sub_8053F84(void); void sub_8053FB0(u16); // is_warp1_light_level_8_or_9 // sub_8053FF8 -// sub_8054034 -// sub_8054044 +bool8 sub_8054034(void); +void sub_8054044(void); // sub_8054050 void sub_80540D0(s16 *, u16 *); void sub_8054164(void); diff --git a/include/save.h b/include/save.h index 3feaa1f3d..6c47c6f60 100644 --- a/include/save.h +++ b/include/save.h @@ -74,7 +74,7 @@ bool8 sub_8125DA8(void); u8 sub_8125DDC(void); u8 sub_8125E04(void); u8 sub_8125E2C(void); -u8 sub_8125E6C(void); +bool8 sub_8125E6C(void); u8 sub_8125EC8(u8 a1); bool8 unref_sub_8125F4C(struct UnkSaveSection *a1); u8 unref_sub_8125FA0(void); diff --git a/include/secret_base.h b/include/secret_base.h index 3ea75ce27..bb747bb02 100644 --- a/include/secret_base.h +++ b/include/secret_base.h @@ -7,6 +7,7 @@ u8 sub_80BBB24(void); void sub_80BBCCC(u8); void sub_80BC038(); u8 sub_80BC050(); +u8 *GetSecretBaseMapName(u8 *); void sub_80BC300(); const u8 sub_80BCCA4(u8); u8 *sub_80BCCE8(void); diff --git a/include/strings.h b/include/strings.h index fe9cfc6ba..fe9cfc6ba 100755..100644 --- a/include/strings.h +++ b/include/strings.h diff --git a/include/text.h b/include/text.h index e9e8eb8c2..99987d2c3 100644 --- a/include/text.h +++ b/include/text.h @@ -66,6 +66,8 @@ #define CHAR_y 0xED #define CHAR_z 0xEE #define CHAR_COLON 0xF0 +#define CHAR_PROMPT_SCROLL 0xFA // waits for button press and scrolls dialog +#define CHAR_PROMPT_CLEAR 0xFB // waits for button press and clears dialog #define EXT_CTRL_CODE_BEGIN 0xFC // extended control code #define PLACEHOLDER_BEGIN 0xFD // string placeholder #define CHAR_NEWLINE 0xFE diff --git a/include/trainer_card.h b/include/trainer_card.h index bd0c808dd..b9d3ca081 100644 --- a/include/trainer_card.h +++ b/include/trainer_card.h @@ -33,20 +33,6 @@ void sub_8093130(u8, void (*)(void)); void sub_8093390(struct TrainerCard *); u8 sub_80934C4(u8 id); -// gUnknown_083B5EBC:: @ 83B5EBC -bool8 sub_8093864(); -bool8 sub_80938A8(); -bool8 sub_80938CC(); -bool8 sub_8093918(); -bool8 sub_8093938(); -bool8 sub_8093954(); -bool8 sub_8093980(); - -// gUnknown_083B5ED8:: @ 83B5ED8 -bool8 sub_8093AA0(); -bool8 sub_8093AF0(); -bool8 sub_8093C0C(struct TrainerCard *trainerCard); -bool8 sub_8093C38(); -bool8 sub_8093D50(void); +extern struct TrainerCard gTrainerCards[4]; #endif // GUARD_TRAINER_CARD_H diff --git a/include/use_pokeblock.h b/include/use_pokeblock.h index 978476d89..978476d89 100755..100644 --- a/include/use_pokeblock.h +++ b/include/use_pokeblock.h diff --git a/include/vars.h b/include/vars.h index e08f344d4..efbb462a4 100755..100644 --- a/include/vars.h +++ b/include/vars.h @@ -1,6 +1,7 @@ #ifndef GUARD_VARS_H #define GUARD_VARS_H +#define VAR_0x4000 0x4000 #define VAR_0x4001 0x4001 #define VAR_0x4002 0x4002 #define VAR_0x4003 0x4003 |