home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Hall of Fame
/
HallofFameCDROM.cdr
/
open
/
qbinters.lzh
/
VIDEO.BAS
< prev
Wrap
BASIC Source File
|
1989-04-23
|
2KB
|
49 lines
'Sun Apr 23, 1989 2:19:55 pm
'************************************************************************
'This routine returns the video monitor type.
'If VIDEO = 1 then monitor is 40 x 25 color.
'If VIDEO = 2 then monitor is 80 x 25 color.
'If VIDEO = 3 then monitor is 80 x 25 monochrome.
'************************************************************************
TYPE RegType
ax AS INTEGER
bx AS INTEGER
cx AS INTEGER
dx AS INTEGER
bp AS INTEGER
si AS INTEGER
di AS INTEGER
flags AS INTEGER
END TYPE
DIM SHARED inregs AS RegType, outregs AS RegType
DECLARE FUNCTION video ()
PRINT video
FUNCTION video
inregs.ax = 0: inregs.bx = 0: inregs.cx = 0: inregs.dx = 0
CALL interrupt(&H11, inregs, outregs)
reg = outregs.ax
ah = FIX(reg / 256)
al = reg - (ah * 256)
bit7 = FIX(al / 128)
bit6 = FIX((al - (bit7 * 128)) / 64)
bit5 = FIX((al - (bit7 * 128) - (bit6 * 64)) / 32)
bit4 = FIX((al - (bit7 * 128) - (bit6 * 64) - (bit5 * 32)) / 16)
bit3 = FIX((al - (bit7 * 128) - (bit6 * 64) - (bit5 * 32) - (bit4 * 16)) / 8)
bit2 = FIX((al - (bit7 * 128) - (bit6 * 64) - (bit5 * 32) - (bit4 * 16) - (bit3 * 8)) / 4)
bit1 = FIX((al - (bit7 * 128) - (bit6 * 64) - (bit5 * 32) - (bit4 * 16) - (bit3 * 8) - (bit2 * 4)) / 2)
bit0 = FIX((al - (bit7 * 128) - (bit6 * 64) - (bit5 * 32) - (bit4 * 16) - (bit3 * 8) - (bit2 * 4) - (bit1 * 2)))
v = (bit3 * 10) + bit4
SELECT CASE v
CASE 1: v = 1
CASE 10: v = 2
CASE 11: v = 3
END SELECT
video = v
END FUNCTION