DESQview/QEMM Frequently Asked Questions
Release 28
Last update: Nov 2, 1995
Edited by Andrew Langmead
Posted on the first of every month
Section 0. FAQ Facts - An overview of this FAQ list
Q001: What is this article?
Q002: How is the FAQ arranged?
Q003: Where can I get the FAQ List?
Q004: To whom can I complain if I find an error?
Q005: What if I can't find it in the FAQ?
Q001: What is this article?
A001: This article is a regularly posted compendium of topics that have been
discussed in the Usenet newsgroup comp.os.msdos.desqview since its
birth. Although many of the questions are truly ``Frequently Asked'',
others are questions that experienced DESQview users recognize as
questions a beginner might ask. If you are new to DESQview or this
group, please read this FAQ before posting your question. Even if your
question isn't answered here, you'll probably learn something new about
DESQview.
Although I edit this FAQ ("Frequently Asked Questions"), a majority of
the information contained in it was contributed by other
comp.os.msdos.desqview readers. The many contributors are listed at the
end of the document.
Q002: How is the FAQ arranged?
A002: The FAQ consists of seven sections in the following order:
(0) FAQ FACTS is an overview of the FAQ itself. You are reading
it right now.
(1) QUARTERDECK AND ITS PRODUCTS briefly describes the products
and support services that Quarterdeck offers.
(2) THE DESQVIEW PRODUCTS answers questions common to all the
DESQview products: DESQview, DESQview-386 and DESQview/X.
(3) DESQVIEW CLASSIC is specific to the DESQview and DESQview-386
products.
(4) DESQVIEW/X answers questions specific to DESQview/X.
(5) QEMM answers questions related to Quarterdeck's memory
manager QEMM-386.
(6) CONTRIBUTORS lists the major contributors to this document.
Each section is preceded by a list of the questions in that section.
Because DESQview and DESQview/X are close cousins, many of the
questions are common to both and are answered in section 2.
Because Quarterdeck sells a variety of DESQview products, the term
"DESQview" can be vague. In this FAQ list, "DESQview" refers to any of
the DESQview packages that Quarterdeck sells. References to specific
packages will be made with either the package name or with a shorthand
notation:
DVC refers to the original DESQview package, now informally
called ``DESQview Classic''.
DV386 refers to DESQview/386 or the DESQview Classic and QEMM-386
combination (see Q101).
DVX refers to DESQview/X.
At the end of some of the questions, there may be a note of the form
``QW:216:QRAM.TEC''. This is a cross reference to the Quarterdeck White
Papers, which are published by Quarterdeck. QW:216:QRAM.TEC refers to
Quarterdeck White Paper #216, file name QRAM.TEC. The White Pages are
available on Quarterdeck's BBS and on SimTel (see Q203).
Q003: Where can I get the FAQ List?
A003: This FAQ list is published in a number of places. In file archives, it
is named DVFAQx.ZIP, where ``x'' is the release number.
(1) its birthplace, the Usenet newsgroup COMP.OS.MSDOS.DESQVIEW as
NEWS.ANSWERS with the subject line ``DESQview/QEMM Frequently
Asked Questions: READ BEFORE POSTING'';
(2) all NEWS.ANSWERS archives, as ``desqview-faq'' (the only
exception to the naming rule); and
(3) SimTel and mirrors (see Q203) in the desqview directory.
Q004: To whom can I complain if I find an error?
A004: To me, at
aml@world.std.com
Please send me any and all suggestions, errors or criticisms.
Q005: What if I can't find it in the FAQ?
A005: First of all, take a look at the manual. This may seem obvious, but
you'd be surprised at the number of people that post problems which they
could have solved themselves by glancing at the manual.
If you still can't figure it out, post a complete description of your
problem. Don't just say, for example, ``foo.exe doesn't run''. Be
specific. Post the Change A Program screens, or portions of
AUTOEXEC.BAT or CONFIG.SYS if relevant. But use some restraint. Don't
post 18 pages of system configuration information just because you can't
get foo.exe to print ``Hello, world''.
Section 1. Quarterdeck and its Products - What Quarterdeck sells and how
to contact the company.
Q101: What products does Quarterdeck sell, and what are the current
versions?
Q102: How can I contact Quarterdeck?
Q103: What third-party books are available on Quarterdeck's products?
Q104: What are the command-line switches for Quarterdeck's products?
Q101: What products does Quarterdeck sell, and what are the current
versions?
A101: [Versions are the latest known as of the date of the FAQ. If you see a
newer version, please let me know.]
Quarterdeck has two types of ``upgrades'': major upgrades and
compatibility updates. The former involves a changing of the digit
before or immediately after the decimal point and represents significant
enhancements to the product's performance. The latter reflect minor
changes generally of interest to a small number of users.
DESQview (DVC) 2.70
An excellent DOS multitasker. If you are wondering why it has such
a funny name, here's the official explanation from Quarterdeck: the
original product was called DESQ (the Q was from Quarterdeck). When
Quarterdeck made it TopView-compatible (see Q305) the "view" was
added.
QEMM-386 8.0
A memory manager for 80386+ machines. QEMM will convert extended
memory to XMS memory (replacing HIMEM.SYS) and LIM EMS 4.0 memory.
With the associated utilities, you can load TSRs, device drivers,
and DOS data structures into high memory in order to gain
conventional memory for large programs. The MS-DOS and Windows
program Manifest is included with QEMM. Manifest will give the user
technical details about the computer on which it is running and
hints on how to make the most efficient use of memory on the system.
QEMM is a VCPI server and can also be a DPMI host with the included
QDPMI program. If you plan to use DESQview on a 386, you should
choose QEMM over other memory managers. It is smaller and faster
than other memory managers, can give you more upper memory, and
certain functions in DESQview will only work if QEMM is the memory
manager. It is also the only memory manager that allows
you to run Windows in Standard mode inside or outside of DESQview.
DESQview/386 (DV386) 2.70
Actually DESQview/386 is a copy of DESQview and QEMM in the same
package. If you already have DESQview, purchasing QEMM will give
you DV386.
DESQview/X 2.1
DESQview/X is DV386 with an industry-standard graphical user
interface. It contains an X-windows server, which allows you to
interact with X-windows programs running on Unix machines, or DOS
text and X clients running on other DESQview/X machines (see Q405).
Using the fonts provided, you can make use of your SVGA to have
many small 80x25 windows open on the screen simultaneously.
The DVX package contains DESQview/X 2.1, QEMM-386 7.5 and
Manifest 3.0. It also contains 4 DESQview/X Companions: an
Application Manager (like Window's Program Manager), a File Manager,
the Adobe Type Manager and an Icon Editor.
OSF/Motif Window Manager 1.0
Replaces the native DESQview/X window manager for a different look
and feel.
OPEN LOOK Window Manager 1.0
Replaces the native DESQview/X window manager for a different look
and feel.
Sidebar 1.0
A Windows shell that replaces the Program Manager.
CleanSweep 1.0
Searches for unneeded or unused files from Windows applications.
These files can either be archived or deleted.
WebAuthor 1.0
An add-on for Word 6 for Windows to write HTML documents for the
World Wide Web.
Quarterdeck Mosaic 1.0
A multithreaded World Wide Web browser for Microsoft Windows.
InternetSuite 1.1
Includes Quarterdeck Mosaic; Quarterdeck Message Center, an
integrated Internet mail and Usenet news reader; QTerm, a telnet
client; and QFTP, a file transfer utility.
CleanSweep 95
A Windows 95 version of CleanSweep, Quarterdeck's uninstall utility.
MagnaRAM 2.0
A Windows memory multiplier; compresses a section of extended memory
to avoid accessing Windows' disk-based virtual memory.
WebServer 1.0
A Windows-based World Wide Web HTTP server; includes support for CGI
(Common Gateway Interface) programs and imagemaps.
WinProbe
Datasafe
Kickstart
QW:186:QEMM5060.TEC, QW:216:QRAM.TEC, QW:266:DV&DVX.TEC
Q102: How can I contact Quarterdeck?
A102: Quarterdeck Corporation
13160 Mindanao Way, FL3
Marina Del Rey, CA 90292-9705
Technical Support:
Phone: (310) 309-3700
Fax: (310) 309-3217
Q/FAX: (310) 309-3214
Sales:
Phone: (310) 309-3700
Fax: (310) 309-3802 ?
Customer Service or Orders:
Phone: (800) 354-3222
QOS BBS: (310) 309-3227 (24 hours/day, 300-14400 BPS, 8 bits, No
E-mail (for Tech Support):
Internet/Usenet/UUCP: support@qdeck.com
Quarterdeck BBS: Sysop
CompuServe: 76004,2310
Public Message forums for Quarterdeck Tech support:
QOS BBS: <T>echnical Support Message System
CompuServe: ``GO QUARTERDECK''
SmartNet: DESQview Conference
Public Message forums with DESQview sections but no official
Quarterdeck presence:
BIX: ``JOIN DESQVIEW''
FidoNet: DESQview Echo
RelayNet: DESQVIEW
ILINK: Multitaskers
Usenet: comp.os.msdos.desqview
Ireland
-------
European Headquarters
Quarterdeck International Ltd.
B.I.M. House, Crofton Terrace
Dun Laoghaire, Co.
Dublin, Ireland
Phone: +353 1 2844-144
Fax: +353 1 2844-380
BBS: +353 1 2844-381
QFAX: +353 1 2844-383
Product Information/Registration Cards:
Phone: +353 1 2841-444
Fax: +353 1 2844-380
United Kingdom
--------------
Quarterdeck Corporation UK Ltd.
Widford Hall, Widford Hall Lane,
Chelmsford, Essex, CM2 8TD, United Kingdom
Technical Support
Phone: + 01245 494940
Fax: + 01245 496941
QFAX + 01245 496931
Product Information/Upgrade/Registration Cards:
Phone: + 44 245 496699
Fax: + 44 245 495284
BBS: + 44 245 263898
Germany
-------
Quarterdeck Corporation GmbH
Willstaetter Strasse 15
D-4000 Duesseldorf 11
Germany
Technical support:
Phone: +49 211 / 59790-40
Fax: +49 211 / 59790-60
QFAX +49 211 / 59790-65
Product info, upgrades:
Phone: +49 211 / 59790-0
Fax: +49 211 / 594126
France
------
Quarterdeck Corporation S.A.R.L.,
4, Rue de General Lanrezac, 75017 Paris, France.
Technical Support
Phone: Int + 33 146-97-16-17
Fax: + 33 146-97-14-73
BBS: + 33 146-97-14-74
QFAX: + 33 144-09-00-81
Product Information/Upgrade/Registration Cards
Phone: + 33 144-09-03-91
Fax: + 33 144-09-03-47
Cyprus / Eastern Mediterranean
Quarterdeck Corporation Middle East Ltd.
1 Souliou Street, Suite 103, Strovolos,
Nicosia, Cyprus.
Product Information/Upgrade/Registration Cards/Support
Phone: + 357 2311-630
Fax: + 357 2311-560
Spain
-----
Quarterdeck Corporation S.A.,
Gran Via de les Courts, Catlanes, 617, 10-3A
08007 Barcelona, Spain.
Product Information/Upgrade/Registration Cards/Support
Phone: + 343-412-29-45
Australia
---------
Quarterdeck Corporation Australia
500 Oxford Street, Plaza II
Bondi Junction, New South Wales 2022
Australia
Product Information/Upgrade/Registration Cards/Support
Phone: + 61-2-369-2711
Fax + 61-2-369-1912
Q103: What third-party books are available on Quarterdeck's products?
A103: ``DESQview - A Guide to Programming the DESQview Multitasking
Environment'', by Stephen R. Davis, M&T Books Publishing, 501
Galveston Drive, Redwood City, CA 94063. 346 pages. 1st Edition,
1989.
[This is a review from Quarterdeck. I've heard from others that this
books is really not that good and doesn't have many examples. Look it
over well before you spend any money.] A very good source on programming
in C using the DESQview API. This is a tutorial book with lots of
examples. Would be useful to programmers who find the QOS API manuals
somewhat daunting. All examples are in C, however there is lots of
general information which would be useful for developers programming in
any language. Available direct from M&T and bookstores which
specialize in technical works. Can be ordered from Quarterdeck order
line at (310) 392-9851 for $24.95 ($39.95 with disk - 5 1/4 inch only).
``The Official DESQview Sourcebook'', Larry Joel Goldstein, Bantam
Computer Books, 666 Fifth Ave., New York, NY 10103. 351 pages. 1st
edition - Sept. '89, price $22.95 ($27.95 Canada).
A comprehensive guide to the use of DESQview, QEMM and the DESQview
Companions. Contains a section on the DESQview API that may serve as
an introduction, but this is not a programmer's book. A useful adjunct
to the Quarterdeck manuals when you want similar information from
another view.
``DOS Beyond 640K'', Second Ed. James Forney, Windcrest Books, Division
of TAB Books Inc., Blue Ridge Summit, PA 17294-0850. 1989. 235
ISBN 0-8306-9717-9, ISBN 0-8306-3744-3 pbk. pages. Price $19.95.
Not a DESQview/QEMM book specifically, but an excellent book on the
subject of memory, with many references to DESQview and QEMM. Highly
recommended to users who really want to understand the use of memory in
their PCs.
``The Best Book of DESQview'', Jack Nimersheim, Howard W. Sams &
Company, 11711 North College, Suite 141, Carmel, IN 46032. 1st
Edition 1990, 396 pages. Price $24.95
A user-friendly guide to DESQview, the Companions, QEMM and Manifest.
Contains many tips and a good discussion of the DESQview Learn feature.
``Mastering DESQview'', Jonathan Kamin, Scott, Foresman IBM Computer
Books, 1900 E. Lake Avenue, Glenview, IL 60025. 1st Edition 1990,
387 pages. Price $24.95.
A comprehensive guide to the use of DESQview, with emphasis on hints and
techniques which enhance the use of DESQview. Special emphasis on
creative use of DESQview's Learn (macro) facility.
``Extending DOS,'' Ray Duncan, Charles Petzold, M. Steven Baker, Andrew
Schulman, Stephen R. Davis, Ross P. Nelson, Robert Moote,
Addison-Wesley Publishing Co., Second edition, 1992.
An excellent work on DOS memory usage and some of the options for
extending DOS. For advanced users and programmers. Quite a bit of
example source code included. Covers IBM PC Programming Architecture,
EMS, XMS, DOS Extenders, Windows, DESQview, VCPI, DPMI and Multitasking.
``DESQview Instant Reference,'' Paul J. Perry, 1991, Sybex, 166 Pages.
Price $9.95
This is a basic, short reference guide to DESQview, QEMM-386, and
Manifest. It covers up to versions 2.3 of DESQview and version 5.1 of
QEMM-386. It describes the use of all the DESQview functions, QEMM-386
switches, and switches for LOADHI, QEMM.COM, VIDRAM. All the
information provided is in the Quarterdeck manuals.
``Understanding DESQview,'' Richard Altman, 1991, Sybex, 307 pages.
Price $24.95
``DESQview Revealed'', Dave Williams, SAMS. $29.95, ISBN 0672300281.
Uses information from this FAQ. I've got a copy but I haven't
taken the time to review it yet...
``Memory Management for All of Us'', by John M. Goodman, Ph.D. SAMS,
1992. ISBN 0-672-27366-7. Price $29.95.
Discusses virtually all aspects of PC memory and memory management,
including how DESQview uses memory.
``XView Programming Manual,'' Dan Heller, etal., O'Reilly & Assoc. 586
pages. Price: $34.95
``X Window System Programming,'' Naba Barkakati, 1991, Howard W. Sams &
Co. 600 pages. Price: $29.95
Good introduction to X programming, with many helpful example programs.
Covers xlib, xt Intrinsics, and some discussion of OSF/Motif widgets is
provided.
``Introduction to the X Window System,'' O. Jones, 1989, P-H. Price:
$38.00
``The X Window System in a Nutshell'', 1990, O'Reilly & Assoc. Price:
$24.95
"USING DESQview/X", Kevin Reichard, 1993, MIS Press. Written by the
co-author of "USING X"
"Total Recall", G. Saxer & E. Sander, 1993, Osborne Press
Memory Management from a Quarterdeck perspective, written by
Quarterdeck VP Gary Saxer and Quarterdeck senior tech writer Ellen
Sander.
``DESQview: Everything You Need to Know'', Kamin, $22.95.
ISBN 1559582383
``Power of... DESQview/X'', Reichard, MIS Press. $27.95, ISBN 1558282572
[If you know of any more, please let me know]
QW:132:BOOKS.TEC
Q104: What are the command-line switches for Quarterdeck's products?
A104: The file qosswit3.zip from SimTel (see Q203) in the SimTel/msdos/qtrdeck/
directory contains a list of the documented and undocumented switches
for Quarterdeck's products.
QW:178:ALL-HELP.TEC
Section 2. The DESQview Products - Questions and answers common to
DESQview and DESQview/X
Q201: What are the DESQview products?
Q202: What types of programs can the DESQview products run?
Q203: Where can I get freeware and shareware programs for the DESQview
products?
Q204: I want to write software for the DESQview products. Where can I get
the API?
Q205: Can Windows run under the DESQview products?
Q206: When running Windows under DESQview, I get an ``Incorrect DOS Version''
message. How do I fix this?
Q207: How do I run a program every time DESQview is started?
Q208: I've heard that DESQview does preemptive multitasking. What does that
mean?
Q209: How can I increase the speed and performance of the DESQview
products?
Q210: Why do the other windows slow to a virtual halt when one window
accesses the floppy disk?
Q211: How can I upgrade my 80286 for best DESQview performance?
Q212: How can I increase the maximum available memory to programs running
in the DESQview products?
Q213: My {9600 or greater} BPS modem drops characters under DESQview. Is high
speed communication possible under DESQview?
Q214: What does ``Optimize Communications'' in DESQview's setup program do?
Q215: Why doesn't ANSI.SYS work in DESQview?
Q216: What do each of the four Protection Levels mean?
Q217: How can I load two or more shared programs in a window?
Q218: Why does my remote control program's screen mess up when I
switch windows?
Q219: Why do some programs complain that an COM port does not exist, while
others seem to find the port without problems.
Q201: What are the DESQview products?
A201: The DESQview products, specifically DESQview and DESQview/X, are
DOS-based multitaskers written by Quarterdeck Office Systems of Santa
Monica, California, USA. They allows true preemptive multitasking (see
Q9) on 8088, 8086, 80286, 80386, 80486, Pentium, V20 and V30 machines
running MS-DOS (see Q301, Q401). While MS-DOS is still considered the PC's
operating system, DESQview provides services similar to more advanced
multitasking operating systems.
QW:195:286.TEC, QW:266:DV&DVX.TEC
Q202: What types of programs can the DESQview products run?
A202: There are three types of DESQview programs: DESQview-oblivious
programs, DESQview-aware programs, and DESQview-specific programs.
According to the DESQview manual, DESQview-oblivious programs are
those which are ``written without any consideration for DESQview''.
These include standard DOS programs like word processors and
spreadsheets.
Some standard DOS programs have the ability to detect the presence of
DESQview. These programs are considered DESQview-aware. The
advantage of DESQview-aware programs is better system performance,
because DESQview does not have to make conservative assumptions about
the program. A DESQview-aware program gives up the CPU when it
doesn't need it, and if it writes directly to the screen it instead
writes to a DESQview-provided video buffer so it can run in a small
window (see Q305). If you'd like to make your program DESQview-aware,
there is code provided in Appendix J of the DESQview manual.
DESQview-specific programs can only be run while DESQview is active.
These programs use the window management, interprocess communication
and other services that are built into DESQview (called the DESQview
Applications Program Interface (API)).
DESQview will multitask all programs, regardless of type, with the
following exceptions: DOS Graphics programs which use protected mode
are suspended when placed in the "background" under DESQview, and all
DOS graphics programs are suspended when in the "background" under
DESQview/X.
Q203: Where can I get freeware and shareware programs for the DESQview
products?
A203: There are quite a few DESQview repositories available, depending on what
network access you have.
BBS
The official Quarterdeck BBS can be reached at (310) 314-3227. It
supports 1200-14400 baud, 8 data bits, no parity.
Fidonet
Many Fidonet nodes belong to DVNet, the DESQview File Distribution
Network. It is coordinated by Peter Stern at 1:355/38. A monthly
posting to the DESQview echo on Fidonet lists the nodes
participating in DVNet.
Internet (via anonymous ftp)
QDECK.COM [149.17.8.10]
QDECK.COM is the official Quarterdeck FTP site.
The Simtel Software Repository
For security reasons, the SimTel Software Repository is located on
a host that is not accessible by anonymous ftp users, however, its
files are available by anonymous ftp in directory /SimTel/msdos from
the primary the primary mirror site OAK.Oakland.Edu [141.210.10.117]
Three directories are of interest to DV/QEMM users:
/SimTel/msdos/desqview
Many DESQview programs, .DVPs, etc.
/SimTel/msdos/dv-x
DVX-specific programs, icons, etc.
/SimTel/msdos/qemm
QEMM programs, information
/SimTel/msdos/qtrdeck
Information relating to all Quarterdeck products. The
Quarterdeck White Pages are stored here as qw-sep92.zip.
They are very useful for solving problems.
/SimTel/msdos/djgpp
A freely distributable 32 bit compiler which Quarterdeck
has donated DESQview/X libraries.
Other directories may contain DESQview-aware (see Q202)
programs. In each of the three directories, the file
00_index.txt contains a list of all the files available in
that directory.
Other SimTel mirrors include
St. Louis, MO: wuarchive.wustl.edu (128.252.135.4)
Corvallis, OR: archive.orst.edu (128.193.2.13)
Australia: archie.au (139.130.4.6)
England: src.doc.ic.ac.uk (146.169.2.10)
Finland: ftp.funet.fi (128.214.248.6)
France: ftp.ibp.fr (132.227.60.2)
Germany: ftp.uni-paderborn.de (131.234.2.32)
Hong Kong: ftp.cs.cuhk.hk (137.189.4.57)
Israel: ftp.technion.ac.il (132.68.1.10)
Poland: ftp.cyf-kr.edu.pl (149.156.1.8)
Sweden: ftp.sunet.se (130.238.127.3)
Switzerland: ftp.switch.ch (130.59.1.40)
Taiwan: NCTUCCCA.edu.tw (140.111.1.10)
Thailand: ftp.nectec.or.th (192.150.251.33)
Gopher users can access the collection through
Gopher.Oakland.Edu. World Wide Web (WWW) and Mosaic
users can connect to the URL http://www.acs.oakland.edu
to access the files on OAK.Oakland.Edu.
Information distributed via Fidonet's DVNet is
available for anonymous FTP for 7 days from ftp.fidonet.org
under pub/fidonet in directories:
dvn-admn
dvn-apps
dvn-dev
dvn-dvp
dvn-tech
dvn-xapp
dvn-xdev
dvn-xdvp
dvn-xtec
Email-only
SimTel files may obtained by e-mail from various ftp-mail servers
or through the BITNET/EARN file servers. For details see file
/SimTel/msdos/filedocs/mailserv.inf or Keith Petersen's periodic
information postings to comp.archives.msdos.announce.
Q204: I want to write software for the DESQview products. Where can I get
the API?
A204: Programming under the DESQview API allows you to use all the
multitasking features of DVC and DVX - process and task creation,
interprocess communication and character window output.
The DESQview API is built into every copy of DESQview and DESQview/X as
INT 15h calls. A list of the documented and undocumented INT 15h calls
is available for free in DVINT, a DESQview/QEMM-specific excerpt of the
Interrupt List maintained by Ralf Brown.
Also for free is DVGLUE 1.72, a DESQview 2.01 API for Turbo C. DVGLUE
and DVINT make a good combination for freeware and shareware programmers
who want to get into DESQview programming at a small cost.
Quarterdeck no longer sells their API libraries. Third party
reference books to these discontinued libraries are
available. (see Q20).
QW:211:APIBRO.TEC
Q205: Can Windows run under the DESQview products?
A205: Yes, Windows can run under DESQview, but only in Real and Standard
mode. Windows in Enhanced mode becomes an 80386 DPMI control program
and there can only be one such control program at a time. Some programs
can be fooled into thinking that they are running in enhanced mode under
DESQview/X.
Under DESQview/X, Windows can be run in a small window, because
DESQview/X can convert the Windows output into X requests. Page 143 of
the DVX manual discusses how to run Windows under DVX.
DESQview 2.7 now supports MS Windows in higher resolutions through the
use of DVWINMON.EXE (as does DESQview/X through XWINMON.EXE) This
driver is placed in the WIN.INI file, thusly:
WIN.INI contents extract:
[windows] ; load=C:\DVX\xwinmon.exe (commented version of DVX driver)
load=c:\dv\dvwinmon.exe ; DV 2.7 driver
This driver has been successfully tested with many drivers
including Trident, STB and Winspeed drivers at resolutions up to
1024x768x256
You can fool some programs into thinking they are in enhanced mode by
running QDPMI and by adding the /q parameter to the WINX.COM program in
the WINX.DVP file. This will take more conventional memory than loading
WINX.COM without the /q parameter.
QW:170:WIN3.TEC, QW:242:WIN31.TEC
Q206: When running Windows under DESQview, I get an ``Incorrect DOS Version''
message. How do I fix this?
A206: Rather than using LOADHI FILES in AUTOEXEC.BAT, you must set FILES=15 or
so in CONFIG.SYS. Windows requires that some FILES be loaded low.
QEMM 7.0x (packaged with DVX 1.1 and DV386 2.7) contains a fix for
this Windows problem.
Q207: How do I run a program every time DESQview is started?
A207: Yes. There are basically two methods:
(1) Use the ! method in the script language.
(2) Use a batch file in the first (BD) window.
Method (1) is more useful in turnkey applications - method (2) is better
(i.e., more flexible) for general use.
To use method 1, do something like this:
copy con foo.dvt
{Learn {F12} "!Startup"}
...
{Finish}
^Z
convscr t foo.dvt desqview.dvs
(``...'' are your DV script commands to do what you want to do)
Another way of creating a startup script is to use DESQview's
Learn feature to create a script (see page 136 of the manual)
and give the script a name that starts with an exclaimation point.
This script will become a startup script.
To use Method 2, get hold of one of the many ``start a window from the
command line'' utilities. One of these is RUN, part of the DVSI package
available on SimTel and mirrors (see Q203).
Then write a batch file that uses RUN to create the windows you need,
and put that batch file in the Program field of BD-PIF.DVP. Then you
can start up the windows just by hitting return twice when DV starts up
(assuming BD is the first program on your open menu). This is what I
do. Or, for total automation, you can make a startup script as above,
consisting of OBD.
Under DESQview/X, there is a third possible method. Edit the file
``DVX.CFG'' which is in the \DVX directory. Add the name of the DVP
(without the .DVP extension) to the CLIENT line. Or, use the SETUP
program which will edit DVX.CFG for you. DESQview/X assumes that the
DVP you specify in the CLIENT line is in the directory \DVX\DVPS.
QW:153:AUTOSCRI.TEC
Q208: I've heard that DESQview does preemptive multitasking. What does that
mean?
A208: Let's say you have one toy (the 80x86 processor in our case) and 5
children (5 programs that you want to run under DESQview
simultaneously). There are two ways that Dad (DESQview) can let each
child play with the toy.
(1) Dad gives the toy to one of the children, who plays with it until
she gets bored. Then she returns the toy to Dad, who gives it to one of
the other children. This repeats until all the children have played
with the toy, and then Dad starts over with the first child.
(2) Dad gives the toy to one of the children, and starts a timer. If
the child gets bored with the toy before the timer expires, she gives it
back to Dad. However, if she still holds the toy when the timer
expires, Dad reminds her that good children must share, and takes it
away from her. He then gives it to the next child and restarts the
timer. When all the children have played with the toy, Dad returns it
to the first child. She continues playing with it where she left off.
Sometimes one of the children may want to take the toy apart. Since none
of the other children wants to play with a disassembled toy, the child
will request that Dad not take away the toy until the child says he can.
In that way, the child can re-assemble the toy before any other child
gets it.
The first method is called ``non-preemptive'' and conversely, the second
is called ``preemptive''. It is generally agreed that preemptive
multitasking is much better because one program cannot accidently
``hog'' the CPU. One of the major technical differences between
DESQview and Windows is that DESQview preemptively multitasks all
programs, while Windows does non-preemptive multitasking of Windows
applications.
When a program running under DESQview calls a DOS or BIOS function, it
effectively ``disassembled the toy''. DESQview recognizes this and
temporarily suspends any other program that attempts to make a DOS or
BIOS call until the current DOS or BIOS call ends (see Q210).
DESQview-oblivious programs (see Q202) can act like selfish children when
they are waiting for keyboard entry. Even though they aren't playing
with the toy, they keep hold of it. Shareware and freeware programs are
available for forcing these programs to share the toy (see Q209).
QW:152:MULTI-T.TEC
Q209: How can I increase the speed and performance of the DESQview
products?
A209: DESQview's performance depends on many different factors. We will try
to highlight some of the important areas here.
DESQVIEW-OBLIVIOUS PROGRAMS
Performance is especially degraded by DESQview-oblivious programs
(see Q202), because they do not give up the CPU when they are not
doing useful work (see Q208).
Some programs, while waiting for keyboard input, continuously ask
if a keystroke is available instead of giving up the CPU.
Quarterdeck provides a way to force programs to give up the CPU
after a specified number of keystroke queries. One of the bytes in
the DVP file (the file edited by Change A Program) specifies the
number of keyboard polls before the CPU is taken away.
Unfortunately, Quarterdeck has never put a field on the Change A
Program screens to change this number. DvpEdit, a freeware
replacement for Change A Program, is available on SimTel (see Q203)
and allows you to change this ``Max Keypolls'' value.
Another well-known program is TAME. TAME does much more than watch
for keyboard polling; and can do a good job of increasing
performance.
System performance can be measured with the PS utility available in
the DVSI package (also on SimTel and DVNet). Using PS, an
offending program can be quickly identified.
DISK ACCESS
Since disk access can slow down the system significantly (see Q210)
using a disk cache can also increase performance. HyperDisk,
available on SimTel (see Q203), is especially popular among
DESQview users.
FOREGROUND/BACKGROUND TICKS
With the ``Tune Performance'' menu you can set the number of
foreground and background ticks. These numbers indicate how much
time DESQview is to allocate to a given task before moving on to
the next in a round-robin fashion. The default setting is 9:3,
which means DESQview gives the foreground task 9 ``ticks'', or
roughly half a second, of CPU time, then gives each of the
background tasks 3 ticks. A more common setting with today's
hardware is 1:1 or 2:2 -- each task gets 1 (or 2) ticks.
There's no single, optimal setting. Smaller numbers generally
provide smoother performance, but may overwhelm the CPU on less
powerful systems. In addition, time-sensitive applications like
communications programs may need to be serviced frequently by the
CPU. In short, experiment.
Setting 0 background ticks will cause background windows to never
run. Setting 0 foreground ticks will cause background windows to
run only if the foreground window explicitly gives up its
timeslice, or if it blocks (i.e. waits for a keystroke or other
event).
SCREEN DISPLAY
There are three primary reasons why your screen may appear jerky.
First, you may be virtualizing the window. While this prevents
bleed-thru (when used in conjunction with QEMM-386), it does
increase the workload on DESQview, and the screen output only
occurs at the end of the program's timeslice. If this is a problem
for you then configure your application to use BIOS screen writes
and turn virtualization off. Second, you may need to adjust your
tick settings. DESQview updates the screen display at the end of a
task's CPU allocation. Thus, a setting of, say, 99:99 will result
in extremely jerky screen updates compared with 2:2 or so. Third,
you may be unnecessarily using NOFF.SHP (see Q305).
DESQview/X is a GUI and therefore screen output is much slower.
This is due to the poor design of the PC's video. In order to get
better display performance, you may want to purchase a graphics
accelerator or coprocessor board.
Q210: Why do the other windows slow to a virtual halt when one window
accesses the floppy disk?
A210: Both DOS and the BIOS disk access functions are non-reentrant, i.e.
they may not be called again while one call is in progress. DESQview
thus handles both as ``serially reusable resources,'' and suspends a
window making such a call until any current call completes.
Since programs make many DOS calls other than disk I/O, they can become
blocked while another window is accessing the disk even when they
themselves are not trying to access the disk. The same suspension
occurs when a program accesses the disk via BIOS calls, but only when
some other window is also accessing the disk; thus, a non-disk DOS call
can execute at the same time as a disk-related BIOS call.
When the disk being accessed is a hard disk, the call completes so
quickly that there is no obvious degradation in the performance of other
windows. When accessing a floppy disk, however, the call can take
multiple seconds to complete, during which time it is highly likely that
other windows will be suspended for a noticeable length of time.
To minimize the impact of copying or formatting, try using shareware
programs such as DVCOPY, LTFORMAT and FDFORMAT (see Q203).
QW:230:DVFLOPPY.TEC
Q211: How can I upgrade my 80286 for best DESQview performance?
A211: A 80286 can be upgraded with LIM EMS 4.0 expanded memory, a memory
management chip, a plug-in 386 adapter, or a new 386 motherboard. The
cost of all these ``upgrades'' is about the same. All of them have some
negatives as well.
(1) If you are unsure how much of your 286 conventional memory can
disabled, getting LIM EMS 4.0 memory may not help you. For the record
the listed 286 motherboards can be set to the minimum conventional
memory as follows:
AST Premium 286 0K
IBM AT (6 Mhz) 256K
COMPAQ 286 256K
Most AT clones have a minimum of 512K (eighteen 256Kx1 DRAMs). The
motherboard can only be disabled to 256K or lower if it supports 64K
DRAMs, or if the system setup allows you to specify a value less than
the actual amount of memory installed.
If you have information on the minimum conventional memory of any other
286 motherboard, please forward it to the editor (see above).
(2) If you get a memory management chip, an All-Charge Card or a SOTA
POP, you will still not get the memory protection available with the
80386 (see Q301, Q401).
(3) If you get a 386 Adapter to replace the 286 CPU chip, there has been
``some reported'' compatibility problems. Also, it will not run as fast
the corresponding 386 motherboard of the same clock speed.
(4) If you get a new 386 (or 386SX) motherboard, there is some hassle to
get it installed and working but probably no more than with the 386
Adapter kits.
QW:195:286.TEC
Q212: How can I increase the maximum available memory to programs running
in the DESQview products?
A212: There are three easy steps: Free up conventional memory, steal the
video graphics area and trim DESQview's usage of memory.
FREE UP CONVENTIONAL MEMORY
---------------------------
The first step is to free up as much of the lower 640K as possible.
If you have a 386 or better, this is possible. Purchase QEMM if you
do not already have it; QEMM is smaller and much more effective than
DOS's EMM386 or other memory manager products. Also, QEMM is required
in order to do screen virtualization.
QEMM 7 has the ability to load DOS high; use QEMM's DOS-UP rather than
DOS's DOS=HIGH because QEMM can do a better job. If you do not use
DOS-UP, do not load DOS into the HMA. DESQview can make better use of
the HMA itself. If you load DOS high, add I=0800-0FFF to your QEMM
line in CONFIG.SYS.
Also, if you don't need graphics, you can use the VREMS parameter on the
QEMM line, and add VIDRAM ON to the DV.BAT file. This will give you
about 64k more for each window. DV.BAT should actually have a VIDRAM ON
before calling DV, and VIDRAM OFF after DV.
Experiment. Use Manifest to judge the results. If your high memory is
very fragmented (i.e. many small contiguous blocks rather than a few
large blocks), keeping DOS and TSRs low and putting DESQview high might
work better.
Using QEMM's STEALTH feature (ST:M is preferred) will buy you much
more memory, and is pretty much required for DVX.
Here's a neat trick to save memory under DVX. This is from David
Granz:
In order to use DV/X on a TCP/IP network, the FTP software TCP/IP
drivers must be loaded. Unfortunately, these TSRs can take up over
100K of precious DOS memory space. In addition a mouse driver is
needed (another 12-16K of memory used up). And then, DV/X itself
chews up a significant amount of DOS memory. Even with the new QEMM
stealth features that allow most of the upper memory space to be
used to LOADHI these TSRs, the memory actually left for a program
(or DOS window) under DV/X can end up being quite small. In my
particular setup, the best I was able to get was a 320K DOS window.
After much experimenting and some suggestions from Quarterdeck, I
have come up with the following procedures that allow you get very
close to a full 640K of program space in a DOS window (somewhat less
if you don't have a 8514 video card). Note that although this
method seems to work fine (for me at least), it is not in anyway a
supported method. Please DO NOT call Quarterdeck for help with this
setup, they are not supporting this technique at this time. If you
have problems with things crashing, put things back the way they
were before, and see if the problems go away. Then, if the crash
still occurs, you have a valid reason to call Quarterdeck.
Before doing any of the following modifications, make a safe copy of
\DVX\STARTUP.DVP and \DVX\DVPS\PCTCP.DVP. These copies can be used
to restore the system in case you have problems.
Step 1, Saving the space occupied by the MOUSE driver:
Create a file called \DVX\SERVER.BAT that contains the following
lines:
MOUSE (or whatever is needed to run your mouse)
SERVER
Then with the DVPMAN program (under DV/X), modify the file
\DVX\STARTUP.DVP. Change the reference to SERVER.EXE to SERVER.BAT.
Also increase the memory size by enough to cover the added size of
the mouse driver (about 30k should be plenty).
Modify your CONFIG.SYS and/or AUTOEXEC.BAT to not load the mouse
driver when you boot your computer.
Restart the computer, and then DV/X... The mouse driver should now
load in the process space of the server.
A 'mem/c' command in a DOS window, should show more memory
available and no copy of the mouse driver.
Step 2, Saving the space occupied by the TCP drivers:
In a manner similar to the above mouse modifications, you need to
create a batch file: \DVX\NETWORK\NETWORK.BAT. This batch file
should contain all the drivers and network programs needed to
support TCP/IP. The last step should be to run the 'nsftp'
program.
For example, my NETWORK.BAT looks like this:
c:\dvx\device c:\ftp\ifcust.sys
c:\dvx\device c:\ftp\ipcust.sys
c:\ncsa\drivers\wd8003e -w 0x62 7 0x280 0xD000
c:\ftp\ethdrv -t 20 -p 26 -u 2
nsftp
Using DVPMAN, modify the \DVX\DVPS\PCTCP.DVP parameters to run
NETWORK.BAT rather than NSFTP.EXE. You should add enough memory
allocation to allow for the extra memory of the network drivers.
In my case a 350K allocation seems to work fine but you may need
more.
Remove all the network drivers and TSRs from your CONFIG.SYS and
AUTOEXEC.BAT, and reboot DOS and DV/X.
If all goes correctly, the DOS windows under DV/X should now
contain none of the network drivers. With this arrangement I am
able to get about 550K available in the DOS window.
The only limitation of this arrangement, is that only Quarterdeck
supplied network programs (telnet, ftp, etc) will work. This is
because the network drivers are running in a different address
space than the DOS windows. The normal FTP software's and Packet
driver's access interrupts are not available in any process other
than the PCTCP process.
STEAL THE GRAPHICS VIDEO AREA
In DESQview Classic, if you don't need graphics, you can use the VREMS
parameter on the QEMM line, and add VIDRAM ON to the DV.BAT file. This
will give you about 64k more for each window. DV.BAT should actually
have a VIDRAM ON before calling DV, and VIDRAM OFF after DV.
Under DVX, David Granz suggests:
If you have a 8514 type video card (I have a ATI Graphics Ultra),
you can get even more space for DOS programs. As an added
advantage, the video performance is much better with this card
(1024x768x256).
Add the 'VREMS' parameter to your QEMM386.SYS line in CONFIG.SYS.
This will allow the \QEMM\VIDRAM program to steal the address space
at A0000-AFFFF for DOS use.
Before starting DV/X, do a "\QEMM\VIDRAM ON" command. Just ignore
the message that DV/X cannot find a graphics card. DV/X will run
just fine without this video ram area. The DOS window will be 64K
bigger.
The only limitation of this, is that graphic programs (ie ones that
take over the entire screen) must not be run. Text programs and
programs that use X windows calls will work just fine.
TRIM DESQVIEW'S USAGE
---------------------
DESQview also sets aside a portion of conventional memory and calls it
``Common Memory''. The amount that DESQview allocates can be decreased
in DVSETUP, but the minimum is about 14K. Certain programs such as DVSI
(a set of shareware utilities by Dan Bodoh) require the amount of
Common Memory to be larger than the minimum. A large Open Window menu
or many ``shared programs'' will also increase the required amount of
Common Memory.
Each window has an area of memory called ``System Memory''. The
amount of System Memory available to a program is controlled by four
separate entries on the Change A Program screen. First, since
DESQview stores the window image in System Memory, decreasing the
number of text pages, and second, decreasing the maximum window
size both decrease System Memory usage. Third, since most programs do
not explicitly use System Memory, the System Memory field can be set
to 1K or 0K. Fourth, the script buffer size can be reduce if there
are no scripts attached to the window.
The pool of System Memory only reduces the maximum window memory for
that particular window, and does not affect the other windows. You can
see this using the Memory Status program. It will report, say, 592K of
conventional memory available, but part of that is used for System
Memory so the actual amount available is less.
Certain DESQview/X programs which use the built in DOS extender can
use the disk as memory. This is called virtual memory. You can
configure the DESQview/X Server to use virtual memory to save on real
memory. This will not increase the maximum window size, but it will
increase the number of programs that you can run simultaneously. To
do so, change the ``maxmem='' line in the \DVX\SERVER\XB16.VMC file
(XC16.VMC for the high-resolution server). This line specifies the
maximum number of kilobytes of real memory that should be used.
Increase the number to to increase speed; or decrease the number to
increase available memory. Note that DESQview/X gets flaky if the
number is less than 1000K or so. The default value of 1000K is
optimized for a 4 Megabyte machine.
QW:161:WINSIZE.TEC, QW:252:MAXWINDO.TEC
Q213: My {9600 or greater} BPS modem drops characters under DESQview. Is high
speed communication possible under DESQview?
A213: Yes, high speed communication is possible. First, you must go into the
DESQview setup program and set ``Optimize Communications'' to Y (see
Q214). If you still lose characters, you may have to get a new serial
board. The characters are coming in too fast for DESQview and your
communications program to process them.
The chip that controls serial communication is known by many names. On
an XT (or an 8-bit I/O board) it is an 8250. Most ATs contain the
16450. The problem with these chips is that they can only buffer one
character at a time, so if DESQview doesn't allow your communications
program to respond fast enough, you'll lose that character.
The solution is to get a board with the National Semiconductor PC16550CN
chip. This chip buffers up to 16 characters, so character loss is less
likely to occur. If you are the handy type, you can even swap your 8250
(or whatever) for the NS16550AN yourself, for the chips are
pin-compatible.
Do not get a 16550 non-A chip. It is an old, buggy chip. Also, Western
Digital makes a 16550 which is rumored to be buggy at speeds of 2400 BPS
or less.
Note that the 16550x will act like an 8250 unless you have software that
supports it. Most communication packages today do support the 16550x.
QW:237:COMMPROG.TEC
Q214: What does ``Optimize Communications'' in DESQview's setup program do?
A214: The cards that you install in your computer use ``hardware interrupts''
to tell the CPU that the card has or needs data. The hardware
interrupts are like grade school students raising their hand in class.
When the teacher recognizes a student with his hand up, that student
can ask/answer a question.
Like many teachers, DESQview has a ``teacher's pet.'' This pet is
hardware interrupt 0. If a bunch of hardware interrupts raise their
hands at the same time, DESQview will always recognize 0 first, then 1,
then 2, and so on.
However, most COM ports use hardware interrupt levels 3 and 4. So by
answering ``Y'' to ``Optimize Communications'', you force interrupt
level 3 to become the teacher's pet. DESQview will then recognize the
interrupts in this order: 3, 4, 5, ... 0, 1, 2. Rather than answering
``Y'', you can put in any interrupt number you prefer. For example, if
you answer ``5'', DESQview will recognize the interrupts in the order
5, 6, 7, ... , 0, 1, 2, 3, 4.
Setting ``Optimize Communications'' to ``Y'' can reduce or eliminate
dropped characters in communication programs (see Q213).
8086/8088 machines have 8 available hardware interrupts (0-7), while
80286+ machines have 16 (0-15).
QW:251:OPTCOM.TEC
Q215: Why doesn't ANSI.SYS work in DESQview?
A215: ANSI.SYS doesn't work inside DESQview because DESQview takes control of
all the screen writes. Quarterdeck has provided two
solutions. Provided with DESQview is DVANSI.COM. This program
can be in the window in which you need ANSI.SYS. The other
solution is to load your ANSI device driver in a DESQview window with
the DEVICE.COM loader included with DESQview and DESQview/X. Since
the DEVICE.COM solution uses your own ANSI driver, any features
that it has are available to it, including keyboard
remapping. DESQview's DVANSI does not contain the keyboard
remapping features of MS-DOS's ANSI.SYS in order to protect from
ANSI bombs.
QW:110:DVANSI.TEC
Q216: What do each of the four Protection Levels mean?
A216: In ``Change A Program'' or DVPMAN, you can set a program's protection
level. Here are the meanings:
Level 0 means no protection at all.
Level 1 will keep a process from locking interrupts for too long if the
WD parameter is set correctly in QEMM, and your hardware supports it.
Level 2 will bring up an error if a process writes outside of the memory
that DESQview thinks the process owns. If the process attempts this,
DESQview will ask the user if the process should be aborted,
unprotected, or be allowed to continue (but remain protected).
Level 3 will keep a process from reading outside of its memory, with a
similar interface as Level 2. It also grabs all interrupt vectors and
complains if the program points the vector outside of its memory
(including back at the original handler) and then calls it. Level 3
will crash Borland's floating point libraries.
If a program crashes with Level 0 it will also crash with Level 3 set,
but you might find out about it a little sooner, and it may prevent the
system from being locked up.
QW:120:PROTECT.TEC
Q217: How can I load two or more shared programs in a window?
A217: In Change A Program or DVPMAN, you can only list one shared program and
its data. To load more than one shared program, you must create a file
which lists the shared programs. Each shared program you want to load
requires two lines in the file -- one for the shared program name, and
one for the shared program data. For example, let's say you want to
load DGNASI.SHR and 1COPY.SHR. Create a text file called SHARED.TXT (or
whatever) with four lines that look like this (the parenthetical
comments should not be added):
DGANSI.SHR (line 1)
blah blah blah (Text that would be in ``Data'' field for DGANSI)
1COPY.SHR (line 3)
blah blah blah (Text that would be in ``Data'' field for 1COPY)
Then, in Change A Program or DVPMAN's "Shared Program" field, place the
name of this text file preceded by the ``+'' sign. In our case, we
would put
Shared Program
Pathname..: +C:\DV\shared.txt
Data......:
If the shared.txt pathname is not specified, it defaults to the
``Default Directory'' path in the DVP. However, the default place to
look for shared programs is always the DESQview directory.
Q218: Why does my remote control program's screen mess up when I
switch windows?
A218: There are programs like pcAnywhere and Carbon Copy that display the
screen of a remote computer on your local machine. These programs work
by reading the display memory of the remote computer, checking what has
changed, and sending that data over the communications line. What is
important for running these programs correctly is that you must be
using QEMM with DESQview, and that "Virtualize text/graphics" must
be set on for the remote control program. If that is not done, these
programs will see parts of the other windows, and send incorrect data.
Q219: Why do some programs complain that an COM port does not exist, while
others seem to find the port without problems.
A219: On the second page of the "Change a Program" information screen, there
is an entry "Uses Serial Ports" in which you can enter "Y", "N", "1",
or "2". If the field is set to "N", DESQview puts a 0 in the offsets of
the BIOS data area that specify the address of the COM ports. If "Uses
Serial Ports" is set to "1" or "2", only the address of COM2 or COM1
respectivly will be hidden. If a program checks the BIOS data area to
determine which ports exist, DESQview can fool it into thinking they
are not there. Many programs ignore the BIOS data area values and check
for the hardware directly. These programs will still run with any value
in the "Uses Serial Ports" field.
Section 3. DESQview Classic - Questions and answers that pertain to
DESQview but not to DESQview/X
Q301: What type of computer system is required for DESQview?
Q302: Does DESQview support Super VGA or video coprocessors?
Q303: Can text and graphics be displayed at the same time with Hercules?
Q304: How do I use two monitors under DESQview?
Q305: What is NOFF.SHP {NOFF.SHR}?
Q306: Why does the mouse pointer disappear after running certain programs?
Q307: What are those files SWAP*.DV in my DV directory? Can I delete them?
Q301: What type of computer is required for DESQview?
A301: DESQview Classic can multitask programs on an 8088, 8086, 80286,
80386sx, 80386dx, 80486sx, 80486dx, V20 or V30.
8088/8086/80286/V20/V30
DVC will run in one of three ways one these machines. For
additional information, get the file DV286.ZIP from SimTel (see
Q7).
(1) If you have true hardware compatible LIM EMS 4.0 (or EEMS)
memory board and are able to disable some conventional memory, DVC
will remap expanded memory to conventional memory addresses to
multitask ``well-behaved'' programs in.
(2) If you use a plug-in memory management chip such as a
All-Charge Card or a SOTA POP card, it will provide the memory
mapping needed to allow DVC to multitask programs beyond 640K.
(3) If you have neither a LIM EMS 4.0 memory card or a memory
management chip, DVC will still multitask as many programs as
possible in the available conventional memory (see Q5).
Besides the memory problem, on a machine less than an 80386 and
without QEMM, DESQview will not be able to run programs in a small
window or in the background if the program writes directly to video
memory (see Q101). If the program has a switch to allow BIOS screen
output, use it, or convince the programmer to make the program
DESQview-aware (see Q202).
80386sx/80386dx/80486sx/80486dx/Pentium
DV386 (or the combination of DESQview and QEMM (see Q101)) and DVX
will multitask programs in all of the available extended memory.
Although DVC can multitask on any machine, the minimum suggested
configuration is an 80386sx with 2 megabytes of memory and QEMM. For
breathing room, at least 4 megabytes of memory is suggested.
QW:195:286.TEC
Q302: Does DESQview support Super VGA or video coprocessors?
A302: Yes and no. When DVC is placing windows on the screen, it cannot use
any of the 132 column modes provided by Super VGA cards. The smallest
text font that DVC and DV386 provides to VGA+ users is 60 rows by 80
columns. Since video support is hardcoded into DVC and DV386, there is
no way to write a video driver for Super VGA cards.
Inside a window, any resolution can be used. The problem occurs when
you switch away from the window and come back. DESQview will corrupt
the window unless it has a resolution of 800x600x16 or less. Except in
rare cases, DESQview cannot handle 256 colors at more than 320x200. A
few cards will reportedly work at 1024x768x16 as well. Note that at
these higher resolutions, ``Graphics Pages'' in Change A Program must
be set to 4.
Q303: Can text and graphics be displayed at the same time with Hercules?
A303: Yes, as long as 90x43 mode display mode is used. If the graphics bleeds
through from the background, you can switch to 80x25 mode.
However, there is no way to detect whether or not the Hercules card is
currently in text or graphics mode if a program switches between these
two modes by manipulating the registers of the card. In this case
DESQview will not notice that the graphics mode has changed. Quarterdeck
has put a utility DVHERC on the distribution disk that is intended to
help users switch to the correct mode in such events. DVHERC is a TSR
program. However DESQview can sometimes be very stubborn and will not
recognize this change. In such cases it will again switch to the wrong
mode as soon as one switches to a different window.
QW:203:DVHERC.TEC
Q304: How do I use two monitors under DESQview?
A304: You can use two monitors only in DVC and DV386. DVX does not support
two monitors.
DVC and DV386 will only control one of your monitors, and by default all
programs will use the monitor that DESQview controls. There are a
number of ways to make programs start up on the ``other'' monitor. Since
you will usually want DESQview to control the color monitor (except
perhaps in the case of a CGA), the following discussion assumes that
DESQview is controlling the color monitor and not the monochrome
monitor.
First, you can use a batch file and include a ``MODE MONO'' statement to
switch the program to the monochrome monitor. Second, you can use the
``initial mode'' field to specify the monitor on which the program will
start (however, this setting is ignored unless you also set ``writes
directly to screen'' to Y and ``virtualize'' to N). By setting the
initial mode to 7, you force the program to use the monochrome monitor
until it explicitly switches monitors. Note that DESQview tends to stop
updating the monochrome screen while the program is in the background if
the program ever switches to the color display (including starting on
the color display with the first method above).
The initial mode can also be set to 21 or 22 for Hercules Graphics mode.
These modes only allow one page of mono graphics (see Q303). Mode 21 is
Page 0 at address B000h, and Mode 22 is Page 1 at address B800h. Hence,
Mode 22 is not available with two monitors (it conflicts with color
video).
Q305: What is NOFF.SHP {NOFF.SHR}?
A305: NOFF.SHR is an older version of NOFF.SHP. So what's NOFF.SHP?
DESQview is the child of an older IBM program called TopView. Because
Quarterdeck wanted DESQview to run all the old TopView programs, they
made DESQview compatible to TopView, in much the same way you can run
programs written for DOS 3.3 in DOS 4.0.
If a program writes directly to the video memory, TopView (and DESQview)
cannot run it in a small window. So IBM allowed programs to be TopView-
aware (similar to DESQview-aware (see Q202)) by giving them ``virtual''
video memory on request. This memory looks like video memory, but
characters written into it do not get displayed on the screen.
Since DESQview is a much smarter program that TopView ever was, DESQview
can automatically update the window from the virtual video memory. But
TopView did not have that ability. The TopView-aware program had to
make another call which would manually update the window from the video
memory.
Quarterdeck wanted to make DESQview look as much like TopView as
possible, so they decided that if a TopView-aware program makes this
call to update the window, then the automatic updating of DESQview would
be turned off.
DESQview can do a better job of updating the window from the virtual
video buffer than *some* programs. So the purpose of NOFF.SHP is to
capture the TopView update call before it gets to DESQview and not let
DESQview see the call. That way, DESQview never turns off the automatic
updating, and your window output is less jerky.
Whether or not you should use NOFF.SHP depends on how the TopView-aware
program updates its screen. If it changes only small parts of the
screen at a time but requests that the entire screen be updated, use
NOFF.SHP. But if the program tells TopView (DESQview) exactly which
part of the screen changed, output may look smoother without NOFF.SHP
because an automatic update doesn't take place until the end of each
program's time slice (see Q208).
Although NOFF.SHP is included in the Quarterdeck-supplied DVP for
Wordperfect, it is not required if you are using a 386 or better and you
turn on text virtualization.
QW:247:SHARED.TEC
Q306: Why does the mouse pointer disappear after running certain programs?
A306: If a DESQview-aware or DESQview-oblivious program (see Q202) uses the
mouse, DESQview must turn off its own mouse handling in that window.
Unfortunately, DESQview cannot detect when the program is finished with
the mouse, so your DESQview mouse pointer will never reappear while that
window has the keyboard.
Q307: What are those files SWAP*.DV in my DV directory? Can I delete them?
A307: They're used by DESQview to store your application when it gets swapped
to disk. If the file's date and time are older than the last time you
started DV then you can safely erase the files. There is no way to
restart an application using a swap file.
Section 4. DESQview/X - Questions and answers that pertain to
DESQview/X but not to DESQview Classic
Q401: What types of programs can DESQview/X run?
Q402: What type of computer is required for DESQview/X?
Q403: Does DESQview/X support Super VGA or video coprocessors?
Q404: How can I write or port X software for DESQview/X?
Q405: What do I need if I want to use DESQview/X's networking features?
Q406: Why don't the tilde(~) and accent grave (`) keys work in my
xterm window when running DESQview/X?
Q407: How do I run a different window manager?
Q408: Where can I find Mosaic for DESQview/X?
Q409: How do I get DESQview/X Mosaic to use the XV viewer?
Q401: What types of programs can DESQview/X run?
A401: DESQview/X will run all DESQview-oblivious, DESQview-aware and
DESQview-specific programs that DESQview Classic will run (see Q102).
In addition, DESQview/X will run programs which have been written for
X-Windows and have been compiled under Quarterdeck's X Toolkit.
DESQview/X will allow a user to interact with other X-Windows programs
running on other (possibly non-DOS) machines on a network.
Q402: What type of computer is required for DESQview/X?
A402: DESQview/X requires an 80386sx, 80386dx, 80486sx, 80486dx or a
Pentium system with at least a 40 megabyte hard drive and 4 megabytes
of memory. Eight megabytes of memory or more is recommended,
especially for development work.
DVX will not run with anything less than a VGA card.
Q403: Does DESQview/X support Super VGA or video coprocessors?
A403: All DESQview/X output is in graphics mode, so it benefits greatly from
Super VGA. Performance is increased significantly with video
coprocessor cards. However, DESQview/X currently supports only a
limited set of VGA chip sets.
DESQview/X 2.1 supports the following SVGA chipsets:
Manufacturer Chipset Number Highest Resolution
ATI 18800 800x600
ATI 28800 1024x768
Chips and Technologies 82C451 800x600
Chips and Technologies 82C452 1024x768
Chips and Technologies 82C453 1024x768
Genoa VGA ET3000 800x600
Genoa VGA 6400 1024x768
Western Digital Imaging PVGA1a, WD90C00, WD90C10 800x600
Western Digital Imaging WD90C11, WD90C31 1024x768
Trident 8800, 8900 800x600 (256 colors
unsupported)
Tseng Labs ET3000 1024x768
Tseng Labs ET4000 1280x1024
Headland Technologies VEGA 800x600
Headland Technologies V7VGA 1024x768
Oak Technology VGA OTI-0X7 1024x768
S3 VGA S3VGA 1280x1024
VESA VESA 1280x1024
8514/a and hardware compatibles and DGIS boards are also supported.
These boards significantly increase video speed (see Q209).
The TIGA interface is not yet supported, but will be in a future
release. However, the DGIS interface is supported.
For reference, here is an incomplete list of video coprocessor cards and
their compatibilities. If you know of any that are not in this list,
please forward the information to aml@world.std.com.
Model Chipset Manufacturer Driver Interface
Desktop AGA 1024 TI TIGA, application
interface level drvr for 8514
ATI 8514/Ultra ATI 8514/A Relies on 8514 drvr
Spectragraphics Squeegee TI DGIS
National Volante AT1000 TI TIGA
SOTA 340i TI DGIS, adapter
interface compatible--8514
Appian Rendition II TI TIGA
ADEX 8514/AT256 Western Dig. 8514/A Relies on 8514 drvrs
Western Digital 8514/A W.D. 8514/A 8514
Hercules Graphics Station
Card GB 1024+2 TI TIGA
NEC Multisync
Graphics Engine TI DGIS
Nth Engine /150 Chips & Technology 8514 relies on 8514
HP Intelligent Graphics Controller 20 TI
TIGA, DGIS
Vermont Cobra Plus TI TIGA, adapter
interface compatible--8514
Artist XJS-1024 TI relies on TIGA
Rasterex Liberty 810AT TI TIGA, adapter
interface compatible--8514
Most TIGA & DGIS have custom drivers for their supported software eg.
WP, HG CAD
QW:148:VGA.TEC, QW:256:XVIDEO.TEC, QW:208:XGA.TEC
Q404: How can I write or port X software for DESQview/X?
A404: X Window programming allows you to write computer-independent
graphics interfaces. You can use some DESQview API programming in
X Window programming, but Quarterdeck has ported only part of the
API to protected-mode X programming.
Quarterdeck makes X Window Motif Toolkits for the following 32
bit compilers; Metaware, Watcom, and DJGPP. These toolkits
replace both the DESQview/X X11 Toolkit and the Quarterdeck
OSF/Motif Development Toolkit.
DJGPP, an MSDOS 386 port of the GNU C compiler is available on the
Internet. Quarterdeck released a DJGPP-compatible X library without
documentation for free with GNU C. The library contains the X11
portion of what they distribute in their commercial toolkits, but
without the Motif libraries. The following files can be
downloaded for FTP from SimTel (See Q203).
readme.dvx DVX X11R5 toolkit readme file, readme first!
qdtkt200.zip DVX X11R5 toolkit clients demos and doc files
qdlib200.zip DVX X11R5 toolkit libraries and header files
Q405: What do I need if I want to use DESQview/X's networking features?
A405: DVX allows you to interact with programs running on other DVX and Unix
machines, if the machines are networked.
Three parts are required on a PC to make this work:
(1) DESQview/X
(2) One of the DESQview/X Network Managers sold by Quarterdeck
(3) A networking protocol stack available from another
manufacturer.
DESQview/X is packaged with a Network Manager that allows you to
communicate with other DESQview/X machines. It requires a Novell
or NetBIOS-compatible network protocol stack (IPX/SPX or NetBIOS
compatible).
To communicate with Unix machines, you must have a TCP/IP
protocol stack that DESQview/X can communicate with. The
following products are compatible:
FTP's PCTCP
HP/Lanman TCP/IP
Novell's Lan Workplace for DOS
PathWay Access (from The Wollongong Group Inc.)
BW-TCP and BW-NFS (from Beame & Whiteside Software Ltd.)
PC-NFS (from Sun Microsystems)
Contact Quarterdeck for more details (see Q102).
It is possible to run SLIP with DESQview/X. FTP's 2.1 and higher have
given good SLIP results with 16550 and slipdrv. Beam & Whiteside,
Wollongong, PC-NFS and Novell's full Lan Workplace 4.1 all support
SLIP.
A freeware/shareware solution for SLIP also exists, but it is not
fully supported by Quarterdeck. You can use slipper/pdether/tcpip.exe
(TCPIP.EXE is free with Quarterdeck's TCP/IP network manager and
Slipper and PDether are freeware or shareware). Once you get this
stack setup to the point that TCPIP loads and works, Quarterdeck can
support you. Quarterdeck doesn't support Slipper/Pdether since they
aren't their products. Check out comp.protocols.tcp-ip.ibmpc for support.
QW:263:DVX2XSYS.TEC
Q406: Why don't the tilde(~) and accent grave (`) keys work in my
xterm window when running DESQview/X?
A406: The dwm window manager usurps the "`" key for a quoting character of
its learn feature. When two "`" characters are typed in a row, dwm
passes one along to the application. Unfortunately, it has to do this
as a synthetic key event. The xterm program by default ignores this
synthetic key events, since they can be a security risk. (The key
events could come from any program on any machine on the network, run
by any user.) DESQview/X version 1.0 also sent the "~" key as a
synthetic key event, probably because it is on the same keycap as the
"`", but version 1.1 does not.
Some Solutions:
Set the resource allowSendEvents to true. This will
either be done by the the xrdb utility, or by adding text to the
.Xdefaults file. This will tell xterm to allow synthetic key events
(and will bring up all of the security problems associated with
synthetic key events.) The "`" key will still be have to be hit twice
for it to appear once.
As of verion 1.1 the quoting character can be changed to any key by
changing the "HOTKEY literal {`}" line in the WM.CFG file. The key can
be changed to something else. (Especially something odd like "HOTKEY
literal {Alt-F12}") Removing or commenting out the "HOTKEY literal"
line will make it default to "HOTKEY literal {`}" Once they "HOTKEY
literal" character has been changed, the "`" key only has to be
pressed once, but the character that you have changed it to will not
appear in an xterm window, and will have to be pressed twice in any
other window.
Run a window manager other than DWM. Since only DWM has the Learn
function, it is the only window manager that has this problem. There
are freely distributable window mangers available for FTP at
qdeck.com. Quarterdeck also sells Motif and Open Look window managers.
Toggle the "Secure Keyboard" option keyboard option before typing the
"`" character. This menu item grabs the keyboard from the X server and
will be the only window that receives keyboard input, no matter which
window is the focus window. In this mode ~ and ` will always work and
will only have to be pressed once to appear.
Q407: How do I run a different window manager?
A407: Create a DVP for your window manager. Open up the file DVX.CFG in
the DVX directory. There will be a number of lines with a keyword,
followed by a space, then a value. Change the line that reads
"client dwm" to "client fvwm" or whatever the name you gave your DVP.
If you name your DVP OLWM.DVP or MWM.DVP, the DESQview/X setup program
will be fooled into thinking that the program is one of the Quarterdeck
supported window managers, and you can use setup to install your
alternate window manager.
Q408: Where can I find Mosaic for DESQview/X.
A408: The FTP site ftp.ncsa.uiuc.edu in the Mosaic/Contrib directory.
Q409: How do I get DESQview/X Mosaic to use the XV viewer?
A409: XV seems to always prepend its current directory to any files
that it is given as arguments, ending with a trailing slash.
Mosaic always passes a full path to the file to XV. This ends up
with XV trying to load a file called /TMP/\TMP\SOMEFILE.GIF
To solve this problem, first make a temporary directory typing
"MD \TMP" at an MS-DOS prompt. DESQview/X programs ported using
the DJGPP compiler and libraries seem to have this path
hardcoded in the executable.
Next make a batch file, XV.BAT that will launch XV.EXE. Make
sure that Mosaic will launch the batch file and not XV.EXE. The
easiest way of doing this is to have the XV.BAT file in the same
directory as Mosaic, but it will work as long as XV.BAT is in
the search path and XV.EXE isn't, or that XV.BAT is in the path
before XV.EXE.
The batch file needs to switch to a directory directly of the
root of the C drive and then execute XV.EXE with a full
path. Something like this:
C:
C:\TMP
C:\DVX\XV\XV.EXE %2 %3 %4 ..%1
The first arguement to the batch file, %1 must have two periods
in front of it. Arguments 2 through four are usually empty. This
will make the filename argument look something like
/TMP/..\SOMEDIR\SOMEFILE.GIF
Section 5. QEMM - Questions and answers about Quarterdeck's memory manager
Q501: What are Exceptions 12 and 13?
Q502: My system won't reboot with QEMM's Quickboot, what can I do.
Q501: What are Exceptions 6, 12, and 13?
A501: An exception 6, 12 (or 13) is caused by the program you are
running doing something that it is not allowed to do on a 80386
while in Virtual 8086 (V86) mode. Since QEMM is the 386 ``control
program,'' it can only report the error caused by the user
program. The main cause is operand wrapping past the last address
in segment, 65,535 (FFFF in hex)
Exception 6 is an invalid opcode error. A bug in early versions of
QEMM 7.5 (a date stamp older than 11/22/94) caused exsessive
exception 6 erorrs. This can be solved by running QPAT3.EXE, a
patch program, on QEMM386.SYS. This patch can be retrieved from
Quarterdeck's regular electronic distribution sites. (See Q102.)
Note that exceptions are only reported by QEMM, and are not
caused by either QEMM or DESQview. They are caused by old
programs that assume they are running on an 80286 or less; or by
a program that ``crashed''.
From the INTEL ``80386 Programmer's Reference Manual,''
PART III - COMPATIBILITY
chapter 15, VIRTUAL 8086 MODE
Section 15.6 DIFFERENCES FROM 8086
Stated ``reasons'' 6, 7 & 8
(pages 15-10 & 15-11)
Quoting from the INTEL manual:
15.6 DIFFERENCES FROM 8086
In general, V86 mode will correctly execute software designed for
the 8086, 8088, 80186 and 80188. Following is a list of the minor
differences between 8086 execution on the 80386 and on an 8086.
... (only those causing exception 12 or 13 are listed)
6. Redundant prefixes.
The 80386 sets a limit of 15 bytes on instruction length. The only
way to violate this limit is by putting redundant prefixes before
an instruction. Exception 13 occurs if the limit on instruction
length is violated. The 8086/8088 has no instruction limit.
7. Operand crossing offset 0 or 65,535.
On the 8086, an attempt to access a memory operand that crosses
offset 65,535 (e.g., MOV a word to offset 65,535) or offset 0
(e.g., PUSH a word when SP = 1) causes the offset to wrap around
modulo 65,535. The 80386 raises an exception in these cases -
exception 13 if the data segment (i.e., if CS, DS, ES, FS, or GS is
being used to address the segment), exception 12 if the segment is
a stack segment (i.e., if SS is being used.)
8. Sequential execution across offset 65,535.
On the 8086, if sequence execution of instructions proceeds past
offset 65,535, the processor fetches the next instruction byte from
offset 0 of the same segment. On the 80386, the processor raises
exception 13 in such a case.
In order to fix an Exception 13, you can try to load the program causing
it into a different area of memory. To do this, try increasing your
FILES or BUFFERS, or loading some TSRs low rather than high, etc.
However, the best solution is to contact the programmer. Another
possible solution is to increase the amount of memory specified in
Change A Program.
QW:142:EXCEPT13.TEC, QW:232:EX13FLOW.TEC
Q502: My system won't reboot with QEMM's Quickboot, what can I do?
A502: Add to your QEMM line of your CONFIG.SYS file "BV19" (without the quotes)
This will cause QEMM to use INT19 to reboot. Another option is to use
the QSETUP program to disable QuickBoot.
Section 6. Contributors
A large part of the format and content of this document is due to
the previous FAQ editor, Dan Bodoh. He really deserves most of
the credit for this FAQ.
The following people have sent suggestions for entries in the
FAQ. On behalf of all the readers of comp.os.msdos.desqview, I
thank you.
If you see your name here and you didn't actually send me something, I
probably stole a posting of yours for the FAQ.
----
The information in A7 on access to SimTel is from regular postings to
the Usenet newsgroup comp.binaries.ibm.pc.archives by Keith Petersen.
The electronic contacts in A19 are from the QOS note ``CONTACT.TXT''
The international addresses in A19 are from "DESQview User, The
Quarterly Journal for PC and DOS productivity", Issue 4, Spring 1992 and
were sent to me by Klaus Hartnegg.
Most of A20 was copied from Quarterdeck's tech note ``DVBOOK.TEC''
Some of A25 is from Appendix B of the FOSSIL driver manual sent to me by
Stephen Lee.
Information in A8 and A30 was grabbed from Quarterdeck press releases.
The White Pages cross references were provided by Michael Bolton of
Quarterdeck Canada.
alheid@pittpa.cray.com (Greg Alheid)
A15*,A17,A20
aml@world.std.com (Andrew M Langmead)
anasaz!crow@asuvax.eas.asu.edu (Jerry Crow)
arnd@zeus.informatik.rwth-aachen.de (Arnd Gehrmann)
arr@stat.ph.albany.edu (Andrew A. Reilly)
burge@qdeck.com (Bill Burge)
Carl Anderson 1:106/7674
chaz@chinet.chi.il.us (Charlie Kestner)
76711.657@CompuServe.COM (Chris La Mantia)
danb@bunt.sps.mot.com (Dan Bodoh)
dave@monitor.larc.nasa.gov (Dave Hinde)
Dave Osborne 1:123/27.0
dave.williams@chaos.lrk.ar.us (Dave Williams)
docw@qdeck.com (Doc Williamson)
don@qdeck.com (Don Bailey)
dj@ctron.com (DJ Delorie)
dvss!jtroy@udel.edu (Jay Troy)
em21@cunixf.cc.columbia.edu (Eben Moglen)
esiever@world.std.com (Ellen C. Siever)
granz@junkyard.uucp
hartnegg@ibm.ruf.uni-freiburg.de (Klaus Hartnegg
hutch@mhd2.pfc.mit.edu (Ian Hutchinson)
january%polari@uunet.uu.net (Jamie Pehling)
jcorr@splash.princeton.edu (Jim Orr)
jerry@rat.nrl.navy.mil (Jerry Nash)
jmaynard@oac.hsc.uth.tmc.edu (Jay Maynard)
john@stanton.cts.com (John Goodman)
karl.springer%greatesc.com@kaiwan.com (Karl Springer)
kemp@convex.com (Phil Kemp)
kneply@mozart.cs.colostate.edu (Jim Knepley)
lsuc!ontmoh!rwh@cs.toronto.edu (Russell Herman)
Mark Hockings 1:102/824
marsha@test120.qdeck.com (Marsha Ailing)
Michelle at Quarterdeck Canada
mikebat@clark.net (Mike Batchelor)
mtbb136@ms.uky.edu
mvjrs@mvgpk.att.com (Rick Sladkey)
nickw@syma.sussex.ac.uk (Nick Watkins)
noesis@ucscb.ucsc.edu (Kyle ?)
peterson@csc.ti.com (Bob Peterson)
phealy@swift.cs.tcd.ie (Paul ?)
ralf@cs.cmu.edu (Ralf Brown)
reisert@mast.enet.dec.com (James J. Reisert)
rreiner@nexus.yorku.ca (Richard Reiner)
s2942275@techst02.technion.ac.il (Yaniv Golan)
Saar Blitz 2:403/139.0
schuster@panix.com (Mike Schuster)
seant@ratsys.com (Sean True)
senf_ltd@uhura.cc.rochester.edu (Stephen Lee)
smsmith@magnus.acs.ohio-state.edu (Stephen Smith
spit@neuro.duke.edu (Mike Burdick)
support@qdeck.com (Gary Rich)
support@qdeck.com (Doc Williamson)
stern@ims.alaska.edu (Pete Stern)
steveg@orl.mmc.com (Steve Gabrilowitz)
theall@gdalsrv.sas.upenn.edu (George A. Theall)
thuben@kiera.ericsson.se (Thomas Nilsson)
valley@gsbsun.uchicago.edu (Doug Dougherty)
w8sdz@SimTel.Coast.NET (Keith Petersen)
wiget@switch.ch (Margel Wiget)
4carroll_j@spcvxa.spc.edu (Jim Carroll)
--
Andrew Langmead
Last-modified: 1995/12/4