home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 17 / CD_ASCQ_17_101194.iso / dos / prg / sphinx / examples / sblaster / sbgetvol.c__ < prev    next >
Encoding:
Text File  |  1994-03-30  |  1.6 KB  |  90 lines

  1. /*
  2.    Copyright (C) 1994  Michael B. Martin
  3.  
  4.    Demo to show how to access the SB Pro mixer chip.
  5.  
  6.    30 Mar 1994:  Small modifications by SPHINX.
  7. */
  8.  
  9. ?resize FALSE
  10.  
  11. ?include "WRITE.H--"
  12. ?include "DOS.H--"
  13. ?include "SYSTEM.H--"
  14.  
  15. ?include "SB.H--"
  16.  
  17.  
  18. int main()
  19. byte vol;
  20. word left, right;
  21. {
  22.     IF (SB_GET_PARAMS() != 0)    // maybe use SB_DETECT() instead?
  23.     {
  24.        WRITESTR("Couldn't parse BLASTER environment variable\n");
  25.        return(1);
  26.     }
  27.     IF (SB_INIT() != 0)
  28.     {
  29.        WRITESTR("Couldn't reset Sound Blaster!\n");
  30.        return(1);
  31.     }
  32.  
  33.     vol = READMIXER(MASTER_VOL);
  34.  
  35.     left = vol >> 4;
  36.     right = vol & 0x0f;
  37.  
  38.     WRITESTR("Master volume is ");
  39.     WRITEWORD(left);
  40.     WRITE(',');
  41.     WRITEWORD(right);
  42.     WRITELN();
  43.  
  44.     vol = READMIXER(VOC_VOL);
  45.  
  46.     left = vol >> 4;
  47.     right = vol & 0x0f;
  48.  
  49.     WRITESTR("VOC volume is ");
  50.     WRITEWORD(left);
  51.     WRITE(',');
  52.     WRITEWORD(right);
  53.     WRITELN();
  54.  
  55.     vol = READMIXER(LINE_VOL);
  56.  
  57.     left = vol >> 4;
  58.     right = vol & 0x0f;
  59.  
  60.     WRITESTR("Line volume is ");
  61.     WRITEWORD(left);
  62.     WRITE(',');
  63.     WRITEWORD(right);
  64.     WRITELN();
  65.  
  66.     vol = READMIXER(FM_VOL);
  67.  
  68.     left = vol >> 4;
  69.     right = vol & 0x0f;
  70.  
  71.     WRITESTR("FM volume is ");
  72.     WRITEWORD(left);
  73.     WRITE(',');
  74.     WRITEWORD(right);
  75.     WRITELN();
  76.  
  77.     vol = READMIXER(CD_VOL);
  78.  
  79.     left = vol & 0x0f;
  80.     WRITESTR("CD volume is ");
  81.     WRITEWORD(left);
  82.     WRITELN();
  83.  
  84.     vol = READMIXER(RECORD_SRC);
  85.  
  86.     WRITESTR("Recording source is ");
  87.     WRITEWORD(left);
  88.     WRITELN();
  89. }
  90.