Commit Graph

72 Commits

Author SHA1 Message Date
Pengfei d0da439731 Implement contents check 2021-08-09 00:42:45 +08:00
Pengfei ea24716a38 Add checks for TMD and Ticket 2021-08-08 17:26:34 +08:00
Pengfei 3d68baf55c Preliminary work for a title info dialog
pending DRY fixes, etc
2021-08-08 15:52:00 +08:00
Pengfei e4612770a5 More unused variables 2021-08-08 09:05:43 +08:00
Pengfei d27adc8fc9 small UI text improvement 2021-08-08 09:04:23 +08:00
Pengfei ec176e4fdf Fix unused variable 2021-08-07 14:32:50 +08:00
Pengfei ed8d6a1a82 Add support for system applets 2021-08-07 01:00:39 +08:00
Pengfei 5b55f801f0 Fix wrapper initialization 2021-08-06 18:48:17 +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 aed564fb25 Add Legit CIA building 2021-07-31 17:28:00 +08:00
Pengfei e41151420f Fix Flatpak user path 2021-07-13 21:55:35 +08:00
Pengfei d002928a38 Fix LGTM alerts 2021-07-12 12:14: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 cb6d58b538 Replace file writes with new helper 2021-07-06 16:42:22 +08:00
Pengfei c81db424bb Refactor InnerFAT into Savegame and Extdata
And derive TitleDB from it too.
2021-07-06 16:11:03 +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
Pengfei 5a4bf7daff Clean up code a little bit 2021-06-28 22:37:03 +08:00
Pengfei 974363b0d9 Added 'Advanced...' menu with batch dumping cxi/cia 2021-06-28 22:17:28 +08:00
Pengfei dac4b1cb41 Rename ImportJob to MultiJob and generalize 2021-06-28 00:26:32 +08:00
Pengfei 817c3ea1a8 Rename ProgressiveJob to SimpleJob
Because I had to.
2021-06-28 00:26:32 +08:00
Pengfei 3db1c43fd6 Changes to accommodate for high DPI
Not sure how this will work on Linux or macOS.
2021-06-27 18:46:08 +08:00
zhupengfei e6d67f3aee Fix build 2020-11-28 23:11:10 +08:00
zhupengfei 47a98faa6f Fix a potential bug in ProgressiveJob 2020-11-28 20:26:52 +08:00
zhupengfei 5c595a8046 Add IOFile::GetData 2020-11-28 20:12:24 +08:00
zhupengfei 87fd41076b frontend: Minor text improvements 2020-11-28 15:53:30 +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 e238015e82 import_dialog: Fix Qt weirdty with ProgressDialog
Hopefully fixes #11

There are times when file writes can be *really* fast (for instance if you just deleted the same file). With modal progress dialogs, Qt call processEvents on setValue. If the operation is done too fast, a new signal would have arrived by this time. This can lead to stack overflow caused by overly deep recursion.
2020-08-27 00:52:35 +08:00
zhupengfei 0c2e034fac Minor UI fixes 2020-08-07 12:35:56 +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 1f91cbdaec Use virtual classes instead of templates for file interfaces
For convenience.
2020-08-01 09:47:44 +08:00
zhupengfei d837a07884 Use the older command 2020-06-23 22:43:42 +08:00
zhupengfei 877c4724d8 frontend: Add -no-pie for Linux 2020-06-23 22:07:51 +08:00
zhupengfei f009574b1e Fix more clang issues
It doesn't seem to like capturing structured bindings, even though they are tuple-like
2020-06-20 23:16:19 +08:00
zhupengfei e9d7ec7244 Fix compile error 2020-06-20 22:54:24 +08:00
zhupengfei ac8a5f447e Add experimental support for linux and macos releases 2020-06-19 23:12:21 +08:00
zhupengfei 57a1245e2a Add proper error handling for memcpy 2020-05-16 19:09:50 +08:00
zhupengfei 6be3fca2de Add ETA support 2020-05-16 17:53:19 +08:00
zhupengfei bae5fda423 Improve UI display 2020-05-16 15:54:22 +08:00
zhupengfei 1c28fff725 Improve error handling.
Do not cancel the entire process when an error occurs. Instead, return a list of failed contents.
2020-05-16 15:13:52 +08:00
zhupengfei 4391845185 Fix linux CI 2020-05-15 23:11:26 +08:00
zhupengfei 5d008fc952 Add version check 2020-05-15 23:08:59 +08:00
zhupengfei 2fbdaaac30 Fix up import destination indicator 2020-05-15 22:47:18 +08:00
zhupengfei 1415235a13 Added an 'hos' icon (to be improved) 2020-05-15 22:22:36 +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