Document primary GameRecords struct members

This commit is contained in:
Rachel
2024-06-21 10:26:15 -07:00
parent 18d4b7b0e8
commit d7927ec43d
2 changed files with 13 additions and 10 deletions

View File

@@ -4,15 +4,18 @@
#include "struct_decls/pokedexdata_decl.h"
#include "savedata.h"
#define NUM_U32_RECORDS 71
#define NUM_U16_RECORDS 77
typedef struct GameRecords_sub1 {
u16 unk_00;
u16 unk_02;
} GameRecords_sub1;
typedef struct GameRecords {
u32 unk_00[71];
u16 unk_11C[77];
u16 unk_1B6;
u32 recordsU32[NUM_U32_RECORDS];
u16 recordsU16[NUM_U16_RECORDS];
u16 padding; // this should be added by the compiler, but is needed to match
GameRecords_sub1 unk_1B8;
} GameRecords;

View File

@@ -35,8 +35,8 @@ static void sub_0202CD94 (GameRecords * records, int param1)
return;
}
records->unk_1B8.unk_00 = sub_0201D5B8(&records->unk_00[1], sizeof(GameRecords) - sizeof(GameRecords_sub1) - sizeof(u32)) & 0xffff;
EncryptData(&records->unk_00[1], sizeof(GameRecords) - sizeof(GameRecords_sub1) - sizeof(u32), records->unk_1B8.unk_00 + (records->unk_1B8.unk_02 << 16));
records->unk_1B8.unk_00 = sub_0201D5B8(&records->recordsU32[1], sizeof(GameRecords) - sizeof(GameRecords_sub1) - sizeof(u32)) & 0xffff;
EncryptData(&records->recordsU32[1], sizeof(GameRecords) - sizeof(GameRecords_sub1) - sizeof(u32), records->unk_1B8.unk_00 + (records->unk_1B8.unk_02 << 16));
}
static void sub_0202CDC0 (GameRecords * records, int param1)
@@ -45,15 +45,15 @@ static void sub_0202CDC0 (GameRecords * records, int param1)
return;
}
DecryptData(&records->unk_00[1], sizeof(GameRecords) - sizeof(GameRecords_sub1) - sizeof(u32), records->unk_1B8.unk_00 + (records->unk_1B8.unk_02 << 16));
DecryptData(&records->recordsU32[1], sizeof(GameRecords) - sizeof(GameRecords_sub1) - sizeof(u32), records->unk_1B8.unk_00 + (records->unk_1B8.unk_02 << 16));
}
static u32 sub_0202CDE0 (const GameRecords * records, int param1)
{
if (param1 < ((70 + 1))) {
return records->unk_00[param1];
return records->recordsU32[param1];
} else if (param1 < ((49 + 28) + ((70 + 1)))) {
return records->unk_11C[param1 - ((70 + 1))];
return records->recordsU16[param1 - ((70 + 1))];
}
GF_ASSERT(0);
@@ -63,9 +63,9 @@ static u32 sub_0202CDE0 (const GameRecords * records, int param1)
static u32 sub_0202CE08 (GameRecords * records, int param1, u32 param2)
{
if (param1 < ((70 + 1))) {
records->unk_00[param1] = param2;
records->recordsU32[param1] = param2;
} else if (param1 < ((49 + 28) + ((70 + 1)))) {
records->unk_11C[param1 - ((70 + 1))] = param2;
records->recordsU16[param1 - ((70 + 1))] = param2;
} else {
GF_ASSERT(0);
}