home *** CD-ROM | disk | FTP | other *** search
/ Hall of Fame / HallofFameCDROM.cdr / open / qbinters.lzh / VIDEO.BAS < prev   
BASIC Source File  |  1989-04-23  |  2KB  |  49 lines

  1. 'Sun  Apr 23, 1989   2:19:55 pm 
  2. '************************************************************************
  3. 'This routine returns the video monitor type. 
  4. 'If VIDEO = 1 then monitor is 40 x 25 color.
  5. 'If VIDEO = 2 then monitor is 80 x 25 color.
  6. 'If VIDEO = 3 then monitor is 80 x 25 monochrome.
  7. '************************************************************************
  8. TYPE RegType
  9.      ax    AS INTEGER
  10.      bx    AS INTEGER
  11.      cx    AS INTEGER
  12.      dx    AS INTEGER
  13.      bp    AS INTEGER
  14.      si    AS INTEGER
  15.      di    AS INTEGER
  16.      flags AS INTEGER
  17. END TYPE
  18. DIM SHARED inregs AS RegType, outregs AS RegType
  19. DECLARE FUNCTION video ()
  20. PRINT video
  21.  
  22. FUNCTION video
  23.      inregs.ax = 0: inregs.bx = 0: inregs.cx = 0: inregs.dx = 0
  24.      CALL interrupt(&H11, inregs, outregs)
  25.      reg = outregs.ax
  26.      ah = FIX(reg / 256)
  27.      al = reg - (ah * 256)
  28.      bit7 = FIX(al / 128)
  29.      bit6 = FIX((al - (bit7 * 128)) / 64)
  30.      bit5 = FIX((al - (bit7 * 128) - (bit6 * 64)) / 32)
  31.      bit4 = FIX((al - (bit7 * 128) - (bit6 * 64) - (bit5 * 32)) / 16)
  32.      bit3 = FIX((al - (bit7 * 128) - (bit6 * 64) - (bit5 * 32) - (bit4 * 16)) / 8)
  33.      bit2 = FIX((al - (bit7 * 128) - (bit6 * 64) - (bit5 * 32) - (bit4 * 16) - (bit3 * 8)) / 4)
  34.      bit1 = FIX((al - (bit7 * 128) - (bit6 * 64) - (bit5 * 32) - (bit4 * 16) - (bit3 * 8) - (bit2 * 4)) / 2)
  35.      bit0 = FIX((al - (bit7 * 128) - (bit6 * 64) - (bit5 * 32) - (bit4 * 16) - (bit3 * 8) - (bit2 * 4) - (bit1 * 2)))
  36.      v = (bit3 * 10) + bit4
  37.      SELECT CASE v
  38.           CASE 1: v = 1
  39.           CASE 10: v = 2
  40.           CASE 11: v = 3
  41.      END SELECT
  42.      video = v
  43. END FUNCTION
  44.  
  45.  
  46.  
  47.  
  48.  
  49.