Document 1602
Windows 3.0

Description:

 Overview

This document tries to address many of the questions that we
have received regarding Windows compatibility. DR DOS 6 is
compatible with Windows 3.0 and 3.0A in all 3 modes. DR DOS 6 is
a feature rich operating system and many of the utilities that
are a part of DR DOS

have special configuration requirements when running with
Windows. This document will address DR DOS 6 installation and
those utilities most commonly used with Windows and how to
configure them for optimum performance. Also because end-users
will have various hardware

configurations we will also discuss what type of hardware
requirements are necessary to properly run Windows. Finally,
there will be a list of the most common problems detected and
how to correct them.

 Windows' Requirements

Microsoft Windows 3.0 is designed to run on only 286, 386SX, 386
and 486 computers. It has 3 modes of operation. The most basic
is called Real Mode. This mode will run with only 640K of RAM
but it will also make use of EMS memory if available. The EMS
memory can be provided

with either a third party memory manager or via EMM386.SYS. Real
Mode is also used to create or delete Windows permanent swap
files which we will discuss later. Windows Standard mode
requires there be at least 1 Megabyte of total memory and the
presence of an XMS memory manager such as HIDOS.SYS or
EMM386.SYS. Enhanced Mode will only run on a 386SX or better CPU
and requires a minimum of 1 Megabyte of XMS memory to function.
If you are not sure what mode you are using you can find out by
selecting the HELP menu from the Windows Program Manager. Select
ABOUT PROGRAM MANAGER and you will see a dialog box that
indicates the mode you are currently using.

 What Selections to Make in Install

The DR DOS Install program will have some sections that you will
need to configure carefully if you are going to run Windows. 

The MemoryMAX section of Install will first ask if you would
want Memory Support. We recommend that you say YES unless you
intend to use a third party memory manager such as QEMM or 386
to the MAX. Near the bottom of the screen there will be a couple
of asterisks (*). These indicate the type of CPU that you have
and the amount of extended memory the Install program detects on
your computer. The total amount of extended memory will be
critical for running Windows so we will make recommendations for
computers with 2, 3 and 4 Megabytes.  Systems with more than 4
Megabytes can use recommendations for 4 Megabyte computers.

The next screen on 386 and 486 machines will have some important
selections. There will be a line concerning LIM 4.0 support. The
LIM 4.0 EMS support is not required by Windows except for Real
Mode. If you do not have any DOS applications that require EMS
memory, select NO. If you use Windows Enhanced Mode as a Shell
for running your DOS programs, Windows itself can provide your
DOS applications with EMS memory, you can also say NO to EMS
Support (see the Windows documentation on how to PIF edit a DOS
application for EMS support). Saying NO to EMS support will give
you an additional 64K of Upper Memory (the size of the page
frame) for use in Hiloading drivers. If you have applications
that require EMS memory and you do not use Windows Enhanced Mode
as a DOS Shell, select YES and then enter the amount of EMS
memory that you wish to create. DR DOS's EMM386 uses extended
memory as a pool for use as both XMS and EMS memory. The amount
of EMS memory you specify will cause EMM386.SYS to convert all
of the memory pool into Extended via XMS, and will then lend
from that XMS memory for EMS to use up to the amount specified.
Also on this screen will be a line for support of Windows in
Standard Mode. This switch will have serious repercussions on
available DOS memory so a YES answer is not always appropriate.
EMM386.SYS cannot provide upper memory support and run Windows
in Standard Mode. This is a Windows limitation. If you choose
YES, EMM386 will disable all upper memory. You will not be able
to Hiload device drivers although you can still use the High
Memory Area (HMA) for relocation of DOS and its structures. If
you regularly use Windows in Standard Mode you should say YES
here. There will be an impact on available conventional memory
but since Windows will use your total system memory it will not
affect Windows applications. DOS applications, however,  may be
impacted. If you regularly use Windows in Enhanced Mode or Real
Mode you can say NO.

Note: Some Windows applications use Standard Mode to install
from. If you have an install program that suddenly aborts when
it tries to run Windows it may be trying to use Standard Mode.
Go Back through SETUP and say YES to using Standard Mode. 

For both 286 and 386 installations you will be asked if you want
to use Spare Video Memory. This is a special switch for
HIDOS.SYS and EMM386 that will take video memory addresses and
assign them to  conventional memory. This means that you can
only run text based applications if you say YES to this option
and then run MEMMAX +V. We recommend that you say NO to this
option as Windows will not run if video memory is used for DOS.

