Changes

438 bytes added ,  00:26, 12 May 2021
→‎How it works: added more info
Line 28: Line 28:     
== How it works ==
 
== How it works ==
BootMii is a modified version of [[boot2]], which is loaded by [[boot1]], which is loaded by [[boot0]]. boot0 is part of [[Hollywood]] and read-only. boot1, although stored on the [[NAND]], is signed by a value in write-once memory and therefore cannot be changed without rendering a console unable to boot. boot2, however, can be modified (with some restrictions). This means it can be hacked, updated, and corrupted. BootMii hijacks the [[boot process]] before the normal boot2 is run, optionally allowing code to be run directly from the SD Card. This has many advantages, such as making it very difficult to [[brick]], and slowing Nintendo from blocking homebrew. Unfortunately, the only way we could completely stop Nintendo from blocking homebrew is by patching updates on-the-fly, or somehow preventing overwriting boot2. Along with the [[System Menu 4.2]] update, Nintendo released a new version of boot2 (boot2v4); there is nothing in boot2v4 that prevents BootMii from working, but it will overwrite an existing BootMii installation when it is installed.
+
BootMii-boot2 is a modified version of [[boot2]]'s [[NANDLoader]], which is loaded by [[boot1]], which is loaded by [[boot0]]. boot0 is part of [[Hollywood]] and read-only. boot1, although stored on the [[NAND]], is signed by a value in write-once memory and therefore cannot be changed without rendering a console unable to boot. boot2, however, can be modified (with some restrictions). This means it can be hacked, updated, and corrupted. BootMii hijacks the [[boot process]] before the normal boot2 is run, optionally allowing code to be run directly from the SD Card. This has many advantages, such as making it very difficult to [[brick]], and slowing Nintendo from blocking homebrew. Unfortunately, the only way we could completely stop Nintendo from blocking homebrew is by patching updates on-the-fly, or somehow preventing overwriting boot2. Along with the [[4.2]] update, Nintendo released a new version of boot2 ([[boot2v4]]); there is nothing in boot2v4 that prevents BootMii from working, but it will overwrite an existing BootMii installation when it is installed.
 +
 
 +
The space normally allocated for the NANDLoader is split into two sections itself for technical reasons; the first section is a custom NANDLoader that loads the second section. The second section checks to see if an SD card is inserted; if so, it loads <code>/bootmii/armboot.bin</code> and executed it. Otherwise, it loads the real boot2, which remains intact when BootMii-boot2 is installed.
 +
 
 +
<!-- TODO: BootMii-IOS -->
    
== Compatibility ==
 
== Compatibility ==
5,579

edits