Zach Hilman
e408bbceed
configure_system: Clear selection after user delete
2018-10-23 19:31:28 -04:00
Zach Hilman
702622b8f1
profile_manager: Load user icons, names, and UUIDs from system save
2018-10-23 19:31:28 -04:00
Zach Hilman
19c5cf9c63
acc: Load user images from config dir
2018-10-23 19:31:28 -04:00
Zach Hilman
466960c8ab
qt: Allow user to select emu user on open save data
2018-10-23 19:31:28 -04:00
Zach Hilman
b2a8209c5b
qt: Add Profile Manager UI to system settings
2018-10-23 19:31:28 -04:00
Zach Hilman
d3fbf45705
am: Pass current user UUID to launch parameters
2018-10-23 19:31:28 -04:00
Zach Hilman
aeffd4b436
profile_manager: Load users from emulator settings
2018-10-23 19:31:28 -04:00
Zach Hilman
e7e3d5898e
settings: Add users and current_user settings and remove username
2018-10-23 19:31:28 -04:00
Zach Hilman
314a948373
psm: Stub GetChargerType
...
Used by LovePotion Lua Homebrew. Stubbed as connected to official Nintendo Switch dock.
2018-10-21 22:03:25 -04:00
Zach Hilman
a279d80a19
qt: Move Reinitialize Keys to Tools menu
2018-10-20 18:04:28 -04:00
Zach Hilman
10a2d20e26
psm: Stub GetBatteryChargePercentage
...
Used by LovePotion Lua Homebrew. Stubbed to return 100% charge.
2018-10-20 18:01:11 -04:00
Zach Hilman
3b8c0f8885
service: Add skeleton for psm service
...
Seems to be the power controller. Listed in switchbrew under the category PTM services.
2018-10-20 18:01:07 -04:00
Zach Hilman
7e0d2fc994
aoc_u: Stub GetAddOnContentListChangedEvent
...
This event signals the game when new DLC is purchased from the eShop while the game is running. Since, for the forseeable future, yuzu will not have this ability, it seems safe to stub with a dummy event that will never fire. This is needed to boot Sonic Mania Plus (update v1.04).
2018-10-19 21:21:37 -04:00
Zach Hilman
0aef2b9c26
crypto: Use compressed sizes in offset calculation for KIP decompression
...
Fixes a fatal crash on start when deriving keys.
2018-10-19 18:37:58 -04:00
Zach Hilman
9d0fb0f815
qt: Add support for dumping a DLC Data RomFS
2018-10-17 18:27:29 -04:00
Zach Hilman
59044862a9
registered_cache: Deduplicate results of ListEntry and ListEntryFilter
...
Prevents a Entry from appearing in the list twice if the user has it installed in two places (e.g. User NAND and SDMC)
2018-10-17 14:04:18 -04:00
Zach Hilman
780c21ab2d
fsp_srv: Apply patches to Data storage in OpenDataStorageByDataId
2018-10-17 09:04:20 -04:00
Zach Hilman
d8273c3857
patch_manager: Add support for using LayeredFS with Data
2018-10-17 09:03:56 -04:00
Zach Hilman
9d4e6176eb
savedata_factory: Add TemporaryStorage SaveDataSpaceId
...
Required for TemporaryStorage saves (in addition to SaveDataType)
2018-10-16 10:20:04 -04:00
Zach Hilman
74890cf2da
savedata_factory: Add support for DeviceSaveData
...
Uses the same path as SaveData except with UID 0. Adds a warning if UID is not 0.
2018-10-16 10:19:21 -04:00
Zach Hilman
720d36ca71
crypto: Various crypto fixes for quickstart guide
2018-10-14 21:57:52 -04:00
Zach Hilman
5737441374
aoc: Read DLC base title ID from RegisteredCache
...
Falls back to title ID + 0x1000, which is what HOS does.
2018-10-14 18:58:14 -04:00
Zach Hilman
7e2096db8a
aoc: Return size in ListAddOnContent
2018-10-13 22:52:54 -04:00
Zach Hilman
f61379f8d2
patch_manager: Move non-Program RomFS patch log to Debug
...
Normal Program-type patches will still be logged to aid in debugging, but for others (mainly Control), it was moved to Debug.
2018-10-12 23:27:19 -04:00
Zach Hilman
90c07e0d33
content_archive: Move get key log to Trace level
...
Avoids printing live keys in the general log.
2018-10-12 23:25:59 -04:00
Zach Hilman
f945e9767c
nso/nro: Use default allocation size for arg_data
2018-10-07 14:32:33 -04:00
Zach Hilman
081f5c1dbf
cmd: Support passing game arguments from command line
...
Uses -p (--program) and following string as args.
2018-10-07 14:32:32 -04:00
Zach Hilman
8bbc12b9c2
qt: Add UI option to configure arguments
2018-10-07 14:32:06 -04:00
Zach Hilman
95dff555a4
settings: Add program_args string setting
2018-10-07 14:32:05 -04:00
Zach Hilman
e09505ff61
nso/nro: Add NSO arguments structure to data section
...
Only added if arguments string is non-empty and a pass is requested by loader.
2018-10-07 14:30:15 -04:00
Zach Hilman
3ec054643e
partition_data_manager: Rename system files for hekate
...
x
2018-10-07 13:16:23 -04:00
Zach Hilman
8f958b89e7
qt: Add rederive keyset menu option
2018-10-07 13:16:04 -04:00
Zach Hilman
3edafc6802
qt: Add key derivation progress bar on initial setup
2018-10-07 13:15:11 -04:00
Zach Hilman
29dc6f4519
crypto: Add PartitionDataManager
...
Keeps track of system files for key derivation
2018-10-07 13:15:11 -04:00
Zach Hilman
4aad010f7a
key_manager: Add support for loading keys from partition data
2018-10-07 13:15:11 -04:00
Zach Hilman
d041d6231c
key_manager: Add ETicket key derivation
...
Derives titlekeys
2018-10-07 13:15:11 -04:00
Zach Hilman
a57aac5772
key_manager: Add base key derivation
...
Derives master keys, game encryption keys, and package1/2 keys
2018-10-07 13:15:11 -04:00
Zach Hilman
d7398283e3
key_manager: Add BIS key getter
2018-10-07 13:15:11 -04:00
Zach Hilman
d6a0d5d432
key_manager: Add support for more keys
...
TSEC, SBK, BIS, and other Sources for proper derivation
2018-10-07 13:15:11 -04:00
Zach Hilman
c79d2ca6cf
key_manager: Add keyblob support
2018-10-07 13:15:11 -04:00
Zach Hilman
e4602748d6
key_manager: Add support for crypto revisions past 04
2018-10-07 13:15:11 -04:00
Zach Hilman
9e34303fb9
key_manager: Add support for comments in keyfiles
2018-10-07 13:15:11 -04:00
Zach Hilman
1fa6ee4723
vfs: Move forward declarations to separate file
2018-10-07 13:15:11 -04:00
Zach Hilman
ce05df0a6d
key_manager: Add support for console-specific keyfile
2018-10-07 13:15:11 -04:00
Zach Hilman
721632fe66
key_manager: Rename KEK to Kek
2018-10-07 13:15:11 -04:00
Zach Hilman
89ad82ce5c
externals/mbedtls: Enable CMAC module
...
Required for keyblob verification
2018-10-07 13:15:11 -04:00
Zach Hilman
38c2ac95af
romfs_factory: Extract packed update setter to new function
2018-10-05 08:53:51 -04:00
Zach Hilman
5acaeb04c4
patch_manager: Add support for NSP packed updates
...
Reads as Update (NSP) in add-ons
2018-10-05 08:48:44 -04:00
Zach Hilman
cf7aba4817
game_list: Add XCI update versioning to game list
2018-10-05 08:47:55 -04:00
Zach Hilman
d79d4fd764
patch_manager: Add support for packed updates
...
Will prefer any installed update over the packed version.
2018-10-05 08:47:24 -04:00
Zach Hilman
5045748829
loader: Add getter for packed update
...
Reads the update included with the game if it has one and adds the new ErrorNoPackedUpdate status.
2018-10-05 08:46:31 -04:00
Zach Hilman
e948fbf5d0
loader: Add ReadRomFSIVFCOffset to NSP, XCI, and NAX loaders
...
Fixes errors with certain updates
2018-10-05 08:46:31 -04:00
Zach Hilman
d0e6b93695
patch_manager: Avoid romfs_ext requirement for patching
2018-10-04 14:09:11 -04:00
Zach Hilman
c1e069c066
fsmitm_romfsbuild: Extract stubs and IPS to romfs_ext dir
2018-10-04 12:29:20 -04:00
Zach Hilman
bc4bec8a60
fsmitm_romfsbuild: Add support for stubbing and IPS patches in LFS
2018-10-04 12:29:14 -04:00
Zach Hilman
110d578470
ips_layer: Fix inaccuracies with comments and flags
...
Specifically bugs/crashes that arise when putting them in positions that are legal but not typical, such as midline, between patch data, or between patch records.
2018-10-04 12:23:27 -04:00
Zach Hilman
70bd2bb1d3
ips_layer: Deduplicate resource usage
2018-10-04 11:34:36 -04:00
Zach Hilman
9669cdb710
ips_layer: Add support for escape sequences and midline comments
...
More accurately follows IPSwitch specification.
2018-10-04 11:34:30 -04:00
Zach Hilman
8886f2e55e
patch_manager: Add support for IPSwitch format patches
2018-10-04 11:34:06 -04:00
Zach Hilman
306739c2c4
ips_layer: Add IPSwitchCompiler to process IPSwitch format
2018-10-04 11:32:10 -04:00
Zach Hilman
f62227aa95
hex_util: Add HexVectorToString and HexStringToVector
...
Converts between bytes and strings when the size is not known at compile time.
2018-10-04 11:32:04 -04:00
Zach Hilman
9aaf1c0df8
aoc_u: Fix edge case with DLC that causes breaks
...
In some games (Splatoon 2 and Splatoon 2 Splatfest World Premiere, notably), pass offset=0 and count=2047 into the ListAddOnContent method which should return all DLCs for the current title. The (presumably) intended behavior is to successfully return a empty array but because of a < v. <= in an if statement, a failure error code was returned causing these games to svcBreak. This fixes that if statement.
2018-10-02 21:56:32 -04:00
Zach Hilman
215b65fe75
nso: Optimize loading of IPS patches
...
Avoid resource-heavy classes and remove quasi-duplicated code.
2018-10-02 17:03:38 -04:00
Zach Hilman
6d441828e6
deconstructed_rom_directory: Force NSO loader to patch NSOs
2018-10-01 16:02:50 -04:00
Zach Hilman
003b44822a
nso: Add framework to support patching of uncompressed NSOs
2018-10-01 16:02:50 -04:00
Zach Hilman
42fb4e82d3
patch_manager: Add PatchNSO function
...
While PatchExeFS operated on the entire directory, this function operates on the uncompressed NSO. Avoids copying decompression code to PatchManager.
2018-10-01 16:02:50 -04:00
Zach Hilman
4c2a94fa94
patch_manager: Use strings for patch type instead of enum
2018-10-01 16:02:50 -04:00
Zach Hilman
21b2411c44
file_sys: Implement function to apply IPS patches
2018-10-01 16:01:46 -04:00
Zach Hilman
3c9e70fefa
nso: Replace NSOHeader padding bytes with build ID
2018-10-01 16:01:46 -04:00
Zach Hilman
f72046099a
aoc_u: Extract AccumulateAOCTitleIDs to separate function
2018-09-30 21:07:22 -04:00
Zach Hilman
7d86a008e2
aoc_u: Implement GetAddOnContentBaseId
...
Command #5
2018-09-30 21:01:35 -04:00
Zach Hilman
62225ae050
aoc_u: Implement Count, List and Prepare AddOnContent
...
Commands #2 , #3 , and #7
2018-09-30 21:01:35 -04:00
Zach Hilman
aa0c82e405
romfs_factory: Read from all locations with StorageId None
...
Previous behavior was to assert. Seems to mirror expected game behavior.
2018-09-30 21:01:35 -04:00
Zach Hilman
32fc31fb13
patch_manager: Add DLC recognition to PatchManager
2018-09-30 21:01:35 -04:00
Zach Hilman
70e86248fd
qt: Install System TitleTypes to System NAND
...
Fixes an issue where installed system archive NCAs would be installed to user NAND and not recognized by games.
2018-09-27 09:20:06 -04:00
Zach Hilman
b3c2ec362b
fsmitm: Cleanup and modernize fsmitm port
2018-09-23 21:50:20 -04:00
Zach Hilman
4f183123f5
game_list: Add Qt SmoothTransformation to picture scaling
2018-09-21 21:34:46 -04:00
Zach Hilman
ba0873d33c
qt: Add UI elements for LayeredFS and related tools
2018-09-21 19:53:33 -04:00
Zach Hilman
050547b801
romfs: Implement CreateRomFS
2018-09-21 19:53:33 -04:00
Zach Hilman
6eada3c57d
file_sys: Port Atmosphere-NX fs_mitm implementation
2018-09-21 19:53:33 -04:00
Zach Hilman
940a711caf
filesystem: Add LayeredFS VFS directory getter
2018-09-21 19:53:33 -04:00
Zach Hilman
50a470eab8
bis_factory: Add mod directory VFS getter
2018-09-21 19:53:33 -04:00
Zach Hilman
16188acb50
patch_manager: Add LayeredFS mods support
2018-09-21 19:53:33 -04:00
Zach Hilman
44fdac334c
vfs_concat: Rewrite and fix ConcatenatedVfsFile
2018-09-21 19:53:33 -04:00
Zach Hilman
3e5c3d0f16
vfs_layered: Add LayeredVfsDirectory
...
Reads multiple dirs through as if a waterfall.
2018-09-21 19:53:05 -04:00
Zach Hilman
b52343a428
vfs_vector: Add VectorVfsFile
...
Maps a vector into the VFS interface.
2018-09-21 19:53:05 -04:00
Zach Hilman
c65d4d119f
vfs_static: Add StaticVfsFile
...
Always returns the template argument byte for all reads. Doesn't support writes.
2018-09-21 19:53:05 -04:00
Zach Hilman
f68e324672
vfs: Add and rewite VfsRawCopy functions
2018-09-21 19:53:05 -04:00
Zach Hilman
d6cbb3a3e0
vfs: Add GetEntries method
...
Maps name string to directory or file.
2018-09-21 19:53:05 -04:00
Zach Hilman
bd8db3f7f8
common_paths: Add Load and Dump dirs
2018-09-21 19:53:05 -04:00
Zach Hilman
9bba103791
yuzu-cmd: Add call to CreateFactories
...
Ensures all relevant filesystem objects are initialized and eliminates a crash related to the RegisteredCache.
2018-09-19 09:09:11 -04:00
Zach Hilman
dfaea55be5
savedata_factory: Add TemporaryStorage SaveDataType
...
Seems to be used by NSO NES Emulator
2018-09-19 09:06:22 -04:00
Zach Hilman
c913136eb2
bktr: Fix bucket overlap error
2018-09-04 17:01:54 -04:00
Zach Hilman
7d5d781b20
drd: Parse title ID from program metadata
2018-09-04 16:25:30 -04:00
Zach Hilman
23a16c1720
patch_manager: Centralize Control-type NCA parsing
2018-09-04 16:25:10 -04:00
Zach Hilman
92e26df00f
nsp: Fix error masking issue with XCI files
...
Now display correct error instead of catch-all MissingProgramNCA
2018-09-04 16:24:24 -04:00
Zach Hilman
c91b60a421
game_list: Fix version display on non-NAND titles
2018-09-04 16:24:02 -04:00
Zach Hilman
cbd517d8cc
bktr: Add logging on successful patch
2018-09-04 16:24:02 -04:00
Zach Hilman
2814ca3624
game_list: Use friendly game versions
...
Mainly, from control.nacp metadata instead of cnmt metadata
2018-09-04 16:24:02 -04:00
Zach Hilman
a6e75cd45b
bktr: Implement IVFC offset shifting
...
Fixes base game read errors
2018-09-04 16:24:02 -04:00