Line 1:
Line 1:
Ancast images are encrypted and signed binaries for the [[Hardware/Espresso|Espresso]] and [[Hardware/Starbuck|Starbuck]] processors to execute.
Ancast images are encrypted and signed binaries for the [[Hardware/Espresso|Espresso]] and [[Hardware/Starbuck|Starbuck]] processors to execute.
−
The Espresso contains a secure [[Espresso Boot ROM|boot ROM]] that runs upon a PowerPC hard reset, which will only boot signed code. This code comes in the form of an ancast image. Before resetting the PPC, the currently running ARM code (either [[IOSU]] or vWii [https://wiibrew.org/wiki/IOS IOS]) must load the ancast image to the physical address 0x08000000 (Wii U images) or 0x01330000 (vWii images) for the boot ROM to verify and decrypt. The [[Cafe OS]] kernel, [[WiiMode|vWii]] [https://wiibrew.org/wiki/System_Menu System Menu], and vWii [https://wiibrew.org/wiki/NANDLoader NANDLoader] are all in the form of ancast images.
+
The Espresso contains a secure [[Espresso Boot ROM|boot ROM]] that runs upon a PowerPC hard reset, which will only boot signed code. This code comes in the form of an ancast image. Before resetting the PPC, the currently running ARM code (either [[IOSU]] or vWii [https://wiibrew.org/wiki/IOS IOS]) must load the ancast image to the physical address 0x08000000 (Wii U images) or 0x01330000 (vWii images) for the boot ROM to verify and decrypt. The [[Cafe OS]] kernel, [[WiiMode|vWii]] [https://wiibrew.org/wiki/System_Menu System Menu], and [https://wiibrew.org/wiki/BC-NAND BC-NAND]/[https://wiibrew.org/wiki/BC-WFS BC-WFS] are all in the form of ancast images; WiiMode images are stored inside a [https://wiibrew.org/wiki/DOL DOL] in Data0, while Text0 contains a standard boot stub that was probably automatically added by Nintendo's compiling software.
The Starbuck's boot chain ([[boot0]] and [[boot1]]) only boots signed code in the form of an ancast image as well. On the ARM side, the IOS-MCP module is responsible for launching [[cafe2wii]] and relaunching IOSU (warm boot). IOS-MCP loads ARM ancast images into MEM1 (0x01000000), verifies and decrypts them before executing with full privileges (all memory protection is disabled and must be re-enabled by the binary itself).
The Starbuck's boot chain ([[boot0]] and [[boot1]]) only boots signed code in the form of an ancast image as well. On the ARM side, the IOS-MCP module is responsible for launching [[cafe2wii]] and relaunching IOSU (warm boot). IOS-MCP loads ARM ancast images into MEM1 (0x01000000), verifies and decrypts them before executing with full privileges (all memory protection is disabled and must be re-enabled by the binary itself).