mirror of
https://github.com/pret/pmd-red.git
synced 2026-09-07 08:35:47 -05:00
@@ -3,18 +3,7 @@
|
||||
|
||||
#include "file_system.h"
|
||||
#include "structs/rgb.h"
|
||||
|
||||
// size: 0x18
|
||||
typedef struct unkStruct_202EE8C
|
||||
{
|
||||
u32 unk0;
|
||||
u16 unk4;
|
||||
s16 unk6;
|
||||
RGB *unk8;
|
||||
RGB *unkC;
|
||||
RGB *unk10;
|
||||
RGB unk14;
|
||||
} unkStruct_202EE8C;
|
||||
#include "structs/str_202EE8C.h"
|
||||
|
||||
extern unkStruct_202EE8C gUnknown_202EE8C[32];
|
||||
|
||||
|
||||
@@ -10,8 +10,7 @@ struct unkStruct_81188F0
|
||||
/* 0x0 */ u8 *text1;
|
||||
/* 0x4 */ u8 *text2;
|
||||
/* 0x8 */ u8 *text3;
|
||||
/* 0xC */ u8 *text4;
|
||||
/* 0x10 */ u32 unk1;
|
||||
/* 0xC */ u8 *text4[2];
|
||||
/* 0x14 */ u32 unk2;
|
||||
/* 0x18 */ u32 unk3;
|
||||
};
|
||||
|
||||
@@ -101,7 +101,8 @@ enum DungeonID
|
||||
DUNGEON_TEAM_RUMBLEROCK = 95,
|
||||
DUNGEON_RESCUE_TEAM_2 = 96,
|
||||
DUNGEON_RESCUE_TEAM_MAZE = 97,
|
||||
NUM_DUNGEONS
|
||||
NUM_DUNGEONS,
|
||||
DUNGEON_INVALID, // 99
|
||||
};
|
||||
|
||||
#define DUNGEON_FIRST_MAZE DUNGEON_NORMAL_MAZE_2
|
||||
|
||||
@@ -12,4 +12,12 @@ OpenedFile *OpenFileAndGetFileDataPtr(const u8 *filename, const FileArchive *arc
|
||||
|
||||
u32 sub_800A8F8(u32 value);
|
||||
|
||||
#define CLOSE_FILE_AND_SET_NULL(filePtr) \
|
||||
{ \
|
||||
CloseFile(filePtr); \
|
||||
filePtr = NULL; \
|
||||
}
|
||||
|
||||
#define TRY_CLOSE_FILE_AND_SET_NULL(filePtr) if (filePtr != NULL) CLOSE_FILE_AND_SET_NULL(filePtr)
|
||||
|
||||
#endif //GUARD_FILE_SYSTEM_H
|
||||
|
||||
9
include/ground_bg.h
Normal file
9
include/ground_bg.h
Normal file
@@ -0,0 +1,9 @@
|
||||
#ifndef GUARD_GROUND_BG_H
|
||||
#define GUARD_GROUND_BG_H
|
||||
|
||||
#include "structs/str_ground_bg.h"
|
||||
|
||||
void GroundBg_Init(GroundBg *groundBg, const SubStruct_52C *a1);
|
||||
void GroundBg_FreeAll(GroundBg *groundBg);
|
||||
|
||||
#endif // GUARD_GROUND_BG_H
|
||||
@@ -1,14 +1,6 @@
|
||||
#ifndef GUARD_GROUND_MAP_H
|
||||
#define GUARD_GROUND_MAP_H
|
||||
|
||||
// size: 0x55C
|
||||
typedef struct unkStruct_3001B70
|
||||
{
|
||||
u8 fill0[0x55C - 0x0];
|
||||
} unkStruct_3001B70;
|
||||
|
||||
extern unkStruct_3001B70 *gGroundMapDungeon_3001B70;
|
||||
|
||||
void GroundMap_Reset(void);
|
||||
|
||||
void AllocGroundMapAction(void);
|
||||
@@ -16,4 +8,4 @@ void FreeGroundMapAction(void);
|
||||
void sub_80A4B38(void);
|
||||
void sub_80A4B54(void);
|
||||
|
||||
#endif // GUARD_GROUND_MAP_H
|
||||
#endif // GUARD_GROUND_MAP_H
|
||||
|
||||
@@ -8,9 +8,17 @@ void MemoryClear16(u16 *dest, s32 size);
|
||||
void MemoryFill8(void *dest, u8 value, s32 size);
|
||||
void MemoryFill16(u16 *dest, u16 value, s32 size);
|
||||
void MemoryCopy8(void *dest, void *src, s32 size);
|
||||
void MemoryCopy32(u32 *dest, u32 *src, s32 size);
|
||||
void MemoryCopy32(u32 *dest, const u32 *src, s32 size);
|
||||
|
||||
void *MemoryAlloc(s32 size, s32 group);
|
||||
void MemoryFree(void *a);
|
||||
|
||||
#define FREE_AND_SET_NULL(ptr) \
|
||||
{ \
|
||||
MemoryFree(ptr); \
|
||||
ptr = NULL; \
|
||||
}
|
||||
|
||||
#define TRY_FREE_AND_SET_NULL(ptr) if (ptr != NULL) FREE_AND_SET_NULL(ptr)
|
||||
|
||||
#endif // GUARD_MEMORY_H
|
||||
|
||||
18
include/structs/str_202EE8C.h
Normal file
18
include/structs/str_202EE8C.h
Normal file
@@ -0,0 +1,18 @@
|
||||
#ifndef GUARD_STR_202EE8C_H
|
||||
#define GUARD_STR_202EE8C_H
|
||||
|
||||
#include "structs/rgb.h"
|
||||
|
||||
// size: 0x18
|
||||
typedef struct unkStruct_202EE8C
|
||||
{
|
||||
u32 unk0;
|
||||
u16 unk4;
|
||||
s16 unk6;
|
||||
RGB *unk8;
|
||||
RGB *unkC;
|
||||
RGB *unk10;
|
||||
RGB unk14;
|
||||
} unkStruct_202EE8C;
|
||||
|
||||
#endif // GUARD_STR_202EE8C_H
|
||||
136
include/structs/str_ground_bg.h
Normal file
136
include/structs/str_ground_bg.h
Normal file
@@ -0,0 +1,136 @@
|
||||
#ifndef GUARD_STR_GROUND_BG_H
|
||||
#define GUARD_STR_GROUND_BG_H
|
||||
|
||||
#include "structs/str_file_system.h"
|
||||
#include "structs/str_202EE8C.h"
|
||||
#include "structs/str_position.h"
|
||||
|
||||
#define UNK_0_ARR_COUNT 14
|
||||
#define UNK_E0_ARR_COUNT 32
|
||||
#define UNK_3E0_ARR_COUNT 2
|
||||
#define UNK_54C_ARR_COUNT 2
|
||||
#define UNK_545_UNK6_ARR_COUNT 4
|
||||
|
||||
typedef struct SubStruct_0
|
||||
{
|
||||
s16 unk0;
|
||||
s16 unk2;
|
||||
const void *unk4;
|
||||
const void *unk8;
|
||||
u8 fillC;
|
||||
} SubStruct_0;
|
||||
|
||||
struct UnkFileStruct
|
||||
{
|
||||
u8 unk0;
|
||||
s16 unk2;
|
||||
void *unk4[0]; // This is most likely wrong, will need to be fixed.
|
||||
};
|
||||
|
||||
typedef struct SubStruct_3E0
|
||||
{
|
||||
u8 unk0;
|
||||
u8 unk1;
|
||||
s16 unk2;
|
||||
s16 unk4;
|
||||
OpenedFile *unk8;
|
||||
const struct UnkFileStruct *unkC;
|
||||
const void *unk10;
|
||||
const void *unk14;
|
||||
const void *unk18;
|
||||
const void *unk1C;
|
||||
void *unk20;
|
||||
u32 unk24;
|
||||
} SubStruct_3E0;
|
||||
|
||||
typedef struct SubStruct_488
|
||||
{
|
||||
s16 unk0;
|
||||
s16 unk2;
|
||||
s16 unk4;
|
||||
bool8 unk6;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
PixelPos unk10;
|
||||
void (*unk18)(struct SubStruct_488 *);
|
||||
u16 *unk1C;
|
||||
u16 *unk20[UNK_54C_ARR_COUNT];
|
||||
u16 *unk28[UNK_54C_ARR_COUNT];
|
||||
PixelPos unk30;
|
||||
PixelPos unk38;
|
||||
PixelPos unk40;
|
||||
PixelPos bgRegOffsets; // Either bg2 or bg3
|
||||
} SubStruct_488;
|
||||
|
||||
// size: 0x18?
|
||||
typedef struct SubStruct_52C
|
||||
{
|
||||
s16 unk0; // 0x52C
|
||||
s16 unk2; // 0x52E
|
||||
s16 unk4; // 0x530
|
||||
s16 unk6; // 0x532
|
||||
s16 unk8; // 0x534
|
||||
s16 unkA; // 0x536
|
||||
s16 unkC; // 0x538
|
||||
s16 unkE; // 0x53A
|
||||
s16 unk10; // 0x53C
|
||||
s16 unk12; // 0x53E
|
||||
void (*unk14)(void *, const void *, void *, s32); // TODO: fix void * to proper ptr types 0x540
|
||||
} SubStruct_52C;
|
||||
|
||||
typedef struct SubStruct_448
|
||||
{
|
||||
u8 unk0;
|
||||
u8 unk1;
|
||||
u8 unk2;
|
||||
u8 unk3;
|
||||
u8 unk4;
|
||||
u8 unk5;
|
||||
u16 unk6;
|
||||
u16 unk8;
|
||||
u16 unkA;
|
||||
} SubStruct_448;
|
||||
|
||||
typedef struct SubStruct_545
|
||||
{
|
||||
s16 unk0;
|
||||
s16 unk2;
|
||||
s16 unk4;
|
||||
s16 unk6[UNK_545_UNK6_ARR_COUNT];
|
||||
s16 unkE;
|
||||
} SubStruct_545;
|
||||
|
||||
// size: 0x55C
|
||||
typedef struct GroundBg
|
||||
{
|
||||
SubStruct_0 unk0[UNK_0_ARR_COUNT];
|
||||
unkStruct_202EE8C unkE0[UNK_E0_ARR_COUNT];
|
||||
SubStruct_3E0 unk3E0[UNK_3E0_ARR_COUNT];
|
||||
OpenedFile *unk430;
|
||||
OpenedFile *unk434;
|
||||
OpenedFile *unk438;
|
||||
OpenedFile *unk43C;
|
||||
OpenedFile *unk440;
|
||||
s16 unk444;
|
||||
SubStruct_448 unk448;
|
||||
SubStruct_545 unk454;
|
||||
s16 unk464[2];
|
||||
const void *unk468;
|
||||
const void *unk46C;
|
||||
u8 unk470;
|
||||
u8 unk471;
|
||||
s32 unk474;
|
||||
PixelPos unk478[UNK_54C_ARR_COUNT];
|
||||
struct SubStruct_488 unk488[UNK_54C_ARR_COUNT];
|
||||
u16 unk528;
|
||||
u8 unk52A;
|
||||
SubStruct_52C unk52C;
|
||||
u16 *unk544;
|
||||
u16 *unk548;
|
||||
u16 *unk54C[UNK_54C_ARR_COUNT];
|
||||
u16 *unk554[UNK_54C_ARR_COUNT];
|
||||
} GroundBg;
|
||||
|
||||
extern GroundBg *gGroundMapDungeon_3001B70;
|
||||
|
||||
#endif // GUARD_STR_GROUND_BG_H
|
||||
9
include/unk_dungeon_load.h
Normal file
9
include/unk_dungeon_load.h
Normal file
@@ -0,0 +1,9 @@
|
||||
#ifndef GUARD_UNK_DUNGEON_LOAD_H
|
||||
#define GUARD_UNK_DUNGEON_LOAD_H
|
||||
|
||||
#include "structs/str_file_system.h"
|
||||
#include "structs/str_dungeon_location.h"
|
||||
|
||||
void sub_80ADD9C(OpenedFile **a0, OpenedFile **a1, u32 *a2, void *a3, u16 *a4, DungeonLocation *a5, s32 a6, s32 a7, s32 a8, u16 *a9, s32 unused);
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user