11 #include "../services/sm.h" 15 #define FS_MAX_PATH 0x301 18 #define FS_SAVEDATA_CURRENT_TITLEID 0 21 #define FS_SAVEDATA_USERID_COMMONSAVE 0 54 char name[FS_MAX_PATH];
107 FsStorageId_None = 0,
108 FsStorageId_Host = 1,
109 FsStorageId_GameCard = 2,
110 FsStorageId_NandSystem = 3,
111 FsStorageId_NandUser = 4,
112 FsStorageId_SdCard = 5,
117 FS_CONTENTSTORAGEID_NandSystem = 0,
118 FS_CONTENTSTORAGEID_NandUser = 1,
119 FS_CONTENTSTORAGEID_SdCard = 2,
120 } FsContentStorageId;
124 FsSaveDataSpaceId_NandSystem = 0,
125 FsSaveDataSpaceId_NandUser = 1,
126 FsSaveDataSpaceId_SdCard = 2,
127 FsSaveDataSpaceId_TemporaryStorage = 3,
134 FsSaveDataType_SystemSaveData = 0,
135 FsSaveDataType_SaveData = 1,
136 FsSaveDataType_BcatDeliveryCacheStorage = 2,
137 FsSaveDataType_DeviceSaveData = 3,
142 Result fsInitialize(
void);
145 Service* fsGetServiceSession(
void);
185 Result fsFileRead(
FsFile* f,
u64 off,
void* buf,
size_t len,
size_t* out);
190 void fsFileClose(
FsFile* f);
195 void fsDirClose(
FsDir* d);
Result fsMountSdcard(FsFileSystem *out)
Do not call this directly, see fs_dev.h.
u64 titleID
titleID for FsSaveDataType_SaveData.
Definition: fs.h:81
u128 userID
See userID for FsSave.
Definition: fs.h:79
u128 userID
userID of the user-specific savedata to access, otherwise FS_SAVEDATA_USERID_COMMONSAVE. See account.h.
Definition: fs.h:65
int8_t s8
8-bit signed integer.
Definition: types.h:27
#define PACKED
Packs a struct (and other types?) so it won't include padding bytes.
Definition: types.h:56
u8 SaveDataSpaceId
See FsSaveDataSpaceId.
Definition: fs.h:76
s8 type
See FsEntryType.
Definition: fs.h:56
u8 SaveDataType
See FsSaveDataType.
Definition: fs.h:77
Result fsMount_SystemSaveData(FsFileSystem *out, u64 saveID)
Wrapper for fsMountSystemSaveData.
Open for reading.
Definition: fs.h:93
u64 titleID
titleID of the savedata to access when accessing other titles' savedata via SaveData, otherwise FS_SAVEDATA_CURRENT_TITLEID.
Definition: fs.h:64
u64 saveID
See saveID for FsSave.
Definition: fs.h:80
u32 Handle
Kernel object handle.
Definition: types.h:45
Service object structure.
Definition: sm.h:23
Save Struct.
Definition: fs.h:62
u32 Result
Function error code result type.
Definition: types.h:46
uint8_t u8
8-bit unsigned integer.
Definition: types.h:21
uint64_t u64
64-bit unsigned integer.
Definition: types.h:24
FsDirectoryFlags
For use with fsFsOpenDirectory.
Definition: fs.h:99
u64 SaveDataType
See FsSaveDataType.
Definition: fs.h:67
u64 unk_x38
0 for SystemSaveData/SaveData.
Definition: fs.h:70
Enable reading file entries.
Definition: fs.h:102
Enable reading directory entries.
Definition: fs.h:101
Result fsSaveDataIteratorRead(FsSaveDataIterator *s, FsSaveDataInfo *buf, size_t max_entries, size_t *total_entries)
Read FsSaveDataInfo data into the buf array.
u64 size
Raw saveimage size.
Definition: fs.h:82
u64 unk_x30
0 for SystemSaveData/SaveData.
Definition: fs.h:69
int32_t s32
32-bit signed integer.
Definition: types.h:29
FsFileFlags
Definition: fs.h:91
__uint128_t u128
128-bit unsigned integer.
Definition: types.h:25
FsSaveDataSpaceId
Definition: fs.h:122
Append file.
Definition: fs.h:95
[3.0.0+]
Definition: fs.h:138
#define BIT(n)
Creates a bitmask from a bit number.
Definition: types.h:51
u64 saveID
saveID, 0 for SaveData.
Definition: fs.h:66
FsSaveDataType
Definition: fs.h:132
u64 unk_x28
0 for SystemSaveData/SaveData.
Definition: fs.h:68
[3.0.0+]
Definition: fs.h:139
Open for writing.
Definition: fs.h:94
Result fsMount_SaveData(FsFileSystem *out, u64 titleID, u128 userID)
FsFileSystem can be mounted with fs_dev for use with stdio, see fs_dev.h.
u64 fileSize
File size.
Definition: fs.h:58
Pseudo value for fsOpenSaveDataIterator().
Definition: fs.h:129
Directory entry.
Definition: fs.h:52