=

AST RESEARCH, INC.       TECHNICAL BULLETIN # 1336                   11-9-95

=


 AST Advantage! Adventure 6066 and DoubleView


PROBLEM

When running DigiBoard's DoubleView program (version 1.3.2) on the AST 
Advantage! Adventure 6066 system, DoubleView will hang when invoked with 
the  keystroke.


CAUSE

DoubleView has a software hook which allows other applications to run when 
DoubleView is activated and deactivated.  

The following information is included in the release notes that accompany the 
program:

"DoubleView has been enhanced to provide a signal feature that will let TSRs 
and drivers know when DoubleView is active.  DoubleView makes an INT 0xDB 
call to a DoubleView aware ISR when it is activated and deactivated (sic) via 
the hot-key.  DoubleView will make this call only if the Interrupt Service 
Routine (ISR) has provided the correct signature.  This 16 bit signature must 
be located one word before the ISR's entry point and must be 0xdbdb.  If this 
signature is present, DoubleView will make the INT call with the following 
parameters :

On Entry :   AX = 0xdbdb
		  BX = 0

On Exit  :   AX = 0xdbdb
		  BX = 1

"The ISR should do minimal processing and return with an IRET.  The ISR 
must be prepared for the unlikely event that another program is sharing the 
INT 0xDB vector, and be prepared to chain non-DoubleView calls.  The user 
can recognize a DoubleView call by the AX value."

The problem occurs when DoubleView attempts to detect the 16-bit signature.  
The program simply subtracts 2 from the offset of the Interrupt Service 
Routine (ISR) address and compares the value at that location with the 
expected signature 0xdbdb.  This works fine in most cases, but will fail if 
the offset is 0x0000 or 0x0001.  An offset of 0x0000 will cause DoubleView 
to look at the wrong address (though not cause the system to hang) while the 
offset of 0x0001 will cause a General Protection Fault (GPF) as the program 
tries to read a 16-bit word across a segment boundary.  This latter failure is 
seen on the AST Advantage! Adventure system and is the cause of the system 
hang.


SOLUTION

Run the INTDB.COM program.  This program is contained in file DBVPATCH.EXE, 
which can be downloaded from AST's BBS (817) 230-6850.  AST's BBS supports 
modem speeds up to 28.8k bps.  File DBVPATCH.EXE will also be posted on: 

CompuServe 
Go ASTSUPPORT

AST Worldwide Web Site
http://www.ast.com


SYSTEMS AFFECTED

Any IBM PC or compatible systems.