DSP Memory Region
The DSP communicates with userland through memory locations 0x1ff40000-0x1ff77fff. Within this region are two areas of structures that are exact duplicates of each other. The DSP alternates between the use of these two areas (much like a double-buffer). Each area has 15 structures within it. The location of these structures can be obtained by reading pipe 2.
The mixer has 24 channels, each of which are individually configurable.
Structure Number | DSP memory address | Size | Description |
5 | 0x8400 | 0x20 | Status (?) |
9 | 0x8410 | 0x260 | Debug (?) |
6 | 0x8540 | 0x280 | Loopback Samples (PCM16) |
2 | 0x8680 | 0x120 | Channel Status (x24) |
8 | 0x9710 | 0x1A40 | ? |
4 | 0x9430 | 0xC4 | Main Configuration |
7 | 0x9492 | 0x1400 | ? |
1 | 0x9e92 | 0x1200 | Channel Config (x24) |
3 | 0x9430 | 0x300 | - |
10 | 0xa912 | 0x200 | |
11 | 0xaa12 | 0x180 | |
12 | 0xaad2 | 0x300 | |
13 | 0xac52 | 0x14 | |
14 | 0xac5c | 0x2476 | - |
0 | 0xbfff | 0x2 | Frame Counter |