The sound controller has 16 channels with configurable replay frequencies, and volume envelope generators. Each channel has two 22-bit pointers to a sample in RAM or ROM, one used for the initial sound trigger and the second used as a loop point. Samples can be either 8-bit or 16-bit unsigned PCM, or Dialogic/OKI ADPCM (VOX).

Channels controls

Address Function
30×0 Channel X sample address
30×1 Channel X control (bit 14: 16M, 13-12: ToneMode, 11-6: Loop address segment, 5-0: sample address segment)
30×2 Channel X loop address
30×3 Channel X panning and volume (7 bits each)
30×4 Channel X envelope target volume and increment
30×5 Channel X envelope CNT and EDD (?)
30×6 Channel X repeat count (bits 15-9), repeat enable (8), Envelope load (7-0)
30×7 Channel X IRQ address (15-9), IRQ enable, envelope segment (6-0)
30×8 Channel X envelope address
30×9 Channel X wave data 0
30xA Channel X ramp down offset (15-9) and envelope address offset (8-0)
30xB Channel X wave data
32×0 Phase high bits (2-0)
32×1 Phase accumulator high (2-0)
32×2 Target phase high (2-0)
32×3 Ramp down clock
32×4 Phase low bits
32×5 Phase accumulator low bits
32×6 Target phase low bits
32×7 Phase control: time step (15-13), sign (12), offset (11-0)

Global controls

Address Function
3400 Channel enable (1 bit per channel)
3401 Main volume (7 bits)
3402 Channel FIQ enable
3403 Channel FIQ status
3404 Beat base counter
3405 Beat counter (13-0), IRQ enable (15) and status (14)
3406 Envelope interval, channels 0-3
3407 … channels 4-7
3408 … channels 8-11
3409 … channels 12-15
340A Envelope fast ramp-down
340B Channel stop status (1 bit per channel)
340C Zero cross enable (1 bit per channel)
340D Control flags: NoInt (9), LPEn (8), HVol(7-6), SOF (5), Init (3), PCM (2)
340F Channels status
3410 Left mixer input
3411 Right mixer input
3412 Left mixer output
3413 Right mixer output
3414 Channel repeat enable (1 bit per channel)
3415 Channel envelope mode
3416 Channel tone release control
3417 Channel envelope IRQ status
3418 Channel pitch band enable
sound.txt · Last modified: 2022/06/24 20:47 by simer
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0