Decompile naming_screen.c
This commit is contained in:
@@ -78,5 +78,6 @@ void FieldEffectStop(struct Sprite *sprite, u8 id);
|
||||
u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer);
|
||||
void sub_80B7FC8(void);
|
||||
void FieldEffectActiveListRemove(u8 id);
|
||||
void MultiplyInvertedPaletteRGBComponents(u16, u8, u8, u8);
|
||||
|
||||
#endif //GUARD_FIELD_EFFECTS_H
|
||||
|
||||
@@ -34,5 +34,6 @@ void sub_808BCE8(void);
|
||||
|
||||
void sub_808D074(u8);
|
||||
void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr);
|
||||
u8 GetRivalAvatarGraphicsIdByStateIdAndGender(u8, u8);
|
||||
|
||||
#endif //GUARD_FIELD_PLAYER_AVATAR_H
|
||||
|
||||
@@ -2,5 +2,7 @@
|
||||
#define GUARD_FIELD_SPECIALS_H
|
||||
|
||||
u8 GetLeadMonIndex(void);
|
||||
u8 sub_813B260(void);
|
||||
u16 get_unknown_box_id(void);
|
||||
|
||||
#endif // GUARD_FIELD_SPECIALS_H
|
||||
|
||||
@@ -122,6 +122,27 @@
|
||||
|
||||
#define DmaFillLarge32(dmaNum, value, dest, size, block) DmaFillLarge(dmaNum, value, dest, size, block, 32)
|
||||
|
||||
#define DmaClearLarge(dmaNum, dest, size, block, bit) \
|
||||
{ \
|
||||
void *_dest = dest; \
|
||||
u32 _size = size; \
|
||||
while (1) \
|
||||
{ \
|
||||
DmaFill##bit(dmaNum, 0, _dest, (block)); \
|
||||
_dest += (block); \
|
||||
_size -= (block); \
|
||||
if (_size <= (block)) \
|
||||
{ \
|
||||
DmaFill##bit(dmaNum, 0, _dest, _size); \
|
||||
break; \
|
||||
} \
|
||||
} \
|
||||
}
|
||||
|
||||
#define DmaClearLarge16(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 16)
|
||||
|
||||
#define DmaClearLarge32(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 32)
|
||||
|
||||
#define DmaCopyDefvars(dmaNum, src, dest, size, bit) \
|
||||
{ \
|
||||
const void *_src = src; \
|
||||
|
||||
@@ -60,5 +60,7 @@ void SetSerialCallback(IntrCallback callback);
|
||||
void InitFlashTimer(void);
|
||||
void DoSoftReset(void);
|
||||
void ClearPokemonCrySongs(void);
|
||||
void StartTimer1(void);
|
||||
void SeedRngAndSetTrainerId(void);
|
||||
|
||||
#endif // GUARD_MAIN_H
|
||||
|
||||
@@ -1,12 +1,91 @@
|
||||
#ifndef GUARD_NAMING_SCREEN_H
|
||||
#define GUARD_NAMING_SCREEN_H
|
||||
|
||||
#define NAMING_SCREEN_PLAYER 0
|
||||
#define NAMING_SCREEN_BOX 1
|
||||
#define NAMING_SCREEN_CAUGHT_MON 2
|
||||
#define NAMING_SCREEN_3 3
|
||||
#define NAMING_SCREEN_WALDA 4
|
||||
#include "main.h"
|
||||
|
||||
void DoNamingScreen(u8 caseId, u8* dst, u16 monSpecies, u8 monGender, u32 monPersonality, void (*callback)(void));
|
||||
#define KBEVENT_NONE 0
|
||||
#define KBEVENT_PRESSED_A 5
|
||||
#define KBEVENT_PRESSED_B 6
|
||||
#define KBEVENT_PRESSED_SELECT 8
|
||||
#define KBEVENT_PRESSED_START 9
|
||||
|
||||
enum
|
||||
{
|
||||
NAMING_SCREEN_PLAYER,
|
||||
NAMING_SCREEN_BOX,
|
||||
NAMING_SCREEN_CAUGHT_MON,
|
||||
NAMING_SCREEN_3,
|
||||
NAMING_SCREEN_WALDA,
|
||||
};
|
||||
|
||||
struct NamingScreenTemplate
|
||||
{
|
||||
u8 unk0;
|
||||
u8 maxChars;
|
||||
u8 unk2;
|
||||
u8 unk3;
|
||||
u8 unk4; //mode?
|
||||
u8 unk5;
|
||||
u8 unk6;
|
||||
u8 unk7;
|
||||
const u8 *title;
|
||||
};
|
||||
|
||||
struct NamingScreenData {
|
||||
/*0x0*/ u8 tilemapBuffer1[0x800];
|
||||
/*0x800*/ u8 tilemapBuffer2[0x800];
|
||||
/*0x800*/ u8 tilemapBuffer3[0x800];
|
||||
/*0x1800*/ u8 textBuffer[0x10];
|
||||
/*0x1810*/ u8 tileBuffer[0x600];
|
||||
/*0x1E10*/ u8 state;
|
||||
/*0x1E11*/ u8 windows[5];
|
||||
/*0x1E16*/ u16 unk1E16;
|
||||
/*0x1E18*/ u16 bg1vOffset;
|
||||
/*0x1E1A*/ u16 bg2vOffset;
|
||||
/*0x1E1C*/ u16 unk1E1C;
|
||||
/*0x1E1E*/ u16 unk1E1E;
|
||||
/*0x1E20*/ u8 unk1E20;
|
||||
/*0x1E21*/ u8 unk1E21;
|
||||
/*0x1E22*/ u8 currentPage;
|
||||
/*0x1E23*/ u8 cursorSpriteId;
|
||||
/*0x1E24*/ u8 unk1E24;
|
||||
/*0x1E25*/ u8 unk1E25;
|
||||
/*0x1E28*/ const struct NamingScreenTemplate *template;
|
||||
/*0x1E2C*/ u8 templateNum;
|
||||
/*0x1E30*/ u8 *destBuffer;
|
||||
/*0x1E34*/ u16 unk1E34;
|
||||
/*0x1E36*/ u16 unk1E36;
|
||||
/*0x1E38*/ u32 unk1E38;
|
||||
/*0x1E3C*/ MainCallback returnCallback;
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
PAGE_UPPER,
|
||||
PAGE_LOWER,
|
||||
PAGE_OTHERS,
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
MAIN_STATE_BEGIN_FADE_IN,
|
||||
MAIN_STATE_WAIT_FADE_IN,
|
||||
MAIN_STATE_HANDLE_INPUT,
|
||||
MAIN_STATE_MOVE_TO_OK_BUTTON,
|
||||
MAIN_STATE_START_PAGE_SWAP,
|
||||
MAIN_STATE_WAIT_PAGE_SWAP,
|
||||
MAIN_STATE_6,
|
||||
MAIN_STATE_UPDATE_SENT_TO_PC_MESSAGE,
|
||||
MAIN_STATE_BEGIN_FADE_OUT,
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
INPUT_STATE_DISABLED,
|
||||
INPUT_STATE_ENABLED,
|
||||
INPUT_STATE_2,
|
||||
};
|
||||
|
||||
void DoNamingScreen(u8 templateNum, u8 *destBuffer, u16 monSpecies, u16 monGender, u32 monPersonality, MainCallback returnCallback);
|
||||
|
||||
#endif // GUARD_NAMING_SCREEN_H
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
#include "text.h"
|
||||
#include "task.h"
|
||||
|
||||
void sub_81971D0(void);
|
||||
void sub_8197200(void);
|
||||
void sub_81973A4(void);
|
||||
void sub_81973C4(u8, u8);
|
||||
void sub_819746C(u8 windowId, bool8 copyToVram);
|
||||
|
||||
@@ -5,9 +5,11 @@ const u8 *GetMonIconPtr(u16 speciesId, u32 personality, u32 frameNo);
|
||||
const u16 *GetValidMonIconPalettePtr(u16 speciesId);
|
||||
u16 GetUnownLetterByPersonality(u32 personality);
|
||||
u16 sub_80D2E84(u16 speciesId);
|
||||
void sub_80D2F04(void);
|
||||
void sub_80D2F68(u16 iconId);
|
||||
u8 sub_80D2D78(u16 iconId, void callback(struct Sprite *), u16 x, u16 y, u16 a4, u8 a5);
|
||||
void sub_80D2FF0(u16 iconId);
|
||||
void sub_80D2EF8(struct Sprite *sprite);
|
||||
u8 CreateMonIcon(u16 species, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority, u32 personality, int a7);
|
||||
|
||||
#endif // GUARD_POKEMON_ICON_H
|
||||
|
||||
@@ -199,4 +199,7 @@ extern const u8 gText_Frame[];
|
||||
extern const u8 gText_OptionMenuCancel[];
|
||||
extern const u8 gText_ButtonMode[];
|
||||
|
||||
extern const u8 gText_MaleSymbol[];
|
||||
extern const u8 gText_FemaleSymbol[];
|
||||
|
||||
#endif //GUARD_STRINGS_H
|
||||
|
||||
@@ -185,6 +185,13 @@ struct __attribute__((packed)) TextColor
|
||||
u8 shadowColor;
|
||||
};
|
||||
|
||||
struct AlignedTextColor // because sometimes it's necessary
|
||||
{
|
||||
u8 fgColor;
|
||||
u8 bgColor;
|
||||
u8 shadowColor;
|
||||
};
|
||||
|
||||
extern u8 gStringVar1[];
|
||||
extern u8 gStringVar2[];
|
||||
extern u8 gStringVar3[];
|
||||
|
||||
Reference in New Issue
Block a user