Commit Graph

53 Commits (572ce043c291f46f50d97f68f4df4f6f93e72035)

Author SHA1 Message Date
bunnei 572ce043c2 Merge pull request #271 from archshift/createf
Added CreateFile to the FS_USER service
10 years ago
archshift 0625dd09ea Added CreateFile to the FS_USER service
Tested with hwtests.
10 years ago
bunnei 2b0d7a1d29 Merge pull request #315 from chinhodado/master
Clean up some warnings
10 years ago
Chin e795692614 Clean up some warnings 10 years ago
Yuri Kunde Schlesner 82528ba7df Common: Add a clone of std::make_unique 10 years ago
Subv f9472eda0a SystemSaveData: Added a TODO to move it to the NAND.
Maybe sometime when we actually implement that
10 years ago
Subv bec527fa24 SaveData: Implemented the SystemSaveData archive.
It will be stored in the /syssavedata folder. This archive is user by various Services and possibly games via the FS:U service.
10 years ago
Subv ea9ce0fba7 Filesystem/Archives: Implemented the SaveData archive
The savedata for each game is stored in /savedata/<ProgramID> for NCCH files. ELF files and 3DSX files use the folder 0 because they have no ID information

Got rid of the code duplication in File and Directory

Files that deal with the host machine's file system now live in DiskFile, similarly for directories and DiskDirectory and archives with DiskArchive.

FS_U: Use the correct error code when a file wasn't found
10 years ago
Yuri Kunde Schlesner 83e6e4ffec FS.Archive: Clean up treatment of archives and their handles
- Refactor FS::Archive internals to make Archive creation and lifetime
  management clearer.
- Remove the "Archive as a File" hack.
- Implement 64-bit Archive handles.
10 years ago
Yuri Kunde Schlesner 0931a42af0 Service.FS: Rename FileSys::File to FileBackend 10 years ago
Yuri Kunde Schlesner d51afab0bc Service.FS: Rename FileSys::Directory to DirectoryBackend 10 years ago
Yuri Kunde Schlesner 82fe821e87 Service.FS: Rename FileSys::Archive to ArchiveBackend 10 years ago
Yuri Kunde Schlesner f6153679b0 Service.FS: Do archive registration using IdCode instead of name 10 years ago
Yuri Kunde Schlesner 0600e2d8b5 Convert old logging calls to new logging macros 10 years ago
bunnei 1f4953e1bb Merge pull request #264 from Subv/files
Kernel/File: Fixed file read/write hwtests
10 years ago
Subv 1d1078fd8b Kernel/File: Fixed file read/write hwtests
The 3DS allows the user to read from files opened with the Write access modifier, even if he did not specify the Read access modifier.

Open the files in binary mode so that we can prevent CR/LF problems in Windows, where a line-end is replaced by these two bytes instead of just 0xA, this was causing problems with the GetSize test
10 years ago
archshift 20d2ed0950 Make OpenDirectory fail if the directory doesn't exist
This is in line with what the hardware itself does.

It does this by splitting the initial directory opening into Directory.Open(), which will return false if a stat fails.
Then, Archive::OpenDirectory will return nullptr, and archive.cpp will return an error code .
10 years ago
bunnei 5056329a80 Merge pull request #222 from archshift/renamexyz
Implemented RenameFile and RenameDirectory in FS:USER
10 years ago
archshift 139a4d91d9 Updated archive.cpp functions for proper error handling 10 years ago
vaguilar 223e76d51d Fixed formatting and switch statement warnings 11 years ago
archshift e5ff01c2cd Implemented RenameDirectory in FS:USER 11 years ago
archshift 45afc15aa6 Implemented RenameFile in FS:USER 11 years ago
bunnei ef1b16a7eb Merge pull request #191 from archshift/deletexyz
Added DeleteFile and DeleteDirectory functions to FS:USER and the archives.
11 years ago
archshift 8aeadbd95a Added DeleteFile and DeleteDirectory functions to FS:USER and the archives. 11 years ago
Emmanuel Gil Peyrot f5d38649c7 Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generated 11 years ago
Tony Wasserka d218a547fa Merge pull request #209 from lioncash/warn
directory_sdmc: Fix a signed/unsigned mismatch comparison
11 years ago
Lioncash 548c49dfe9 directory_sdmc: Fix a signed/unsigned mismatch comparison 11 years ago
Lioncash 1a8f466217 Remove extraneous semicolons 11 years ago
bunnei a3107a6b57 FileSys: Updated backend code to use FileSys::Path instead of string for paths. 11 years ago
bunnei c04a04189a FileSys: Added DebugStr method to Path class. 11 years ago
archshift 1f7c4ab7f6 Use std::u16string for conversion between UTF-8 and UTF-16, FS:USER functions 11 years ago
archshift 04c90c395d Added CreateDirectory function to service/fs.cpp, and in Archive. 11 years ago
Sean 9a012ff007 Fix some warnings 11 years ago
archshift a59f57d504 Use config files to store whether SDMC is enabled or not
Before, it used to use whether the directory actually existed. As a result, .citra-emu/sdmc was never auto-created (something quite confusing to me until I read through the logs).
11 years ago
Emmanuel Gil Peyrot fbd72fd6bf Common: Add a helper function to generate a 8.3 filename from a long one.
Core: Fix the SDMC Directory implementation to make blargSnes work.
11 years ago
Emmanuel Gil Peyrot 19c2a96ab0 FileSys: Add static asserts for the Directory struct, and fix its fields position. 11 years ago
Emmanuel Gil Peyrot 0be5c03176 FileSys: split the constructor into an Open method, in order to notify the opener something went wrong.
Kernel: Return an invalid handle to OpenFile when it failed to open.
11 years ago
Emmanuel Gil Peyrot 23c2fbfc7a FileSys/Kernel: Implement SetSize service call for File objects. 11 years ago
Emmanuel Gil Peyrot d34673990b FileSys: Add forgotten docstrings. 11 years ago
Lioncash ca2f0de08a Fix warnings in core and common 11 years ago
Emmanuel Gil Peyrot c14e5713f5 Core: Add a method to obtain a Directory from an Archive. 11 years ago
Emmanuel Gil Peyrot 33b0d1081e Core: Add a Directory object, with both a stub and a passthrough implementations. 11 years ago
Emmanuel Gil Peyrot e73caaefe5 Core: Add a passthrough backend for the filesystem, exposed as SDMC. 11 years ago
Emmanuel Gil Peyrot 9251f7e2f8 Core: Add a new File class, obtainable from an Archive, and a stub implementation. 11 years ago
archshift 4c4a01bf41 Added FS functions to Archive and Archive_RomFS 11 years ago
bunnei 1099d83455 Marked AppLoader_ELF, AppLoader_NCCH, and Archive_RomFS virtual functions as "override". 11 years ago
bunnei 2d734bb6c5 Marked AppLoader_ELF, AppLoader_NCCH, and Archive_RomFS classes as "final" 11 years ago
bunnei 2c62d92551 Loader: Updated read methods to be const
- Required "file" handle to be made local and explicitly opened/closed as needed
11 years ago
bunnei 17a6148f9d FileSys: Added preliminary support for applications reading the RomFS archive.
Archive: Fixed brace ugliness for neobrain :)

FS: Commented out unused local variables to prevent warnings.

...But keeping them here for future use.

archive_romfs: Removed unused #include.
11 years ago
bunnei 0cc3e85685 Core: Removed unused directory_file_system and meta_file_system modules.
Core: Updated CMakeLists.txt to remove directory_file_system and meta_file_system modules.
11 years ago