Difference between revisions of "BOSSU:ReadNsData"

From 3dbrew
Jump to navigation Jump to search
(Use IPC template header)
 
Line 1: Line 1:
 
=Request=
 
=Request=
{| class="wikitable" border="1"
+
{{IPC/Request}}
|-
+
{{#vardefine:ipc_offset|0}}
!  Index Word
+
{{IPC/RequestHeader|0x0028|4|2}}
!  Description
+
{{IPC/RequestEntry|u32, NS Data ID}}
|-
+
{{IPC/RequestEntryRange|2|s64, Offset}}
| 0
+
{{IPC/RequestEntry|u32, Buffer size}}
| Header code [0x00280102]
+
{{IPC/MapPointerW|Data buffer}}
|-
+
{{IPC/RequestEnd}}
| 1
 
| NsDataId
 
|-
 
| 2-3
 
| u64 offset
 
|-
 
| 4
 
| Size
 
|-
 
| 5
 
| (Size << 4)  <nowiki>|</nowiki> 0xC
 
|-
 
| 6
 
| Data Pointer
 
|}
 
  
 
=Response=
 
=Response=
{| class="wikitable" border="1"
+
{{IPC/Request}}
|-
+
{{#vardefine:ipc_offset|0}}
!  Index Word
+
{{IPC/RequestHeader|0x0028|3|2}}
!  Description
+
{{IPC/RequestEntry|Result code}}
|-
+
{{IPC/RequestEntry|u32, Actual read size}}
| 0
+
{{IPC/RequestEntry|u32, Version of the NS Data}}
| Header code
+
{{IPC/MapPointerW|Data buffer}}
|-
+
{{IPC/RequestEnd}}
| 1
 
| Result code
 
|-
 
| 2
 
| Actual read size
 
|-
 
| 3
 
| Unknown output u32.
 
|}
 
  
 
=Description=
 
=Description=
This is used for reading the actual SpotPass content.
+
Reads the content from the given NS Data ID of the program ID of the current session.

Latest revision as of 01:08, 7 February 2025

Request[edit]

Index Word Description
0
Header 0x00280102 Cmd 0x0028 Param 4 Xlat 2
1 u32, NS Data ID
2-3 s64, Offset
4 u32, Buffer size
5 Descriptor for mapping a write-only buffer in the target process
6 Data buffer

Response[edit]

Index Word Description
0
Header 0x002800C2 Cmd 0x0028 Param 3 Xlat 2
1 Result code
2 u32, Actual read size
3 u32, Version of the NS Data
4 Descriptor for mapping a write-only buffer in the target process
5 Data buffer

Description[edit]

Reads the content from the given NS Data ID of the program ID of the current session.