ID:D5 DOS 5 and Quarterdeck Products Quarterdeck Technical Note #200 by the Quarterdeck Compatibility Dept. DOS 5 AND QUARTERDECK PRODUCTS The shipping versions of all Quarterdeck products are essentially compatible with DOS 5. Some shipping Quarterdeck products have already been modified with DOS 5 compatibility in mind; others will contain changes in future releases to enhance DOS 5 support. DOS 5 contains a number of enhancements over previous versions. Among the most notable features is more advanced memory management - specifically, the ability to create and use DOS "High Memory" regions above 640K. These high-memory regions can be used for loading resident programs, drivers and parts of DOS itself. In many ways, the facilities for managing memory, which are built into DOS 5 are similar to those, first made available to users of DOS 2.x, 3.x and 4.x by version 4.10 of QEMM-386, released in the spring of 1988. QEMM-386, which is now at version 5.13 has evolved considerably from that original product, incorporating improvements with each new version. These improvements have progressively resulted in more available memory for the user, higher reliability and enhanced ease of use. Quarterdeck also makes this technology available to users of 8088 and 80286 computers with EMS 4 or Shadow RAM, through its QRAM and QEMM-50/60 products. While the memory management features of DOS 5 represent an advance for DOS, using Quarterdeck's memory managers still retains significant advantages for most users. The differences between the current release of Quarterdeck memory managers and those built into DOS 5 are as follows: 1) The combined size of DOS 5's memory managers (HIMEM.SYS and EMM386.SYS) is 8.4 to 10.4K. QEMM-386, provides the facilities of both these drivers in 2.4 to 3.4K. Therefore, even with optimally configured DOS memory managers, QEMM should retain a 7K advantage below 640K. 2) QEMM-386 typically provides 96K MORE High RAM by default than The DOS 5 memory manager on non-PS/2 systems, and 32K MORE by default on PS/2 systems. The DOS 5 memory manager allows these areas to be included manually, but this requires some expertise. 3) DOS 5 has no equivalent to Quarterdeck's Manifest program. Manifest is a memory analysis program which currently is included FREE, with QEMM-386. It provides extensive information about the computer it is running on and is an invaluable tool when optimizing a system or diagnosing a memory problem or conflict. 4) The DOS 5 memory manager has no OPTIMIZE program to automatically load TSR's and device drivers into the optimum regions of upper memory. Novice users may experience considerable difficulty achieving good results from the DOS 5 LOADHIGH program, but even advanced users will appreciate the speed and accuracy with which OPTIMIZE sets up a system. 5) The DOS 5 memory manager provides no Analysis feature. QEMM's Analysis is an extremely useful tool, that can be used to determine the areas of high memory that can safely be used, when the memory manager cannot make this determination on it's own. Analysis also lets QEMM-386 users reclaim unused addresses in the system ROM and in other areas in high memory -- a great advantage to memory-hungry users. 6) The DOS 5 memory manager can't map ROM's into faster RAM. QEMM-386 has the option of mapping ROM's into fast RAM -- a feature which often results in substantially better performance, especially where screen update speed is important. 7) The DOS 5 memory managers have no facility to sort memory. On machines where some sections of memory runs slower than other sections, QEMM-386 sorts the memory so that the fastest memory will be used first. 8) The DOS 5 memory manager cannot manage ShadowRAM or Top Memory, a feature QEMM-386 users on limited-memory systems depend heavily upon. Many one-meg systems turn 384K of the first megabyte of memory into ShadowRAM or Top Memory. This memory is unavailable when using the DOS 5 memory managers. 9) Microsoft Windows 3.0 Standard mode won't run under the DOS 5 memory manager when the memory manager is active (in virtual 8086 mode), for example when using a disk cache. QEMM-386 can run Windows 3.0 in all three modes: Real, Standard or Enhanced, whether or not QEMM-386 is active. 10) The DOS 5 memory manager provides no control over the region of High RAM that can be used to load programs high. This means that even expert users may be unable to use High RAM efficiently in situations where TSR's and drivers must be loaded in a specific order. The Quarterdeck LOADHI programs allow TSR's or drivers to be directed to specific high memory locations, giving complete control to the user. Of course, as mentioned before, this feature is used expertly by the OPTIMIZE program in order to provide the optimum configuration. 11) On PS/2's and other microchannel systems, QEMM-386 can automatically detect the addresses used by any adapter listed in our MCA.ADL file. This is especially valuable on systems with adapter RAM (used by many network cards, among other adapters). Adapter RAM can be particularly hard for 386 memory managers to detect. The DOS 5 memory manager has no such feature. As the addresses used by network cards vary from machine to machine and card to card, QEMM-386's MCA.ADL file can save considerable work for network administrators in companies with large installations of PS/2's or microchannel compatibles on networks. Users of PS/2 machines which are not on a network will also benefit from this "ease of use" feature. 12) DOS 5 has no equivalent for the VIDRAM utility, which allows users to extend conventional memory on EGA/VGA systems that aren't using EGA/VGA graphics. 13) The DOS 5 memory manager can't increase the size of conventional memory on monochrome, Hercules, CGA, and 512K systems. QEMM-386 allows DOS memory to be expanded beyond arbitrary limits, such as 512K or 640K, where there is no installed hardware device which would block this expansion. 14) DOS 5.0 provides no software for managing Upper Memory Blocks (UMBs) on 8088 or 80286 machines with EMS 4 or shadow RAM. Quarterdeck's QRAM and QEMM-50/60 provide a path for users of these machines to use "LOADHI" technology (Quarterdeck's or DOS 5's), while maintaining an interface which is consistent with 386 and 486 machines which are running QEMM-386 and DOS 5, or earlier versions of DOS. 15) QEMM-386 is required to support DESQview 386. While DESQview can run with the DOS 5 memory managers, as it can with other EMS drivers, only by using QEMM-386 can you get the special features of DESQview 386 which provide for memory protection and the multi-tasking of "ill-behaved" DOS programs. UPGRADING - THE EASY PATH If you are installing DOS 5 on a system that already has QEMM or QRAM installed, simply leave the Quarterdeck memory managers in place and run the DOS SETUP program. SETUP will install your DOS upgrade and create an UNINSTALL disk to use if you decide to go back to your old DOS. SETUP typically makes two changes to your CONFIG.SYS file. It places a "DEVICE=SETVER.EXE" statement at the beginning of your CONFIG.SYS (before QEMM or QRAM) and puts "DOS=HIGH" at the end of the CONFIG.SYS. It will also put a "SHELL=COMMAND.COM statement in the file if there is not one already. For our purposes, you can leave that, "as-is". If you like, you can move the line which loads SETVER.EXE below the line that loads QEMM-386 (or QRAM) and run OPTIMIZE. OPTIMIZE will take care of loading SETVER high. The default size of SETVER is .4K, so even if you leave it alone, it will not make a big impact on your memory. Of course, if you don't have any programs that require it (run SETVER with no parameters to see the list), you can take it out entirely. If you are running DESQview, remove the "DOS=HIGH" from the end of the CONFIG.SYS file. DESQview can use the high memory space and will use more of it than can DOS, so you are generally better off removing the statement. If you are not running DESQview, you may leave "DOS=HIGH" in place. If you are upgrading from DOS 2 or 3 and have the statement "BUFFERS=1" in your CONFIG.SYS, you should change it to "BUFFERS=15" (or whatever number of buffers you desire). Then remove the line which loads "BUFFERS.COM" from your AUTOEXEC.BAT, and re-run OPTIMIZE to optimize your system. The BUFFERS.COM program cannot support DOS 5 style buffers and without this change, you are likely to experience a system slowdown when BUFFERS.COM fails to load additional buffers. At this point, you are done and your system should be optimized. DO NOT bother "going through the optimize procedures listed in the DOS 5.0 manual", as suggested by SETUP. QEMM's LOADHI and OPTIMIZE procedures have already done this for you. Specifically, you should avoid the use of the DOS=UMB parameter. While this parameter is not incompatible with Quarterdeck memory managers, it makes high memory unavailable to our current LOADHI programs. In a "best case scenario" you will lose 7K in DOS, using DOS 5's "loadhigh" features. In a "worst case scenario", it could be much more. If you have any questions about whether your system is optimized or if you have added or subtracted any TSR's or drivers during the upgrade, check the "Hints" given by Manifest and re-run the OPTIMIZE program. SPECIFIC COMPATIBILITY ISSUES The following are specific compatibility issues related to current versions of Quarterdeck software and the use of DOS 5. 1) For QRAM or QEMM 50/60 users who are using QEXT.SYS: If you are a DESQview user, use the QEXT.SYS that came with your software and do not use the "DOS=HIGH" option. As mentioned earlier, DESQview makes use of more efficient use of this memory than DOS. If you are not a DESQview user and wish to use the DOS=HIGH option, use DOS's HIMEM.SYS to provide the High Memory Area for "DOS=HIGH" or obtain a version of Quarterdeck's QEXT.SYS dated later than May, 1991. Earlier versions do not work with the "DOS=HIGH" option. A version which will work is currently available on the Quarterdeck Electronic Bulletin Board system (213-396-3904) and will be shipped with future versions of Quarterdeck software. If you are using the DOS 5 RAMDRIVE.SYS or SMARTDRV.SYS and they fail to load, move the line which loads QEXT.SYS so that it loads BEFORE the QEMM 50/60 driver or QRAM in your CONFIG.SYS file. The version of QEXT.SYS that is on the Quarterdeck Bulletin Board also solves this problem. 2) If you use DOS 5's DOSKEY utility and run DESQview: Obtain DESQview 2.34 from Quarterdeck orders department. The DOSKEY utility will conflict with DESQview's DOS Services program if loaded before DESQview. To use DOSKEY in a DESQview DOS window, modify the "Program" line of the program information file using "Change a Program" to load "DOSKEY" and configure the "Parameters" line with "/REINSTALL" so that each DOS window will have its own, unique set of stacked commands. 3) If you run Microsoft Windows 3.0 in Standard mode, inside DESQview: Obtain DESQview 2.34 from Quarterdeck orders department. Earlier versions of DESQview run Windows unreliably in Standard mode when DOS 5 is present. There is not a problem running Windows Real mode. 4) If you run Microsoft Windows 3.0 in Enhanced mode: If you run Microsoft Windows in Enhanced mode and plan to use the DOS=HIGH parameter, you must take care that you do not use the "EXT=" or "MEM=" parameters to QEMM-386. Doing so will prevent Windows from being able to start in Enhanced mode. It will not affect operation in Real or Standard modes. 5) If you run DOS 5's DOSSHELL program: The DOSSHELL program works fine with Quarterdeck's memory management software. It is also possible to start DESQview from the shell, however you cannot task switch away from versions of DESQview prior to 2.34 or the system will hang. DESQview 2.34 prevents this problem, however it is presumed that most users who use more advanced DOS environments, such as DESQview or Windows will not be using DOSSHELL. 6) If you run DESQview and use SETVER.EXE: SETVER, does not take effect when run inside DESQview 2.33 or earlier. Because SETVER does not work inside DESQview 2.33 and earlier, programs that require SETVER may malfunction when run under these versions of DESQview. A list of the programs which require SETVER is available by typing "SETVER" to the DOS prompt. If you have programs which require the use of SETVER in DOS and want to run them in DESQview, contact the Quarterdeck Orders Department for an upgrade of your DESQview to version 2.34 7) If your system requires the DOS DISPLAY.SYS or PRINTER.SYS drivers: The DOS 5 utilities, DISPLAY.SYS and PRINTER.SYS cannot be successfully loaded into upper memory by the LOADHI.SYS that ships with QEMM-386 5.13 and earlier, QEMM-50/60 5.00 and earlier, and QRAM 1.01 and earlier. Future versions of LOADHI.SYS are expected to be able to load these drivers into upper memory. You can load these drivers into low memory or, if you do not require Quarterdeck's LOADHI programs to load larger TSRs or drivers, it is possible to add DOS=UMB to your CONFIG.SYS file and use DEVICEHIGH to load them. As mentioned before, the "DOS=UMB" parameter currently makes high memory unavailable to Quarterdeck's LOADHI programs. 8) If you run DESQview and get the message, "packed file is corrupt", when you open a window: The EXEPACK utility that came with versions of DOS before DOS 5 contained a bug that resulted in the error message "packed file is corrupt" being given when a packed .EXE file was executed in the first 64K of conventional memory. DOS 5 patches the files in memory so that they can be successfully unpacked and executed. However, since DESQview takes over much of the program-loading process from DOS, this patch does not take effect in DESQview versions before 2.34. If you encounter this error, opening a window in DESQview, contact the Quarterdeck Orders Department for an upgrade your DESQview. For Reference: Microsoft Corporation, One Microsoft Way, Redmond, WA 98052 Microsoft automated support for DOS 5 (206)646-5103. Microsoft "90-day, free support" (206)646-5104. Microsoft "after 90 days, support" (900)890-9000 ($2 per min.) or (206)646-5108 ($20 per call) Quarterdeck Office Systems, 150 Pico Boulevard, Santa Monica, CA 90405 Technical Support (Voice): (213)392-9701 Orders and Upgrade Hotline (213)314-3222 Q/FAX - Automated FAX Request Line: (213)314-3214 Inbound FAX: (213)399-3802 This technical note may be copied and distributed freely as long as it is distributed in its entirety and it is not distributed for profit. Copyright (C) 1991 by Quarterdeck Office Systems * * * E N D O F F I L E * * *