Difference between revisions of "CECDU:GetSystemInfo"

From 3dbrew
Jump to navigation Jump to search
(Use new template)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
 
=Request=
 
=Request=
{| class="wikitable" border="1"
+
{{IPC/Request}}
|-
+
{{#vardefine:ipc_offset|0}}
!  Index Word
+
{{IPC/RequestEntry|Header code [0x000A00C4]}}
!  Description
+
{{IPC/RequestEntry|Destination buffer size (unused)}}
|-
+
{{IPC/RequestEntry|Info type}}
| 0
+
{{IPC/RequestEntry|Param buffer size (unused)}}
| Header code [0x000A00C4]
+
{{IPC/MapPointerR|Param buffer address}}
|-
+
{{IPC/MapPointerW|Destination buffer address}}
| 1
+
{{IPC/RequestEnd}}
| buffer size (unused)
 
|-
 
| 2
 
| Info type
 
|-
 
| 3
 
| Param size (unused)
 
|-
 
| 4
 
| [[IPC#Buffer_Mapping_Translation|Buffer Mapping Descriptor(R)]] = (param_size << 4) | 0xA
 
|-
 
| 5
 
| param address
 
|-
 
| 6
 
| [[IPC#Buffer_Mapping_Translation|Buffer Mapping Descriptor(W)]] = (buffer_size << 4) | 0xC
 
|-
 
| 7
 
| buffer address
 
|-
 
|}
 
  
 
=Response=
 
=Response=
{| class="wikitable" border="1"
+
{{IPC/Request}}
|-
+
{{#vardefine:ipc_offset|0}}
!  Index Word
+
{{IPC/RequestEntry|Header code [0x000A0044]}}
!  Description
+
{{IPC/RequestEntry|Result code}}
|-
+
{{IPC/MapPointerR|Param buffer address}}
| 0
+
{{IPC/MapPointerW|Destination buffer address}}
| Header code [0x000A0044]
+
{{IPC/RequestEnd}}
|-
 
| 1
 
| Result code
 
|-
 
| 2
 
| [[IPC#Buffer_Mapping_Translation|Buffer Unmapping Descriptor(R)]] = (param_size << 4) | 0xA
 
|-
 
| 3
 
| param address
 
|-
 
| 4
 
| [[IPC#Buffer_Mapping_Translation|Buffer Unmapping Descriptor(W)]] = (buffer_size << 4) | 0xC
 
|-
 
| 5
 
| buffer address
 
|-
 
|}
 
  
 
=Info Type=
 
=Info Type=
Line 73: Line 35:
 
| EULA version, a wrapper of [[CfgS:GetConfigInfoBlk8|GetConfigInfoBlk8]] with BlkID=0xD0000
 
| EULA version, a wrapper of [[CfgS:GetConfigInfoBlk8|GetConfigInfoBlk8]] with BlkID=0xD0000
 
| Ignore
 
| Ignore
| size=2, major version of agreed EULA
+
| size=2, version of agreed EULA
 
|-
 
|-
 
| 2
 
| 2

Latest revision as of 03:18, 10 September 2016

Request[edit]

Index Word Description
0 Header code [0x000A00C4]
1 Destination buffer size (unused)
2 Info type
3 Param buffer size (unused)
4 Descriptor for mapping a read-only buffer in the target process
5 Param buffer address
6 Descriptor for mapping a write-only buffer in the target process
7 Destination buffer address

Response[edit]

Index Word Description
0 Header code [0x000A0044]
1 Result code
2 Descriptor for mapping a read-only buffer in the target process
3 Param buffer address
4 Descriptor for mapping a write-only buffer in the target process
5 Destination buffer address

Info Type[edit]

Type Description Param Output in buffer
0 ? Ignore? size=8, ?
1 EULA version, a wrapper of GetConfigInfoBlk8 with BlkID=0xD0000 Ignore size=2, version of agreed EULA
2 EULA, a wrapper of GetConfigInfoBlk8 with BlkID=0xD0000 Ignore size=1, bool is_eula_agreed
3 Parent Control, a wrapper of GetConfigInfoBlk8 with BlkID=0xC0000 Ignore size=1, bool has_parent_control
6 ? size=13? struct{u32 ncch_program_id; bool is_out_box; u8 message_id[8];} ?
7 ? size=13? struct{u32 ncch_program_id; bool is_out_box; u8 message_id[8];} ?
8 ? Ignore size=4?