DSP:WriteProcessPipe: Difference between revisions
No edit summary |
Add buffer details |
||
(5 intermediate revisions by 3 users not shown) | |||
Line 9: | Line 9: | ||
|- | |- | ||
| 1 | | 1 | ||
| | | Channel | ||
|- | |- | ||
| 2 | | 2 | ||
| | | Size | ||
|- | |- | ||
| 3 | | 3 | ||
| ( | | (Size << 14) <nowiki>|</nowiki> 0x402 | ||
|- | |- | ||
| 4 | | 4 | ||
| | | Buffer | ||
|} | |} | ||
Line 31: | Line 31: | ||
|- | |- | ||
| 1 | | 1 | ||
| | | Result code | ||
|} | |} | ||
=Usage Notes= | |||
One should call [[DSP:SetSemaphore]] with an argument of `0x4000`, then wait on the related [[DSP:RegisterInterruptEvents|interrupt event]]. | |||
==enum Channel== | |||
{| class="wikitable" border="1" | |||
|- | |||
! Channel | |||
! Id | |||
|- | |||
| DEBUG | |||
| 0 | |||
|- | |||
| DMA | |||
| 1 | |||
|- | |||
| AUDIO | |||
| 2 | |||
|- | |||
| BINARY | |||
| 3 | |||
|} | |||
==Buffer== | |||
When <code>Channel == AUDIO</code>, | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset | |||
! Size | |||
! Description | |||
|- | |||
| 0x0 | |||
| 2 | |||
| Unknown | |||
|- | |||
| 0x2 | |||
| 2 | |||
| Change DSP state | |||
|} | |||
When <code>Channel == BINARY</code>, | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset | |||
! Size | |||
! Description | |||
|- | |||
| 0x0 | |||
| 2 | |||
| Codec enum | |||
|- | |||
| 0x2 | |||
| 2 | |||
| Codec Command | |||
|- | |||
| 0x4 | |||
| 4 | |||
| Result (0 = Success; 1 = Failed) | |||
|- | |||
| 0x8 | |||
| 24 | |||
| Command Args | |||
|} | |||
===Command Args=== |