summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/battle_tower.h38
-rw-r--r--include/cable_club.h13
-rw-r--r--include/field_screen.h1
-rw-r--r--include/fldeff_80F9BCC.h2
-rw-r--r--include/global.h8
-rw-r--r--include/lilycove_lady.h2
-rw-r--r--include/link.h8
-rw-r--r--include/load_save.h3
-rw-r--r--include/mauville_old_man.h4
-rw-r--r--include/mystery_event_script.h1
-rw-r--r--include/overworld.h1
-rw-r--r--include/record_mixing.h26
-rw-r--r--include/save.h3
-rw-r--r--include/secret_base.h2
-rw-r--r--include/strings.h2
-rw-r--r--include/tv.h2
16 files changed, 111 insertions, 5 deletions
diff --git a/include/battle_tower.h b/include/battle_tower.h
index 25b439c1b..7bacf5249 100644
--- a/include/battle_tower.h
+++ b/include/battle_tower.h
@@ -1,6 +1,44 @@
#ifndef GUARD_BATTLE_TOWER_H
#define GUARD_BATTLE_TOWER_H
+struct RSBattleTowerRecord {
+ /*0x00*/ u8 battleTowerLevelType; // 0 = level 50, 1 = level 100
+ /*0x01*/ u8 trainerClass;
+ /*0x02*/ u16 winStreak;
+ /*0x04*/ u8 name[8];
+ /*0x0C*/ u8 trainerId[4];
+ /*0x10*/ struct {
+ u16 easyChat[6];
+ } greeting;
+ /*0x1C*/ struct UnknownPokemonStruct party[3];
+ /*0xA0*/ u32 checksum;
+ /*0xA4*/ u16 unk_11c8;
+};
+
+struct EmeraldBattleTowerRecord {
+ /*0x00*/ u8 battleTowerLevelType; // 0 = level 50, 1 = level 100
+ /*0x01*/ u8 trainerClass;
+ /*0x02*/ u16 winStreak;
+ /*0x04*/ u8 name[8];
+ /*0x0C*/ u8 trainerId[4];
+ /*0x10*/ struct {
+ u16 easyChat[6];
+ } greeting;
+ /*0x1C*/ u8 filler_1c[0x18];
+ /*0x34*/ struct UnknownPokemonStruct party[4];
+ /*0xe4*/ u8 language;
+ u8 filler_e5[7];
+};
+
+union BattleTowerRecord {
+ struct RSBattleTowerRecord ruby_sapphire;
+ struct EmeraldBattleTowerRecord emerald;
+};
+
u16 sub_8164FCC(u8, u8);
+void sub_81659DC(union BattleTowerRecord *a0, union BattleTowerRecord *a1);
+bool32 sub_816587C(union BattleTowerRecord *, union BattleTowerRecord *);
+bool32 sub_8164F70(union BattleTowerRecord *);
+void sub_81628A0(union BattleTowerRecord *);
#endif //GUARD_BATTLE_TOWER_H
diff --git a/include/cable_club.h b/include/cable_club.h
new file mode 100644
index 000000000..44831235c
--- /dev/null
+++ b/include/cable_club.h
@@ -0,0 +1,13 @@
+#ifndef GUARD_CABLE_CLUB_H
+#define GUARD_CABLE_CLUB_H
+
+// Exported type declarations
+
+// Exported RAM declarations
+
+// Exported ROM declarations
+
+void sub_80B37D4(TaskFunc taskFunc);
+u8 sub_80B3050(void);
+
+#endif //GUARD_CABLE_CLUB_H
diff --git a/include/field_screen.h b/include/field_screen.h
index cfc0d081f..5d6240f8b 100644
--- a/include/field_screen.h
+++ b/include/field_screen.h
@@ -9,6 +9,7 @@
void pal_fill_black(void);
bool8 sub_80ABDFC(void);
void sub_80AF168(void);
+void sub_80AF2B4(u8 taskId);
void UpdateWeatherPerDay(u16 days);
#endif //GUARD_FIELD_SCREEN_H
diff --git a/include/fldeff_80F9BCC.h b/include/fldeff_80F9BCC.h
index d57665c68..a210b8545 100644
--- a/include/fldeff_80F9BCC.h
+++ b/include/fldeff_80F9BCC.h
@@ -9,6 +9,8 @@
void sub_80FA5E4(s16 id, s16 x, s16 y);
void sub_80FA794(s16 x, s16 y);
+void sub_80FB00C(void);
+void sub_80FB074(void);
void overworld_poison_effect(void);
#endif //GUARD_FLDEFF_80F9BCC_H
diff --git a/include/global.h b/include/global.h
index 0e5615eb0..308fb4d42 100644
--- a/include/global.h
+++ b/include/global.h
@@ -250,7 +250,8 @@ struct SaveBlock2
/*0xAC*/ u32 encryptionKey;
// TODO: fix and verify labels
- /*0xB0*/ u8 field_B0[316];
+ /*0xB0*/ u8 field_B0[0x2c];
+ /*0xDC*/ u8 field_0DC[0x110];
/*0x1EC*/ struct BerryCrush berryCrush;
/*0x1FC*/ struct PokemonJumpResults pokeJump;
/*0x20C*/ struct BerryPickingResults berryPick;
@@ -587,12 +588,13 @@ struct LilycoveLadyContest
/*0x00e*/ u8 language;
};
-typedef union // TODO
+typedef union
{
struct LilycoveLadyQuiz quiz;
struct LilycoveLadyFavour favour;
struct LilycoveLadyContest contest;
u8 id;
+ u8 pad[0x40];
} LilycoveLady;
struct WaldaPhrase
@@ -689,7 +691,7 @@ struct SaveBlock1
/*0x3B14*/ struct RecordMixingGift recordMixingGift;
/*0x3B24*/ u8 seen2[52];
/*0x3B58*/ LilycoveLady lilycoveLady;
- /*0x3B88*/ u8 filler_3B88[0x1E8];
+ /*0x3B98*/ u8 filler_3B88[0x1D8];
/*0x3D70*/ struct WaldaPhrase waldaPhrase;
// sizeof: 0x3D88
};
diff --git a/include/lilycove_lady.h b/include/lilycove_lady.h
index 084e5722e..f26285d68 100644
--- a/include/lilycove_lady.h
+++ b/include/lilycove_lady.h
@@ -6,7 +6,7 @@ void SetLilycoveLady(void);
void sub_818DA78(void);
void sub_818DEF4(void);
void sub_818E564(void);
-void sub_818E570(const struct LilycoveLadyQuiz *quiz);
+void sub_818E570(const LilycoveLady *lilycoveLady);
bool8 GivePokeblockToContestLady(struct Pokeblock *pokeblock);
void sub_818E7E0(u8 *dest1, u8 *dest2);
void sub_818E81C(u8 *dest);
diff --git a/include/link.h b/include/link.h
index 1c9795d29..709bdc399 100644
--- a/include/link.h
+++ b/include/link.h
@@ -193,6 +193,14 @@ void OpenLink(void);
void sub_800A620(void);
void sub_8011BD0(void);
void sub_800AC34(void);
+bool32 Link_AnyPartnersPlayingRubyOrSapphire(void);
+bool32 sub_800A03C(void);
+void sub_8009628(u8);
+u8 sub_800AA48(void);
+void sub_8009FAC(void);
+void sub_800A4D8(u8);
+u8 sub_800A9D8(void);
+bool8 sub_801048C(u8);
u8 sub_800A0C8(s32, s32);
#endif // GUARD_LINK_H
diff --git a/include/load_save.h b/include/load_save.h
index 1f406bbad..ba85d4ad8 100644
--- a/include/load_save.h
+++ b/include/load_save.h
@@ -19,6 +19,7 @@ void LoadSerializedGame(void);
void LoadPlayerBag(void);
void SavePlayerBag(void);
void SetSaveBlocksPointers(u16);
-void MoveSaveBlocks_ResetHeap(void);
+void sub_8076D5C(void);
+void sav2_gender2_inplace_and_xFE(void);
#endif // GUARD_LOAD_SAVE_H
diff --git a/include/mauville_old_man.h b/include/mauville_old_man.h
index aefc76083..0c0ed624a 100644
--- a/include/mauville_old_man.h
+++ b/include/mauville_old_man.h
@@ -4,5 +4,9 @@
void SetMauvilleOldMan(void);
u8 sub_81201C8(void);
+void sub_8120B70(OldMan *dest);
+void sub_8120D34(OldMan *dest, u8 version, u16 language);
+void sub_8120CD0(OldMan *dest, u8 version, u16 language);
+void sub_8120670(void);
#endif // GUARD_MAUVILLE_OLD_MAN_H
diff --git a/include/mystery_event_script.h b/include/mystery_event_script.h
index 991cab53a..0857c7188 100644
--- a/include/mystery_event_script.h
+++ b/include/mystery_event_script.h
@@ -6,5 +6,6 @@ bool32 sub_8153884(u32 *a0);
u32 RunMysteryEventScript(u8 *script);
void SetMysteryEventScriptStatus(u32 val);
u16 GetRecordMixingGift(void);
+u16 GetRecordMixingGift(void);
#endif // GUARD_MYSTERY_EVENT_SCRIPT_H
diff --git a/include/overworld.h b/include/overworld.h
index 974f8f091..b7ed920db 100644
--- a/include/overworld.h
+++ b/include/overworld.h
@@ -70,6 +70,7 @@ void warp1_set_2(s8 mapGroup, s8 mapNum, s8 warpNum);
void c2_load_new_map(void);
void copy_saved_warp2_bank_and_enter_x_to_warp1(u8 unused);
void mapldr_default(void);
+void sub_808729C(void);
u8 get_map_light_from_warp0(void);
bool8 is_light_level_1_2_3_5_or_6(u8 a1);
diff --git a/include/record_mixing.h b/include/record_mixing.h
new file mode 100644
index 000000000..e327d1510
--- /dev/null
+++ b/include/record_mixing.h
@@ -0,0 +1,26 @@
+#ifndef GUARD_RECORD_MIXING_H
+#define GUARD_RECORD_MIXING_H
+
+// Exported type declarations
+
+struct DayCareMailRecordMixing {
+ struct MailStruct mail;
+ u8 OT_name[OT_NAME_LENGTH + 1];
+ u8 monName[11];
+ u8 language_maybe:4;
+ u8 unknown:4;
+};
+
+struct UnkStruct_80E7B60 {
+ struct DayCareMailRecordMixing unk_00[2];
+ u32 unk_70;
+ u16 unk_74[2];
+}; // size = 0x78
+
+// Exported RAM declarations
+
+// Exported ROM declarations
+
+void sub_80E8260(void *);
+
+#endif //GUARD_RECORD_MIXING_H
diff --git a/include/save.h b/include/save.h
index 3bd1ff8cf..df03c4183 100644
--- a/include/save.h
+++ b/include/save.h
@@ -90,6 +90,9 @@ u8 sub_8153430(void);
bool8 sub_8153474(void);
u8 sub_81534D0(u8 a1);
u16 sub_815355C(void);
+u8 sub_81534D0(u8);
+u8 sub_8153430(void);
+bool8 sub_8153474(void);
u32 TryCopySpecialSaveSection(u8 sector, u8* dst);
u32 sub_8153634(u8 sector, u8* src);
void sub_8153688(u8 taskId);
diff --git a/include/secret_base.h b/include/secret_base.h
index b2502889c..91e7083b3 100644
--- a/include/secret_base.h
+++ b/include/secret_base.h
@@ -8,6 +8,8 @@
// Exported ROM declarations
void sub_80E9578(void);
void sub_80E980C(void);
+void sub_80EB18C(struct SecretBaseRecord *dest);
+void sub_80E9914(void);
u8 *GetSecretBaseMapName(u8 *dest);
const u8 *GetSecretBaseTrainerLoseText(void);
diff --git a/include/strings.h b/include/strings.h
index 6d569e57a..9c7f9e4f0 100644
--- a/include/strings.h
+++ b/include/strings.h
@@ -101,6 +101,8 @@ extern const u8 gText_NoRegistry[];
extern const u8 gText_OkayToDeleteFromRegistry[];
extern const u8 gText_RegisteredDataDeleted[];
extern const u8 gUnknown_085EA79D[];
+extern const u8 gText_MixingRecords[];
+extern const u8 gText_RecordMixingComplete[];
extern const u8 gText_EmptyString2[];
extern const u8 gText_Confirm3[];
extern const u8 gText_Cancel4[];
diff --git a/include/tv.h b/include/tv.h
index eca11385e..e0f3e2b0d 100644
--- a/include/tv.h
+++ b/include/tv.h
@@ -13,6 +13,8 @@ void sub_80EE184(void);
void sub_80EEA70(void);
void sub_80F14F8(TVShow *shows);
size_t sub_80EF370(int value);
+void sub_80F1208(TVShow *dest);
+void sub_80F0BB8(void);
bool8 Put3CheersForPokeblocksOnTheAir(const u8 *partnersName, u8 flavor, u8 unused, u8 sheen, u8 language);
void SetPokemonAnglerSpecies(u16 species);
void UpdateTVShowsPerDay(u16 days);