From 28e98d9df7db41f9dcc813ad4e0b37c568833aee Mon Sep 17 00:00:00 2001 From: camthesaxman Date: Mon, 1 Jan 2018 23:09:51 -0600 Subject: decompile sub_80E60D8 - sub_80E6AC4 --- include/easy_chat.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include/easy_chat.h') diff --git a/include/easy_chat.h b/include/easy_chat.h index a6277fba8..541a697be 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -3,6 +3,7 @@ extern u8 gUnknown_020388AC; +void sub_80E62A0(u8 arg0, u16 *arg1, void *arg2, u8 arg3); u16 sub_80EB72C(u16 group); void sub_80EB6FC(u16 *, u16); void InitEasyChatPhrases(void); -- cgit v1.2.3 From a2e854bb7cda3d4de0b4f2d1fc9e7bd88a471980 Mon Sep 17 00:00:00 2001 From: camthesaxman Date: Tue, 2 Jan 2018 19:22:51 -0600 Subject: decompile sub_80E7324 - sub_80E7AD4 --- include/easy_chat.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include/easy_chat.h') diff --git a/include/easy_chat.h b/include/easy_chat.h index 541a697be..a752720a6 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -3,7 +3,7 @@ extern u8 gUnknown_020388AC; -void sub_80E62A0(u8 arg0, u16 *arg1, void *arg2, u8 arg3); +void sub_80E62A0(u8 arg0, u16 *arg1, void (*arg2)(void), u8 arg3); u16 sub_80EB72C(u16 group); void sub_80EB6FC(u16 *, u16); void InitEasyChatPhrases(void); -- cgit v1.2.3 From cf37681831a9a8289d5941e66ce673b896abf71f Mon Sep 17 00:00:00 2001 From: camthesaxman Date: Wed, 3 Jan 2018 14:30:23 -0600 Subject: decompile sub_80E810C - sub_80E872C --- include/easy_chat.h | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) (limited to 'include/easy_chat.h') diff --git a/include/easy_chat.h b/include/easy_chat.h index a752720a6..8d13ecc42 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -1,8 +1,100 @@ #ifndef GUARD_EASYCHAT_H #define GUARD_EASYCHAT_H +struct Sprite; + +struct Shared1000 +{ + void (*unk0)(void); // main cb 2 + u16 *unk4; + u8 unk8; + u8 unk9; + u8 unkA; + u8 unkB; + u16 unkC[(0x20-0xC)/2]; // unknown length + void (*unk20)(void); + u16 unk24; + u8 unk26; + u8 unk27; + u16 unk28; + u8 unk2A[11][2]; // unknown length + u8 unk40[4][14]; + u8 unk78[0x7D - 0x78]; // unknown length + u8 unk7D; + u8 unk7E[0x83-0x7E]; + s8 unk83; // s8? + //u8 unk83; // s8? + s8 unk84; + s8 unk85; + s8 unk86; + bool8 unk87; + u16 unk88; + u16 unk8A; + u8 unk8C[(0x96-0x8C)/2][2]; + u8 unk96; + u8 filler97; + struct Sprite *unk98; + struct Sprite *unk9C; + struct Sprite *unkA0; + struct Sprite *unkA4; + u8 fillerA8[0x1A8-0xA8]; + s8 unk1A8; + s8 unk1A9; + s8 unk1AA[0xB5-0xAA]; // unknown length + s8 unk1B5; + s8 unk1B6; + s8 unk1B7; + u8 unk1B8; + u8 unk1B9; + u16 unk1BA; + u8 filler1BC[0xBE - 0xBC]; + u8 unk1BE; + u8 filler1BF; + s8 unk1C0; + u8 filler1C1[3]; + void (*unk1C4)(void); + u8 filler1C8[0x4142-0x1C8]; +#if GERMAN + u8 filler4142_de[0x32A]; +#endif + u16 unk4142[(0x78-0x42)/2]; + u16 unk4178[(0x99A4-0x4178)/2]; // unknown length +#if GERMAN + u8 filler99A4_de[2]; +#endif + s8 unk99A4; + s8 unk99A5; + s8 unk99A6[0xA28-0x9A6]; + s8 unk9A28; + s8 unk9A29; + //u8 filler9A2A[0xC7C-0xA2A]; + u16 unk9A2A[0x94][2]; // unknown length + u8 filler9C7A[2]; + u16 unk9C7C; // this is at 0x9FA8 in German + s16 unk9C7E; + u8 unk9C80[0xC9-0x80]; + u8 unk9CC9[0xD12-0xCC9]; + u8 unk9D12[0x5B-0x12]; + u8 unk9D5B[0xA4-0x5B]; + u8 unk9DA4[0xC8-0xA4]; + u8 filler9DC8[0xE14 - 0xDC8]; + u8 unk9E14[0xE41 - 0xE14]; + u8 unk9E41[0x6E - 0x41]; + u8 unk9E6E[0xEE - 0x6E]; + u8 unk9EEE[0xF6E - 0xEEE]; + u8 unk9F6E[1]; // unknown length +}; + +#define static_assert(cond) \ + typedef char test_[(cond) ? 1 : -1] + +//static_assert(offsetof(struct Shared1000, unk1A8) == 0x1A8); + extern u8 gUnknown_020388AC; +// const pointer to shared1000. easy_chat might be two separate files. +extern struct Shared1000 *const gUnknown_083DB694; + void sub_80E62A0(u8 arg0, u16 *arg1, void (*arg2)(void), u8 arg3); u16 sub_80EB72C(u16 group); void sub_80EB6FC(u16 *, u16); -- cgit v1.2.3 From 324705201c8648830a9b5ed7926891bf38bfcabe Mon Sep 17 00:00:00 2001 From: camthesaxman Date: Wed, 3 Jan 2018 20:24:50 -0600 Subject: decompile sub_80E8760 - sub_80E8B78 --- include/easy_chat.h | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'include/easy_chat.h') diff --git a/include/easy_chat.h b/include/easy_chat.h index 8d13ecc42..58442a890 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -37,7 +37,10 @@ struct Shared1000 struct Sprite *unk9C; struct Sprite *unkA0; struct Sprite *unkA4; - u8 fillerA8[0x1A8-0xA8]; + struct Sprite *unkA8; + struct Sprite *unkAC[2]; + struct Sprite *unkB4[2]; + u8 fillerBC[0x1A8-0xBC]; s8 unk1A8; s8 unk1A9; s8 unk1AA[0xB5-0xAA]; // unknown length @@ -67,9 +70,12 @@ struct Shared1000 s8 unk99A6[0xA28-0x9A6]; s8 unk9A28; s8 unk9A29; - //u8 filler9A2A[0xC7C-0xA2A]; - u16 unk9A2A[0x94][2]; // unknown length - u8 filler9C7A[2]; + u16 unk9A2A[0x90][2]; // unknown length + u8 filler9C6A[2]; + s8 *unk9C6C; + u8 unk9C70; + s8 unk9C71; + u8 filler9C72[0xC-0x2]; u16 unk9C7C; // this is at 0x9FA8 in German s16 unk9C7E; u8 unk9C80[0xC9-0x80]; -- cgit v1.2.3 From c6fd37b0dffe1975159699cee3ce57c9ea5716d4 Mon Sep 17 00:00:00 2001 From: camthesaxman Date: Thu, 4 Jan 2018 17:29:36 -0600 Subject: decompile sub_80E8BF4 - sub_80E95A4 --- include/easy_chat.h | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) (limited to 'include/easy_chat.h') diff --git a/include/easy_chat.h b/include/easy_chat.h index 58442a890..0c42f4685 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -10,7 +10,7 @@ struct Shared1000 u8 unk8; u8 unk9; u8 unkA; - u8 unkB; + u8 unkB; // reporter talked to (Gabby or Ty) u16 unkC[(0x20-0xC)/2]; // unknown length void (*unk20)(void); u16 unk24; @@ -40,7 +40,8 @@ struct Shared1000 struct Sprite *unkA8; struct Sprite *unkAC[2]; struct Sprite *unkB4[2]; - u8 fillerBC[0x1A8-0xBC]; + u8 unkBC; + u8 fillerBD[0x1A8-0xBD]; s8 unk1A8; s8 unk1A9; s8 unk1AA[0xB5-0xAA]; // unknown length @@ -56,7 +57,8 @@ struct Shared1000 s8 unk1C0; u8 filler1C1[3]; void (*unk1C4)(void); - u8 filler1C8[0x4142-0x1C8]; + u8 unk1C8[0x6C8-0x1C8]; + u8 unk6C8[0x4142-0x6C8]; #if GERMAN u8 filler4142_de[0x32A]; #endif @@ -70,12 +72,17 @@ struct Shared1000 s8 unk99A6[0xA28-0x9A6]; s8 unk9A28; s8 unk9A29; - u16 unk9A2A[0x90][2]; // unknown length + u16 unk9A2A[(0x9C32-0x9A2A)/4][2]; // unknown length + u8 unk9C32; + u8 filler9C33; + u16 unk9C34[3][9]; u8 filler9C6A[2]; s8 *unk9C6C; u8 unk9C70; s8 unk9C71; - u8 filler9C72[0xC-0x2]; + u8 filler9C72[2]; + struct Sprite *unk9C74; + u8 filler9C78[4]; u16 unk9C7C; // this is at 0x9FA8 in German s16 unk9C7E; u8 unk9C80[0xC9-0x80]; @@ -88,7 +95,13 @@ struct Shared1000 u8 unk9E41[0x6E - 0x41]; u8 unk9E6E[0xEE - 0x6E]; u8 unk9EEE[0xF6E - 0xEEE]; - u8 unk9F6E[1]; // unknown length + u8 unk9F6E[0x8E - 0x6E]; // unknown length + u8 unk9F8E[1]; // unknown length + /* + u8 unk9F8F; + u8 unk9F90; + u8 unk9F91[1]; // unknown length + */ }; #define static_assert(cond) \ @@ -97,6 +110,7 @@ struct Shared1000 //static_assert(offsetof(struct Shared1000, unk1A8) == 0x1A8); extern u8 gUnknown_020388AC; +extern u8 gUnknown_03000740; // const pointer to shared1000. easy_chat might be two separate files. extern struct Shared1000 *const gUnknown_083DB694; -- cgit v1.2.3 From d7970fba2fef5fd8949eb1b2c24f0556103bda27 Mon Sep 17 00:00:00 2001 From: camthesaxman Date: Thu, 4 Jan 2018 22:26:27 -0600 Subject: decompile sub_80E9620 - sub_80EA184 --- include/easy_chat.h | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) (limited to 'include/easy_chat.h') diff --git a/include/easy_chat.h b/include/easy_chat.h index 0c42f4685..7b3b849f0 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -41,7 +41,9 @@ struct Shared1000 struct Sprite *unkAC[2]; struct Sprite *unkB4[2]; u8 unkBC; - u8 fillerBD[0x1A8-0xBD]; + u8 fillerBD; + u16 unkBE; + u8 fillerC0[0x1A8-0xC0]; s8 unk1A8; s8 unk1A9; s8 unk1AA[0xB5-0xAA]; // unknown length @@ -51,9 +53,9 @@ struct Shared1000 u8 unk1B8; u8 unk1B9; u16 unk1BA; - u8 filler1BC[0xBE - 0xBC]; + u16 unk1BC; u8 unk1BE; - u8 filler1BF; + s8 unk1BF; s8 unk1C0; u8 filler1C1[3]; void (*unk1C4)(void); @@ -89,19 +91,14 @@ struct Shared1000 u8 unk9CC9[0xD12-0xCC9]; u8 unk9D12[0x5B-0x12]; u8 unk9D5B[0xA4-0x5B]; - u8 unk9DA4[0xC8-0xA4]; - u8 filler9DC8[0xE14 - 0xDC8]; + u8 unk9DA4[0xC9-0xA4]; + u8 unk9DC9[0xE14 - 0xDC9]; u8 unk9E14[0xE41 - 0xE14]; u8 unk9E41[0x6E - 0x41]; u8 unk9E6E[0xEE - 0x6E]; u8 unk9EEE[0xF6E - 0xEEE]; u8 unk9F6E[0x8E - 0x6E]; // unknown length - u8 unk9F8E[1]; // unknown length - /* - u8 unk9F8F; - u8 unk9F90; - u8 unk9F91[1]; // unknown length - */ + u8 unk9F8E[7]; // unknown length }; #define static_assert(cond) \ -- cgit v1.2.3 From 4149e858836f39836c476a8a6bc1403a6429c141 Mon Sep 17 00:00:00 2001 From: camthesaxman Date: Fri, 5 Jan 2018 15:28:36 -0600 Subject: decompile sub_80EA1E0 - sub_80EAD7C --- include/easy_chat.h | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'include/easy_chat.h') diff --git a/include/easy_chat.h b/include/easy_chat.h index 7b3b849f0..2fe11dd11 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -3,6 +3,15 @@ struct Sprite; +struct UnknownEasyChatStruct1 +{ + u16 unk0; + u16 unk2; + u16 unk4; + u16 unk6; + void *unk8; +}; + struct Shared1000 { void (*unk0)(void); // main cb 2 @@ -21,7 +30,7 @@ struct Shared1000 u8 unk40[4][14]; u8 unk78[0x7D - 0x78]; // unknown length u8 unk7D; - u8 unk7E[0x83-0x7E]; + u8 unk7E[5]; s8 unk83; // s8? //u8 unk83; // s8? s8 unk84; @@ -43,7 +52,12 @@ struct Shared1000 u8 unkBC; u8 fillerBD; u16 unkBE; - u8 fillerC0[0x1A8-0xC0]; + u8 fillerC0[2]; + u16 unkC2; // length of unkC8 and unk148 arrays + u16 unkC4; + u8 fillerC6[2]; + u16 unkC8[(0x148-0xC8)/16][8]; + struct UnknownEasyChatStruct1 unk148[(0x1A8-0x148)/12]; s8 unk1A8; s8 unk1A9; s8 unk1AA[0xB5-0xAA]; // unknown length -- cgit v1.2.3 From 66a7a42a108c2d6c86c80d28397ea243969094cd Mon Sep 17 00:00:00 2001 From: camthesaxman Date: Fri, 5 Jan 2018 20:23:49 -0600 Subject: decompile sub_80EADC0 - sub_80EB37C --- include/easy_chat.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'include/easy_chat.h') diff --git a/include/easy_chat.h b/include/easy_chat.h index 2fe11dd11..d2b562931 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -74,12 +74,14 @@ struct Shared1000 u8 filler1C1[3]; void (*unk1C4)(void); u8 unk1C8[0x6C8-0x1C8]; - u8 unk6C8[0x4142-0x6C8]; + u8 unk6C8[0xB78-0x6C8]; + u16 unkB78[0x1B][255]; #if GERMAN u8 filler4142_de[0x32A]; #endif u16 unk4142[(0x78-0x42)/2]; - u16 unk4178[(0x99A4-0x4178)/2]; // unknown length + u16 unk4178[(0x41A4-0x4178)/2]; // unknown length + const u8 *unk41A4[0x16][0x100]; #if GERMAN u8 filler99A4_de[2]; #endif -- cgit v1.2.3 From 60ab994a0fdf75bc007a5349f424b6e346604de6 Mon Sep 17 00:00:00 2001 From: camthesaxman Date: Fri, 5 Jan 2018 21:27:40 -0600 Subject: fix German build --- include/easy_chat.h | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) (limited to 'include/easy_chat.h') diff --git a/include/easy_chat.h b/include/easy_chat.h index d2b562931..9342663d8 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -75,16 +75,14 @@ struct Shared1000 void (*unk1C4)(void); u8 unk1C8[0x6C8-0x1C8]; u8 unk6C8[0xB78-0x6C8]; - u16 unkB78[0x1B][255]; #if GERMAN - u8 filler4142_de[0x32A]; + u16 unkB78[0x1B][270]; +#else + u16 unkB78[0x1B][255]; #endif - u16 unk4142[(0x78-0x42)/2]; + u16 unk4142[(0x78-0x42)/2]; //0x446C u16 unk4178[(0x41A4-0x4178)/2]; // unknown length - const u8 *unk41A4[0x16][0x100]; -#if GERMAN - u8 filler99A4_de[2]; -#endif + const u8 *unk41A4[0x16][0x100]; //0x44CE in german s8 unk99A4; s8 unk99A5; s8 unk99A6[0xA28-0x9A6]; @@ -117,11 +115,6 @@ struct Shared1000 u8 unk9F8E[7]; // unknown length }; -#define static_assert(cond) \ - typedef char test_[(cond) ? 1 : -1] - -//static_assert(offsetof(struct Shared1000, unk1A8) == 0x1A8); - extern u8 gUnknown_020388AC; extern u8 gUnknown_03000740; @@ -145,7 +138,7 @@ u16 sub_80EB8EC(void); u8 *sub_80EB544(u8 *dst, u16 *words, u16 arg2, u16 arg3); #if GERMAN -u32 de_sub_80EB748(u32, u32); +u32 de_sub_80EB748(s32, s32); #endif #endif // GUARD_EASYCHAT_H -- cgit v1.2.3 From 7d181ec03bdc8e5b9424e08e4428b76bab8eb5fd Mon Sep 17 00:00:00 2001 From: camthesaxman Date: Fri, 5 Jan 2018 22:18:57 -0600 Subject: minor cleanup --- include/easy_chat.h | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) (limited to 'include/easy_chat.h') diff --git a/include/easy_chat.h b/include/easy_chat.h index 9342663d8..a70d7ad0c 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -18,21 +18,20 @@ struct Shared1000 u16 *unk4; u8 unk8; u8 unk9; - u8 unkA; + u8 unkA; // length of unkC array u8 unkB; // reporter talked to (Gabby or Ty) - u16 unkC[(0x20-0xC)/2]; // unknown length + u16 unkC[9]; void (*unk20)(void); u16 unk24; u8 unk26; u8 unk27; u16 unk28; - u8 unk2A[11][2]; // unknown length + u8 unk2A[11][2]; u8 unk40[4][14]; - u8 unk78[0x7D - 0x78]; // unknown length + u8 unk78[5]; u8 unk7D; u8 unk7E[5]; - s8 unk83; // s8? - //u8 unk83; // s8? + s8 unk83; s8 unk84; s8 unk85; s8 unk86; @@ -60,7 +59,7 @@ struct Shared1000 struct UnknownEasyChatStruct1 unk148[(0x1A8-0x148)/12]; s8 unk1A8; s8 unk1A9; - s8 unk1AA[0xB5-0xAA]; // unknown length + s8 unk1AA[0xB5-0xAA]; s8 unk1B5; s8 unk1B6; s8 unk1B7; @@ -73,19 +72,19 @@ struct Shared1000 s8 unk1C0; u8 filler1C1[3]; void (*unk1C4)(void); - u8 unk1C8[0x6C8-0x1C8]; + u8 unk1C8[0x500]; u8 unk6C8[0xB78-0x6C8]; #if GERMAN - u16 unkB78[0x1B][270]; + u16 unkB78[27][270]; #else - u16 unkB78[0x1B][255]; + u16 unkB78[27][255]; #endif u16 unk4142[(0x78-0x42)/2]; //0x446C u16 unk4178[(0x41A4-0x4178)/2]; // unknown length - const u8 *unk41A4[0x16][0x100]; //0x44CE in german + const u8 *ecWordStrings[0x16][0x100]; //0x44CE in german s8 unk99A4; s8 unk99A5; - s8 unk99A6[0xA28-0x9A6]; + s8 unk99A6[130]; s8 unk9A28; s8 unk9A29; u16 unk9A2A[(0x9C32-0x9A2A)/4][2]; // unknown length @@ -119,7 +118,7 @@ extern u8 gUnknown_020388AC; extern u8 gUnknown_03000740; // const pointer to shared1000. easy_chat might be two separate files. -extern struct Shared1000 *const gUnknown_083DB694; +extern struct Shared1000 *const gEasyChatStruct; void sub_80E62A0(u8 arg0, u16 *arg1, void (*arg2)(void), u8 arg3); u16 sub_80EB72C(u16 group); -- cgit v1.2.3