Difference between revisions of "Hardware/IPC"
< Hardware
Jump to navigation
Jump to search
(move nfoz) |
|||
Line 6: | Line 6: | ||
| len = 0x10 | | len = 0x10 | ||
| bits = 32 | | bits = 32 | ||
− | + | | armirq = 30, 31 | |
− | | armirq = 31 | ||
}} | }} | ||
{{hwstub}} | {{hwstub}} |
Revision as of 19:53, 10 March 2009
IPC | |
Hollywood Registers | |
Access | |
---|---|
Broadway | Partial |
Starlet | Full |
Registers | |
Base | 0x0d800000 |
Length | 0x10 |
Access size | 32 bits |
Byte order | Big Endian |
This Hardware-related article is a stub. You can help WiiBrew by expanding it. |
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. |