Jump to navigation Jump to search
44 bytes added ,  02:15, 20 September 2008
updated to use clusters
The Wii contains 512 MiB of NAND flash storage, which is used to store "system software", channels (including Virtual Console titles), game saves, and system settings.
The NAND flash device is divided into 4096 blocks of 64 8 clusters. Each cluster is 8 pages. Each page is 2048 bytes of data and 64 bytes of "spare data" (used for error-correction (ECC ) data and some metadataHMAC signatures on individual clusters).
*Pages Block 0 (pages 0-0x2F0x3F): boot1
** boot1 is the second-stage bootloader; it is decrypted by boot0, which resides on a mask rom inside the Starlet coprocessor. Its primary function is to load and decrypt boot2.
*Pages 0x30 Blocks 1- 0x3F: unused?*3 (Pages 0x40 - 0x890x13f): boot2 (first copy)*Pages 0x8a Blocks 4- 0x13f: unused 6 (unformatted)*Pages 0x140 - 0x189 0x1bf) : boot2 (second copy)*Pages 0x18a - 0x1bf: unused (unformatted)
** boot2 is the third-stage bootloader; it is stored in a modified WAD format, including a [[ticket]] that is encrypted with the common key and signed.
*Block 7 (Pages 0x1c0 - 0x1ff): ?*Block 8 / Cluster 0x40 / Page 0x200: beginning of per-console unique data*Pages 0x200Clusters 0x40 -0x3f7ff0x7EFF: Encrypted filesystem data. Data is encrypted with a per-console AES key, and then signed with a (separate, per-console) HMAC key. *Pages 0x3F800 Clusters 0x7F00- 0x400000x7FFF: Filesystem metadata (SFFS, unencrypted). There are 16 superblocks contained therein -- one every 0x80 pages16 clusters.
The NAND flash driver inside boot2 and IOS supports the following chip IDs:

Navigation menu