diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/Message/BMG.hpp | 79 | ||||
| -rw-r--r-- | include/global.h | 3 |
2 files changed, 80 insertions, 2 deletions
diff --git a/include/Message/BMG.hpp b/include/Message/BMG.hpp index d128838d..08c7a7fa 100644 --- a/include/Message/BMG.hpp +++ b/include/Message/BMG.hpp @@ -170,5 +170,82 @@ typedef struct BMGFileInfo { // 0x027E0C68 + 0x14 typedef struct BMGGroups { /* 0x00 */ BMGFileInfo* entries; // accessed with `groupId` - /* 0x04 */ u32 numEntries; + /* 0x04 */ s32 numEntries; } BMGGroups; // size = 0x8 + +typedef void (*Struct_027E0C68_unk_28_unk_58)(struct Struct_027E0C68_unk_28*); + +typedef struct Struct_027E0C68_unk_28_unk_00 { + /* 0x00 */ unk32 unk_00; + /* 0x04 */ unk32 unk_04; + /* 0x08 */ unk32 unk_08; + /* 0x0C */ unk32 unk_0C; + /* 0x10 */ unk32 unk_10; + /* 0x14 */ unk32 unk_14; + /* 0x18 */ unk32 unk_18; + /* 0x1C */ unk32 unk_1C; + /* 0x20 */ unk32 unk_20; + /* 0x24 */ unk32 unk_24; + /* 0x28 */ unk32 unk_28; + /* 0x2C */ unk32 unk_2C; + /* 0x30 */ unk32 unk_30; + /* 0x34 */ unk32 unk_34; + /* 0x38 */ unk32 unk_38; + /* 0x3C */ unk32 unk_3C; + /* 0x40 */ unk32 unk_40; + /* 0x44 */ unk32 unk_44; + /* 0x48 */ unk32 unk_48; + /* 0x4C */ unk32 unk_4C; + /* 0x50 */ unk32 unk_50; + /* 0x54 */ unk32 unk_54; + /* 0x58 */ Struct_027E0C68_unk_28_unk_58 unk_58; + /* 0x5C */ unk32 unk_5C; +} Struct_027E0C68_unk_28_unk_00; + +typedef struct Struct_027E0C68_unk_28 { + /* 0x00 */ Struct_027E0C68_unk_28_unk_00* unk_00; + /* 0x04 */ unk32 unk_04; + /* 0x08 */ unk32 unk_08; + /* 0x0C */ unk32 unk_0C; +} Struct_027E0C68_unk_28; + +typedef struct Struct_027E0C68_unk_18 { + /* 0x00 */ unk32 unk_00; + /* 0x04 */ unk32 unk_04; + /* 0x08 */ unk32 unk_08; + /* 0x0C */ unk32 unk_0C; + /* 0x10 */ unk32 unk_10; + /* 0x14 */ unk32 unk_14; + /* 0x18 */ unk32 unk_18; + /* 0x1C */ unk32 unk_1C; + /* 0x20 */ unk32 unk_20; + /* 0x24 */ unk32 unk_24; + /* 0x28 */ unk32 unk_28; + /* 0x2C */ unk32 unk_2C; + /* 0x30 */ unk32 unk_30; + /* 0x34 */ unk16 unk_34; + /* 0x36 */ unk16 unk_36; + /* 0x38 */ unk32 unk_38; + /* 0x3C */ unk32 unk_3C; + /* 0x40 */ unk32 unk_40; + /* 0x44 */ unk32 unk_44; + /* 0x48 */ unk32 unk_48; +} Struct_027E0C68_unk_18; // size = 0x4C + +typedef struct Struct_027E0C68 { + /* 0x00 */ unk16 unk_00; + /* 0x02 */ unk16 unk_02; + /* 0x04 */ unk32 unk_04; + /* 0x08 */ unk32 unk_08; + /* 0x0C */ unk32 unk_0C; + /* 0x10 */ unk32 unk_10; + /* 0x14 */ BMGGroups* pGroups; + /* 0x18 */ Struct_027E0C68_unk_18* unk_18; + /* 0x1C */ Struct_027E0C68_unk_18* unk_1C; + /* 0x20 */ unk32 unk_20; + /* 0x24 */ unk32 unk_24; + /* 0x28 */ Struct_027E0C68_unk_28* unk_28[6]; // 022172B0 +} Struct_027E0C68; + +Struct_027E0C68_unk_18* func_020370e8(Struct_027E0C68* param_1, unk32 param_2, unk16 param_3, unk16 param_4, unk32 param_5); +Struct_027E0C68_unk_28* func_02037178(Struct_027E0C68* param_1, u32 param_2); diff --git a/include/global.h b/include/global.h index 617f672f..8d6635dd 100644 --- a/include/global.h +++ b/include/global.h @@ -7,7 +7,8 @@ #define SET_FLAG(arr, pos) ((arr)[((u32) (pos)) >> 5] |= 1 << ((pos) & 0x1f)) #define RESET_FLAG(arr, pos) ((arr)[((u32) (pos)) >> 5] &= ~(1 << ((pos) & 0x1f))) -#define ARRAY_LEN(arr) ((sizeof(arr) / sizeof(*arr))) +#define ARRAY_LEN_U(arr) (u32)((sizeof(arr) / sizeof(*arr))) +#define ARRAY_LEN(arr) (s32)(sizeof(arr) / sizeof(*arr)) // Prevent the IDE from reporting errors that the compiler/linker won't report #ifdef __INTELLISENSE__ |
