'===========================================================================
' Subject: DESQVIEW AWARENESS                 Date: 06-10-92 (16:48)       
'  Author: Quinn Tyler Jackson                Code: QB, PDS                
'  Origin: DESQVIEW,AWARENESS               Packet: NETWORK.ABC
'===========================================================================
'Here is a program that will detect if it is running under DESQview.
'Have fun with it.
'
DEFINT A-Z
DECLARE SUB qjDVINIT ()
DECLARE FUNCTION qjDVINST% ()

'  QJDV.BAS v1.0 Released into the Public Domain
'  Written by Quinn Tyler Jackson

'$INCLUDE: 'qb.BI'

DEFINT A-Z

CONST TRUE = -1
CONST FALSE = NOT TRUE

DIM SHARED InRegs AS RegTypeX
DIM SHARED OutRegs AS RegTypeX

' The code that follows is merely a test.  To make this program into
' a support module, you must erase this silly code.

qjDVINIT
CLS
PRINT "Hello, and welcome to QJDV version 1.0"
PRINT

IF qjDVINST THEN
	   PRINT "This test is running under DESQView"
	   END
ELSE
	   PRINT "This test is not running under DESQview...."
	   END
END IF
END

SUB qjDVINIT
    nul = qjDVINST
END SUB

FUNCTION qjDVINST
	SHARED IN.DV

	InRegs.AX = &H2B01
	InRegs.cx = &H4445
	InRegs.dx = &H5351
	CALL InterruptX(&H21, InRegs, OutRegs)
	IF OutRegs.AX MOD 256 <> &HFF THEN
	   IN.DV = TRUE
	   ELSE IN.DV = FALSE
	END IF
	qjDVINST = IN.DV

END FUNCTION

