Showing changes from revision #2 to #3:
Added | Removed | Changed
Offset | Contents |
---|---|
+0 | |
+4 | |
+8 | |
+12 |
All offsets are relative to the Channel Handler block address.
The fill code handles fill requests from the DMA Handler. The Channel Handler translates the fill request to a series of calls to the Voice Generators, passing the required buffer offsets so that data from all channels correctly interleaves. Any unused channels within the buffer are set to zero by the Channel Handler so they are silent.
The overrun fixup code is no longer supported in RISC OS and is never called.
The pointer to the linear-to-log table holds the address of the base of an 8 Kbyte table which maps 32-bit signed integers directly to 8-bit signed volume-scaled logarithms in a suitable format for output to the VIDC chip. This is not used by the 16-bit sound system, which uses linear values.
The pointer to the log-scale table holds the address of a 256-byte table which scales the amplitude of VIDC-format 8-bit signed logarithms from their maximum range down to a value scaled to the volume setting. Voice Generators should use this table to adjust their overall volume. This is not used by the 16-bit sound system.