Line 1:
Line 1:
=Request=
=Request=
−
{| class="wikitable" border="1"
+
{{IPC/Request}}
−
|-
+
{{#vardefine:ipc_offset|0}}
−
! Index Word
+
{{IPC/RequestEntry|Header code [0x00060104]}}
−
! Description
+
{{IPC/RequestEntry|NCCH Program ID}}
−
|-
+
{{IPC/RequestEntry|bool is_out_box?}}
−
| 0
+
{{IPC/RequestEntry|message ID size (unused, always 8)}}
−
| Header code [0x00070106]
+
{{IPC/RequestEntry|buffer size (unused)}}
−
|-
+
{{IPC/MapPointerR|buffer address}}
−
| 1
+
{{IPC/MapPointerR|HMAC key address}}
−
| NCCH Program ID
+
{{IPC/MapPointerRW|message ID address}}
−
|-
+
{{IPC/RequestEnd}}
−
| 2
−
| bool is_out_box?
−
|-
−
| 3
−
| message ID size (unused, always 8)
−
|-
−
| 4
−
| buffer size (unused)
−
|-
−
| 5
−
| [[IPC#Buffer_Mapping_Translation|Buffer Mapping Descriptor(R)]] = (buffer_size << 4) | 0xA
−
|-
−
| 6
−
| buffer address
−
|-
−
| 7
−
| [[IPC#Buffer_Mapping_Translation|Buffer Mapping Descriptor(R)]] = (HMAC_key_size << 4) | 0xA
−
|-
−
| 8
−
| HMAC key address
−
|-
−
| 9
−
| [[IPC#Buffer_Mapping_Translation|Buffer Mapping Descriptor(RW)]] = (message_ID_size << 4) | 0xE
−
|-
−
| 10
−
| message ID address
−
|-
−
|}
=Response=
=Response=
−
{| class="wikitable" border="1"
+
{{IPC/Request}}
−
|-
+
{{#vardefine:ipc_offset|0}}
−
! Index Word
+
{{IPC/RequestEntry|Header code [0x00060044]}}
−
! Description
+
{{IPC/RequestEntry|Result code}}
−
|-
+
{{IPC/MapPointerR|buffer address}}
−
| 0
+
{{IPC/MapPointerR|HMAC key address}}
−
| Header code [0x00070046]
+
{{IPC/MapPointerRW|message ID address}}
−
|-
+
{{IPC/RequestEnd}}
−
| 1
−
| Result code
−
|-
−
| 2
−
| [[IPC#Buffer_Mapping_Translation|Buffer Unmapping Descriptor(R)]] = (buffer_size << 4) | 0xA
−
|-
−
| 3
−
| buffer address
−
|-
−
| 4
−
| [[IPC#Buffer_Mapping_Translation|Buffer Unmapping Descriptor(R)]] = (HMAC_key_size << 4) | 0xA
−
|-
−
| 5
−
| HMAC key address
−
|-
−
| 6
−
| [[IPC#Buffer_Mapping_Translation|Buffer Unmapping Descriptor(RW)]] = (message_ID_size << 4) | 0xE
−
|-
−
| 7
−
| message ID address
−
|-
−
|}