CECDS:SprGetSendSlotsMetadata: Difference between revisions
		
		
		
		Jump to navigation
		Jump to search
		
|  Created page with "= Request = {{IPC/Request}} {{#vardefine:ipc_offset|0}} {{IPC/RequestEntry|Header code <code>0x040C0042</code>}} {{IPC/RequestEntry|buffer size}} {{IPC/MapPointerW|buffer addr..." | m →Description:  Formatting | ||
| Line 19: | Line 19: | ||
| Each metadata object consists out of a tuple of three words: <code>send method</code>, <code>title_id</code>, <code>size</code> whereas the size is the size in bytes of the corresponding spr slot. Copies up to <code>buffer size / (4*3)</code> slots into the buffer. | Each metadata object consists out of a tuple of three words: <code>send method</code>, <code>title_id</code>, <code>size</code> whereas the size is the size in bytes of the corresponding spr slot. Copies up to <code>buffer size / (4*3)</code> slots into the buffer. | ||
| Returns the amount of slots read,  | Returns the amount of slots read, ''not'' the amount of bytes read. | ||
| Requires the [[CECD_Services#CecSprStatus|Cec Spr Status]] to be <code>CEC_SPR_SEND_RECV_INIT</code>. | Requires the [[CECD_Services#CecSprStatus|Cec Spr Status]] to be <code>CEC_SPR_SEND_RECV_INIT</code>. | ||
Revision as of 18:59, 16 March 2025
Request
| Index Word | Description | 
|---|---|
| 0 | Header code 0x040C0042 | 
| 1 | buffer size | 
| 2 | Descriptor for mapping a write-only buffer in the target process | 
| 3 | buffer address | 
Response
| Index Word | Description | 
|---|---|
| 0 | Header code | 
| 1 | Result code | 
| 2 | Amount of slots read | 
Description
This copies the metadata for all slots that need to be sent into the specified buffer.
Each metadata object consists out of a tuple of three words: send method, title_id, size whereas the size is the size in bytes of the corresponding spr slot. Copies up to buffer size / (4*3) slots into the buffer.
Returns the amount of slots read, not the amount of bytes read.
Requires the Cec Spr Status to be CEC_SPR_SEND_RECV_INIT.