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

/dev/boot2: Difference between revisions

From WiiBrew
Jump to navigation Jump to search
Hallowizer (talk | contribs)
Undo revision 116329 by Hallowizer (talk) I’m stupid, it literally says IOS56+
Tag: Undo
Hallowizer (talk | contribs)
added IOS_Ioctl section
Line 10: Line 10:
ioctlv 4,12,14 last only in IOS56+
ioctlv 4,12,14 last only in IOS56+


== /dev/boot2 IOS_Ioctl ==
{| class="wikitable"
! Number
! Description
|-
| 1
| Possibly writes padding to the end of the main boot2 copy?
|-
| 3
| Possibly copies the main boot2 copy over to the backup? Will be called by boot2 recovery if [[:/sys/boot.sys]] exists.
|}


== /dev/boot2 IOS_Ioctlv ==
== /dev/boot2 IOS_Ioctlv ==

Revision as of 10:34, 5 March 2022

/dev/boot2 can presumably be written to to install a new boot2. THIS HAS NOT BEEN VERIFIED, DO NOT RELY ON THIS TO INSTALL A CUSTOM BOOT2.

This accepts the following commands: open, close, read, write, seek, ioctl, ioctlv

IOCTL example:

14 ioctl(0,4,12 return -101)

ioctlv 4,12,14 last only in IOS56+

/dev/boot2 IOS_Ioctl

Number Description
1 Possibly writes padding to the end of the main boot2 copy?
3 Possibly copies the main boot2 copy over to the backup? Will be called by boot2 recovery if /sys/boot.sys exists.

/dev/boot2 IOS_Ioctlv

number name in count out count vec entry target vec entry size [bytes] libogc prototype Description
0xC ? 1 2 ? 0x40 No ?
? 0x4
? 0x4
0x4 ? 1/2 1/2 ? 0x40 No Can be used with 1 In and 1 Out or 2 In and 2
? 0x4
? (only if you use 2 In/Out)(if this is 0 it is the same as use only 1 in and Out) 0x4
? (only if you use 2 In/Out) Different each time(0xD* 2.in)
0xE ? minimal 1 0 ? ? No ?

/dev/boot2 error codes

Note: POSIX is a standardized system that helps maintain compatibility between many different operating systems. So, each error code shown below has a given POSIX equivalent (not known yet). Other OS's many have different error code numbers, but if their POSIX equivalent is the same, they mean the same thing.

Error code POSIX equivalent Notes
-101 ? This can refer to: Invalid Wrong IN or OUT size, wrong size for a part of the vector, vector alignment problems, non-existant ioctl, or wrong structure.
-102 ? ?
-104 ? ?
-106 ? ?
-107 ? ?
-108 ? ?