Creative SB0350 Programming Manual page 45

Hardware programming guide
Table of Contents

Advertisement

3-16
Digitized Sound I/O Programming
When the DSP sends an interrupt, the following steps should be done in the interrupt
service routine:
1.
To stop auto-initialize DMA mode, you can either send the exit auto-initialize
DMA mode command or program the DSP for single-cycle DMA mode transfer.
2a. Send the exit auto-initialize DMA command.
2b. Program the DSP for single-cycle DMA mode transfer.
At the end of data transfer:
1.
2.
3.
4.
Transfer data between the DMA buffer and the storage buffer.
outp(wSBCBaseAddx+0xC, 0xDA)
Upon receiving the exit auto-initialize DMA mode command, the DSP will
exit auto-initialize DMA mode immediately at the end of the current block
transfer.
outp(wSBCBaseAddx+0xC, bCommand)
outp(wSBCBaseAddx+0xC, wLength.LowByte)
outp(wSBCBaseAddx+0xC, wLength.HighByte)
bCommand is one of the following:
bCommand
Description
24h
8-bit PCM input
14h
8-bit PCM output
74h
8 bit to 4 bit ADPCM output without reference byte
76h
8 bit to 3 bit ADPCM output without reference byte
16h
8 bit to 2 bit ADPCM output without reference byte
Turn off the DAC speaker.
outp(wSBCBaseAddx+0xC, 0xD3)
Disable the interrupt used.
Restore the original interrupt service routine.
Release the allocated DMA buffer.

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents