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.