diff options
| author | robojumper <robojumper@gmail.com> | 2024-05-24 16:41:33 +0200 |
|---|---|---|
| committer | robojumper <robojumper@gmail.com> | 2024-05-24 16:41:33 +0200 |
| commit | b2d728089e500e463d7596867ba11e34cf6586f0 (patch) | |
| tree | 918261d4590eed4b09ee63258dc59abeef8a82ed /include | |
| parent | d711118601dad11244eb8a2de79727ae9756cf9f (diff) | |
db_mapFile
Diffstat (limited to 'include')
| -rw-r--r-- | include/DynamicLink.h | 11 | ||||
| -rw-r--r-- | include/MSL_C/MSL_Common/Src/printf.h | 4 | ||||
| -rw-r--r-- | include/nw4r/db/db_mapFile.h | 26 | ||||
| -rw-r--r-- | include/rvl/OS/OSLink.h | 1 |
4 files changed, 33 insertions, 9 deletions
diff --git a/include/DynamicLink.h b/include/DynamicLink.h index 1e9e3319..da4a5a21 100644 --- a/include/DynamicLink.h +++ b/include/DynamicLink.h @@ -3,17 +3,19 @@ #include <common.h> #include <m/m_dvd.h> +#include <nw4r/db/db_mapFile.h> #include <rvl/OS.h> class DbMapFile { public: - DbMapFile(): unk_0(0) {} + DbMapFile(): mMapFileHandle(nullptr) {} ~DbMapFile(); void RegisterOnDvd(const char *, const OSModuleInfo *); void Unregister(); private: - UNKWORD unk_0; + nw4r::db::MapFileHandle mMapFileHandle; + nw4r::db::MapFile mMapFile; }; // https://github.com/zeldaret/tp/blob/main/include/DynamicLink.h @@ -75,11 +77,6 @@ struct DynamicModuleControl : DynamicModuleControlBase { /* 0x2C */ mDvd_callback_c *mDvdCallbackRequest; /* 0x30 */ EGG::ExpHeap *mHeap; /* 0x34 */ DbMapFile mpRelMapFile; - // Some of these might be members of DbMapFile - UNKWORD unk1; - UNKWORD unk2; - UNKWORD unk3; - UNKWORD unk4; static u32 sAllocBytes; static mDvd_toMainRam_base_c *sDvdFile; diff --git a/include/MSL_C/MSL_Common/Src/printf.h b/include/MSL_C/MSL_Common/Src/printf.h index 5b1a7ccd..5e35c0f4 100644 --- a/include/MSL_C/MSL_Common/Src/printf.h +++ b/include/MSL_C/MSL_Common/Src/printf.h @@ -10,8 +10,8 @@ extern "C" { int fprintf(FILE* stream, const char* format, ...); int printf(const char* format, ...); -int sprintf(const char* str, const char* format, ...); -int snprintf(const char* str, size_t n, const char* format, ...); +int sprintf(char* str, const char* format, ...); +int snprintf(char* str, size_t n, const char* format, ...); int vsnprintf(char* str, size_t n, const char* format, va_list arg); int vprintf(const char* format, va_list arg); diff --git a/include/nw4r/db/db_mapFile.h b/include/nw4r/db/db_mapFile.h new file mode 100644 index 00000000..2eb2aac6 --- /dev/null +++ b/include/nw4r/db/db_mapFile.h @@ -0,0 +1,26 @@ +#ifndef DB_MAPFILE_H +#define DB_MAPFILE_H + +#include <rvl/OS.h> + +namespace nw4r { +namespace db { + +typedef struct MapFile { + u8 *mapBuf; + const OSModuleInfo *moduleInfo; + s32 fileEntry; + MapFile *next; +} MapFile; + +typedef MapFile* MapFileHandle; + +MapFileHandle MapFile_RegistOnDvd(void*, const char*, const OSModuleInfo*); +void MapFile_Unregist(MapFileHandle); +void MapFile_UnregistAll(); +bool MapFile_QuerySymbol(u32 address, u8 *strBuf, u32 strBufSize); + +} // namespace db +} // namespace nw4r + +#endif diff --git a/include/rvl/OS/OSLink.h b/include/rvl/OS/OSLink.h index 8f6df8b0..0bc13dc3 100644 --- a/include/rvl/OS/OSLink.h +++ b/include/rvl/OS/OSLink.h @@ -105,6 +105,7 @@ BOOL OSLinkFixed(OSModuleInfo* newModule, void* bss); BOOL OSUnlink(OSModuleInfo* module); void OSSetStringTable(void* string_table); void __OSModuleInit(void); +OSModuleInfo* OSSearchModule(void* ptr, u32* section, u32* offset); #ifdef __cplusplus }; |
