diff options
author | Cameron Hall <camthesaxman@users.noreply.github.com> | 2018-01-05 22:39:18 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-05 22:39:18 -0600 |
commit | f3399955b15f622aec629dbd9bee3090a69e2ce0 (patch) | |
tree | 4b47c9fb0f2db74dcbc56cedec839523c86a5647 /include/easy_chat.h | |
parent | f5fbe5b66226f4e7e38fe5d4638831d1ce19b36b (diff) | |
parent | e95436b9024f2c32a2a005c97cf35f426fadab62 (diff) |
Merge pull request #504 from camthesaxman/decompile_easy_chat
decompile easy_chat.s
Diffstat (limited to 'include/easy_chat.h')
-rw-r--r-- | include/easy_chat.h | 120 |
1 files changed, 119 insertions, 1 deletions
diff --git a/include/easy_chat.h b/include/easy_chat.h index a6277fba8..a70d7ad0c 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -1,8 +1,126 @@ #ifndef GUARD_EASYCHAT_H #define GUARD_EASYCHAT_H +struct Sprite; + +struct UnknownEasyChatStruct1 +{ + u16 unk0; + u16 unk2; + u16 unk4; + u16 unk6; + void *unk8; +}; + +struct Shared1000 +{ + void (*unk0)(void); // main cb 2 + u16 *unk4; + u8 unk8; + u8 unk9; + u8 unkA; // length of unkC array + u8 unkB; // reporter talked to (Gabby or Ty) + u16 unkC[9]; + void (*unk20)(void); + u16 unk24; + u8 unk26; + u8 unk27; + u16 unk28; + u8 unk2A[11][2]; + u8 unk40[4][14]; + u8 unk78[5]; + u8 unk7D; + u8 unk7E[5]; + s8 unk83; + 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; + struct Sprite *unkA8; + struct Sprite *unkAC[2]; + struct Sprite *unkB4[2]; + u8 unkBC; + u8 fillerBD; + u16 unkBE; + 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]; + s8 unk1B5; + s8 unk1B6; + s8 unk1B7; + u8 unk1B8; + u8 unk1B9; + u16 unk1BA; + u16 unk1BC; + u8 unk1BE; + s8 unk1BF; + s8 unk1C0; + u8 filler1C1[3]; + void (*unk1C4)(void); + u8 unk1C8[0x500]; + u8 unk6C8[0xB78-0x6C8]; +#if GERMAN + u16 unkB78[27][270]; +#else + u16 unkB78[27][255]; +#endif + u16 unk4142[(0x78-0x42)/2]; //0x446C + u16 unk4178[(0x41A4-0x4178)/2]; // unknown length + const u8 *ecWordStrings[0x16][0x100]; //0x44CE in german + s8 unk99A4; + s8 unk99A5; + s8 unk99A6[130]; + s8 unk9A28; + s8 unk9A29; + 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[2]; + struct Sprite *unk9C74; + u8 filler9C78[4]; + 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[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[7]; // unknown length +}; + extern u8 gUnknown_020388AC; +extern u8 gUnknown_03000740; + +// const pointer to shared1000. easy_chat might be two separate files. +extern struct Shared1000 *const gEasyChatStruct; +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); @@ -19,7 +137,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 |