Difference between revisions of "DSP:ReadPipeIfPossible"
Jump to navigation
Jump to search
(Created page with "=Request= {| class="wikitable" border="1" |- ! Index Word ! Description |- | 0 | Header code [0x001000c0] |- | 1 | unk1 |- | 2 | unk2 |- | 3 | size (halfword) |} 0x100 byte af...") |
|||
(3 intermediate revisions by 2 users not shown) | |||
Line 9: | Line 9: | ||
|- | |- | ||
| 1 | | 1 | ||
− | | | + | | Channel (0 - 7 0:Debug from DSP 1:P-DMA 2:audio 3:binary 4-7: free ?) |
|- | |- | ||
| 2 | | 2 | ||
− | | | + | | Peer (0 = from DSP, 1 = from ARM) |
|- | |- | ||
| 3 | | 3 | ||
− | | | + | | u16, Size |
|} | |} | ||
Line 25: | Line 25: | ||
|- | |- | ||
| 0 | | 0 | ||
− | | ( | + | | (Size << 14) <nowiki>|</nowiki> 0x2 |
|- | |- | ||
| 1 | | 1 | ||
− | | | + | | Buffer |
|} | |} | ||
Line 41: | Line 41: | ||
|- | |- | ||
| 1 | | 1 | ||
− | | | + | | Result code |
|- | |- | ||
| 2 | | 2 | ||
− | | | + | | u16, Actual read size |
|} | |} | ||
+ | |||
+ | = Channels = | ||
+ | |||
+ | == Channel 2 (Audio) == | ||
+ | |||
+ | Channel 2 returns the DSP DRAM addresses of structures located in the [[DSP Memory Region]]. [[DSP:ConvertProcessAddressFromDspDram]] can be used to convert these addresses into virtual memory addresses. The list of addresses and the length of the list vary depending on DSP firmware version. | ||
+ | |||
+ | == Channel 3 (Binary) == | ||
+ | |||
+ | The purpose of channel 3 is unknown. The behaviour of this pipe varies depending on DSP firmware version. Observed behaviours include: | ||
+ | |||
+ | * doing nothing. | ||
+ | * echoing what is returned to it. | ||
+ | * long strings of zeros. |
Latest revision as of 22:39, 7 March 2016
Request[edit]
Index Word | Description |
---|---|
0 | Header code [0x001000c0] |
1 | Channel (0 - 7 0:Debug from DSP 1:P-DMA 2:audio 3:binary 4-7: free ?) |
2 | Peer (0 = from DSP, 1 = from ARM) |
3 | u16, Size |
0x100 byte after the Request header
Index Word | Description |
---|---|
0 | (Size << 14) | 0x2 |
1 | Buffer |
Response[edit]
Index Word | Description |
---|---|
0 | Header code |
1 | Result code |
2 | u16, Actual read size |
Channels[edit]
Channel 2 (Audio)[edit]
Channel 2 returns the DSP DRAM addresses of structures located in the DSP Memory Region. DSP:ConvertProcessAddressFromDspDram can be used to convert these addresses into virtual memory addresses. The list of addresses and the length of the list vary depending on DSP firmware version.
Channel 3 (Binary)[edit]
The purpose of channel 3 is unknown. The behaviour of this pipe varies depending on DSP firmware version. Observed behaviours include:
- doing nothing.
- echoing what is returned to it.
- long strings of zeros.