summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/.clang-format24
-rw-r--r--include/battle.h11
-rw-r--r--include/battle_message.h2
-rw-r--r--include/battle_party_menu.h19
-rw-r--r--include/choose_party.h7
-rw-r--r--include/de_rom_8040FE0.h6
-rw-r--r--include/easy_chat.h4
-rw-r--r--include/fonts/font0_widths.h41
-rw-r--r--include/fonts/font1_widths.h37
-rw-r--r--include/fonts/font3_widths.h41
-rw-r--r--include/fonts/font4_widths.h37
-rw-r--r--include/fonts/type1_map.h250
-rw-r--r--include/fonts/type3_map.h131
-rwxr-xr-xinclude/global.h5
-rw-r--r--include/link.h11
-rw-r--r--include/menu.h4
-rw-r--r--include/party_menu.h38
-rw-r--r--include/pokemon.h252
-rw-r--r--include/pokemon_summary_screen.h2
-rw-r--r--include/rom3.h40
-rw-r--r--include/songs.h20
21 files changed, 284 insertions, 698 deletions
diff --git a/include/.clang-format b/include/.clang-format
new file mode 100644
index 000000000..995d5d96d
--- /dev/null
+++ b/include/.clang-format
@@ -0,0 +1,24 @@
+BasedOnStyle: LLVM
+AllowShortFunctionsOnASingleLine: None
+BreakBeforeBraces: Allman
+ColumnLimit: 100
+UseTab: Never
+IndentWidth: 4
+TabWidth: 4
+AlignAfterOpenBracket: DontAlign
+Cpp11BracedListStyle: false
+BreakStringLiterals: false
+IndentCaseLabels: false
+BinPackArguments: false
+BinPackParameters: false
+IncludeCategories:
+ - Regex: '^"gba/types\.h"$'
+ Priority: -4
+ - Regex: '^"global\.h"$'
+ Priority: -3
+ - Regex: '^"gba/gba\.h"$'
+ Priority: -2
+ - Regex: '^"gba/'
+ Priority: -1
+ - Regex: '.\*'
+ Priority: 1
diff --git a/include/battle.h b/include/battle.h
index 395cf042a..d93860094 100644
--- a/include/battle.h
+++ b/include/battle.h
@@ -185,7 +185,6 @@ struct Struct2017810
u8 unk1_0:1;
u8 unk2;
u8 unk3;
- //u8 filler2[2];
u8 unk4;
u8 unk5;
u8 unk6;
@@ -198,13 +197,21 @@ struct Struct2017810
struct Struct2017840
{
u16 unk0;
- u8 filler2[7];
+ u8 filler2[6];
+ u8 unk8;
u8 unk9_0:1;
};
+struct Struct20238C8
+{
+ u8 unk0_0:7;
+ u8 unk0_7:1;
+};
+
extern struct UnkBattleStruct1 unk_2016A00;
extern struct UnkBattleStruct4 gDisableStructs[];
extern struct AI_ThinkingStruct gAIThinkingSpace;
+extern struct Struct20238C8 gUnknown_020238C8;
// TODO: move ewram to global.h
extern u8 ewram[];
diff --git a/include/battle_message.h b/include/battle_message.h
index 1ac20ce30..da57333a5 100644
--- a/include/battle_message.h
+++ b/include/battle_message.h
@@ -1,7 +1,7 @@
#ifndef GUARD_BATTLE_MESSAGE_H
#define GUARD_BATTLE_MESSAGE_H
-void StrCpyDecodeToDisplayedStringBattle(u8 *);
+void StrCpyDecodeToDisplayedStringBattle(const u8 *);
void StrCpyDecodeBattle(const u8 *, u8 *);
#endif // GUARD_BATTLE_MESSAGE_H
diff --git a/include/battle_party_menu.h b/include/battle_party_menu.h
index 5112c7b3c..71bd2cf51 100644
--- a/include/battle_party_menu.h
+++ b/include/battle_party_menu.h
@@ -1,26 +1,9 @@
#ifndef GUARD_BATTLE_PARTY_MENU_H
#define GUARD_BATTLE_PARTY_MENU_H
-#include "task.h"
-
-// TODO: Unify all of the 0x0201B000 structs
-struct Struct201B000
-{
- u8 filler0[0x259];
- u8 unk259;
- u8 filler25A[6];
- u8 unk260;
- u8 filler261[1];
- u8 unk262;
- s16 unk264;
- s16 unk266;
-};
-
extern u8 unk_2000000[];
+#define EWRAM_1609D unk_2000000[0x1609D]
void SetUpBattlePokemonMenu(u8);
-#define EWRAM_1609D unk_2000000[0x1609D]
-#define EWRAM_1B000 (*(struct Struct201B000 *)(unk_2000000 + 0x1B000))
-
#endif
diff --git a/include/choose_party.h b/include/choose_party.h
index 1e575a355..e31aa3c02 100644
--- a/include/choose_party.h
+++ b/include/choose_party.h
@@ -3,6 +3,11 @@
void sub_8121E10(void);
void sub_8121E34(void);
-void sub_8123138(u8);
+bool8 sub_8121E78(void);
+void sub_81222B0(u8 taskId);
+bool8 sub_8122854(void);
+void sub_8122A48(u8 taskId);
+void sub_8122E0C(u8 taskId);
+void sub_8123138(u8 taskId);
#endif // GUARD_CHOOSE_PARTY_H
diff --git a/include/de_rom_8040FE0.h b/include/de_rom_8040FE0.h
new file mode 100644
index 000000000..1ec4ba28c
--- /dev/null
+++ b/include/de_rom_8040FE0.h
@@ -0,0 +1,6 @@
+#ifndef GUARD_DE_ROM_8040FE0
+#define GUARD_DE_ROM_8040FE0
+
+u8 *de_sub_8041024(s32 arg0, u32 arg1);
+
+#endif // GUARD_DE_ROM_8040FE0
diff --git a/include/easy_chat.h b/include/easy_chat.h
index 6b04f524b..03e9bb737 100644
--- a/include/easy_chat.h
+++ b/include/easy_chat.h
@@ -41,4 +41,8 @@ void sub_80EB890(u8);
u8 sub_80EB8C0(void);
u16 sub_80EB8EC(void);
+#if GERMAN
+u32 de_sub_80EB748(u32, u32);
+#endif
+
#endif // GUARD_EASYCHAT_H
diff --git a/include/fonts/font0_widths.h b/include/fonts/font0_widths.h
deleted file mode 100644
index 77fcff3ee..000000000
--- a/include/fonts/font0_widths.h
+++ /dev/null
@@ -1,41 +0,0 @@
-#if REVISION >= 1
-static const u8 sFont0Widths[] =
-{
- 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6, 4, 8,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 8, 6, 6, 8,
- 8, 8, 8, 8, 8, 8, 3, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 7, 6, 4, 8, 8, 8, 7, 8, 8, 4, 6, 6, 4, 4, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 6, 7, 8, 7, 7, 8, 8, 4,
- 7, 8, 8, 8, 8, 8, 7, 8, 7, 7, 7, 7, 7, 7, 8, 7,
- 7, 7, 7, 7, 5, 6, 6, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 3, 6, 3, 5, 3,
- 6, 6, 6, 3, 3, 6, 6, 6, 3, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 4, 5, 6,
- 3, 6, 6, 6, 6, 6, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7,
- 3, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 1, 1,
-};
-#else
-static const u8 sFont0Widths[] =
-{
- 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6, 5, 8,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 8,
- 7, 7, 7, 8, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 7, 6, 3, 8, 8, 8, 7, 8, 8, 4, 6, 6, 4, 4, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 7, 8, 7, 7, 8, 8, 6,
- 7, 8, 8, 8, 8, 8, 7, 8, 7, 7, 7, 7, 7, 7, 8, 7,
- 7, 7, 7, 7, 7, 7, 7, 8, 6, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 7, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 3, 6, 3, 5, 3,
- 6, 6, 6, 3, 3, 6, 6, 6, 3, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 4, 5, 6,
- 3, 6, 6, 6, 6, 6, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7,
- 3, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 1, 1,
-};
-#endif
diff --git a/include/fonts/font1_widths.h b/include/fonts/font1_widths.h
deleted file mode 100644
index 454bbfaca..000000000
--- a/include/fonts/font1_widths.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#if REVISION >= 1
-static const u8 sFont1Widths[] =
-{
- 5, 3, 8, 8, 8, 8, 8, 8, 8, 4, 5, 4, 4, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 5, 8, 8, 8, 8, 8, 4, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 7, 5, 5, 5,
- 6, 5, 5, 5, 5, 5, 5, 5, 5, 4, 8, 4, 4, 5, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 5, 8, 4, 5, 5, 5, 5, 4, 8,
- 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 8, 5, 6, 6,
- 8, 7, 3, 5, 3, 3, 5, 4, 3, 6, 6, 6, 7, 7, 8, 5,
- 5, 5, 3, 5, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 4, 5, 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 4, 4, 5, 3, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 5, 6, 6, 7, 7, 7, 7, 6, 7, 6, 6, 7, 6,
- 7, 7, 7, 6, 7, 6, 7, 6, 7, 6, 6, 7, 6, 6, 3, 3,
- 5, 5, 5, 5, 3, 3, 5, 5, 5, 5, 5, 5,
-};
-#else
-static const u8 sFont1Widths[] =
-{
- 5, 3, 8, 8, 8, 8, 8, 8, 8, 4, 5, 4, 4, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 5, 8, 8, 8, 8, 8, 4, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 6, 6, 6, 5,
- 6, 5, 5, 5, 5, 5, 5, 5, 5, 4, 8, 4, 4, 5, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 5, 8, 4, 5, 5, 5, 5, 4, 8,
- 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6,
- 8, 7, 6, 5, 3, 3, 5, 4, 3, 6, 6, 6, 7, 7, 8, 5,
- 5, 5, 3, 5, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 4, 5, 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 4, 4, 5, 3, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 5, 6, 6, 7, 7, 7, 7, 6, 7, 6, 6, 7, 6,
- 7, 7, 7, 6, 7, 6, 7, 6, 7, 6, 6, 7, 6, 6, 3, 3,
- 5, 5, 5, 5, 3, 3, 5, 5, 5, 5, 5, 5,
-};
-#endif
diff --git a/include/fonts/font3_widths.h b/include/fonts/font3_widths.h
deleted file mode 100644
index 45dc69c06..000000000
--- a/include/fonts/font3_widths.h
+++ /dev/null
@@ -1,41 +0,0 @@
-#if REVISION >= 1
-static const u8 sFont3Widths[] =
-{
- 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6, 4, 8,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 8, 6, 6, 8,
- 8, 8, 8, 8, 8, 8, 3, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 7, 6, 4, 8, 8, 8, 7, 8, 8, 4, 6, 6, 4, 4, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 6, 7, 8, 7, 7, 8, 8, 4,
- 7, 8, 8, 8, 8, 8, 7, 8, 7, 7, 7, 7, 7, 7, 8, 7,
- 7, 7, 7, 7, 5, 6, 6, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 3, 6, 3, 5, 3,
- 6, 6, 6, 3, 3, 6, 6, 6, 3, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 4, 5, 6,
- 3, 6, 6, 6, 6, 6, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7,
- 3, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 1, 1,
-};
-#else
-static const u8 sFont3Widths[] =
-{
- 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6, 4, 8,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 7, 6, 4, 8, 8, 8, 7, 8, 8, 4, 6, 6, 4, 4, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 6, 7, 8, 7, 7, 8, 8, 4,
- 7, 8, 8, 8, 8, 8, 7, 8, 7, 7, 7, 7, 7, 7, 8, 7,
- 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 7, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 3, 6, 3, 5, 3,
- 6, 6, 6, 3, 3, 6, 6, 6, 3, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 4, 5, 6,
- 3, 6, 6, 6, 6, 6, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7,
- 3, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 1, 1,
-};
-#endif
diff --git a/include/fonts/font4_widths.h b/include/fonts/font4_widths.h
deleted file mode 100644
index 63adf4921..000000000
--- a/include/fonts/font4_widths.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#if REVISION >= 1
-static const u8 sFont4Widths[] =
-{
- 5, 3, 8, 8, 8, 8, 8, 8, 8, 4, 5, 4, 4, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 5, 8, 8, 8, 8, 8, 4, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 7, 5, 5, 5,
- 6, 5, 5, 5, 5, 5, 5, 5, 5, 4, 8, 4, 4, 5, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 5, 8, 4, 5, 5, 5, 5, 4, 8,
- 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 8, 5, 6, 6,
- 8, 7, 3, 5, 3, 3, 5, 4, 3, 6, 6, 6, 7, 7, 8, 5,
- 5, 5, 3, 5, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 4, 5, 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 4, 4, 5, 3, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 5, 6, 6, 7, 7, 7, 7, 6, 7, 6, 6, 7, 6,
- 7, 7, 7, 6, 7, 6, 7, 6, 7, 6, 6, 7, 6, 6, 3, 3,
- 5, 5, 5, 5, 3, 3, 5, 5, 5, 5, 5, 5,
-};
-#else
-static const u8 sFont4Widths[] =
-{
- 5, 3, 8, 8, 8, 8, 8, 8, 8, 4, 5, 4, 4, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 5, 8, 8, 8, 8, 8, 4, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 6, 6, 6, 5,
- 6, 5, 5, 5, 5, 5, 5, 5, 5, 4, 8, 4, 4, 5, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 5, 8, 4, 5, 5, 5, 5, 4, 8,
- 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6,
- 8, 7, 6, 5, 3, 3, 5, 4, 3, 6, 6, 6, 7, 7, 8, 5,
- 5, 5, 3, 5, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 4, 5, 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 4, 4, 5, 3, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 5, 6, 6, 7, 7, 7, 7, 6, 7, 6, 6, 7, 6,
- 7, 7, 7, 6, 7, 6, 7, 6, 7, 6, 6, 7, 6, 6, 3, 3,
- 5, 5, 5, 5, 3, 3, 5, 5, 5, 5, 5, 5,
-};
-#endif
diff --git a/include/fonts/type1_map.h b/include/fonts/type1_map.h
deleted file mode 100644
index 45e42f62c..000000000
--- a/include/fonts/type1_map.h
+++ /dev/null
@@ -1,250 +0,0 @@
-static const u8 sFontType1Map[] =
-{
- 0xD4, 0xD4,
- 0xD4, 0x31,
- 0xD4, 0x32,
- 0xD4, 0x33,
- 0xD4, 0x34,
- 0xD4, 0x35,
- 0xD4, 0x36,
- 0xD4, 0x37,
- 0xD4, 0x38,
- 0xD4, 0x39,
- 0xD4, 0x3A,
- 0xD4, 0x3B,
- 0xD4, 0x3C,
- 0xD4, 0x3D,
- 0xD4, 0x3E,
- 0xD4, 0x3F,
- 0xD4, 0x40,
- 0xD4, 0x41,
- 0xD4, 0x42,
- 0xD4, 0x43,
- 0xD4, 0x44,
- 0xD4, 0x45,
- 0xD4, 0x46,
- 0xD4, 0x47,
- 0xD4, 0x48,
- 0xD4, 0x49,
- 0xD4, 0x4A,
- 0xD4, 0x4B,
- 0xD4, 0x4C,
- 0xD4, 0x4D,
- 0xD4, 0x4E,
- 0xD4, 0x4F,
- 0xD4, 0x50,
- 0xD4, 0x51,
- 0xD4, 0x52,
- 0xD4, 0x53,
- 0xD4, 0x54,
- 0xD4, 0x55,
- 0xD4, 0x56,
- 0xD4, 0x57,
- 0xD4, 0x58,
- 0xD4, 0x59,
- 0xD4, 0x5A,
- 0xD4, 0x5B,
- 0xD4, 0x5C,
- 0xD4, 0x5D,
- 0xD4, 0x5E,
- 0xD4, 0x31,
- 0xD4, 0x32,
- 0xD4, 0x33,
- 0xD4, 0x34,
- 0xD4, 0x35,
- 0xD4, 0x60,
- 0xD4, 0x61,
- 0xD4, 0x62,
- 0x65, 0x36,
- 0x65, 0x37,
- 0x65, 0x38,
- 0x65, 0x39,
- 0x65, 0x3A,
- 0x65, 0x3B,
- 0x65, 0x3C,
- 0x65, 0x3D,
- 0x65, 0x3E,
- 0x65, 0x3F,
- 0x65, 0x40,
- 0x65, 0x41,
- 0x65, 0x42,
- 0x65, 0x43,
- 0x65, 0x44,
- 0x65, 0x4A,
- 0x65, 0x4B,
- 0x65, 0x4C,
- 0x65, 0x4D,
- 0x65, 0x4E,
- 0x64, 0x4A,
- 0x64, 0x4B,
- 0x64, 0x4C,
- 0x64, 0x4D,
- 0x64, 0x4E,
- 0xD4, 0x5F,
- 0xD4, 0x00,
- 0xD4, 0x01,
- 0xD4, 0x02,
- 0xD4, 0x03,
- 0xD4, 0x04,
- 0xD4, 0x05,
- 0xD4, 0x06,
- 0xD4, 0x07,
- 0xD4, 0x08,
- 0xD4, 0x09,
- 0xD4, 0x0A,
- 0xD4, 0x0B,
- 0xD4, 0x0C,
- 0xD4, 0x0D,
- 0xD4, 0x0E,
- 0xD4, 0x0F,
- 0xD4, 0x10,
- 0xD4, 0x11,
- 0xD4, 0x12,
- 0xD4, 0x13,
- 0xD4, 0x14,
- 0xD4, 0x15,
- 0xD4, 0x16,
- 0xD4, 0x17,
- 0xD4, 0x18,
- 0xD4, 0x19,
- 0xD4, 0x1A,
- 0xD4, 0x1B,
- 0xD4, 0x4D,
- 0xD4, 0x1C,
- 0xD4, 0x1D,
- 0xD4, 0x1E,
- 0xD4, 0x1F,
- 0xD4, 0x20,
- 0xD4, 0x21,
- 0xD4, 0x22,
- 0xD4, 0x23,
- 0xD4, 0x24,
- 0xD4, 0x25,
- 0xD4, 0x58,
- 0xD4, 0x26,
- 0xD4, 0x27,
- 0xD4, 0x28,
- 0xD4, 0x29,
- 0xD4, 0x2A,
- 0xD4, 0x2B,
- 0xD4, 0x69,
- 0xD4, 0x30,
- 0xD4, 0x6A,
- 0xD4, 0x6B,
- 0xD4, 0x74,
- 0xD4, 0x2D,
- 0xD4, 0x2E,
- 0xD4, 0x2F,
- 0x65, 0x05,
- 0x65, 0x06,
- 0x65, 0x07,
- 0x65, 0x08,
- 0x65, 0x09,
- 0x65, 0x0A,
- 0x65, 0x0B,
- 0x65, 0x0C,
- 0x65, 0x0D,
- 0x65, 0x0E,
- 0x65, 0x0F,
- 0x65, 0x10,
- 0x65, 0x11,
- 0x65, 0x12,
- 0x65, 0x13,
- 0x65, 0x19,
- 0x65, 0x1A,
- 0x65, 0x1B,
- 0x65, 0x4D,
- 0x65, 0x1C,
- 0x64, 0x19,
- 0x64, 0x1A,
- 0x64, 0x1B,
- 0x64, 0x4D,
- 0x64, 0x1C,
- 0xD4, 0x2C,
- 0xD4, 0x76,
- 0xD4, 0x77,
- 0xD4, 0x78,
- 0xD4, 0x79,
- 0xD4, 0x7A,
- 0xD4, 0x7B,
- 0xD4, 0x7C,
- 0xD4, 0x7D,
- 0xD4, 0x7E,
- 0xD4, 0x7F,
- 0xD4, 0x67,
- 0xD4, 0x66,
- 0xD4, 0x68,
- 0xD4, 0x63,
- 0xD4, 0xD2,
- 0xD4, 0xD3,
- 0xD4, 0xD0,
- 0xD4, 0xD1,
- 0xD4, 0xCE,
- 0xD4, 0xCF,
- 0xD4, 0x6F,
- 0xD4, 0x75,
- 0xD4, 0x70,
- 0xD4, 0x72,
- 0xD4, 0x71,
- 0xD4, 0x73,
- 0xD4, 0x80,
- 0xD4, 0x81,
- 0xD4, 0x82,
- 0xD4, 0x83,
- 0xD4, 0x84,
- 0xD4, 0x85,
- 0xD4, 0x86,
- 0xD4, 0x87,
- 0xD4, 0x88,
- 0xD4, 0x89,
- 0xD4, 0x8A,
- 0xD4, 0x8B,
- 0xD4, 0x8C,
- 0xD4, 0x8D,
- 0xD4, 0x8E,
- 0xD4, 0x8F,
- 0xD4, 0x90,
- 0xD4, 0x91,
- 0xD4, 0x92,
- 0xD4, 0x93,
- 0xD4, 0x94,
- 0xD4, 0x95,
- 0xD4, 0x96,
- 0xD4, 0x97,
- 0xD4, 0x98,
- 0xD4, 0x99,
- 0xD4, 0x9A,
- 0xD4, 0x9B,
- 0xD4, 0x9C,
- 0xD4, 0x9D,
- 0xD4, 0x9E,
- 0xD4, 0x9F,
- 0xD4, 0xA0,
- 0xD4, 0xA1,
- 0xD4, 0xA2,
- 0xD4, 0xA3,
- 0xD4, 0xA4,
- 0xD4, 0xA5,
- 0xD4, 0xA6,
- 0xD4, 0xA7,
- 0xD4, 0xA8,
- 0xD4, 0xA9,
- 0xD4, 0xAA,
- 0xD4, 0xAB,
- 0xD4, 0xAC,
- 0xD4, 0xAD,
- 0xD4, 0xAE,
- 0xD4, 0xAF,
- 0xD4, 0xB0,
- 0xD4, 0xB1,
- 0xD4, 0xB2,
- 0xD4, 0xB3,
- 0xD4, 0x6D,
- 0xD4, 0xD5,
- 0xD4, 0xD6,
- 0xD4, 0xD7,
- 0xD4, 0xD8,
- 0xD4, 0xD9,
- 0xD4, 0xDA,
- 0xD4, 0xDB,
-};
diff --git a/include/fonts/type3_map.h b/include/fonts/type3_map.h
deleted file mode 100644
index 48219423b..000000000
--- a/include/fonts/type3_map.h
+++ /dev/null
@@ -1,131 +0,0 @@
-static const u8 sFontType3Map[] =
-{
- 0x00, 0x10,
- 0x01, 0x10,
- 0x02, 0x10,
- 0x03, 0x10,
- 0x04, 0x11,
- 0x05, 0x11,
- 0x06, 0x11,
- 0x07, 0x11,
- 0x08, 0x12,
- 0x09, 0x12,
- 0x0A, 0x12,
- 0x0B, 0x12,
- 0x0C, 0x13,
- 0x0D, 0x13,
- 0x0E, 0x13,
- 0x0F, 0x13,
- 0x00, 0x14,
- 0x01, 0x14,
- 0x02, 0x14,
- 0x03, 0x14,
- 0x04, 0x15,
- 0x05, 0x15,
- 0x06, 0x15,
- 0x07, 0x15,
- 0x08, 0x16,
- 0x09, 0x16,
- 0x0A, 0x16,
- 0x0B, 0x16,
- 0x0C, 0x17,
- 0x0D, 0x17,
- 0x0E, 0x17,
- 0x0F, 0x17,
- 0x00, 0x18,
- 0x01, 0x18,
- 0x02, 0x18,
- 0x03, 0x18,
- 0x04, 0x19,
- 0x05, 0x19,
- 0x06, 0x19,
- 0x07, 0x19,
- 0x08, 0x1A,
- 0x09, 0x1A,
- 0x0A, 0x1A,
- 0x0B, 0x1A,
- 0x0C, 0x1B,
- 0x0D, 0x1B,
- 0x0E, 0x1B,
- 0x0F, 0x1B,
- 0x00, 0x1C,
- 0x01, 0x1C,
- 0x02, 0x1C,
- 0x03, 0x1C,
- 0x04, 0x1D,
- 0x05, 0x1D,
- 0x06, 0x1D,
- 0x07, 0x1D,
- 0x08, 0x1E,
- 0x09, 0x1E,
- 0x0A, 0x1E,
- 0x0B, 0x1E,
- 0x0C, 0x1F,
- 0x0D, 0x1F,
- 0x0E, 0x1F,
- 0x0F, 0x1F,
- 0x20, 0x24,
- 0x20, 0x24,
- 0x21, 0x24,
- 0x21, 0x24,
- 0x20, 0x24,
- 0x20, 0x24,
- 0x21, 0x24,
- 0x21, 0x24,
- 0x22, 0x25,
- 0x22, 0x25,
- 0x23, 0x25,
- 0x23, 0x25,
- 0x22, 0x25,
- 0x22, 0x25,
- 0x23, 0x25,
- 0x23, 0x25,
- 0x20, 0x24,
- 0x20, 0x24,
- 0x21, 0x24,
- 0x21, 0x24,
- 0x20, 0x24,
- 0x20, 0x24,
- 0x21, 0x24,
- 0x21, 0x24,
- 0x22, 0x25,
- 0x22, 0x25,
- 0x23, 0x25,
- 0x23, 0x25,
- 0x22, 0x25,
- 0x22, 0x25,
- 0x23, 0x25,
- 0x23, 0x25,
- 0x20, 0x26,
- 0x20, 0x26,
- 0x21, 0x26,
- 0x21, 0x26,
- 0x20, 0x26,
- 0x20, 0x26,
- 0x21, 0x26,
- 0x21, 0x26,
- 0x22, 0x27,
- 0x22, 0x27,
- 0x23, 0x27,
- 0x23, 0x27,
- 0x22, 0x27,
- 0x22, 0x27,
- 0x23, 0x27,
- 0x23, 0x27,
- 0x20, 0x26,
- 0x20, 0x26,
- 0x21, 0x26,
- 0x21, 0x26,
- 0x20, 0x26,
- 0x20, 0x26,
- 0x21, 0x26,
- 0x21, 0x26,
- 0x22, 0x27,
- 0x22, 0x27,
- 0x23, 0x27,
- 0x23, 0x27,
- 0x22, 0x27,
- 0x22, 0x27,
- 0x23, 0x27,
- 0x23, 0x27,
-};
diff --git a/include/global.h b/include/global.h
index 9da4bd57c..d172cfa25 100755
--- a/include/global.h
+++ b/include/global.h
@@ -625,10 +625,11 @@ struct Pokedex
struct SaveBlock2_Sub
{
- /*0x0000, 0x00A4*/ u8 filler_000[0x3D8];
+ /*0x0000, 0x00A8*/ u8 filler_000[0x3D8];
/*0x03D8, 0x0480*/ u16 var_480;
/*0x03DA, 0x0482*/ u16 var_482;
- /*0x03DC, 0x0484*/ u8 filler_3DC[0xD1];
+ /*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;
diff --git a/include/link.h b/include/link.h
index eb6f642bc..f80f2bc58 100644
--- a/include/link.h
+++ b/include/link.h
@@ -122,6 +122,13 @@ struct Link
struct RecvQueue recvQueue;
};
+struct BlockRequest {
+ void * address;
+ u32 size;
+};
+
+extern const struct BlockRequest sBlockRequestLookupTable[5];
+
extern struct Link gLink;
extern u16 gRecvCmds[CMD_LENGTH][MAX_LINK_PLAYERS];
extern u8 gBlockSendBuffer[BLOCK_BUFFER_SIZE];
@@ -130,6 +137,10 @@ extern u32 gLinkStatus;
extern u16 gBlockRecvBuffer[MAX_LINK_PLAYERS][BLOCK_BUFFER_SIZE / 2];
extern u16 gSendCmd[CMD_LENGTH];
extern u8 gShouldAdvanceLinkState;
+#if GERMAN
+extern u8 deUnkValue1;
+extern u8 deUnkValue2;
+#endif
extern struct LinkPlayer gLinkPlayers[];
extern u16 word_3002910[];
extern bool8 gReceivedRemoteLinkPlayers;
diff --git a/include/menu.h b/include/menu.h
index a6784a553..9eeebce60 100644
--- a/include/menu.h
+++ b/include/menu.h
@@ -91,4 +91,8 @@ void sub_8072DCC(u8);
void sub_8072DDC(u8);
void HandleDestroyMenuCursors(void);
+#if GERMAN
+u8 *de_sub_8073174(u8 *name, const u8 *format);
+#endif
+
#endif // GUARD_MENU_H
diff --git a/include/party_menu.h b/include/party_menu.h
index 917d6a58c..58292081f 100644
--- a/include/party_menu.h
+++ b/include/party_menu.h
@@ -16,6 +16,44 @@ struct PartyPopupMenu
const u8 *unk4;
};
+// TODO: Unify these two structs
+
+#define DATA_COUNT (6)
+struct Unk201B000
+{
+ //u8 filler0[0x260];
+ struct Pokemon unk0[6];
+ u8 filler258[1];
+ u8 unk259;
+ u8 filler25A[6];
+ u8 unk260;
+ u8 unk261;
+ u8 unk262;
+ u8 unk263;
+ s16 unk264[DATA_COUNT * 2]; // This may be a union
+ u8 filler27C[2];
+ s16 unk27E;
+ s16 unk280;
+ s16 unk282;
+};
+
+struct Struct201B000
+{
+ u8 filler0[0x259];
+ u8 unk259;
+ u8 filler25A[6];
+ u8 unk260;
+ u8 filler261[1];
+ u8 unk262;
+ s16 unk264;
+ s16 unk266;
+};
+
+extern u8 ewram[];
+#define ewram1B000 (*(struct Unk201B000 *)(ewram + 0x1B000))
+#define ewram1B000_alt (*(struct Struct201B000 *)(ewram + 0x1B000))
+#define EWRAM_1B000 ewram1B000_alt
+
void sub_806AEDC(void);
void sub_806AF4C();
void OpenPartyMenu(u8, u8);
diff --git a/include/pokemon.h b/include/pokemon.h
index 47990073b..be8e4e56d 100644
--- a/include/pokemon.h
+++ b/include/pokemon.h
@@ -182,41 +182,41 @@ struct PokemonSubstruct2
struct PokemonSubstruct3
{
- /* 0x00 */ u8 pokerus;
- /* 0x01 */ u8 metLocation;
-
- /* 0x02 */ u16 metLevel:7;
- /* 0x02 */ u16 metGame:4;
- /* 0x03 */ u16 pokeball:4;
- /* 0x03 */ u16 otGender:1;
-
- /* 0x04 */ u32 hpIV:5;
- /* 0x04 */ u32 attackIV:5;
- /* 0x05 */ u32 defenseIV:5;
- /* 0x05 */ u32 speedIV:5;
- /* 0x05 */ u32 spAttackIV:5;
- /* 0x06 */ u32 spDefenseIV:5;
- /* 0x07 */ u32 isEgg:1;
- /* 0x07 */ u32 altAbility:1;
-
- /* 0x08 */ u32 coolRibbon:3;
- /* 0x08 */ u32 beautyRibbon:3;
- /* 0x08 */ u32 cuteRibbon:3;
- /* 0x09 */ u32 smartRibbon:3;
- /* 0x09 */ u32 toughRibbon:3;
- /* 0x09 */ u32 championRibbon:1;
- /* 0x0A */ u32 winningRibbon:1;
- /* 0x0A */ u32 victoryRibbon:1;
- /* 0x0A */ u32 artistRibbon:1;
- /* 0x0A */ u32 effortRibbon:1;
- /* 0x0A */ u32 giftRibbon1:1;
- /* 0x0A */ u32 giftRibbon2:1;
- /* 0x0A */ u32 giftRibbon3:1;
- /* 0x0A */ u32 giftRibbon4:1;
- /* 0x0B */ u32 giftRibbon5:1;
- /* 0x0B */ u32 giftRibbon6:1;
- /* 0x0B */ u32 giftRibbon7:1;
- /* 0x0B */ u32 fatefulEncounter:5; // unused in Ruby/Sapphire, but the high bit must be set for Mew/Deoxys to obey in FR/LG/Emerald
+ /*0x00*/ u8 pokerus;
+ /*0x01*/ u8 metLocation;
+
+ /*0x02*/ u16 metLevel:7;
+ /*0x02*/ u16 metGame:4;
+ /*0x03*/ u16 pokeball:4;
+ /*0x03*/ u16 otGender:1;
+
+ /*0x04*/ u32 hpIV:5;
+ /*0x04*/ u32 attackIV:5;
+ /*0x05*/ u32 defenseIV:5;
+ /*0x05*/ u32 speedIV:5;
+ /*0x05*/ u32 spAttackIV:5;
+ /*0x06*/ u32 spDefenseIV:5;
+ /*0x07*/ u32 isEgg:1;
+ /*0x07*/ u32 altAbility:1;
+
+ /*0x08*/ u32 coolRibbon:3;
+ /*0x08*/ u32 beautyRibbon:3;
+ /*0x08*/ u32 cuteRibbon:3;
+ /*0x09*/ u32 smartRibbon:3;
+ /*0x09*/ u32 toughRibbon:3;
+ /*0x09*/ u32 championRibbon:1;
+ /*0x0A*/ u32 winningRibbon:1;
+ /*0x0A*/ u32 victoryRibbon:1;
+ /*0x0A*/ u32 artistRibbon:1;
+ /*0x0A*/ u32 effortRibbon:1;
+ /*0x0A*/ u32 giftRibbon1:1;
+ /*0x0A*/ u32 giftRibbon2:1;
+ /*0x0A*/ u32 giftRibbon3:1;
+ /*0x0A*/ u32 giftRibbon4:1;
+ /*0x0B*/ u32 giftRibbon5:1;
+ /*0x0B*/ u32 giftRibbon6:1;
+ /*0x0B*/ u32 giftRibbon7:1;
+ /*0x0B*/ u32 fatefulEncounter:5; // unused in Ruby/Sapphire, but the high bit must be set for Mew/Deoxys to obey in FR/LG/Emerald
};
union PokemonSubstruct
@@ -230,39 +230,39 @@ union PokemonSubstruct
struct BoxPokemon
{
- u32 personality;
- u32 otId;
- u8 nickname[POKEMON_NAME_LENGTH];
- u8 language;
- u8 isBadEgg:1;
- u8 hasSpecies:1;
- u8 isEgg:1;
- u8 unused:5;
- u8 otName[OT_NAME_LENGTH];
- u8 markings;
- u16 checksum;
- u16 unknown;
+ /*0x00*/ u32 personality;
+ /*0x04*/ u32 otId;
+ /*0x08*/ u8 nickname[POKEMON_NAME_LENGTH];
+ /*0x12*/ u8 language;
+ /*0x13*/ u8 isBadEgg:1;
+ u8 hasSpecies:1;
+ u8 isEgg:1;
+ u8 unused:5;
+ /*0x14*/ u8 otName[OT_NAME_LENGTH];
+ /*0x1B*/ u8 markings;
+ /*0x1C*/ u16 checksum;
+ /*0x1E*/ u16 unknown;
union
{
u32 raw[12];
union PokemonSubstruct substructs[4];
} secure;
-};
+}; /*size = 0x50*/
struct Pokemon
{
- struct BoxPokemon box;
- u32 status;
- u8 level;
- u8 mail;
- u16 hp;
- u16 maxHP;
- u16 attack;
- u16 defense;
- u16 speed;
- u16 spAttack;
- u16 spDefense;
+ /*0x00*/ struct BoxPokemon box;
+ /*0x50*/ u32 status;
+ /*0x54*/ u8 level;
+ /*0x55*/ u8 mail;
+ /*0x56*/ u16 hp;
+ /*0x58*/ u16 maxHP;
+ /*0x5A*/ u16 attack;
+ /*0x5C*/ u16 defense;
+ /*0x5E*/ u16 speed;
+ /*0x60*/ u16 spAttack;
+ /*0x62*/ u16 spDefense;
};
struct UnknownPokemonStruct
@@ -294,73 +294,73 @@ struct UnknownPokemonStruct
struct BattlePokemon
{
- /* 0x00 */ u16 species;
- /* 0x02 */ u16 attack;
- /* 0x04 */ u16 defense;
- /* 0x06 */ u16 speed;
- /* 0x08 */ u16 spAttack;
- /* 0x0A */ u16 spDefense;
- /* 0x0C */ u16 moves[4];
- /* 0x14 */ u32 hpIV:5;
- /* 0x14 */ u32 attackIV:5;
- /* 0x15 */ u32 defenseIV:5;
- /* 0x15 */ u32 speedIV:5;
- /* 0x16 */ u32 spAttackIV:5;
- /* 0x17 */ u32 spDefenseIV:5;
- /* 0x17 */ u32 isEgg:1;
- /* 0x17 */ u32 altAbility:1;
- /* 0x18 */ s8 statStages[8];
- /* 0x20 */ u8 ability;
- /* 0x21 */ u8 type1;
- /* 0x22 */ u8 type2;
- /* 0x23 */ u8 unknown;
- /* 0x24 */ u8 pp[4];
- /* 0x28 */ u16 hp;
- /* 0x2A */ u8 level;
- /* 0x2B */ u8 friendship;
- /* 0x2C */ u16 maxHP;
- /* 0x2E */ u16 item;
- /* 0x30 */ u8 nickname[POKEMON_NAME_LENGTH + 1];
- /* 0x3B */ u8 ppBonuses;
- /* 0x3C */ u8 otName[8];
- /* 0x44 */ u32 experience;
- /* 0x48 */ u32 personality;
- /* 0x4C */ u32 status1;
- /* 0x50 */ u32 status2;
- /* 0x54 */ u32 otId;
+ /*0x00*/ u16 species;
+ /*0x02*/ u16 attack;
+ /*0x04*/ u16 defense;
+ /*0x06*/ u16 speed;
+ /*0x08*/ u16 spAttack;
+ /*0x0A*/ u16 spDefense;
+ /*0x0C*/ u16 moves[4];
+ /*0x14*/ u32 hpIV:5;
+ /*0x14*/ u32 attackIV:5;
+ /*0x15*/ u32 defenseIV:5;
+ /*0x15*/ u32 speedIV:5;
+ /*0x16*/ u32 spAttackIV:5;
+ /*0x17*/ u32 spDefenseIV:5;
+ /*0x17*/ u32 isEgg:1;
+ /*0x17*/ u32 altAbility:1;
+ /*0x18*/ s8 statStages[8];
+ /*0x20*/ u8 ability;
+ /*0x21*/ u8 type1;
+ /*0x22*/ u8 type2;
+ /*0x23*/ u8 unknown;
+ /*0x24*/ u8 pp[4];
+ /*0x28*/ u16 hp;
+ /*0x2A*/ u8 level;
+ /*0x2B*/ u8 friendship;
+ /*0x2C*/ u16 maxHP;
+ /*0x2E*/ u16 item;
+ /*0x30*/ u8 nickname[POKEMON_NAME_LENGTH + 1];
+ /*0x3B*/ u8 ppBonuses;
+ /*0x3C*/ u8 otName[8];
+ /*0x44*/ u32 experience;
+ /*0x48*/ u32 personality;
+ /*0x4C*/ u32 status1;
+ /*0x50*/ u32 status2;
+ /*0x54*/ u32 otId;
};
struct BaseStats
{
- /* 0x00 */ u8 baseHP;
- /* 0x01 */ u8 baseAttack;
- /* 0x02 */ u8 baseDefense;
- /* 0x03 */ u8 baseSpeed;
- /* 0x04 */ u8 baseSpAttack;
- /* 0x05 */ u8 baseSpDefense;
- /* 0x06 */ u8 type1;
- /* 0x07 */ u8 type2;
- /* 0x08 */ u8 catchRate;
- /* 0x09 */ u8 expYield;
- /* 0x0A */ u16 evYield_HP:2;
- /* 0x0A */ u16 evYield_Attack:2;
- /* 0x0A */ u16 evYield_Defense:2;
- /* 0x0A */ u16 evYield_Speed:2;
- /* 0x0B */ u16 evYield_SpAttack:2;
- /* 0x0B */ u16 evYield_SpDefense:2;
- /* 0x0C */ u16 item1;
- /* 0x0E */ u16 item2;
- /* 0x10 */ u8 genderRatio;
- /* 0x11 */ u8 eggCycles;
- /* 0x12 */ u8 friendship;
- /* 0x13 */ u8 growthRate;
- /* 0x14 */ u8 eggGroup1;
- /* 0x15 */ u8 eggGroup2;
- /* 0x16 */ u8 ability1;
- /* 0x17 */ u8 ability2;
- /* 0x18 */ u8 safariZoneFleeRate;
- /* 0x19 */ u8 bodyColor:7;
- u8 unk19_7:1;
+ /*0x00*/ u8 baseHP;
+ /*0x01*/ u8 baseAttack;
+ /*0x02*/ u8 baseDefense;
+ /*0x03*/ u8 baseSpeed;
+ /*0x04*/ u8 baseSpAttack;
+ /*0x05*/ u8 baseSpDefense;
+ /*0x06*/ u8 type1;
+ /*0x07*/ u8 type2;
+ /*0x08*/ u8 catchRate;
+ /*0x09*/ u8 expYield;
+ /*0x0A*/ u16 evYield_HP:2;
+ /*0x0A*/ u16 evYield_Attack:2;
+ /*0x0A*/ u16 evYield_Defense:2;
+ /*0x0A*/ u16 evYield_Speed:2;
+ /*0x0B*/ u16 evYield_SpAttack:2;
+ /*0x0B*/ u16 evYield_SpDefense:2;
+ /*0x0C*/ u16 item1;
+ /*0x0E*/ u16 item2;
+ /*0x10*/ u8 genderRatio;
+ /*0x11*/ u8 eggCycles;
+ /*0x12*/ u8 friendship;
+ /*0x13*/ u8 growthRate;
+ /*0x14*/ u8 eggGroup1;
+ /*0x15*/ u8 eggGroup2;
+ /*0x16*/ u8 ability1;
+ /*0x17*/ u8 ability2;
+ /*0x18*/ u8 safariZoneFleeRate;
+ /*0x19*/ u8 bodyColor:7;
+ u8 unk19_7:1;
};
struct BattleMove
@@ -378,10 +378,10 @@ struct BattleMove
struct PokemonStorage
{
- /* 0x00 */ u8 currentBox;
- /* 0x01 */ struct BoxPokemon boxes[14][30];
- u8 boxNames[14][9];
- u8 unkArray[14];
+ /*0x00*/ u8 currentBox;
+ /*0x01*/ struct BoxPokemon boxes[14][30];
+ u8 boxNames[14][9];
+ u8 unkArray[14];
};
struct Evolution
diff --git a/include/pokemon_summary_screen.h b/include/pokemon_summary_screen.h
index 3f7ed8fad..71259c887 100644
--- a/include/pokemon_summary_screen.h
+++ b/include/pokemon_summary_screen.h
@@ -3,7 +3,7 @@
extern const u8 *const gNatureNames[];
-void ShowPokemonSummaryScreen(struct Pokemon *, u8, u8, void (*)(u8), int);
+void ShowPokemonSummaryScreen(struct Pokemon *, u8, u8, void (*)(void), int);
void sub_809D9F0(struct Pokemon *party, u8, u8, void *, u32);
void sub_809D9F0(struct Pokemon *, u8, u8, void *, u32);
u8 sub_809FA30(void);
diff --git a/include/rom3.h b/include/rom3.h
index 8e99f8de4..a45ec7dc4 100644
--- a/include/rom3.h
+++ b/include/rom3.h
@@ -13,13 +13,53 @@ void sub_800C1A8(u8);
void sub_800C35C(void);
void sub_800C47C(u8);
void EmitGetAttributes(u8 a, u8 b, u8 c);
+void dp01_build_cmdbuf_x01_a_b_0(u8 a, u8 b, u8 c);
+void EmitSetAttributes(u8 a, u8 b, u8 c, u8 d, u8 *e);
void dp01_build_cmdbuf_x04_4_4_4(u8 a);
void sub_800C704(u8, u8, u8);
+void dp01_build_cmdbuf_x06_a(u8 a, u8 b);
void dp01_build_cmdbuf_x07_7_7_7(u8 a);
+void dp01_build_cmdbuf_x08_8_8_8(u8 a);
+void dp01_build_cmdbuf_x09_9_9_9(u8 a);
+void EmitFaintAnimation(u8 a);
+void dp01_build_cmdbuf_x0B_B_B_B(u8 a);
+void dp01_build_cmdbuf_x0C_C_C_C(u8 a);
+void dp01_build_cmdbuf_x0D_a(u8 a, u8 b);
+void EmitMoveAnimation(u8 a, u16 b, u8 c, u16 d, s32 e, u8 f, u8 *g);
+void EmitPrintString(u8 a, u16 b);
void dp01_build_cmdbuf_x12_a_bb(u8 a, u8 b, u16 c);
+void sub_800CBA4(u8 a, u8 b, u8 c, u8 *d);
+void sub_800CBE0(u8 a, u8 *b);
+void dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f(u8 a, u8 b, u8 c, u8 d, u8 *e);
+void dp01_build_cmdbuf_x17_17_17_17(u8 a);
+void EmitHealthBarUpdate(u8 a, s16 b);
+void EmitExpBarUpdate(u8 a, u8 b, s16 c);
+void EmitStatusIconUpdate(u8 a, u32 b, u32 c);
+void EmitStatusAnimation(u8 a, u8 b, u32 c);
+void EmitStatusXor(u8 a, u8 b);
void dp01_build_cmdbuf_x1D_1D_numargs_varargs(u8, u16, u8 *);
+void dp01_build_cmdbuf_x21_a_bb(u8 a, u8 b, u16 c);
+void dp01_build_cmdbuf_x22_a_three_bytes(u8 a, u8 b, u8 *c);
+void dp01_build_cmdbuf_x23_aa_0(u8 a, u16 b);
+void dp01_build_cmdbuf_x24_aa_0(u8 a, u16 b);
+void dp01_build_cmdbuf_x25_25_25_25(u8 a);
+void dp01_build_cmdbuf_x26_a(u8 a, u8 b);
+void dp01_build_cmdbuf_x27_27_27_27(u8 a);
+void dp01_build_cmdbuf_x28_28_28_28(u8 a);
+void EmitHitAnimation(u8 a);
+void dp01_build_cmdbuf_x2A_2A_2A_2A(u8 a);
+void EmitEffectivenessSound(u8 a, u16 b);
+void sub_800D074(u8 a, u16 b);
+void EmitFaintingCry(u8 a);
void EmitBattleIntroSlide(u8 a, u8 b);
void dp01_build_cmdbuf_x2F_2F_2F_2F(u8 a);
void dp01_build_cmdbuf_x30_TODO(u8 a, u8 *b, u8 c);
+void dp01_build_cmdbuf_x31_31_31_31(u8 a);
+void dp01_build_cmdbuf_x32_32_32_32(u8 a);
+void EmitSpriteInvisibility(u8 a, u8 b);
+void EmitBattleAnimation(u8 a, u8 b, u16 c);
+void EmitLinkStandbyMsg(u8 a, u8 b);
+void EmitResetActionMoveSelection(u8 a, u8 b);
+void dp01_build_cmdbuf_x37_a(u8 a, u8 b);
#endif // GUARD_ROM3_H
diff --git a/include/songs.h b/include/songs.h
index 8180ee67e..a813cc785 100644
--- a/include/songs.h
+++ b/include/songs.h
@@ -121,16 +121,16 @@ enum
/*0x73*/ SE_TB_KON,
/*0x74*/ SE_TB_KARA,
/*0x75*/ SE_BIDORO,
- SE_W085,
- SE_W085B,
- SE_W231,
- SE_W171,
- SE_W233,
- SE_W233B,
- SE_W145,
- SE_W145B,
- SE_W145C,
- SE_W240,
+ /*0x76*/ SE_W085,
+ /*0x77*/ SE_W085B,
+ /*0x78*/ SE_W231,
+ /*0x79*/ SE_W171,
+ /*0x7A*/ SE_W233,
+ /*0x7B*/ SE_W233B,
+ /*0x7C*/ SE_W145,
+ /*0x7D*/ SE_W145B,
+ /*0x7E*/ SE_W145C,
+ /*0x7F*/ SE_W240,
SE_W015,
SE_W081,
SE_W081B,