summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorDiegoisawesome <Diegoisawesome@users.noreply.github.com>2018-06-01 00:02:46 -0700
committerGitHub <noreply@github.com>2018-06-01 00:02:46 -0700
commit0b09575fd4a3f8b001e283f7ea6842d3357359bd (patch)
treee8e5094fa06efa07599d874c4414706249d1e3a5 /include
parentdd28854a226753e2da53b35dcf1f67b142b75b77 (diff)
parent94030c6b53dc0de149ff9bddcaf6e618be282993 (diff)
Merge pull request #249 from golemgalvanize/decompile_pokedex
Decompile pokedex
Diffstat (limited to 'include')
-rw-r--r--include/global.h14
-rw-r--r--include/graphics.h21
-rw-r--r--include/pokedex.h2
-rwxr-xr-xinclude/pokedex_area_screen.h6
-rwxr-xr-xinclude/pokedex_cry_screen.h19
-rw-r--r--include/strings.h16
6 files changed, 72 insertions, 6 deletions
diff --git a/include/global.h b/include/global.h
index f9e0aa66e..4a0fdb70a 100644
--- a/include/global.h
+++ b/include/global.h
@@ -43,6 +43,10 @@
#define PARTY_SIZE 6
+#define POKEMON_SLOTS_NUMBER 412
+#define POKEMON_NAME_LENGTH 10
+#define OT_NAME_LENGTH 7
+
#define min(a, b) ((a) < (b) ? (a) : (b))
#define max(a, b) ((a) >= (b) ? (a) : (b))
@@ -185,6 +189,8 @@ struct Time
/*0x04*/ s8 seconds;
};
+#define DEX_FLAGS_NO ((POKEMON_SLOTS_NUMBER / 8) + ((POKEMON_SLOTS_NUMBER % 8) ? 1 : 0))
+
struct Pokedex
{
/*0x00*/ u8 order;
@@ -194,8 +200,8 @@ struct Pokedex
/*0x04*/ u32 unownPersonality; // set when you first see Unown
/*0x08*/ u32 spindaPersonality; // set when you first see Spinda
/*0x0C*/ u32 unknown3;
- /*0x10*/ u8 owned[52];
- /*0x44*/ u8 seen[52];
+ /*0x10*/ u8 owned[DEX_FLAGS_NO];
+ /*0x44*/ u8 seen[DEX_FLAGS_NO];
};
struct PokemonJumpResults // possibly used in the game itself?
@@ -785,7 +791,7 @@ struct SaveBlock1
/*0x690*/ struct ItemSlot bagPocket_TMHM[BAG_TMHM_COUNT];
/*0x790*/ struct ItemSlot bagPocket_Berries[BAG_BERRIES_COUNT];
/*0x848*/ struct Pokeblock pokeblocks[POKEBLOCKS_COUNT];
- /*0x988*/ u8 seen1[52];
+ /*0x988*/ u8 seen1[DEX_FLAGS_NO];
/*0x9BC*/ u16 berryBlenderRecords[3];
/*0x9C2*/ u8 field_9C2[6];
/*0x9C8*/ u16 trainerRematchStepCounter;
@@ -839,7 +845,7 @@ struct SaveBlock1
/*0x322C*/ u8 field_322C[1276];
/*0x3728*/ struct RamScript ramScript;
/*0x3B14*/ struct RecordMixingGift recordMixingGift;
- /*0x3B24*/ u8 seen2[52];
+ /*0x3B24*/ u8 seen2[DEX_FLAGS_NO];
/*0x3B58*/ LilycoveLady lilycoveLady;
/*0x3B98*/ struct UnkSaveSubstruct_3b98 unk_3B98[20];
/*0x3C88*/ u8 filler_3C88[0xE8];
diff --git a/include/graphics.h b/include/graphics.h
index 3feed6d08..2dc5e99bf 100644
--- a/include/graphics.h
+++ b/include/graphics.h
@@ -2651,8 +2651,27 @@ extern const u8 gBattleTerrainPalette_StadiumGlacia[];
extern const u8 gBattleTerrainPalette_StadiumDrake[];
extern const u8 gBattleTerrainPalette_StadiumWallace[];
+// pokedex
extern const u8 gPokedexMenu2_Gfx[];
-extern const u8 gPokedexText_Pal[];
+extern const u16 gPokedexText_Pal[];
+extern const u8 gPokedexMenu_Gfx[];
+extern const u8 gUnknown_08DC2C5C[];
+extern const u8 gUnknown_08DC2DAC[];
+extern const u8 gUnknown_08DC2A08[];
+extern const u8 gUnknown_08DC2B1C[];
+extern const u16 gPokedexHoennBg_Pal[];
+extern const u16 gPokedexText_Pal[];
+extern const u16 gPokedexNationalBg_Pal[];
+extern const u8 gUnknown_08DC3080[];
+extern const u8 gUnknown_08DC3198[];
+extern const u8 gUnknown_08DC2E6C[];
+extern const u8 gUnknown_08DC2F5C[];
+extern const u8 gUnknown_08DC2FEC[];
+extern const u16 gPokedexCaughtScreenFade_Pal[];
+extern const u8 gPokedexSearchMenu_Gfx[];
+extern const u8 gPokedexSearch2_Tilemap[];
+extern const u8 gPokedexSearch1_Tilemap[];
+extern const u16 gPokedexSearchMenu_Pal[];
// berry tag screen
extern const u8 gUnknown_08D9BB44[];
diff --git a/include/pokedex.h b/include/pokedex.h
index 19e1162e2..f9e236588 100644
--- a/include/pokedex.h
+++ b/include/pokedex.h
@@ -2,7 +2,7 @@
#define GUARD_POKEDEX_H
void ResetPokedex(void);
-void CopyMonCategoryText(u16 species, u8 *dst);
+void CopyMonCategoryText(u32 species, u8 *dst);
u16 GetPokedexHeightWeight(u16 dexNum, u8 data);
u16 GetNationalPokedexCount(u8);
u16 GetHoennPokedexCount(u8);
diff --git a/include/pokedex_area_screen.h b/include/pokedex_area_screen.h
new file mode 100755
index 000000000..2fb5ade51
--- /dev/null
+++ b/include/pokedex_area_screen.h
@@ -0,0 +1,6 @@
+#ifndef GUARD_POKEDEX_AREA_SCREEN_H
+#define GUARD_POKEDEX_AREA_SCREEN_H
+
+void sub_813D3D8(u16, u8*);
+
+#endif // GUARD_POKEDEX_AREA_SCREEN_H
diff --git a/include/pokedex_cry_screen.h b/include/pokedex_cry_screen.h
new file mode 100755
index 000000000..6b5cc13f2
--- /dev/null
+++ b/include/pokedex_cry_screen.h
@@ -0,0 +1,19 @@
+#ifndef GUARD_POKEDEX_CRY_SCREEN_H
+#define GUARD_POKEDEX_CRY_SCREEN_H
+
+struct CryRelatedStruct
+{
+ u16 unk0;
+ u8 unk2;
+ u8 paletteNo;
+ u8 xPos;
+ u8 yPos;
+};
+
+bool8 sub_8145354(struct CryRelatedStruct*, u8);
+void sub_814545C(u8);
+void sub_8145534(u16);
+void sub_8145914(void);
+bool8 sub_8145850(struct CryRelatedStruct*, u8);
+
+#endif
diff --git a/include/strings.h b/include/strings.h
index a86ab25fe..4736fdc5d 100644
--- a/include/strings.h
+++ b/include/strings.h
@@ -372,6 +372,22 @@ extern const u8 gText_ThreeDashes[];
extern const u8 gText_PkmnHPRestoredByVar2[];
extern const u8 gText_CantBeUsedOnPkmn[];
+//pokedex text
+extern const u8 gText_CryOf[];
+extern const u8 gText_SizeComparedTo[];
+extern const u8 gText_PokedexRegistration[];
+extern const u8 gText_UnkCtrlF908Clear01[];
+extern const u8 sText_TenDashes2[];
+extern const u8 gText_5MarksPokemon[];
+extern const u8 gText_UnkHeight[];
+extern const u8 gText_UnkWeight[];
+extern const u8 gText_HTHeight[];
+extern const u8 gText_WTWeight[];
+extern const u8 gText_SearchingPleaseWait[];
+extern const u8 gText_SearchCompleted[];
+extern const u8 gUnknown_085E8785[];
+extern const u8 gText_SelectorArrow[];
+
// birch dex rating text
extern const u8 gBirchDexRatingText_LessThan10[];
extern const u8 gBirchDexRatingText_LessThan20[];