/***************************+******************************************/
/*                   S B U T I L . H                                  */
/**------------------------------------------------------------------**/
/* Task          : Header file for SB_UTIL.C                          */
/**------------------------------------------------------------------**/
/* Author        : Michael Tischer / Bruno Jennrich                   */
/* Developed on  : 03/20/1994                                         */
/* Last update   : 04/06/1995                                         */
/**------------------------------------------------------------------**/
/* COMPILER      : Borland C++ 3.1, Microsoft Visual C++  1.5         */
/**********************************************************************/
#ifndef __INC_SB_UTIL_H
#define __INC_SB_UTIL_H

#include <dos.h>
#include <stdio.h>
#include "types.h"

typedef struct tagSBBASE
{  
  INT    iDspPort,                       /* Base port of DS processor */
         iMixPort,                              /* Base port of mixer */
        iMpuPort;                             /* Base port of MP unit */
  INT    iDspDmaB;                    /* 8 bit DMA channel being used */
  INT    iDspDmaW;                   /* 16 bit DMA channel being used */
  INT    iDspIrq;                /* Interrupt request line being used */
  WORD   uDspVersion;                           /* DSP version number */
  LPCHAR pDspName;                      /* Name of Sound Blaster card */
} SBBASE;
typedef SBBASE *PSBBASE;

INT  sb_GetEnviron  ( PSBBASE pSBBASE, PCHAR lpEnv );
VOID sb_Print       ( PSBBASE pSBBASE );
VOID sb_UnloadDriver( LPVOID  lpEntry );
LPVOID sb_LoadDriver( PCHAR pName );
#endif
