Commit Graph

36 Commits

Author SHA1 Message Date
Pengfei 3d68baf55c Preliminary work for a title info dialog
pending DRY fixes, etc
2021-08-08 15:52:00 +08:00
Pengfei ed8d6a1a82 Add support for system applets 2021-08-07 01:00:39 +08:00
Pengfei d4e1404788 Fixes to CIA building
1. Optimizes ticket finding
2. Fixes progress reporting overshoot
3. Use u64 for size in general
4. Various other fixes and cleanups
2021-08-06 00:55:35 +08:00
Pengfei 1fe45d890c More refactor going on 2021-08-04 11:25:39 +08:00
Pengfei c7b66f6308 Pointless huge refactor 2021-08-04 11:11:52 +08:00
Pengfei 1f0a969cb7 Add CIABuildDialog 2021-08-04 00:35:01 +08:00
Pengfei 781d76bdab Use destructor to release file handle
Instead of relying on writing `file.reset()`s
2021-08-02 00:53:03 +08:00
Pengfei aed564fb25 Add Legit CIA building 2021-07-31 17:28:00 +08:00
Pengfei 6fbbae7039 Rework failed task cleanup
Now the cleanup of failed tasks (deletion of borked files) is handled by the related task itself, instead of the frontend.
2021-07-12 11:47:42 +08:00
Pengfei 76b0912a9a Add proper support for CIA title keys
1. Support for `ticket.db`
2. Support for `gm9/support/encTitleKeys.bin`
3. Set the title key and common key index when building standard CIA
2021-07-09 20:08:42 +08:00
Pengfei 19bc9d0210 Use GodMode9 naming scheme 2021-07-01 15:22:38 +08:00
Pengfei e2bef4d705 Add support for title.db, and use title.db to augment TMD finding
Also added support for system title CIA building, and fixed various minor issues.
Also moved MakeMagic to Common.
2021-07-01 14:13:20 +08:00
Pengfei 2575e7fdde Unify ProgressCallbacks to a Common::ProgressCallback 2021-06-28 22:50:16 +08:00
zhupengfei 9cbec118cd core: Add NAND data importing 2020-11-28 17:20:46 +08:00
zhupengfei 2688a6ef61 Move System Applets into a new category and deselect by default
As they are known to cause problems with Mii Maker and games like Tomodachi Life.
2020-11-28 15:39:59 +08:00
zhupengfei 49ddd86b7a Add CIA building
Quite a lot of code, yeah.

The built CIA is almost identical to GM9, with the following differences:
1. Paddings are zeroed out
2. Title key is not written (GM9 gets it from support data/ticket db)
3. Ticket content index is slightly different (GM9 likely takes it from the legit ticket, while we are building a fake one)

The 2, 3 points can be fixed probably.
2020-08-07 08:58:09 +08:00
zhupengfei 900275bffd Dump certs.db
This is used to build CIAs. Currently only retail certs are supported
2020-08-03 22:47:08 +08:00
zhupengfei 1f91cbdaec Use virtual classes instead of templates for file interfaces
For convenience.
2020-08-01 09:47:44 +08:00
zhupengfei 5d008fc952 Add version check 2020-05-15 23:08:59 +08:00
zhupengfei b19803c4d3 Add support for system titles 2020-05-14 23:14:59 +08:00
zhupengfei 24bdf0a156 core, frontend: Add 'Dump CXI file' option
Right click on an application in the Select Contents dialog.
2020-05-02 00:06:46 +08:00
Pengfei Zhu 576053d995 Fix compilation 2020-04-22 23:27:41 +08:00
zhupengfei 94b9ec028b Display title icon; display title icon and names for save/extdata in group mode 2020-01-17 12:10:44 +08:00
zhupengfei 0708744a17 Added encryption scheme display. 2020-01-17 10:10:58 +08:00
zhupengfei cd5eccd32a Fix DLCs not imported correctly, fix progress not reported correctly 2019-10-04 15:45:39 +08:00
zhupengfei 5cbe69388f Add support for config savegame 2019-10-02 20:06:39 +08:00
zhupengfei 5d675d605a Add system archives import 2019-10-02 16:00:32 +08:00
zhupengfei 479dd327df core, frontend: Group contents by title / game instead of category
I may look to introduce a option to select in the future
2019-09-27 23:33:39 +08:00
zhupengfei 895cbb272c Add in NCCH, TMD and SMDH from Citra (to get game title) 2019-09-27 22:11:27 +08:00
zhupengfei d55af0108e core, frontend: Better progress reporter
A new "quick" decryptor is implemented. This is not really much faster (not slower either) but provides the benefit of being able to report progress on a single file. The frontend is updated accordingly to support this feature.
2019-09-12 22:08:44 +08:00
zhupengfei 67e6b05e87 lots of important fixes
- DPFS container is fixed
- SD Savegame is fixed
- added slot0x25KeyX load
- added regex for titile ID
- added aes_keys.txt import
- sd savegame listing is fixed (uninitialized won't be listed any more)
- error handling is improved (removed asserts and replaced with return values)
- UI is now functional
- config is now checked in main
2019-08-30 15:33:47 +08:00
zhupengfei 8acfe9f304 UI updates
- add import dialog
  this is more complex than I thought
- added scope exit
  grammar sugar
- main dialog is now linked to import dialog
- importer citra file path is fixed
- importer now reports maximum size
- file util is improved with GetDirectoryTreeSize
2019-08-28 23:02:30 +08:00
zhupengfei 7df0b63a1e updates
- implemented frontend
- namespaced Core
- imported qdevicewatcher
- fixed bug in logging (more like in misc)
2019-08-28 19:16:05 +08:00
zhupengfei fd5106759a build system updates and other fixes
add preset config
import qt
separate core and frontend
2019-08-28 11:43:44 +08:00
zhupengfei d612b9cf37 misc changes
- Add dumper script
- Fill importer code
- other fixes
2019-08-26 23:20:02 +08:00
zhupengfei 4f5a3effd8 Initial commit 2019-08-24 23:30:22 +08:00