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
ExtremsAlt (talk | contribs)
Undo revision 100485 by BrianJones (talk)
Bwmdjeff (talk | contribs)
made it look more clean.
Line 1: Line 1:
{{stub}}
{{stub}}
Something with boot2?
This presumably has something to do with boot2, which has an important role in the booting sequence. If is ran after being decoded from boot1, which is in turn ran after being decoded from boot0 which is read only. (See the boot2 page).


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


14 ioctl(0,4,12 return -101)
14 ioctl(0,4,12 return -101)
Line 65: Line 67:


== /dev/boot2 error codes ==
== /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.


{| class="wikitable"
{| class="wikitable"
Line 74: Line 78:
| -101
| -101
|  ?
|  ?
| Invalid Wrong IN or OUT size, wrong size for a part of the vector, vector alignment problems, non-existant ioctl,wrong structure
| 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.
|-
|-
|-
|-

Revision as of 20:01, 28 December 2020

This presumably has something to do with boot2, which has an important role in the booting sequence. If is ran after being decoded from boot1, which is in turn ran after being decoded from boot0 which is read only. (See the boot2 page).

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_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 ? ?