summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2018-11-09 08:28:39 -0500
committerPikalaxALT <pikalaxalt@gmail.com>2018-11-09 08:28:39 -0500
commit6317f0180e191fb7c426eaf38b2dd631d9694146 (patch)
tree57b75644e1b3072d968b8ff6c757aaba5a087927
parent4ee3c03a697b9520d365fa17ed43602e68852468 (diff)
Start to refactor some of the data components
-rw-r--r--include/global.h29
-rw-r--r--src/quest_log.c14
2 files changed, 24 insertions, 19 deletions
diff --git a/include/global.h b/include/global.h
index 6a178feb6..11c0e61e3 100644
--- a/include/global.h
+++ b/include/global.h
@@ -503,24 +503,29 @@ struct QuestLogNPCData
u32 movementType:8;
};
-struct UnkStruct_203B024_Sub1
+struct UnkStruct_203B024
{
- u8 unk_00;
- u8 unk_01;
- u8 filler_02[26];
+ u16 unk_00;
+ u16 unk_02;
+ u16 unk_04[14];
};
-union UnkUnion_203B024
+union QuestLogScene
{
- struct UnkStruct_203B024_Sub1 type1;
- u8 filler[28];
+ u8 allocation[32];
+ u16 ident;
};
-struct UnkStruct_203B024
+typedef union QuestLogScene QuestLogScene;
+
+union QuestLogMovement;
+union QuestLogMovement
{
- u16 unk_00;
- u16 unk_02;
- union UnkUnion_203B024 unk_04;
+ u16 ident_raw;
+ struct {
+ u16 ident:12;
+ u16 flags:4;
+ } ident_struct;
};
struct QuestLog
@@ -535,7 +540,7 @@ struct QuestLog
/*0x0148*/ u8 unk_148[0x120];
/*0x02c8*/ u8 unk_268[0x200];
/*0x0468*/ struct QuestLogNPCData npcData[64];
- /*0x0568*/ struct UnkStruct_203B024 unk_568[8];
+ /*0x0568*/ u16 unk_568[128];
/*0x0668*/ u16 end[0];
};
diff --git a/src/quest_log.c b/src/quest_log.c
index e146c92e7..06780ff21 100644
--- a/src/quest_log.c
+++ b/src/quest_log.c
@@ -537,7 +537,7 @@ void sub_8110AEC(u16 a0)
sub_81108F0(gUnknown_203ADF8);
sub_8113B88();
- gUnknown_203AE08 = (u16 *)gSaveBlock1Ptr->questLog[gUnknown_203ADF8].unk_568;
+ gUnknown_203AE08 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].unk_568;
if ((a0 >= 12 && a0 < 20) || a0 == 35)
gSaveBlock1Ptr->questLog[gUnknown_203ADF8].unk_000 = 2;
else
@@ -1172,7 +1172,7 @@ void sub_811175C(u8 a0, struct UnkStruct_203AE98 * a1)
gUnknown_203AE0C[i] = NULL;
}
- r4 = (u16 *)gSaveBlock1Ptr->questLog[a0].unk_568;
+ r4 = gSaveBlock1Ptr->questLog[a0].unk_568;
for (i = 0; i < 32; i++)
{
switch (r4[0] & 0xFFF)
@@ -3191,9 +3191,9 @@ bool8 sub_81138A0(u16 a0, u16 * a1)
if (a0 < 16 || a0 > 17)
{
if (a0 == 12 || a0 == 18)
- memcpy(&gUnknown_203B024.unk_04, a1, 12);
+ memcpy(gUnknown_203B024.unk_04, a1, 12);
else
- memcpy(&gUnknown_203B024.unk_04, a1, 24);
+ memcpy(gUnknown_203B024.unk_04, a1, 24);
}
return TRUE;
}
@@ -3210,7 +3210,7 @@ void sub_811390C(void)
u16 * resp;
gUnknown_203B04A = 0;
sub_8110AEC(gUnknown_203B024.unk_00);
- resp = sQuestLogStorageCBs[gUnknown_203B024.unk_00](gUnknown_203AE08, (u16 *)&gUnknown_203B024.unk_04);
+ resp = sQuestLogStorageCBs[gUnknown_203B024.unk_00](gUnknown_203AE08, gUnknown_203B024.unk_04);
gUnknown_203AE08 = resp;
sub_81138F8();
}
@@ -3224,7 +3224,7 @@ bool8 sub_8113954(u16 a0, u16 * a1)
if (gUnknown_3005E88 || FlagGet(0x82C) || sub_81137E4(a0, a1) != TRUE)
{
gUnknown_203B024.unk_00 = a0;
- memcpy(&gUnknown_203B024.unk_04, a1, 8);
+ memcpy(gUnknown_203B024.unk_04, a1, 8);
}
return TRUE;
}
@@ -3240,7 +3240,7 @@ void sub_81139BC(void)
sub_8110AEC(gUnknown_203B024.unk_00);
}
sub_8113B94(gUnknown_203B024.unk_00);
- resp = sQuestLogStorageCBs[gUnknown_203B024.unk_00](gUnknown_203AE08, (u16 *)&gUnknown_203B024.unk_04);
+ resp = sQuestLogStorageCBs[gUnknown_203B024.unk_00](gUnknown_203AE08, gUnknown_203B024.unk_04);
gUnknown_203AE08 = resp;
sub_8113A1C(1);
sub_81138F8();