mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-07-23 10:35:03 +00:00
initial save data library
This commit is contained in:
parent
3c12c48f52
commit
5084145cd9
@ -6,7 +6,7 @@
|
||||
#include "core/hle/libraries/libpad/pad.h"
|
||||
#include "core/hle/libraries/libsystemservice/system_service.h"
|
||||
#include "core/hle/libraries/libc/libc.h"
|
||||
|
||||
#include "core/hle/libraries/libsavedata/save_data.h"
|
||||
namespace Core::Libraries {
|
||||
|
||||
void InitHLELibs(Loader::SymbolsResolver* sym) {
|
||||
@ -17,6 +17,7 @@ void InitHLELibs(Loader::SymbolsResolver* sym) {
|
||||
LibPad::padSymbolsRegister(sym);
|
||||
LibSystemService::systemServiceSymbolsRegister(sym);
|
||||
LibC::libcSymbolsRegister(sym);
|
||||
LibSaveData::saveDataSymbolsRegister(sym);
|
||||
}
|
||||
|
||||
} // namespace Core::Libraries
|
||||
|
16
src/core/hle/libraries/libsavedata/save_data.cpp
Normal file
16
src/core/hle/libraries/libsavedata/save_data.cpp
Normal file
@ -0,0 +1,16 @@
|
||||
#include "save_data.h"
|
||||
|
||||
#include <core/hle/error_codes.h>
|
||||
#include <core/hle/libraries/libs.h>
|
||||
|
||||
#include "common/log.h"
|
||||
|
||||
namespace Core::Libraries::LibSaveData {
|
||||
s32 sceSaveDataMount2(const SceSaveDataMount2* mount, SceSaveDataMountResult* mountResult) {
|
||||
PRINT_DUMMY_FUNCTION_NAME();
|
||||
return SCE_OK;
|
||||
}
|
||||
void saveDataSymbolsRegister(Loader::SymbolsResolver* sym) {
|
||||
LIB_FUNCTION("0z45PIH+SNI", "libSceSaveData", 1, "libSceSaveData", 1, 1, sceSaveDataMount2);
|
||||
}
|
||||
} // namespace Core::Libraries::LibSaveData
|
51
src/core/hle/libraries/libsavedata/save_data.h
Normal file
51
src/core/hle/libraries/libsavedata/save_data.h
Normal file
@ -0,0 +1,51 @@
|
||||
#pragma once
|
||||
|
||||
#include <core/hle/libraries/libuserservice/libuserservice.h>
|
||||
|
||||
#include "common/types.h"
|
||||
|
||||
namespace Core::Loader {
|
||||
class SymbolsResolver;
|
||||
}
|
||||
|
||||
namespace Core::Libraries::LibSaveData {
|
||||
|
||||
constexpr int SCE_SAVE_DATA_TITLE_ID_DATA_SIZE = 10; // Save data title ID size
|
||||
constexpr int SCE_SAVE_DATA_DIRNAME_DATA_MAXSIZE = 32; // Maximum size for a save data directory name
|
||||
constexpr int SCE_SAVE_DATA_MOUNT_POINT_DATA_MAXSIZE = 16; // Maximum size for a mount point name
|
||||
constexpr int SCE_SAVE_DATA_FINGERPRINT_DATA_SIZE = 65; // Fingerprint size
|
||||
constexpr int SCE_SAVE_DATA_TITLE_MAXSIZE = 128; // Maximum size for a save data title name (NULL-terminated, UTF-8)
|
||||
constexpr int SCE_SAVE_DATA_SUBTITLE_MAXSIZE = 128; // Maximum size for a save data subtitle name (NULL-terminated, UTF-8)
|
||||
constexpr int SCE_SAVE_DATA_DETAIL_MAXSIZE = 1024; // Maximum size for save data detailed information (NULL-terminated, UTF-8)
|
||||
|
||||
struct SceSaveDataDirName {
|
||||
char data[SCE_SAVE_DATA_DIRNAME_DATA_MAXSIZE];
|
||||
};
|
||||
|
||||
struct SceSaveDataMountPoint {
|
||||
char data[SCE_SAVE_DATA_MOUNT_POINT_DATA_MAXSIZE];
|
||||
};
|
||||
struct SceSaveDataMount2 {
|
||||
Core::Libraries::LibUserService::SceUserServiceUserId userId;
|
||||
s32 padding;
|
||||
const SceSaveDataDirName* dirName;
|
||||
u64 blocks;
|
||||
u32 mountMode;
|
||||
u08 reserved[32];
|
||||
s32 padding2;
|
||||
};
|
||||
|
||||
struct SceSaveDataMountResult {
|
||||
SceSaveDataMountPoint mountPoint;
|
||||
u64 requiredBlocks;
|
||||
u32 unused;
|
||||
u32 mountStatus;
|
||||
u08 reserved[28];
|
||||
s32 padding;
|
||||
};
|
||||
|
||||
s32 sceSaveDataMount2(const SceSaveDataMount2* mount, SceSaveDataMountResult* mountResult);
|
||||
|
||||
void saveDataSymbolsRegister(Loader::SymbolsResolver* sym);
|
||||
|
||||
} // namespace Core::Libraries::LibSaveData
|
Loading…
Reference in New Issue
Block a user