Line 1: |
Line 1: |
| [[Category:Services]] | | [[Category:Services]] |
| + | |
| + | 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. |
| + | |
| = CSND service "csnd:SND" = | | = CSND service "csnd:SND" = |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
Line 10: |
Line 13: |
| |- | | |- |
| | 0x00020000 | | | 0x00020000 |
− | | Shutdown | + | | [[CSND:Shutdown|Shutdown]] |
| |- | | |- |
| | 0x00030040 | | | 0x00030040 |
− | | | + | | [[CSND:ExecuteCommands|ExecuteCommands]] |
| |- | | |- |
| | 0x00040080 | | | 0x00040080 |
− | | | + | | [[CSND:PlaySoundDirectly|PlaySoundDirectly]] |
| |- | | |- |
| | 0x00050000 | | | 0x00050000 |
− | | | + | | [[CSND:AcquireSoundChannels|AcquireSoundChannels]] |
| |- | | |- |
| | 0x00060000 | | | 0x00060000 |
− | | | + | | [[CSND:ReleaseSoundChannels|ReleaseSoundChannels]] |
| |- | | |- |
| | 0x00070000 | | | 0x00070000 |
− | | | + | | [[CSND:AcquireCapUnit|AcquireCapUnit]] |
| |- | | |- |
| | 0x00080040 | | | 0x00080040 |
− | | | + | | [[CSND:ReleaseCapUnit|ReleaseCapUnit]] |
| |- | | |- |
| | 0x00090082 | | | 0x00090082 |
− | | FlushDCache (The address must be located in the 0x14000000 region) | + | | [[CSND:FlushDataCache|FlushDataCache]] |
| |- | | |- |
| | 0x000A0082 | | | 0x000A0082 |
− | | StoreDCache (svcStoreProcessDataCache is used for this, the address must be located in the 0x14000000 region) | + | | [[CSND:StoreDataCache|StoreDataCache]] |
| |- | | |- |
| | 0x000B0082 | | | 0x000B0082 |
− | | InvalidateDCache (The address must be located in the 0x14000000 region) | + | | [[CSND:InvalidateDataCache|InvalidateDataCache]] |
| |- | | |- |
| | 0x000C0000 | | | 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. |