The DiskMAX section of the Install program can also have an
impact on Windows performance. Drivers such as SuperPCK and
VDISK can run from extended memory so care must be exercised in
deciding how large to create these systems. 

VDISKS

A VDISK can be used for the storage of Windows temporary files
and is used in this manner to speed up Windows performance.
Because Windows uses such large temporary files a VDISK  must be
several megabytes in size or Windows will fail when the VDISK is
full. It is therefore not recommended for computers with less
than 8 megabytes of RAM. If you use a VDISK for other purposes
then all you need do is make sure that you have enough memory
left to run the correct mode of Windows. Typing "MEM" at a DOS
prompt will give you the total amount of available conventional
and XMS memory. Remember that Windows Enhanced Mode will require
at least 1 Megabyte of XMS memory available. Computers with only
2 Megabytes or less of total memory should not use a VDISK if
they wish to run Windows in Enhanced Mode.

SUPERPCK

SuperPCK is probably the most needed and most commonly
misconfigured DiskMAX application for use with Windows. Windows
users with 2 Megabytes or less of total memory who wish to run
in Enhanced Mode should not use SuperPCK because of their
limited memory resources. 

When you say yes to SuperPCK you will see an additional screen
with some configuration selections. Windows users should always
say YES to the selection that asks if you run Windows in
Standard or Enhanced Mode. This will configure SuperPCK to use
XMS memory instead of EMS memory and will place the PCKWIN.SYS
driver in the CONFIG.SYS. The PCKWIN.SYS driver is mandatory for
running Windows in Standard or Enhanced Mode with SuperPCK. The
next selection will be whether or not to use Automatic Memory
Allocation. If this selection is YES (default) then SuperPCK
will use all of the available XMS memory and will lend half of
that amount back to Windows. We recommend that this option
should only be used on computers with 4 or more Megabytes of
total memory. If Automatic Allocation is YES then the next line
will ask for an amount of RAM to reserve. This option will
reserve the specified amount of memory for use by other
applications and prevent SuperPCK from using this memory.
Lending is still valid. On computers with less than 4 megabytes
total memory or for machines where users wish to limit the size
of the cache Automatic Memory Allocation should be NO. This will
change the next couple of options you see on the screen. You
will now see selection boxes for the Cache Size and the Lending
Amount. Users with 3 megabytes systems will be very close to the
minimum needed to run Windows in Enhanced Mode. Make sure the
size of the cache and the lending amount give you enough memory
to run in the mode that you use. 

For example: A 4 Megabyte computer can use SuperPCK with a 3
Megabyte cache size and 2 megabytes of lending. This means that
when Windows runs the cache will be reduced to 1 megabyte
(because of lending) and Windows will have 2 megabytes of XMS
memory to use (the 1st megabyte is DOS conventional memory).

Examples:

SUPERPCK /EM /R:1024

These parameters instruct SuperPCK to use all XMS memory less 1
megabyte. On a system with 3 megabytes of XMS memory Superpck
will use 2 megabytes. Half of that amount (1 megabyte) will
still be available for lending. This gives Windows a total of 2
megabytes to use. Lending can be turned off with the switch /L-.

SUPERPCK /EM /L:1024

These parameters will instruct SuperPCK to lend 1 megabyte of
memory no matter what the size of the cache is. This parameter
could conceivably be more or less than half of the total cache
size (default).

SUPERPCK /EM /S:1024

These parameters will restrict the size of the cache to only 1
megabyte. Any additional XMS memory will not be used by the
cache. Half of the cache is still available for lending unless
the /L- switch is used.

SUPERSTOR

We cannot emphasize enough the importance of not having Windows
permanent swapfiles on a SuperStored drive. If you use a
permanent swap file make sure that you leave 5 to 10 megabytes
of uncompressed disk space for this file. 

Note: The Windows permanent swap file does not have to be
located on the same drive as Windows. To find out if you have a
permanent swapfile follow the steps in the example below.

Example:

	1) Start Windows in real mode : WIN /R
	2) From the Program Manager select the FILE menu.
	3) select RUN
	4) Key in SWAPFILE

If a permanent swapfile exists you will see a dialog box asking
you if it is ok to delete the permanent swapfile. If one does
not exist the dialog will ask you if you want to create one. It
is important to remove permanent swap files before compressing
your disk. You can then recreate the swapfile on the
uncompressed drive after the SuperStor drive has been created.

Remember to leave enough uncompressed disk to create the
permanent swap file. The SuperStor default is about 500k which
is not enough for a permanent swapfile. We would also recommend
that Windows temporary files be created on the uncompressed disk
(the environment variable TEMP determines where Windows will
create its temporary files). Endusers should DISKOPT their drive
fairly regularly to remove any free spaces created when the
temporary swap files are deleted.

 Getting the Most From Windows

