Commit Graph

80 Commits

Author SHA1 Message Date
Edoardo Lolletti
0ad0dc18bc Swap the backgrounds after vblank and properly handle "cancel" and "default" bg options 2025-08-21 00:15:07 +02:00
Edoardo Lolletti
e88dc13af8 Show background preview when selecting it 2025-08-21 00:07:17 +02:00
Edoardo Lolletti
58a2ac164f
Gif: skip most of the known application extensions instead of ignoring them
Except the plain text one
2025-08-19 20:07:04 +02:00
Edoardo Lolletti
3cf702f8f4
Fix off by one error in color table array 2025-08-19 19:35:13 +02:00
Edoardo Lolletti
6edcde25c3
Add sanitization to loaded GIF images
Parse the provided loaded background images and reconstruct a new GIF file on the fly to ensure they don't contain any extension that might not be supported by unalunch.
The generated GIF file will have a global color table, and single section, being the image descriptor. It also won't have any looping block.
2025-08-19 18:18:24 +02:00
Edoardo Lolletti
5bfa4b1a00 Set token permissions to create release 2025-08-18 01:38:45 +02:00
Edoardo Lolletti
979ed83640 Try to mark HNAA tmd as writable only if it exists 2025-08-18 01:30:24 +02:00
Edoardo Lolletti
773fe2b7a5 Skip the first cluster when checking for valid unlaunch install
The first cluster now is properly used by unlaunch to save its configs, so it will never be the same across runs of the installer, to account for this, skip the first 0x4000 bytes when checking for its sha1, so that the user configurable part is ignored
2025-08-18 01:28:30 +02:00
Edoardo Lolletti
f3b3b502bc Update sound-and-splash-patch.bin 2025-08-18 00:04:56 +02:00
Edoardo Lolletti
c4f861b4aa Add binary patch to make unalunch work properly with HNAA tmd 2025-08-18 00:03:56 +02:00
Edoardo Lolletti
28dee555e1 Check for the stage2 to be supporting unlaunch before attempting to do anything 2025-08-17 14:51:18 +02:00
Edoardo Lolletti
f419337455 Upload .nds file as well for actions artifact 2025-08-13 00:13:56 +02:00
Edoardo Lolletti
d7aa0970b1 Only issue a warning if the sd cluster size is too big
Allow continuing with install/uninstall
2025-08-12 21:02:39 +02:00
Edoardo Lolletti
6a3289b444 Update .clangd 2025-08-12 20:42:07 +02:00
Edoardo Lolletti
770ffeb018 Handle proto/dev consoles 2025-08-12 19:59:05 +02:00
Edoardo Lolletti
cae02f6607 Rework install/unlinstall flow
Restructure the code and use the same approach as the launcher tmd restorer to deal with tmds.
Store all the known tmds for all the launcher versions with their corresponding shas, and use them when restoring the console.
Now if the main tmd isn't either the stock one or one with the patch done by this program, it's treated a invalid and will be restored from the saved ones when uninstalling.
This breaks for now proto/dev consoles as there is no handling for "default tmds" on them and the program logic has to be changed accordingly
2025-08-12 17:42:03 +02:00
Edoardo Lolletti
f7fb51c244 Update gitignore and add .clangd 2025-08-12 17:35:21 +02:00
Edoardo Lolletti
88a6137169 Use last pre calico dkp docker image 2025-08-07 21:41:39 +02:00
Edoardo Lolletti
011cd87564 Fix benu option being selected when pressing power button 2025-08-07 21:34:58 +02:00
Edoardo Lolletti
e8d1da5d50 Revert previous uninstaller change
It broke normal uninstalling
2025-04-29 18:23:11 +02:00
Edoardo Lolletti
d01ccfbf47 Add giattributes 2025-04-29 18:22:35 +02:00
Edoardo Lolletti
5f8f69c2ab Fix unsafe uninstall selection 2024-07-28 12:36:31 +02:00
Edoardo Lolletti
8c77633767 Support loading backgrounds from the sd 2024-07-28 12:01:02 +02:00
Edoardo Lolletti
001442fd8a Add sd cluster size check
If a sd is present, and its cluster size is bigger than 32k, abort installing
2024-07-28 11:03:31 +02:00
Edoardo Lolletti
f1d6f13ff2 Address warnings in arm9 2024-07-14 00:32:13 +02:00
Edoardo Lolletti
54e6c23277 Give priority on unlaunch path on the sd over the nitro one 2024-07-13 19:46:57 +02:00
Edoardo Lolletti
739a5ab467 Mark launcher's tmd as read only on install 2024-07-13 19:46:19 +02:00
Edoardo Lolletti
8b19184921 Prevent the installer from installing on 1.4.2 2024-05-02 01:31:38 +02:00
Edoardo Lolletti
e198ed3148 Properly check and ensure removal of hnaa launcher when requested 2024-05-02 01:04:03 +02:00
Edoardo Lolletti
f58dcdda19 Other update to readme 2024-04-29 00:06:01 +02:00
Edoardo Lolletti
b324161824 Readme and actions update 2024-04-28 20:44:45 +02:00
Edoardo Lolletti
d777ae97c5 Bundle unlaunch installer 2024-04-28 20:37:20 +02:00
Edoardo Lolletti
18b35242cf Update README.md 2024-04-28 15:12:53 +02:00
Edoardo Lolletti
06d374d28b Cleanup conditionals 2024-04-28 13:35:50 +02:00
Edoardo Lolletti
03f1df6f8e Move TID patches to advanced menu 2024-04-28 13:27:04 +02:00
Edoardo Lolletti
79cff539b8 Add new icon
Thanks https://github.com/rvtr
2024-04-28 00:48:02 +02:00
Edoardo Lolletti
351d4547b3 Handle nocash footer embedding into nand
Another step the unlaunch installer does but wasn't being handled yet
2024-04-27 23:34:13 +02:00
Edoardo Lolletti
bfdd89218d Properly detect case where deviceList was populated with garbage data
Assume the device list is valid if it has a valid device that matches the path of the app
2024-04-27 23:31:07 +02:00
Edoardo Lolletti
593141e702 Add key combo to uninstall unlaunch alongside the hnaa failsafe 2024-04-27 19:09:23 +02:00
Edoardo Lolletti
027308e1f5 Show the unlaunch version that is going to be installed 2024-04-27 18:35:28 +02:00
Edoardo Lolletti
30b5e7017d Clean up a bit menus 2024-04-27 18:24:30 +02:00
Edoardo Lolletti
38b1efb15b Add battery level check 2024-04-27 17:58:24 +02:00
Edoardo Lolletti
379db68839 Fix offsets 2024-04-27 13:09:03 +02:00
Edoardo Lolletti
101269a3a8 Properly map to "sd" deviceList path, even if it says "nand"
Hiya passes the appname as nand:/, but the nand device is set as being external storage, so is actually mapped to the sd, account for that
2024-04-27 12:42:32 +02:00
Edoardo Lolletti
9c01c0c464 Allow retrieving the filename from the device list
Supports unlaunch/hiya booting
2024-04-26 23:20:15 +02:00
Edoardo Lolletti
3bb7f0f5e2 Disable again lto and mark console id shared address as volatile 2024-04-26 22:00:24 +02:00
Edoardo Lolletti
94cb35df6f Supports patching unlaunch with custom backgrounds 2024-04-26 19:03:23 +02:00
Edoardo Lolletti
80866c08ea Allow applying splas and sound binary patch 2024-04-26 16:02:05 +02:00
Edoardo Lolletti
1c0d2adf65 Support loading unlaunch installer from nitrofs as fallback
Using nitrofs implementation from gm9i
2024-04-26 14:59:29 +02:00
Edoardo Lolletti
53184bc63a Build arm9 with lto enabled 2024-04-26 14:58:25 +02:00