Line 4: |
Line 4: |
| == General Notes == | | == General Notes == |
| | | |
− | * Development IOSes are similar to retail IOSes, however they use the development encryption keys in place of the real ones, meaning that they will only handle development-signed content, which retail IOSes will not handle. It should be noted that since the development private RSA key is public information (or rather, developer information which has been leaked), it is possible to sign arbitrary content and install it with development IOSes.
| |
| | | |
| * You may notice that all retail IOSes have "64" in the filename, and some development IOSes have "128" in the filename; this signifies the MEM2 size that the IOS is configured to run on. MEM2 is the Wii's larger main memory, not present in the GameCube, and while retail units have a 64MB MEM2, certain development units have a 128MB MEM2; as such, IOSes built to run on these units have "128" in their filename, and IOSes built for 64MB development kits and retail units have "64" in their filename. | | * You may notice that all retail IOSes have "64" in the filename, and some development IOSes have "128" in the filename; this signifies the MEM2 size that the IOS is configured to run on. MEM2 is the Wii's larger main memory, not present in the GameCube, and while retail units have a 64MB MEM2, certain development units have a 128MB MEM2; as such, IOSes built to run on these units have "128" in their filename, and IOSes built for 64MB development kits and retail units have "64" in their filename. |
− | | + | ** IOSes use two different version number schemes; one is used for retail IOSes and is seen on Nintendo's update servers and discs, and another is used for development IOSes and possibly internal purposes. As such, all retail IOSes in the folder use one scheme, and all development IOSes use another. As quoted from Wiibrew: "Each IOS has a 16-bit version number in its TMD. This version number is seen in decimal form in the filenames of IOS WADs on update partition (e.g. "IOS9-64-v516.wad" for version 516 (decimal)). Converted to hex, that 516 becomes 0x0204, and can be read as "2.4" -- IOS9, version 2.4." The "IOS-64-v" format is used for retail IOSes, and "firmware.64/128.(hex version number).(major version)" is used for development IOSes. |
− | * IOSes use two different version number schemes; one is used for retail IOSes and is seen on Nintendo's update servers and discs, and another is used for development IOSes and possibly internal purposes. As such, all retail IOSes in the folder use one scheme, and all development IOSes use another. As quoted from Wiibrew: "Each IOS has a 16-bit version number in its TMD. This version number is seen in decimal form in the filenames of IOS WADs on update partition (e.g. "IOS9-64-v516.wad" for version 516 (decimal)). Converted to hex, that 516 becomes 0x0204, and can be read as "2.4" -- IOS9, version 2.4." The "IOS-64-v" format is used for retail IOSes, and "firmware.64/128.(hex version number).(major version)" is used for development IOSes. | + | *** Development IOSes are similar to retail IOSes, however they use the development encryption keys in place of the real ones, meaning that they will only handle development-signed content, which retail IOSes will not handle. It should be noted that since the development private RSA key is public information (or rather, developer information which has been leaked), it is possible to sign arbitrary content and install it with development IOSes. |
| | | |
| * There are around 253 possible IOS "slots", referring to the IOS's major version, which is, aside from one known exception, also the IOS's title ID in hex form. (IOS1 and IOS2 would not be possible without using different title IDs, as those title IDs would conflict with those for boot2 and the System Menu, respectively. IOS0 may also not be a valid title ID.) However, the highest slot number that Nintendo ever assigned a non-stub IOS was 80, meaning that all IOS slots above 80 can only ever be filled with unofficial IOSes, official IOSes with their title IDs changed, or Nintendo's stubs designed to overwrite unofficial IOSes. | | * There are around 253 possible IOS "slots", referring to the IOS's major version, which is, aside from one known exception, also the IOS's title ID in hex form. (IOS1 and IOS2 would not be possible without using different title IDs, as those title IDs would conflict with those for boot2 and the System Menu, respectively. IOS0 may also not be a valid title ID.) However, the highest slot number that Nintendo ever assigned a non-stub IOS was 80, meaning that all IOS slots above 80 can only ever be filled with unofficial IOSes, official IOSes with their title IDs changed, or Nintendo's stubs designed to overwrite unofficial IOSes. |
Line 14: |
Line 13: |
| * Stubs are "dummy" IOSes, that are installable but not usable and contain only a few kilobytes of content. To see which IOS versions are stubs, check StubGuide.txt. | | * Stubs are "dummy" IOSes, that are installable but not usable and contain only a few kilobytes of content. To see which IOS versions are stubs, check StubGuide.txt. |
| | | |
− | * For unknown reasons, Korean Wiis had many technical changes from Wiis of other regions, including using entirely different encryption keys. Nintendo made several IOS branches and even an entire System Menu version (3.5) dedicated to Korean Wiis, and these IOSes are similar to development IOSes in that they only handle Korean-signed content. To determine which IOSes are Korean, see the information in the next section. | + | * For unknown reasons, Nintendo stubbed almost every System Menu IOS after updating the System Menu to a new version which didn't use it. It's possible that this was meant to be anti-downgrade protection of some sort. |
| + | ** System Menu versions are independent of IOS versions aside from the one set in their TMD, and when this document mentions an IOS coming with a System Menu version, that just means it was part of the same NUS update batch, not that the actual System Menu version has any relation to that IOS. |
| + | |
| + | * For unknown reasons, Korean Wiis had many technical changes from Wiis of other regions, including using entirely different encryption keys. Nintendo made several IOS branches and even an entire System Menu version (3.5) dedicated to Korean Wiis, and these IOSes are similar to development IOSes in that they only handle Korean-signed content. |
| + | ** The IOS40 series seems to have been dedicated to Korean IOSes, and is also notable for skipping almost every other slot. It had many Korean counterparts to international IOSes, used for the Korean versions of those games. |
| | | |
| * Aside from IOSes which were never released/leaked, there are two known missing IOSes from the folder; IOS40-64-v2835, which is a Korean IOS, and the IOS5 stub (as opposed to the fake IOS5). | | * Aside from IOSes which were never released/leaked, there are two known missing IOSes from the folder; IOS40-64-v2835, which is a Korean IOS, and the IOS5 stub (as opposed to the fake IOS5). |
Line 21: |
Line 24: |
| | | |
| * There are several odd gaps and missing IOSes when going sequentially down the list; it's unknown what the purpose of these are, possibly internal IOSes being skipped over. | | * There are several odd gaps and missing IOSes when going sequentially down the list; it's unknown what the purpose of these are, possibly internal IOSes being skipped over. |
− | | + | ** If an IOS is not listed, that means it doesn't exist, or we don't cover it. Please also refer to [http://wiibrew.org/wiki/Template:Navbox_IOS WiiBrew's listing] for reference. |
− | * The IOS40 series seems to have been dedicated to Korean IOSes, and is also notable for skipping almost every other slot. It had many Korean counterparts to international IOSes, used for the Korean versions of those games. | |
− | | |
− | * For unknown reasons, Nintendo stubbed almost every System Menu IOS after updating the System Menu to a new version which didn't use it. It's possible that this was meant to be anti-downgrade protection of some sort.
| |
| | | |
| * More IOSes are covered here than are actually present in the folder, since some unreleased IOSes are covered as well as a few anomalies. | | * More IOSes are covered here than are actually present in the folder, since some unreleased IOSes are covered as well as a few anomalies. |
| + | ** In each IOS's folder, the file with the highest version number in the filename is the latest revision; just check StubGuide.txt to make sure it's not a stub first. |
| | | |
− | * In each IOS's folder, the file with the highest version number in the filename is the latest revision; just check StubGuide.txt to make sure it's not a stub first.
| |
− |
| |
− | * System Menu versions are independent of IOS versions aside from the one set in their TMD, and when this document mentions an IOS coming with a System Menu version, that just means it was part of the same NUS update batch, not that the actual System Menu version has any relation to that IOS.
| |
− |
| |
− | *If an IOS is not listed, that means it doesn't exist, or we don't cover it. Please also refer to [http://wiibrew.org/wiki/Template:Navbox_IOS WiiBrew's listing] for reference.
| |
| == Per-IOS Information == | | == Per-IOS Information == |
| | | |