IOS28
This is an old revision of this page, as edited by Hallowizer (talk | contribs) at 03:40, 11 March 2022. It may differ significantly from the current revision. |
IOS28 is the first IOS to be split into multiple modules, each its own ELF ARM binary, rather than all of IOS being part of a single monolithic binary. Its ES module includes ioctls that retrieve shared contents, probably for the purpose of quickly loading IOS modules. Modules are also now tagged with $IOSVersion dates, since the build tag can no longer completely summarize the IOS. Older IOSes were later given module-specific $IOSVersion tags as they were updated.
IOS28 | |
![]() | |
Technical info | |
---|---|
Type | Common IOS |
Status | Active |
IOS28 and up also use a different IPC range, which it sets when it is loaded. Because IOS22 and below do not set their IPC ranges, instead inheriting them from boot (probably boot2), IOS28 and above always reset the IPC range to the old one before reloading to a different IOS, which allows the old IOSes to have the old range while also allowing new IOSes to set their own range.[1]
This also appears to be the first IOS to support /sys/disc.sys; this probably means Metroid Prime 3: Corruption requires special privileges.
IOS28 seems to have been modularized completely separately from IOS30 and IOS31; because those were the IOSes that all other modular IOSes were branched from, IOS28 has a unique set of modules.
Titles using this IOS
The only game that uses it is Metroid Prime 3: Corruption, and this IOS was included in the update partition of the disc.
Version history
Version | Signing bug? | /dev/flash access? | ES_Identify? | STM Release Exploit? | STM IOCTL overflow? | SDI register index bug? | Notes |
---|---|---|---|---|---|---|---|
v1288 | Yes | Yes | Yes | Yes | Yes | Yes | Not available on NUS. |
v1292 | No | No | No | Yes | Yes | Yes | |
v1293 | No | No | No | No | Yes | Yes | |
v1550 | No | No | No | No | Yes | Yes | |
v1806 | No | No | No | No | Yes | Yes | |
v1807 | No | No | No | No | Yes | Yes | Updated WL and NCD (4.3rev03) |
v2063 | No | No | No | No | Yes | Yes | Only found on vWii and newer RVL-101 units. |
v27663 | No | No | No | No | Yes | Yes | Only found on Wii mini |
References
โ 1. https://github.com/dolphin-emu/dolphin/blob/master/Source/Core/Core/IOS/IOS.cpp