Changes

2,932 bytes added ,  07:52, 9 October 2022
mentioned the SSL pid change
Line 2: Line 2:  
| version = v1807
 
| version = v1807
 
| type = common
 
| type = common
 +
| status = active
 +
| parent = [[IOS21]]
 +
| children = [[IOS22]]<br />[[IOS30]]
 
}}
 
}}
   −
IOS28 is the first IOS to be split into multiple modules, each its own [[ELF]] [[ARM Binaries|ARM binary]], rather than all of IOS being part of a single monolithic binary.
+
'''IOS28''' is the first [[IOS]] to be split into multiple modules, each its own [[ELF]] [[ARM Binaries|ARM binary]], rather than all of IOS being part of a single monolithic binary. Its [[:/dev/es|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 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.{{ref|https://github.com/dolphin-emu/dolphin/blob/master/Source/Core/Core/IOS/IOS.cpp}}
 +
 
 +
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. IOS28's FS module was built 9 seconds later than IOS30, and DI, SDI, OH0, and OH1 were each built 3 minutes and 1 second later than in IOS30, and only seem to differ in the version reported. IOS30 has a newer IOSP from 06/25/07 instead of 06/08/07. Additionally, not all IOS28 modules have $IOSVersion tags (probably only the ones that changed since IOS22), but this was fixed in IOS30.
 +
 
 +
Since DI only differs from IOS30 in the heap location, error 001 most likely works in IOS28. The lack of it being enabled is most likely a result of it not being thoroughly tested at the time IOS28 was built.
 +
 
 +
IOSP was updated for the first time since [[IOS11]]; IOS11's IOSP was built on 10/25/2006, while IOS28's IOSP was built on 6/8/2007. While no build dates are present in older IOSes for ES, FS, and SDI, it can be assumed that they followed a similar pattern of not updating because [[3.3rev03]] had identical copies of these modules for all IOSes between IOS11 and IOS22. DI followed a similar trend, although it was also not updated between [[IOS9]] and [[IOS11]].
 +
 
 +
The [[SSL]] module in IOS28 has been given PID 16. Previously, SSL shared PID 15 with the [[Broadway]] IPC calls.
 +
 
 +
== 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 ==
 +
{{IOS version history|
 +
{{IOS version|v768|none|Unreleased; known to exist because the [[WiiConnect24]] FW user agent in v1288 is <code>WiiConnect24/FW_28.3.0</code>.}}
 +
{{IOS version|v1288|none|Not available on NUS.}}
 +
{{IOS version|v1292|identify}}
 +
{{IOS version|v1293|stm}}
 +
{{IOS version|v1550|stmioctl}}
 +
{{IOS version|v1806|sdireg}}
 +
{{IOS version|v1807|sdireg|Updated WL and NCD ([[4.3rev03]])}}
 +
{{IOS version|v2063|sdireg|Only found on [[vWii]] and newer [[RVL-101]] units.}}
 +
{{IOS version|v27663|sdireg|Only found on [[Wii mini]]}}
 +
}}
 +
 
 +
== References ==
 +
{{references}}
   −
{| class="wikitable"
  −
|-
  −
! Version
  −
! [[Signing bug]]?
  −
! [[STM Release Exploit]]?
  −
! Notes
  −
|-
  −
| v1288
  −
| ?
  −
| ?
  −
| Not present on NUS
  −
|-
  −
| v1292
  −
| ?
  −
| ?
  −
|
  −
|-
  −
| v1293
  −
| ?
  −
| ?
  −
|
  −
|-
  −
| v1550
  −
| ?
  −
| ?
  −
|
  −
|-
  −
| v1806
  −
| ?
  −
| ?
  −
|
  −
|-
  −
| v1807
  −
| ?
  −
| ?
  −
|
  −
|}
   
{{Navbox IOS}}
 
{{Navbox IOS}}
5,579

edits