Introduction to DSP Programming
2-5
Sharing of Interrupts
With DSP version 4.xx, four interrupts use the same Interrupt Request (IRQ) line.
These are the 8-bit and 16-bit DMA mode digitized sound I/O, Sound Blaster MIDI
(SB-MIDI), and MPU-401 MIDI UART mode interrupts.
The Interrupt Status register, addressed as register 82h on the Mixer register map,
is used by the ISR to determine whether the interrupt is meant for it or for some other
ISR, in which case it should chain to the previous routine.
Reading register 82h is accomplished in the same manner as reading any of the other
mixer registers (see the chapter on "Mixer Chip Programming"). The byte read in
from register 82h is interpreted as follows:
D7
D6
D5
D4
D3
D2
D1
D0
MPU-401
16-bit
DMA-mode
digitized
sound I/O
8-bit
DMA-mode
digitized
sound I/O
SB-MIDI
where the grayed areas denote reserved bits. A bit is set to 1 if the corresponding
interrupt is triggered.
To send an interrupt acknowledgment signal to the DSP, perform a read in from one
of three I/O ports with:
in
al,dx
where register DX has been pre-loaded with
2xEh for 8-bit DMA-mode digitized sound I/O or SB-MIDI
2xFh for 16-bit DMA-mode digitized sound I/O
3x0h for MPU-401
Note that it is not possible to distinguish between 8-bit DMA mode digitized sound
I/O and SB-MIDI interrupts because these two processes share the same interrupt
status bit. It is thus important to avoid running both processes at the same time.
To remain backward compatible, the interrupt acknowledgment of 8-bit DMA mode
digitized sound I/O and SB-MIDI is done via the Read-Buffer Status port of the
DSP.
Содержание SB0350
Страница 29: ......
Страница 71: ...Mixer Chip Programming 4 13 Figure 4 4 Logical Schematic of the Output Mixing Paths ...
Страница 72: ...4 14 Mixer Chip Programming Figure 4 5 Logical Schematic of the Input Mixing Paths ...
Страница 141: ...Index3 ...