From e5e4451cfcf8b03153fd11a620460f66b4840ba6 Mon Sep 17 00:00:00 2001 From: Max Date: Sat, 31 Oct 2020 18:08:27 -0400 Subject: refactor as code_801DCE6C to C++ --- include/SDK/NAND/nand.h | 4 ++-- include/code_801DBE90.h | 14 +------------- include/code_801DCE6C.h | 39 +++++++++++++++++++++++++++------------ 3 files changed, 30 insertions(+), 27 deletions(-) (limited to 'include') diff --git a/include/SDK/NAND/nand.h b/include/SDK/NAND/nand.h index bc22279..ac2f655 100644 --- a/include/SDK/NAND/nand.h +++ b/include/SDK/NAND/nand.h @@ -5,13 +5,13 @@ extern "C" { #endif -// TODO: size >= 0x8B +// NOTE: size >= 0x8B, putting 0x8C for now typedef struct NANDFileInfo { u8 unk0[0x8C]; } NANDFileInfo; -// TODO: no idea of size yet +// TODO: placeholder size typedef struct NANDCommandBlock { u8 unk0[0x4]; diff --git a/include/code_801DBE90.h b/include/code_801DBE90.h index bc026d9..3531815 100644 --- a/include/code_801DBE90.h +++ b/include/code_801DBE90.h @@ -7,19 +7,7 @@ extern "C" { #include "SDK/dvd.h" #include "SDK/mem.h" - -// TODO: nested class? -// move to code_801DCE6C header? -struct gUnkClass6 -{ - u8 unk0; - u8 unk1; - char unk2[0x5]; - char unk7[0x41]; - NANDFileInfo unk48; - NANDCommandBlock block; - u8 unkD8[0xB8]; -}; +#include "code_801DCE6C.h" struct gUnkClass5 { diff --git a/include/code_801DCE6C.h b/include/code_801DCE6C.h index b6f1130..9a9515c 100644 --- a/include/code_801DCE6C.h +++ b/include/code_801DCE6C.h @@ -6,24 +6,39 @@ extern "C" { #endif #include -#include "code_801DBE90.h" -// array of 8 0x190 byte structs -struct gUnkClass4 +struct gUnkClass5; + +struct gUnkClass6 { - gUnkClass6 arr[0x8]; + u8 unk0; + u8 unk1; + char unk2[0x46]; + NANDFileInfo unk48; + NANDCommandBlock block; + u8 unkD8[0xB8]; + + const char* func_801DCE6C(void) const; + const char* func_801DCE74(void) const; +}; +class gUnkClass4 +{ + enum { ArrLength_ = 8 }; + gUnkClass6 arr_[ArrLength_]; + + gUnkClass6* func_801DCEB4(const char* p2); +public: gUnkClass4(void); + BOOL func_801DCF48(const char* p2); + BOOL func_801DCF74(const char* fileName, gUnkClass5* fp); + BOOL func_801DCFE4(gUnkClass5* fp) const; + BOOL func_801DD03C(gUnkClass5* fp, u32* fileSz) const; + s32 func_801DD084(gUnkClass5* fp, void* addr, s32 length, s32 offset) const; + BOOL func_801DD220(gUnkClass5* fp, void*, u32, s32 offset) const; + BOOL func_801DD294(const char *fileName, s32); }; -BOOL func_801DCF74(gUnkClass4*, const char*, gUnkClass5*); -BOOL func_801DCF48(gUnkClass4*, const char*); -s32 func_801DD084(gUnkClass4* p1, gUnkClass5* fp, void* addr, s32 length, s32 offset); -BOOL func_801DD220(gUnkClass4*, gUnkClass5*, void*, u32, s32); -BOOL func_801DCFE4(gUnkClass4*, gUnkClass5* fp); -BOOL func_801DD03C(gUnkClass4* p1, gUnkClass5* fp, u32* fileSz); -BOOL func_801DD294(gUnkClass4*, const char*, s32); - #ifdef __cplusplus } #endif -- cgit v1.2.3