summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/engine/naming_screen.c2
-rw-r--r--src/field/use_pokeblock.c1
-rw-r--r--src/pokemon/pokemon_storage_system.c47
-rw-r--r--src/pokenav_before.c5
4 files changed, 48 insertions, 7 deletions
diff --git a/src/engine/naming_screen.c b/src/engine/naming_screen.c
index 440504d5a..6f34fd678 100644
--- a/src/engine/naming_screen.c
+++ b/src/engine/naming_screen.c
@@ -26,8 +26,6 @@
#define COLUMN_COUNT 10
#endif
-extern u16 gKeyRepeatStartDelay;
-
extern u8 CreateMonIcon(u16 species, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority, u32 personality);
const u8 gSpriteImage_83CE094[] = INCBIN_U8("graphics/naming_screen/pc_icon/0.4bpp");
diff --git a/src/field/use_pokeblock.c b/src/field/use_pokeblock.c
index 7253ac901..354193c14 100644
--- a/src/field/use_pokeblock.c
+++ b/src/field/use_pokeblock.c
@@ -104,7 +104,6 @@ static EWRAM_DATA struct Pokeblock *gUnknown_0203930C = NULL;
EWRAM_DATA u8 gPokeblockMonID = 0;
EWRAM_DATA s16 gPokeblockGain = 0;
-extern u16 gKeyRepeatStartDelay;
extern u16 gSpecialVar_ItemId; // FIXME: remove after merge of #349 Pokeblock
static void launch_c3_walk_stairs_and_run_once(void (*const)(void));
diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c
index 30c0f2b67..9e559354b 100644
--- a/src/pokemon/pokemon_storage_system.c
+++ b/src/pokemon/pokemon_storage_system.c
@@ -24,9 +24,17 @@ struct PSS_MenuStringPtrs {
const u8 *desc;
};
+struct UnkStruct_2000020 {
+ struct UnkStruct_2000020 *unk_00;
+ u8 unk_04;
+ u8 unk_05;
+};
+
struct PokemonStorageSystemData {
u8 filler_0000[5];
u8 unk_0005;
+ u8 filler_0006[26];
+ struct UnkStruct_2000020 unk_0020[100]; // refine size later
};
struct UnkPSSStruct_2002370 {
@@ -53,6 +61,8 @@ void sub_8096784(struct Sprite *sprite);
void task_intro_29(u8 whichMenu);
void sub_8096884(void);
struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4);
+void sub_809B0D4(void);
+void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 * a1, u8 a2);
const struct PSS_MenuStringPtrs gUnknown_083B600C[] = {
{PCText_WithdrawPoke, PCText_MovePokeToParty},
@@ -112,6 +122,7 @@ EWRAM_DATA u8 gUnknown_02038474;
EWRAM_DATA struct UnkPSSStruct_2002370 *gUnknown_02038478;
EWRAM_DATA u8 gUnknown_0203847C;
EWRAM_DATA u8 gUnknown_0203847D;
+EWRAM_DATA u8 gUnknown_0203847E;
static u8 CountPokemonInBoxN(u8 boxId)
{
@@ -753,6 +764,42 @@ void task_intro_29(u8 whichMenu)
SetMainCallback2(sub_8096884);
}
+void sub_80967DC(void)
+{
+ REG_BG0HOFS = 0;
+ REG_BG0VOFS = 0;
+ REG_BG1HOFS = 0;
+ REG_BG1VOFS = 0;
+ REG_BG2VOFS = 0;
+ REG_BG2HOFS = 0;
+ REG_BG3HOFS = 0;
+ REG_BG3VOFS = 0;
+}
+
+void sub_8096804(void)
+{
+ ResetPaletteFade();
+ ResetSpriteData();
+ FreeSpriteTileRanges();
+ FreeAllSpritePalettes();
+ ResetTasks();
+ gReservedSpriteTileCount = 0x280;
+ sub_809CFDC(ePokemonStorageSystem.unk_0020, ePokemonStorageSystem.unk_0020 + 1, 8);
+ gKeyRepeatStartDelay = 20;
+}
+
+void sub_8096848(void)
+{
+ sub_809B0D4();
+ gUnknown_0203847C = (ePokemonStorageSystem.unk_0005 == 1 ? 1 : 0);
+ gUnknown_0203847E = 0;
+}
+
+void sub_8096874(void)
+{
+ REG_DISPCNT = DISPCNT_OBJ_1D_MAP | DISPCNT_BG_ALL_ON | DISPCNT_OBJ_ON;
+}
+
asm(".section .text.8098898");
void sub_8098898(u8 index) {
diff --git a/src/pokenav_before.c b/src/pokenav_before.c
index 7693cba7d..53f17b211 100644
--- a/src/pokenav_before.c
+++ b/src/pokenav_before.c
@@ -294,9 +294,6 @@ extern void sub_80F5BF0();
extern void sub_80F6F64();
extern void sub_80F19FC();
-extern u16 gKeyRepeatStartDelay;
-
-
void sub_80EBA5C() {
switch (gMain.state) {
default:
@@ -378,7 +375,7 @@ void sub_80EBC10() {
u16 i;
u16 *var1;
- gKeyRepeatStartDelay = 0x14;
+ gKeyRepeatStartDelay = 20;
ewram0_10.playerPartyCount = CalculatePlayerPartyCount();
ewram0_10.var6ddc = 0;
ewram0_10.var9344 = 0;