CSND Services: Difference between revisions
No edit summary |
m Add anchors |
||
(20 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
The CSND service talks to the DSP using the DSP FIFO to negotiate what CSND channels are allocated to the DSP, and this seems to be channels 0-7 (usually). The rest are dedicated to CSND services. | |||
{{Anchor|CSND}}{{Anchor|csnd:SND}} | |||
= CSND service "csnd:SND" = | = CSND service "csnd:SND" = | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 10: | Line 12: | ||
|- | |- | ||
| 0x00020000 | | 0x00020000 | ||
| Shutdown | | [[CSND:Shutdown|Shutdown]] | ||
|- | |||
| 0x00030040 | |||
| [[CSND:ExecuteCommands|ExecuteCommands]] | |||
|- | |||
| 0x00040080 | |||
| [[CSND:PlaySoundDirectly|PlaySoundDirectly]] | |||
|- | |||
| 0x00050000 | |||
| [[CSND:AcquireSoundChannels|AcquireSoundChannels]] | |||
|- | |||
| 0x00060000 | |||
| [[CSND:ReleaseSoundChannels|ReleaseSoundChannels]] | |||
|- | |||
| 0x00070000 | |||
| [[CSND:AcquireCapUnit|AcquireCapUnit]] | |||
|- | |||
| 0x00080040 | |||
| [[CSND:ReleaseCapUnit|ReleaseCapUnit]] | |||
|- | |- | ||
| 0x00090082 | | 0x00090082 | ||
| | | [[CSND:FlushDataCache|FlushDataCache]] | ||
|- | |- | ||
| 0x000A0082 | | 0x000A0082 | ||
| | | [[CSND:StoreDataCache|StoreDataCache]] | ||
|- | |||
| 0x000B0082 | |||
| [[CSND:InvalidateDataCache|InvalidateDataCache]] | |||
|- | |||
| 0x000C0000 | |||
| [[CSND:Reset|Reset]] | |||
|} | |} | ||
A maximum of 4 service sessions can be opened at the same time for this service. | |||
For cache operations addresses must be in 0x14000000-0x1C000000 range. Starting with [[8.0.0-18]] addresses in the range 0x30000000-0x40000000 are also allowed. | |||
This service is normally used for playing [[BCWAV|CWAVs]]. The audio data must be located in the 0x14000000 virtual memory region, since CSND requires the physical address for playing the audio. | |||
[[Category:Services]] |