From ad7ac17647018c3c06e8a166798d75f28bcda61c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexandro=20S=C3=A1nchez=20Bach?= Date: Fri, 21 Mar 2014 00:46:27 +0100 Subject: [PATCH] Small fixes in sceNpTrophy and cellSaveData * Added cellSaveData.cpp to the project. * Fixed wrong cellSaveData structs. * Fixed compilation problem caused by the switch/case statements introduced in sceNpTrophy and TROPUSR.cpp in the last commit --- rpcs3/Emu/SysCalls/Modules/cellSaveData.cpp | 236 +++++++++++--------- rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp | 8 +- rpcs3/Loader/TROPUSR.cpp | 2 +- rpcs3/rpcs3.vcxproj | 1 + rpcs3/rpcs3.vcxproj.filters | 3 + 5 files changed, 138 insertions(+), 112 deletions(-) diff --git a/rpcs3/Emu/SysCalls/Modules/cellSaveData.cpp b/rpcs3/Emu/SysCalls/Modules/cellSaveData.cpp index 82518ff22a..d0cf1a4dda 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellSaveData.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellSaveData.cpp @@ -2,6 +2,7 @@ #include "Emu/SysCalls/SysCalls.h" #include "Emu/SysCalls/SC_FUNC.h" +// TODO: Is this really a module? Or is everything part of cellSysutil? void cellSaveData_init(); Module cellSaveData("cellSaveData", cellSaveData_init); @@ -21,206 +22,227 @@ enum CELL_SAVEDATA_ERROR_NOUSER, }; +// Constants +enum +{ + // CellSaveDataParamSize + CELL_SAVEDATA_DIRNAME_SIZE = 32, + CELL_SAVEDATA_FILENAME_SIZE = 13, + CELL_SAVEDATA_SECUREFILEID_SIZE = 16, + CELL_SAVEDATA_PREFIX_SIZE = 256, + CELL_SAVEDATA_LISTITEM_MAX = 2048, + CELL_SAVEDATA_SECUREFILE_MAX = 113, + CELL_SAVEDATA_DIRLIST_MAX = 2048, + CELL_SAVEDATA_INVALIDMSG_MAX = 256, + CELL_SAVEDATA_INDICATORMSG_MAX = 64, + + // CellSaveDataSystemParamSize + CELL_SAVEDATA_SYSP_TITLE_SIZE = 128, + CELL_SAVEDATA_SYSP_SUBTITLE_SIZE = 128, + CELL_SAVEDATA_SYSP_DETAIL_SIZE = 1024, + CELL_SAVEDATA_SYSP_LPARAM_SIZE = 8, +}; + // Datatypes struct CellSaveDataSetList { - unsigned int sortType; - unsigned int sortOrder; - char *dirNamePrefix; + be_t sortType; + be_t sortOrder; + be_t dirNamePrefix_addr; // char* }; struct CellSaveDataSetBuf { - unsigned int dirListMax; - unsigned int fileListMax; - unsigned int reserved[6]; - unsigned int bufSize; - void *buf; + be_t dirListMax; + be_t fileListMax; + be_t reserved[6]; + be_t bufSize; + be_t buf_addr; // void* }; struct CellSaveDataNewDataIcon { - char *title; - unsigned int iconBufSize; - void *iconBuf; + be_t title_addr; // char* + be_t iconBufSize; + be_t iconBuf_addr; // void* }; struct CellSaveDataListNewData { - unsigned int iconPosition; - char *dirName; - CellSaveDataNewDataIcon *icon; + be_t iconPosition; + be_t dirName_addr; // char* + be_t icon_addr; // CellSaveDataNewDataIcon* }; struct CellSaveDataDirList { - char dirName; //[CELL_SAVEDATA_DIRNAME_SIZE]; - char listParam; //[CELL_SAVEDATA_SYSP_LPARAM_SIZE]; + s8 dirName[CELL_SAVEDATA_DIRNAME_SIZE]; + s8 listParam[CELL_SAVEDATA_SYSP_LPARAM_SIZE]; }; struct CellSaveDataListGet { - unsigned int dirNum; - unsigned int dirListNum; - CellSaveDataDirList *dirList; + be_t dirNum; + be_t dirListNum; + be_t dirList_addr; // CellSaveDataDirList* }; struct CellSaveDataListSet { - unsigned int focusPosition; - char *focusDirName; - unsigned int fixedListNum; - CellSaveDataDirList *fixedList; - CellSaveDataListNewData *newData; + be_t focusPosition; + be_t focusDirName_addr; // char* + be_t fixedListNum; + be_t fixedList_addr; // CellSaveDataDirList* + be_t newData_addr; // CellSaveDataListNewData* }; struct CellSaveDataFixedSet { - char *dirName; - CellSaveDataNewDataIcon *newIcon; - unsigned int option; + be_t dirName_addr; // char* + be_t newIcon_addr; // CellSaveDataNewDataIcon* + be_t option; }; struct CellSaveDataSystemFileParam { - char title; //[CELL_SAVEDATA_SYSP_TITLE_SIZE]; - char subTitle; //[CELL_SAVEDATA_SYSP_SUBTITLE_SIZE]; - char detail; //[CELL_SAVEDATA_SYSP_DETAIL_SIZE]; - unsigned int attribute; - char reserved2[4]; - char listParam; //[CELL_SAVEDATA_SYSP_LPARAM_SIZE]; - char reserved[256]; + s8 title[CELL_SAVEDATA_SYSP_TITLE_SIZE]; + s8 subTitle[CELL_SAVEDATA_SYSP_SUBTITLE_SIZE]; + s8 detail[CELL_SAVEDATA_SYSP_DETAIL_SIZE]; + be_t attribute; + s8 reserved2[4]; + s8 listParam[CELL_SAVEDATA_SYSP_LPARAM_SIZE]; + s8 reserved[256]; }; struct CellSaveDataDirStat { - s64 st_atime_; - s64 st_mtime_; - s64 st_ctime_; - char dirName; //[CELL_SAVEDATA_DIRNAME_SIZE]; + be_t st_atime_; + be_t st_mtime_; + be_t st_ctime_; + s8 dirName[CELL_SAVEDATA_DIRNAME_SIZE]; }; struct CellSaveDataFileStat { - unsigned int fileType; - char reserved1[4]; - u64 st_size; - s64 st_atime_; - s64 st_mtime_; - s64 st_ctime_; - char fileName; //[CELL_SAVEDATA_FILENAME_SIZE]; - char reserved2[3]; + be_t fileType; + u8 reserved1[4]; + be_t st_size; + be_t st_atime_; + be_t st_mtime_; + be_t st_ctime_; + u8 fileName[CELL_SAVEDATA_FILENAME_SIZE]; + u8 reserved2[3]; }; struct CellSaveDataStatGet { - int hddFreeSizeKB; - unsigned int isNewData; + be_t hddFreeSizeKB; + be_t isNewData; CellSaveDataDirStat dir; CellSaveDataSystemFileParam getParam; - unsigned int bind; - int sizeKB; - int sysSizeKB; - unsigned int fileNum; - unsigned int fileListNum; - CellSaveDataFileStat *fileList; + be_t bind; + be_t sizeKB; + be_t sysSizeKB; + be_t fileNum; + be_t fileListNum; + be_t fileList_addr; // CellSaveDataFileStat* }; struct CellSaveDataAutoIndicator { - unsigned int dispPosition; - unsigned int dispMode; - char *dispMsg; - unsigned int picBufSize; - void *picBuf; + be_t dispPosition; + be_t dispMode; + be_t dispMsg_addr; // char* + be_t picBufSize; + be_t picBuf_addr; // void* }; struct CellSaveDataStatSet { - CellSaveDataSystemFileParam *setParam; - unsigned int reCreateMode; - CellSaveDataAutoIndicator *indicator; + be_t setParam_addr; // CellSaveDataSystemFileParam* + be_t reCreateMode; + be_t indicator_addr; // CellSaveDataAutoIndicator* }; struct CellSaveDataFileGet { - unsigned int excSize; + be_t excSize; }; struct CellSaveDataFileSet { - unsigned int fileOperation; - void *reserved; - unsigned int fileType; - unsigned char secureFileId; //[CELL_SAVEDATA_SECUREFILEID_SIZE]; - char *fileName; - unsigned int fileOffset; - unsigned int fileSize; - unsigned int fileBufSize; - void *fileBuf; + be_t fileOperation; + be_t reserved_addr; // void* + be_t fileType; + u8 secureFileId[CELL_SAVEDATA_SECUREFILEID_SIZE]; + be_t fileName_addr; // char* + be_t fileOffset; + be_t fileSize; + be_t fileBufSize; + be_t fileBuf_addr; // void* }; struct CellSaveDataCBResult { - int result; - unsigned int progressBarInc; - int errNeedSizeKB; - char *invalidMsg; - void *userdata; + be_t result; + be_t progressBarInc; + be_t errNeedSizeKB; + be_t invalidMsg_addr; // char* + be_t userdata_addr; // void* }; struct CellSaveDataDoneGet { - int excResult; - char dirName; //[CELL_SAVEDATA_DIRNAME_SIZE]; - int sizeKB; - int hddFreeSizeKB; + be_t excResult; + s8 dirName[CELL_SAVEDATA_DIRNAME_SIZE]; + be_t sizeKB; + be_t hddFreeSizeKB; }; // Functions -int cellSaveDataListSave2() //unsigned int version, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataListSave2() //u32 version, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataListLoad2() //unsigned int version, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataListLoad2() //u32 version, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataFixedSave2() //unsigned int version, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile,sys_memory_container_t container, void *userdata +int cellSaveDataFixedSave2() //u32 version, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile,sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataFixedLoad2() //unsigned int version, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataFixedLoad2() //u32 version, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataAutoSave2() //unsigned int version, const char *dirName, unsigned int errDialog, CellSaveDataSetBuf *setBuf, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataAutoSave2() //u32 version, const char *dirName, u32 errDialog, CellSaveDataSetBuf *setBuf, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataAutoLoad2() //unsigned int version, const char *dirName, unsigned int errDialog, CellSaveDataSetBuf *setBuf, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataAutoLoad2() //u32 version, const char *dirName, u32 errDialog, CellSaveDataSetBuf *setBuf, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataListAutoSave() //unsigned int version, unsigned int errDialog, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile,sys_memory_container_t container, void *userdata +int cellSaveDataListAutoSave() //u32 version, u32 errDialog, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile,sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataListAutoLoad() //unsigned int version, unsigned int errDialog, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataListAutoLoad() //u32 version, u32 errDialog, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; @@ -238,49 +260,49 @@ int cellSaveDataFixedDelete() //CellSaveDataSetList *setList, CellSaveDataSetBuf return CELL_SAVEDATA_RET_OK; } -int cellSaveDataUserListSave() //unsigned int version, CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataUserListSave() //u32 version, CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataUserListLoad() //unsigned int version, CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataUserListLoad() //u32 version, CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataUserFixedSave() //unsigned int version, CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataUserFixedSave() //u32 version, CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataUserFixedLoad() //unsigned int version, CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataUserFixedLoad() //u32 version, CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataUserAutoSave() //unsigned int version, CellSysutilUserId userId, const char *dirName, unsigned int errDialog, CellSaveDataSetBuf *setBuf, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataUserAutoSave() //u32 version, CellSysutilUserId userId, const char *dirName, u32 errDialog, CellSaveDataSetBuf *setBuf, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataUserAutoLoad() //unsigned int version, CellSysutilUserId userId, const char *dirName, unsigned int errDialog, CellSaveDataSetBuf *setBuf, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataUserAutoLoad() //u32 version, CellSysutilUserId userId, const char *dirName, u32 errDialog, CellSaveDataSetBuf *setBuf, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataUserListAutoSave() //unsigned int version, CellSysutilUserId userId, unsigned int errDialog, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataUserListAutoSave() //u32 version, CellSysutilUserId userId, u32 errDialog, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataUserListAutoLoad() //unsigned int version, CellSysutilUserId userId, unsigned int errDialog, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata +int cellSaveDataUserListAutoLoad() //u32 version, CellSysutilUserId userId, u32 errDialog, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; @@ -302,31 +324,31 @@ int cellSaveDataListDelete() //CellSaveDataSetList *setList, CellSaveDataSetBuf return CELL_SAVEDATA_RET_OK; } -int cellSaveDataListImport() //CellSaveDataSetList *setList, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata +int cellSaveDataListImport() //CellSaveDataSetList *setList, u32 maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataListExport() //CellSaveDataSetList *setList, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata +int cellSaveDataListExport() //CellSaveDataSetList *setList, u32 maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataFixedImport() //const char *dirName, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata +int cellSaveDataFixedImport() //const char *dirName, u32 maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataFixedExport() //const char *dirName, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata +int cellSaveDataFixedExport() //const char *dirName, u32 maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataGetListItem() //const char *dirName, CellSaveDataDirStat *dir, CellSaveDataSystemFileParam *sysFileParam, unsigned int *bind, int *sizeKB +int cellSaveDataGetListItem() //const char *dirName, CellSaveDataDirStat *dir, CellSaveDataSystemFileParam *sysFileParam, mem32_t bind, mem32_t sizeKB { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; @@ -338,31 +360,31 @@ int cellSaveDataUserListDelete() //CellSysutilUserId userId, CellSaveDataSetList return CELL_SAVEDATA_RET_OK; } -int cellSaveDataUserListImport() //CellSysutilUserId userId, CellSaveDataSetList *setList, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata +int cellSaveDataUserListImport() //CellSysutilUserId userId, CellSaveDataSetList *setList, u32 maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataUserListExport() //CellSysutilUserId userId, CellSaveDataSetList *setList, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata +int cellSaveDataUserListExport() //CellSysutilUserId userId, CellSaveDataSetList *setList, u32 maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataUserFixedImport() //CellSysutilUserId userId, const char *dirName, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata +int cellSaveDataUserFixedImport() //CellSysutilUserId userId, const char *dirName, u32 maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataUserFixedExport() //CellSysutilUserId userId, const char *dirName, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata +int cellSaveDataUserFixedExport() //CellSysutilUserId userId, const char *dirName, u32 maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; } -int cellSaveDataUserGetListItem() //CellSysutilUserId userId, const char *dirName, CellSaveDataDirStat *dir, CellSaveDataSystemFileParam *sysFileParam, unsigned int *bind, int *sizeKB +int cellSaveDataUserGetListItem() //CellSysutilUserId userId, const char *dirName, CellSaveDataDirStat *dir, CellSaveDataSystemFileParam *sysFileParam, mem32_t bind, mem32_t sizeKB { UNIMPLEMENTED_FUNC(cellSaveData); return CELL_SAVEDATA_RET_OK; diff --git a/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp b/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp index 41d34dd6e9..74d210413d 100644 --- a/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp +++ b/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp @@ -241,7 +241,7 @@ int sceNpTrophyGetGameInfo(u32 context, u32 handle, mem_ptr_tGetAttribute("id").mb_str()); details->numTrophies++; - switch (n->GetAttribute("ttype").mb_str()[0]) { + switch (((const char *)n->GetAttribute("ttype").mb_str())[0]) { case 'B': details->numBronze++; break; case 'S': details->numSilver++; break; case 'G': details->numGold++; break; @@ -251,7 +251,7 @@ int sceNpTrophyGetGameInfo(u32 context, u32 handle, mem_ptr_tGetTrophyUnlockState(trophy_id)) { data->unlockedTrophies++; - switch (n->GetAttribute("ttype").mb_str()[0]) { + switch (((const char *)n->GetAttribute("ttype").mb_str())[0]) { case 'B': data->unlockedBronze++; break; case 'S': data->unlockedSilver++; break; case 'G': data->unlockedGold++; break; @@ -361,14 +361,14 @@ int sceNpTrophyGetTrophyInfo(u32 context, u32 handle, s32 trophyId, mem_ptr_tGetName() == "trophy" && (trophyId == atoi(n->GetAttribute("id").mb_str()))) { details->trophyId = trophyId; - switch (n->GetAttribute("ttype").mb_str()[0]) { + switch (((const char *)n->GetAttribute("ttype").mb_str())[0]) { case 'B': details->trophyGrade = SCE_NP_TROPHY_GRADE_BRONZE; break; case 'S': details->trophyGrade = SCE_NP_TROPHY_GRADE_SILVER; break; case 'G': details->trophyGrade = SCE_NP_TROPHY_GRADE_GOLD; break; case 'P': details->trophyGrade = SCE_NP_TROPHY_GRADE_PLATINUM; break; } - switch (n->GetAttribute("hidden").mb_str()[0]) { + switch (((const char *)n->GetAttribute("ttype").mb_str())[0]) { case 'y': details->hidden = true; break; case 'n': details->hidden = false; break; } diff --git a/rpcs3/Loader/TROPUSR.cpp b/rpcs3/Loader/TROPUSR.cpp index 7c0e1fac6b..e9ed6bd30b 100644 --- a/rpcs3/Loader/TROPUSR.cpp +++ b/rpcs3/Loader/TROPUSR.cpp @@ -132,7 +132,7 @@ bool TROPUSRLoader::Generate(std::string& filepath, std::string& configpath) { u32 trophy_id = atoi(n->GetAttribute("id").mb_str()); u32 trophy_grade; - switch (n->GetAttribute("ttype").mb_str()[0]) + switch (((const char *)n->GetAttribute("ttype").mb_str())[0]) { case 'B': trophy_grade = 4; break; case 'S': trophy_grade = 3; break; diff --git a/rpcs3/rpcs3.vcxproj b/rpcs3/rpcs3.vcxproj index bf0d5f4eaf..da64180a17 100644 --- a/rpcs3/rpcs3.vcxproj +++ b/rpcs3/rpcs3.vcxproj @@ -300,6 +300,7 @@ + diff --git a/rpcs3/rpcs3.vcxproj.filters b/rpcs3/rpcs3.vcxproj.filters index b70898668a..4a3e8de4da 100644 --- a/rpcs3/rpcs3.vcxproj.filters +++ b/rpcs3/rpcs3.vcxproj.filters @@ -472,6 +472,9 @@ Loader + + Emu\SysCalls\Modules +