End-users with 2 megabyte systems should also refrain from
loading DOS into High Memory if they wish to run in Enhanced
Mode. Since Windows requires 1 megabyte of XMS memory to run in
Enhanced Mode you cannot use any of the HMA. To keep DR DOS 6.0
out of the HMA you will need to:

1)  Make sure that the /MH option is not used on any of the DR
DOS 6.0 commands that support it.  This includes SHELL, SHARE
and DELWATCH. Use the /MU option instead on these files. If no
switch is used then DR DOS will try to locate them in the
highest memory position by default. This means that you must use
the /MU switch on these commands to keep them out of the HMA.

2)  Make sure that the HIBUFFERS command is not used in the
CONFIG.SYS file.  This Command will use the HMA even if the
Kernel is not put there with /BDOS=FFFF. Use the command BUFFERS
instead. 

3)  Make sure that the /BDOS option reads: /BDOS=AUTO. 

Using these switches will still enable an end-user to move DR
DOS structures outside of conventional memory while using
EMM386. However, there is a trade-off. EMM386 does use some of
the XMS memory as overhead and on a machine with 1 megabyte of
extended memory this means that you will have about 800-900K
available as XMS. You can force Windows into

Enhanced Mode by keying in "WIN /3" on the command line but
application speed may be reduced due to additional disk access.
If you feel it is absolutely imperative that you have 1 megabyte
of XMS memory you can use HIDOS.SYS instead of EMM386.SYS with
the parameter /B=AUTO. This will give you 1 Megabyte of XMS
memory if you use the 3 steps outlined above.

Users with 3 megabyte system will be very close to the minimum
needed to run Windows in enhanced mode but they should be able
to use a small cache. VDISK would not be recommended. Use MEM
and SUPERPCK /P to determine the total amount of XMS memory
available. The SUPERPCK /P is the parameters listing of SuperPCK
and the amount available for lending will be listed under the /L
parameter. Make sure that the lending amount available is enough
to enter the correct mode. 

Users with 4 megabyte systems need to be careful about any
device drivers loaded that use extended memory of any type such
as VDISKs. This will impact on the amount of memory available
for SuperPCK to use and the amount it is able to lend. Systems
with greater than 4 megabytes of memory will probably always
have enough XMS memory available but again

other devices using any type of extended memory need to be
considered. Also bear in mind that the less memory that is
available to Windows means that fewer applications will be
running before it has to move to a swapfile. Going to a swapfile
usually means a decrease in the speed of

Windows. We have noticed that a good balance on performance is
achieved when Windows has 2 megabytes or more of XMS memory.

 Common Problems

 - Windows begins but not in the mode that I was using
previously.

First check available memory with the MEM command. Windows in
Enhanced Mode will require 1024K (1 Megabyte) of available XMS
memory to run. 

If you are unable to enter Standard Mode make sure that MEM
indicates that you have no EXTENDED memory available. If you do
then you are not using an XMS memory manager and one is required
for Enhanced or Standard Mode. Make sure that you have
HIDOS.SYS, EMM386.SYS or a third party XMS memory manager in
your CONFIG.SYS file.

If you are using SuperPCK the command "SUPERPCK /P" will give
you a listing of the parameters that are currently in use. The
/L command will indicate the total amount of memory available
for lending, the amount currently lent and the amount remaining
to be lent. Make sure that the amount remaining is enough for
the mode that you are trying to enter. Also, make sure that the
cache is using XMS memory. This will be indicated by the /EM
option.

If you are trying to use Enhanced Mode, Windows may not have
enough memory and is trying to start in Standard Mode. Unless
you have the /W option in EMM386.SYS Windows will not be able to
run Standard mode and will abort. Try placing the /W switch in
EMM386 and see if Windows starts. If it runs in Standard Mode
then you need to use the suggestions listed in the previous
discussion to find out why you are not entering Enhanced Mode. 

If the /W switch does not work check to see if your Windows TEMP
directory has any files that begin with "~" and have the
extension .SWP. If you do and you are not currently running
Windows then delete them. These files are Windows temporary
files and should have been deleted when you quit Windows. 

If you are using a permanent swapfile this file may have been
corrupted. Try deleting the file and then creating a new one. 

 - Windows runs but it seems much slower than before.

Make sure that you are running in the correct mode. Use the
ABOUT PROGRAM MANAGER dialog box on the Windows HELP menu to
determine what mode you are using. If you are not in the correct
mode use the above tips to determine why not.

