In memory of Ben “bushing” Byer, who passed away on Monday, February 8th, 2016.

Difference between revisions of "Hardware/Starlet"

From WiiBrew
Jump to navigation Jump to search
m (Fix broken link, people can check edits if they want to use Wayback)
m (→‎Links: Replace dead links with archives)
Line 26: Line 26:
  
 
* [http://infocenter.arm.com/help/topic/com.arm.doc.ddi0198d/DDI0198_926_TRM.pdf ARM926EJ-S Technical Reference Manual] - CPU, MMU, Cache specs and programmer's interface
 
* [http://infocenter.arm.com/help/topic/com.arm.doc.ddi0198d/DDI0198_926_TRM.pdf ARM926EJ-S Technical Reference Manual] - CPU, MMU, Cache specs and programmer's interface
* [http://rtds.cs.tamu.edu/web_462/techdocs/ARM/cores/DDI0222B_9EJS_r1p2.pdf ARM9EJ-S Technical Reference Manual] - CPU specs and programmer's interface
+
* [https://web.archive.org/web/20050308211243/http://www.arm.com:80/pdfs/DDI0222B_9EJS_r1p2.pdf ARM9EJ-S Technical Reference Manual] - CPU specs and programmer's interface
* [http://www.arm.com/miscPDFs/14128.pdf ARM Architecture Reference Manual] - Documentation about the ARMv5 architecture.
+
* [https://web.archive.org/web/20081221072959/http://www.arm.com/miscPDFs/14128.pdf ARM Architecture Reference Manual] - Documentation about the ARMv5 architecture.
 
* [[IOS]] - the OS that runs on the Starlet and handles calls from the Broadway during game execution and while in the system menu.
 
* [[IOS]] - the OS that runs on the Starlet and handles calls from the Broadway during game execution and while in the system menu.
 
* [[ARM Binaries]] - the formats used for Starlet executable code
 
* [[ARM Binaries]] - the formats used for Starlet executable code

Revision as of 21:09, 12 August 2019

The Hollywood includes an ARM9 core to handle I/O and security, nicknamed the Starlet. This is a very interesting piece of hardware, as it basically does everything that makes a Wii different from a GameCube.

Note: this page is incomplete. Please expand it as you see fit!

Specs

  • NEC ARM926EJ-S SoC. See also ChipWorks.
  • Big endian for compatibility with the Broadway
  • ARM and thumb instruction set
  • Clocked at 243MHz (Hollywood clock)

Boot

See also: boot process

Starlet is the first processor to run code in the Wii.

  • Starlet boots from an internal Mask ROM, BOOT0 (about 1300 bytes of code out of 4K possible)
  • boot0 decrypts, verifies, and runs the first few blocks of NAND, BOOT1 (up to the first 48 pages of flash)
  • boot1 locates, loads, decrypts, verifies, and runs BOOT2
  • boot2 bootstrap then loads the embedded ELF file
  • boot2 starts the IOS
  • IOS loads code into the EXI buffer and bootstraps the Broadway

Links

More information about the Starlet: