Metropoli BBS
VIEWER: devsbdac.asm MODE: TEXT (ASCII)
                INCLUDE SoundDevices.INC


EXTRN DacPort  : WORD

EXTRN DSPWritePort  : WORD
EXTRN SbSplTimeout : WORD
EXTRN SbCmdTimeout : WORD


MACRO  SBLoop Tout
LOCAL @@tst, @@cnt

                MOV     DX,[DSPWritePort]
                MOV     BX,Tout
@@tst:
                 DEC    BX
                 JZ     @@cnt
                 IN     AL,DX
                 TEST   AL,80h
                 JNZ    @@tst
@@cnt:

ENDM  SBLoop


                CODESEG

PUBLIC SbDACIntHandler

SbDACIntHandler:
                Chunk1

                Chunk21

                Chunk221

                SBLoop  [SbCmdTimeout]
                MOV     AL,10h
                OUT     DX,AL

                Chunk222

                SterChunk31

                Chunk41 8

                MOV     DX,[DacPort]
                MOV     AL,CH
                OUT     DX,AL

                SBLoop  [SbSplTimeout]
                MOV     AL,CL
                OUT     DX,AL

                Chunk5

PUBLIC MixSbDACIntHandler

MixSbDACIntHandler:
                Chunk1

                Chunk21

                Chunk221

                SBLoop  [SbCmdTimeout]
                MOV     AL,10h
                OUT     DX,AL

                Chunk222

                StMixChunk31

                Chunk41 8

                MOV     DX,[DacPort]
                MOV     AL,CH
                OUT     DX,AL

                SBLoop  [SbSplTimeout]
                MOV     AL,CL
                OUT     DX,AL

                Chunk51

PUBLIC Mix2SbDACIntHandler

Mix2SbDACIntHandler:
                Chunk1

                Chunk21

                Chunk221

                SBLoop  [SbCmdTimeout]
                MOV     AL,10h
                OUT     DX,AL

                Chunk222

                StMix2Chunk31

                Chunk41 8

                MOV     DX,[DacPort]
                MOV     AL,CH
                OUT     DX,AL

                SBLoop  [SbSplTimeout]
                MOV     AL,CL
                OUT     DX,AL

                Chunk51

END
[ RETURN TO DIRECTORY ]