Difference between revisions of "Hardware/IPC"

From WiiBrew
Jump to navigation Jump to search
(move nfoz)
Line 6: Line 6:
 
| len = 0x10
 
| len = 0x10
 
| bits = 32
 
| bits = 32
| ppcirq = 14
+
| armirq = 30, 31
| armirq = 31
 
 
}}
 
}}
 
{{hwstub}}
 
{{hwstub}}

Revision as of 18:53, 10 March 2009

IPC
Hollywood Registers
Access
BroadwayPartial
StarletFull
Registers
Base0x0d800000
Length0x10
Access size32 bits
Byte orderBig Endian
This box: view  talk  edit
base function offset description contents/example
0x0D800000 IPC reg 0: request pointer To make an IOS request, the physical address of an IOS command struct is written here by the Broadway. Then, Broadway sets bit 0 of IPC reg 1 to indicate a request is ready.
0x0D800004 IPC reg 1: semaphore flags Broadway sets bits here as "doorbells" to indicate status; Starlet responds by setting flags here.
0x0D800008 IPC reg 2: Reply pointer When an IOS request has completed, IOS will modify the original command struct passed in IPC reg 0, copy that pointer to reg 2, then set reg 1 to 0x14 to indicate a reply is ready.