summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2019-04-04 11:55:18 -0400
committerhuderlem <huderlem@gmail.com>2019-04-04 19:26:45 -0500
commitc46f271f676812b7292560f36f890010c71ef5d1 (patch)
treee5939edc3bc7de5b3c7d105b9e46625f7774ae3d /src
parentb3a4509b9a884fa5ac9619e425de498f961fe9e6 (diff)
Documentation of ereader_helpers, 1
Diffstat (limited to 'src')
-rwxr-xr-xsrc/ereader_helpers.c69
-rwxr-xr-xsrc/ereader_screen.c4
-rw-r--r--src/recorded_battle.c4
-rw-r--r--src/save.c10
-rw-r--r--src/trainer_hill.c2
5 files changed, 44 insertions, 45 deletions
diff --git a/src/ereader_helpers.c b/src/ereader_helpers.c
index cdb829ac8..48c41301e 100755
--- a/src/ereader_helpers.c
+++ b/src/ereader_helpers.c
@@ -26,17 +26,17 @@ static void sub_81D414C(void);
static void sub_81D3F1C(u32, u32*, u32*);
static void sub_81D3F68(void);
-extern struct Unknown030012C8 gUnknown_030012C8;
-extern u16 gUnknown_030012E0;
-extern u16 gUnknown_030012E2;
-extern u16 gUnknown_030012E4;
-extern u16 gUnknown_030012E6;
-extern u32 gUnknown_030012E8;
-extern u16 gUnknown_030012EC;
-extern u16 gUnknown_030012EE;
-extern u16 gUnknown_030012F0;
-extern u16 gUnknown_030012F2;
-extern u16 gUnknown_030012F4;
+IWRAM_DATA struct Unknown030012C8 gUnknown_030012C8;
+IWRAM_DATA u16 gUnknown_030012E0;
+IWRAM_DATA u16 gUnknown_030012E2;
+IWRAM_DATA u16 gUnknown_030012E4;
+IWRAM_DATA u16 gUnknown_030012E6;
+IWRAM_DATA u32 gUnknown_030012E8;
+IWRAM_DATA u16 gUnknown_030012EC;
+IWRAM_DATA u16 gUnknown_030012EE;
+IWRAM_DATA u16 gUnknown_030012F0;
+IWRAM_DATA u16 gUnknown_030012F2;
+IWRAM_DATA u16 gUnknown_030012F4;
extern const u8 gUnknown_08625B6C[];
@@ -45,7 +45,7 @@ static u8 sub_81D38D4(void)
return (gSaveBlock1Ptr->trainerHill.unused + 1) % 256;
}
-static bool32 sub_81D38FC(struct Unk81D38FC *arg0)
+static bool32 Struct_Unk81D38FC_ValidateChecksum(struct Unk81D38FC *arg0)
{
int checksum = CalcByteArraySum(arg0->unk0, 0x270);
if (checksum != arg0->checksum)
@@ -54,43 +54,42 @@ static bool32 sub_81D38FC(struct Unk81D38FC *arg0)
return TRUE;
}
-bool8 sub_81D3920(u8 *buffer)
+bool8 EReader_IsReceivedDataValid(struct EReaderTrainerHillSet *buffer)
{
u32 i;
u32 checksum;
- int var0 = buffer[0];
+ int var0 = buffer->unk_0;
if (var0 < 1 || var0 > 8)
return FALSE;
for (i = 0; i < var0; i++)
{
- struct Unk81D38FC *var1 = (struct Unk81D38FC *)(&buffer[i * (sizeof(struct Unk81D38FC)) + 8]);
- if (!sub_81D38FC(var1))
+ if (!Struct_Unk81D38FC_ValidateChecksum(&buffer->unk_8[i]))
return FALSE;
}
- checksum = CalcByteArraySum(buffer + 8, var0 * 0x274);
- if (checksum != ((int *)buffer)[1])
+ checksum = CalcByteArraySum((u8 *)buffer->unk_8, var0 * sizeof(struct Unk81D38FC));
+ if (checksum != buffer->checksum)
return FALSE;
return TRUE;
}
-static bool32 sub_81D396C(u8 *buffer)
+static bool32 TrainerHill_VerifyChecksum(struct EReaderTrainerHillSet *buffer)
{
u32 checksum;
- int var0 = buffer[0];
+ int var0 = buffer->unk_0;
if (var0 < 1 || var0 > 8)
return FALSE;
- checksum = CalcByteArraySum(buffer + 8, 0xEE0);
- if (checksum != ((int *)buffer)[1])
+ checksum = CalcByteArraySum((u8 *)buffer->unk_8, sizeof(struct EReaderTrainerHillSet) - offsetof(struct EReaderTrainerHillSet, unk_8));
+ if (checksum != buffer->checksum)
return FALSE;
return TRUE;
}
-static bool32 sub_81D3998(struct Unk81D38FC *arg0, u8 *buffer2)
+static bool32 TryWriteTrainerHill_r(struct Unk81D38FC *arg0, u8 *buffer2)
{
int i;
const u8 *ereaderVals;
@@ -131,44 +130,44 @@ static bool32 sub_81D3998(struct Unk81D38FC *arg0, u8 *buffer2)
}
((int *)buffer2)[1] = CalcByteArraySum(buffer2 + 8, 0xEE0);
- if (sub_8153634(SECTOR_ID_TRAINER_HILL, buffer2) != 1)
+ if (TryWriteSpecialSaveSection(SECTOR_ID_TRAINER_HILL, (u8 *)buffer2) != 1)
return FALSE;
return TRUE;
}
-bool32 sub_81D3AB0(struct Unk81D38FC *arg0)
+bool32 TryWriteTrainerHill(struct Unk81D38FC *arg0)
{
u8 *var0 = AllocZeroed(0x1000);
- bool32 result = sub_81D3998(arg0, var0);
+ bool32 result = TryWriteTrainerHill_r(arg0, var0);
Free(var0);
return result;
}
-static bool32 sub_81D3AD8(u8 *arg0, u8 *arg1)
+static bool32 TryReadTrainerHill_r(struct EReaderTrainerHillSet *arg0, u8 *arg1)
{
- if (TryCopySpecialSaveSection(SECTOR_ID_TRAINER_HILL, arg1) != 1)
+ if (TryReadSpecialSaveSection(SECTOR_ID_TRAINER_HILL, arg1) != 1)
return FALSE;
- memcpy(arg0, arg1, 0xEE8);
- if (!sub_81D396C(arg0))
+ memcpy(arg0, arg1, sizeof(struct EReaderTrainerHillSet));
+ if (!TrainerHill_VerifyChecksum(arg0))
return FALSE;
return TRUE;
}
-static bool32 sub_81D3B0C(u8 *arg0)
+static bool32 TryReadTrainerHill(struct EReaderTrainerHillSet *arg0)
{
u8 *var0 = AllocZeroed(0x1000);
- bool32 result = sub_81D3AD8(arg0, var0);
+ bool32 result = TryReadTrainerHill_r(arg0, var0);
Free(var0);
return result;
}
-bool32 sub_81D3B34(void)
+bool32 ReadTrainerHillAndValidate(void)
{
- u8 *var0 = AllocZeroed(0x1000);
- bool32 result = sub_81D3B0C(var0);
+ struct EReaderTrainerHillSet *var0 = AllocZeroed(0x1000);
+ bool32 result = TryReadTrainerHill(var0);
Free(var0);
return result;
}
diff --git a/src/ereader_screen.c b/src/ereader_screen.c
index bac29cd42..8dc2a539b 100755
--- a/src/ereader_screen.c
+++ b/src/ereader_screen.c
@@ -402,7 +402,7 @@ static void sub_81D5084(u8 taskId)
}
break;
case 15:
- data->unkE = sub_81D3920(gDecompressionBuffer);
+ data->unkE = EReader_IsReceivedDataValid((struct EReaderTrainerHillSet *)gDecompressionBuffer);
sub_800ABF4(data->unkE);
data->unk8 = 16;
break;
@@ -416,7 +416,7 @@ static void sub_81D5084(u8 taskId)
}
break;
case 17:
- if (sub_81D3AB0((struct Unk81D38FC *)&gDecompressionBuffer))
+ if (TryWriteTrainerHill((struct Unk81D38FC *)&gDecompressionBuffer))
{
AddTextPrinterToWindow1(gUnknown_085EE0FA);
sub_81D505C(&data->unk0);
diff --git a/src/recorded_battle.c b/src/recorded_battle.c
index acd4c2ce6..9f2be36af 100644
--- a/src/recorded_battle.c
+++ b/src/recorded_battle.c
@@ -322,7 +322,7 @@ static bool32 RecordedBattleToSave(struct RecordedBattleSave *battleSave, struct
saveSection->checksum = CalcByteArraySum((void*)(saveSection), sizeof(*saveSection) - 4);
- if (sub_8153634(31, (void*)(saveSection)) != 1)
+ if (TryWriteSpecialSaveSection(SECTOR_ID_RECORDED_BATTLE, (void*)(saveSection)) != 1)
return FALSE;
else
return TRUE;
@@ -491,7 +491,7 @@ bool32 MoveRecordedBattleToSaveData(void)
static bool32 TryCopyRecordedBattleSaveData(struct RecordedBattleSave *dst, struct SaveSection *saveBuffer)
{
- if (TryCopySpecialSaveSection(SECTOR_ID_RECORDED_BATTLE, (void*)(saveBuffer)) != 1)
+ if (TryReadSpecialSaveSection(SECTOR_ID_RECORDED_BATTLE, (void*)(saveBuffer)) != 1)
return FALSE;
memcpy(dst, saveBuffer, sizeof(struct RecordedBattleSave));
diff --git a/src/save.c b/src/save.c
index 361a88e1e..45a75b5dc 100644
--- a/src/save.c
+++ b/src/save.c
@@ -849,7 +849,7 @@ u16 sub_815355C(void)
return 0;
}
-u32 TryCopySpecialSaveSection(u8 sector, u8* dst)
+u32 TryReadSpecialSaveSection(u8 sector, u8* dst)
{
s32 i;
s32 size;
@@ -858,7 +858,7 @@ u32 TryCopySpecialSaveSection(u8 sector, u8* dst)
if (sector != SECTOR_ID_TRAINER_HILL && sector != SECTOR_ID_RECORDED_BATTLE)
return 0xFF;
ReadFlash(sector, 0, (u8 *)&gSaveDataBuffer, sizeof(struct SaveSection));
- if (*(u32*)(&gSaveDataBuffer.data[0]) != 0xB39D)
+ if (*(u32*)(&gSaveDataBuffer.data[0]) != SPECIAL_SECTION_SENTINEL)
return 0xFF;
// copies whole save section except u32 counter
i = 0;
@@ -869,18 +869,18 @@ u32 TryCopySpecialSaveSection(u8 sector, u8* dst)
return 1;
}
-u32 sub_8153634(u8 sector, u8* src)
+u32 TryWriteSpecialSaveSection(u8 sector, u8* src)
{
s32 i;
s32 size;
u8* savData;
void* savDataBuffer;
- if (sector != 30 && sector != 31)
+ if (sector != SECTOR_ID_TRAINER_HILL && sector != SECTOR_ID_RECORDED_BATTLE)
return 0xFF;
savDataBuffer = &gSaveDataBuffer;
- *(u32*)(savDataBuffer) = 0xB39D;
+ *(u32*)(savDataBuffer) = SPECIAL_SECTION_SENTINEL;
// copies whole save section except u32 counter
i = 0;
diff --git a/src/trainer_hill.c b/src/trainer_hill.c
index eafd1eb3d..650a748cb 100644
--- a/src/trainer_hill.c
+++ b/src/trainer_hill.c
@@ -428,7 +428,7 @@ void CopyTrainerHillTrainerText(u8 which, u16 trainerId)
static void TrainerHillStartChallenge(void)
{
nullsub_2();
- if (!sub_81D3B34())
+ if (!ReadTrainerHillAndValidate())
gSaveBlock1Ptr->trainerHill.field_3D6E_0f = 1;
else
gSaveBlock1Ptr->trainerHill.field_3D6E_0f = 0;