mirror of
https://github.com/rvtr/unlaunch-installer_dev.git
synced 2026-01-26 13:43:08 -05:00
Other update to readme
This commit is contained in:
parent
b324161824
commit
f58dcdda19
29
README.md
29
README.md
@ -16,6 +16,7 @@ This can modify your internal system NAND! There is *always* a risk of
|
|||||||
This installer comes bundled with a specific version of unlaunch (2.0), but can
|
This installer comes bundled with a specific version of unlaunch (2.0), but can
|
||||||
load a separate unlaunch installer from the root of the sd card, named
|
load a separate unlaunch installer from the root of the sd card, named
|
||||||
`unlaunch.dsi`.
|
`unlaunch.dsi`.
|
||||||
|
|
||||||
Supported unlaunch versions are 1.8, 1.9 and 2.0, since earlier ones don't work
|
Supported unlaunch versions are 1.8, 1.9 and 2.0, since earlier ones don't work
|
||||||
if installed with this new method.
|
if installed with this new method.
|
||||||
|
|
||||||
@ -23,21 +24,25 @@ if installed with this new method.
|
|||||||
The Nintendo DSi's stage2 has a failsafe where it will load a backup launcher
|
The Nintendo DSi's stage2 has a failsafe where it will load a backup launcher
|
||||||
(HNAA) if it can't find the real one (eg. missing, corrupted), even on retail
|
(HNAA) if it can't find the real one (eg. missing, corrupted), even on retail
|
||||||
consoles.
|
consoles.
|
||||||
Whereas the official unlaunch installer appends itself to the tmd of the
|
|
||||||
primary launcher (thus leaving the console bricked in case of failed install
|
The official installer will append itself to the tmd of the "real" launcher.
|
||||||
uninstall), the safe unlaunch installer takes advantage of this feature
|
This leaves the console bricked in case of failed install or uninstall (since
|
||||||
by installing unlaunch to the backup launcher.
|
the backup launcher doesn't exist, stage2 can't save you).
|
||||||
To make then stage2 actually load unlaunch from the backup launcher,
|
The safe unlaunch installer takes advantage of this feature by installing
|
||||||
the main TMD is "broken" by only changing a byte in it so that it skips it and
|
unlaunch to the backup launcher.
|
||||||
loads the exploited one from the backup.
|
The official launcher's TMD is "broken" by changing a byte, making stage2
|
||||||
|
load unlaunch in the backup launcher.
|
||||||
|
|
||||||
This is safer than normal unlaunch installs because as long as the main TMD
|
This is safer than normal unlaunch installs because as long as the main TMD
|
||||||
isn't touched, the system can't be bricked by those operations (apart from
|
isn't touched, the system can't be bricked by those operations (apart from
|
||||||
total nand failure), and the moment the main TMD is tampered with, unlaunch is
|
total nand failure), and when the main TMD is tampered with, unlaunch is
|
||||||
already there as fallback in case of errors.
|
already there as fallback in case of errors.
|
||||||
Reverting this operation (thus uninstalling unlaunch) is also safer as this
|
Uninstalling is also safer as this program only has to restore that
|
||||||
program only has to restore that previously changed byte to restore the main
|
previously changed byte to restore the main TMD.
|
||||||
TMD, this allows to keep backup unlaunch "installed" as general brick
|
This allows to keep backup unlaunch "installed" as general brick
|
||||||
protection since it won't interfere with the system.
|
protection since it won't interfere with the system. As a bonus, if you
|
||||||
|
sell/trade you console in the future and the new owner uses the official
|
||||||
|
installer, they'll be protected from bricks.
|
||||||
|
|
||||||
## Credits
|
## Credits
|
||||||
- [DevkitPro](https://devkitpro.org/): devkitARM and libnds
|
- [DevkitPro](https://devkitpro.org/): devkitARM and libnds
|
||||||
|
|||||||
@ -307,7 +307,13 @@ int main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
messageBox("\x1B[41mWARNING:\x1B[47m This tool can write to\nyour internal NAND!\n\nThis always has a risk, albeit\nlow, of \x1B[41mbricking\x1B[47m your system\nand should be done with caution!\n\nIf you have not yet done so,\nyou should make a NAND backup.");
|
messageBox("\x1B[41mWARNING:\x1B[47m This tool can write to\n"
|
||||||
|
"your internal NAND!\n\n"
|
||||||
|
"This always has a risk, albeit\n"
|
||||||
|
"low, of \x1B[41mbricking\x1B[47m your system\n"
|
||||||
|
"and should be done with caution!\n\n"
|
||||||
|
"If you have not yet done so,\n"
|
||||||
|
"you should make a NAND backup.");
|
||||||
//main menu
|
//main menu
|
||||||
int cursor = 0;
|
int cursor = 0;
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user