aboutsummaryrefslogtreecommitdiff
path: root/src/core/file_sys
AgeCommit message (Collapse)Author
2020-07-17Merge pull request #4309 from Morph1984/fix-romfs-bugbunnei
fs: Fix RomFS building when zero byte files are present
2020-07-16Check for empty section0 and CNMT prior to installMorph
2020-07-15clang formatMorph
2020-07-15Use proper install result when overwriting filesMorph
2020-07-15Remove global system instance and address feedbackMorph
2020-07-15registered_cache: Remove previous update/dlc if it exists on installMorph
- This checks for and removes old updates or dlc based on title id. If a content meta nca exists within the registered cache, it will attempt to remove all the ncas associated with the content meta before installing a new update/dlc
2020-07-14Merge pull request #4282 from Morph1984/fs-sizebunnei
filesystem: Set various NAND partition sizes to their defaults
2020-07-12fs: Fix RomFS building when zero byte files are presentMorph
When zero byte files are present, the key (offset) for that file is identical to the file right after. A std::map isn't able to fit key-value pairs with identical keys (offsets), therefore, the solution is to use std::multimap which permits multiple entries with the same key. This most prominently fixes Pokemon Sword and Shield weather with any RomFS mod applied.
2020-07-10vfs_real: Fix MoveFileMorph
The file wasn't closed prior to being renamed / moved, throwing an error that states "The process cannot access the file because it is being used by another process." Fix this by closing the file prior to a rename / move operation. Fixes saving in Luigi's Mansion 3 and KATANA KAMI: A Way of the Samurai Story.
2020-07-10bis_factory: Set User NAND free space to be 1 MiB less than total.Morph
2020-07-10sdmc_factory: Set the SDMC total size to 1 TiBMorph
We should not be limited by the SDMC's partition size, set this to 1 TiB. Hardware is limited to the max allowed by the MBR partition table which is 2 TiB.
2020-07-10bis_factory: Use hardware default NAND partition sizesMorph
Sets the total space of user and system partitions to their hardware defaults. Furthermore, return the total space as free space for the user partition to prevent it from reaching zero. Some games like Bioshock 2 check for the available free space prior to save creation, and we should not be limited by arbitrary limits.
2020-07-01key_manager: Correct casing of instance()Lioncash
Our codebase uppercases member function names.
2020-07-01Merge pull request #3967 from FearlessTobi/keys-singletonDavid
crypto: Make KeyManager a singleton class
2020-06-19Merge pull request #4099 from MerryMage/macOS-buildbunnei
Fix compilation on macOS
2020-06-19mii_model: Remove redundant std::moveMerryMage
Named return value optimization automatically applies here.
2020-06-18shared_font: Service::NS::EncryptSharedFont takes a size_t&MerryMage
2020-05-28Make copying directory string more conciselat9nq
2020-05-28Address requested changeslat9nq
2020-05-27*nix systems can read any-case patch directorieslat9nq
Changes many patch_manager functions to use a case-less variant of GetSubdirectory. Fixes patches not showing up on *nix systems when patch directories are named with odd cases, i.e. `exeFS'.
2020-05-20Merge pull request #3946 from ogniK5377/sysverdat-10-0-2bunnei
file_sys: Update SystemVersion archive to version 10.0.2
2020-05-20crypto: Make KeyManager a singleton classFearlessTobi
Previously, we were reading the keys everytime a KeyManager object was created, causing yuzu to reread the keys file multiple hundreds of times when loading the game list. With this change, it is only loaded once. On my system, this decreased game list loading times by a factor of 20.
2020-05-16file_sys: Update SystemVersion archive to version 10.0.2David Marcec
2020-05-11file_sys: savefata_factory: Update to support DeviceSaveData.bunnei
2020-05-11file_sys: control_metadata: Expose device_save_data_size.bunnei
2020-04-20file_sys: program_metadata: Add a helper function for generating reasonable ↵bunnei
default metadata. - We need this for homebrew process initialization.
2020-04-17core: memory: Move to Core::Memory namespace.bunnei
- helpful to disambiguate Kernel::Memory namespace.
2020-04-15CMakeLists: Specify -Wextra on linux buildsLioncash
Allows reporting more cases where logic errors may exist, such as implicit fallthrough cases, etc. We currently ignore unused parameters, since we currently have many cases where this is intentional (virtual interfaces). While we're at it, we can also tidy up any existing code that causes warnings. This also uncovered a few bugs as well.
2020-04-14file_sys: patch_manager: Return early when there are no layers to apply.bunnei
2020-04-07file_sys: fix LayeredFS error when loading some games made with… (#3602)enler
* fix LayeredFS error when loading some games made with the Unity
2020-01-30Revert "system_archive: Fix Korean and Chinese fonts"bunnei
2020-01-30Merge pull request #3151 from FearlessTobi/fix-koreanbunnei
system_archive: Fix Korean and Chinese fonts
2020-01-24Disable clang-format for font filesFearlessTobi
2020-01-19system_archive: Fix Chinese fontFearlessTobi
Adds the proper OSS font for the Chinese language.
2020-01-19system_archive: Fix Korean fontFearlessTobi
Fixes Korean fonts when using Open-source system archives.
2020-01-04system_archive: Add a basic HLE implementation for time zone binary.bunnei
2019-11-28Merge pull request #3171 from lioncash/internal-linkbunnei
filesys/romfs: Make ProcessFile and ProcessDirectory internally linked
2019-11-28patch_manager: Adds check for disabled cheats to prevent them from being ↵Morph
enabled (#3178) * Adds check for disabled cheats to prevent them from being added to the CheatList * Address feedback
2019-11-27filesys/romfs: Remove unused includesLioncash
These inclusions aren't used at all within the public interface, so they can be removed.
2019-11-27filesys/romfs: Make ProcessFile and ProcessDirectory internally linkedLioncash
These functions aren't used outside of this file, so we can place them within an anonymous namespace.
2019-11-27file_sys/directory: Make EntryType an enum classLioncash
This can trivially be an enum class rather than a regular enum, making it more strongly typed.
2019-11-15Merge pull request #3091 from lioncash/core-conversionbunnei
core: Make most implicit type conversion warnings errors on MSVC
2019-11-14Merge pull request #3093 from lioncash/mbedtlsbunnei
core: Migrate off deprecated mbedtls functions
2019-11-13xts_archive: Remove redundant std::string constructorLioncash
We can just call the .data() member of path instead of constructing a completely new string.
2019-11-12core: Migrate off deprecated mbedtls functionsLioncash
These functions are marked for deprecation and it's recommended that the *_ret variants be used instead.
2019-11-12loader; Resolve sign conversion/truncation errorsLioncash
2019-11-12file_sys: Resolve sign conversion warningsLioncash
Resolves a few trivial sign conversion/mismatch errors.
2019-11-03common_func: Use std::array for INSERT_PADDING_* macros.bunnei
- Zero initialization here is useful for determinism.
2019-10-22savedata_factory: Automatically create certain savedataZach Hilman
After further hardware investigation, it appears that some games, perhaps those more lazily coded, will not call EnsureSaveData, meaning that they expect the normal (current) save to be automatically made. Additionally, some games do not create a cache or temporary save before use. In these 3 specific instances, the save is created automatically for the game if it doesn't exist.
2019-10-14Merge pull request #2897 from DarkLordZach/oss-ext-fonts-1bunnei
pl_u: Move open source font archives and fix NAND error