Windows may be in the correct mode but you do not have enough
XMS memory remaining and Windows is having to use swapfiles. Use
MEM to find out your available XMS memory. If the figure is very
near the minimum remember that DR DOS has several utilities that
can use XMS memory. You may wish to change the size of a VDISK
or cache to allow Windows to use more of your available RAM.

If you are using SuperPCK try increasing the lending amount (/L)
or limiting the size of the cache (/S).  Also SuperPCK should
not be used with VERIFY=ON in AUTOEXEC.BAT. You should use
VERIFY=OFF.

 - When I start Windows a lot of strange characters appear on
the screen and then it locks or drops back to DOS.

This one is unusual in that it generally happens on a SuperStor
drive (or any other disk compression software that swaps disks)
with a 3rd party memory manager. SuperStor has a utility called
DEVSWAP.COM that swaps DOS drive letters around. This is so that
if you compress a boot disk the applications that you have will
still be installed to drive C: rather than the drive that was
created by SuperStor. SuperStor boot disks will have an
uncompressed segment where DOS can load from. This uncompressed
drive will also have a file called DCONFIG.SYS. If you place
your memory manager in the DCONFIG.SYS SuperStor will be able to
move a portion of itself into upper memory. Caution: Do not try
to HILOAD the entire SuperStor driver (it can relocate itself
and only portions of it may go into upper memory). Windows will
reinitialize a memory manager as it starts. To do so it will
look for the driver on the drive from which it was originally
loaded from. In the case of a swapped drive though, the driver
may no longer be there and Windows will abort. This can be a
confusing issue so here is a step by step sequence.

1. A memory manager is loaded from C:\ (uncompressed segment of
the disk)
2. The SuperStor driver is loaded creating a drive D:
(compressed)
3. DEVSWAP.COM is run. This turns the drives around making
uncompressed drive C: into drive D: and compressed D: into C:
4. Windows is run. As it initializes it looks for a memory
manager in C:\ (which is where it was loaded in step 1) but the
memory manager is no longer there. It is now in drive D: because
of the swap. Windows aborts.

The solution to this is straightforward. Copy the memory manager
into the same directory on the compressed drive that you loaded
it from in the uncompressed drive. In the case above have a copy
of the memory manager in both the compressed and uncompressed
root directories ( C:\ & D:\ ). 

This situation does not generally occur with the DR DOS
utilities HIDOS.SYS and EMM386.SYS because the DR DOS Install
program makes sure that the driver is located in the DR DOS
directory on both drives.

-I am experiencing difficulty shelling to DOS from Windows. It
either locks or I get a message that I am out of environment
space.

Check your environment from DOS by typing "SET". There should be
a variable called COMSPEC and it should point to the either the
root directory (preferred) or to the directory where DR DOS
files are located. On a network this variable may point to your
network DOS directory. Make sure that this is the correct
directory and that DR DOS is located there. Check the SHELL
statement and make sure that there is a /P statement and that an
environment has been set ( /E:). Make sure that the environment
size is large enough. Windows may need a fairly large
environment size if you run several applications at the same
time and it does add lines to the environment. It is not
necessary to have a COMSPEC line in your AUTOEXEC.BAT with DR
DOS as the shell statement will insert one.

If a third party memory manager is in use it is possible to
receive an error loading a second command processor when you
relocate COMMAND.COM to upper memory. Try loading COMMAND.COM 
in conventional memory.

There may also be a TSR that is interfering with loading another
command processor. Try removing TSR's from memory to see if you
have a conflict.

If you have a large environment and still get the message "Out
of Environment Space" you can edit the properties of the DOS
PROMPT Icon and put a /E:(# of bytes) parameter in the command
line. Editing the properties of the DOS PROMPT Icon can also
help to eliminate the message "COMMAND.COM NOT FOUND". Windows
does not place the full path on the filename. The command line
only shows "COMMAND.COM". If you change that to be
"C:\COMMAND.COM", for example, Windows will not use the DOS path
to locate the file. This can also alleviate any message about
"INVALID COMMAND.COM". This message is usually due to the fact
that you have another DOS's command interpreter somewhere in
your path.


Final Words

An update to DR DOS 6.0 is currently being sent to all
registered users. If you are still having conflicts with getting
Windows to run with DR DOS you may need this update. To
determine if you have the update already (the updated files are
combined with DR DOS as we manufacture it) look at the date of
your COMMAND.COM. A date of December 1991 or later means that
you have the update.
