Skip to content

Decompile overlay 18 (Pokedex app) part 1#430

Merged
adrienntindall merged 100 commits intopret:masterfrom
PikalaxALT:decomp/pokedex-app
Feb 14, 2026
Merged

Decompile overlay 18 (Pokedex app) part 1#430
adrienntindall merged 100 commits intopret:masterfrom
PikalaxALT:decomp/pokedex-app

Conversation

@PikalaxALT
Copy link
Collaborator

No description provided.

@PikalaxALT PikalaxALT self-assigned this Dec 24, 2025
@PikalaxALT PikalaxALT changed the title Decompile overlay 18 (Pokedex app) Decompile overlay 18 (Pokedex app) part 1 Jan 27, 2026
@PikalaxALT PikalaxALT marked this pull request as ready for review January 27, 2026 02:01
@PikalaxALT
Copy link
Collaborator Author

Marking phase 1 ready for review. More to come.

Copy link
Collaborator

@adrienntindall adrienntindall left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Most of this is nitpicks but there's a few documentation stuff I'd like addressed before merging, notably I want to start using pokedex instead of zukan because this code base will be used by a primarily english speaking audience.

s16 *playerYPos;
s16 *monYPos;
s16 *playerScale;
s16 *monScale;
} PokedexData; // size=0x18

struct PokedexData *PokedexData_Create(enum HeapID heapID);
void PokedexData_Delete(struct PokedexData *zkn);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Vestigial: zkn -> pokedexData

PokedexAppData_UnkSub0868_State06 *r4 = &pokedexApp->unk_0868.state_06;

switch (r4->unk_A) {
case 0: {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are the brackets necessary?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, the c standard forbids declaring the following two variables inside a switch case without this bracket

return POKEDEXAPP_MAINSEQ_14;
}
break;
case 13: {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are the brackets necessary?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Etc for file

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes to all

static void ov18_021EE26C(PokedexAppData *pokedexApp);
static void ov18_021EE314(PokedexAppData *pokedexApp);

static int (*const sMainSeqFuncs[POKEDEXAPP_MAINSEQ_MAX])(PokedexAppData *pokedexApp) = {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

While I feel that most functions in this array can be given names and documented properly, I have not used the pokedex nearly enough to know half of what's going on at a glance, so I will differ to your judgement on whether there's enough information to document these

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

will do a naming pass once the overlay is finished

return POKEDEXAPP_MAINSEQ_26;
}

static int PokedexApp_MainSeq_52(PokedexAppData *pokedexApp) {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this the dex search screen wait for input function?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not sure yet, will figure it out later

int ov18_021E5904(int a0);
int ov18_021E5908(void);

NarcId ov18_021E5900(void) {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

GetFootprintNARCId

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

will do a naming pass once the overlay is finished

@PikalaxALT
Copy link
Collaborator Author

Blame the ugly style changes to elfcoder and ds_protect on the clang-format pre-commit hook.

@adrienntindall adrienntindall merged commit 99dd028 into pret:master Feb 14, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants