
                        QEMM and Stacker

 Quarterdeck Technical Note #270              Filename: STACKER4.TEC
 by Robert Gaustad                          CompuServe: STACK4.TEC
 Last revised:  4/02/95                       Category: SW3

 Subject:  Using Stacker in all versions after 2.01 with QEMM.
            Information on Stacker 4 appears first; Stacker versions
            earlier than this are treated later in the note.

 Q. Is Stacker 4 compatible with QEMM?

 A. Yes.  In fact, since Stacker 4 loads itself before DOS on
    MS-DOS 6 and Novell DOS 7 systems, Stacker 4 is quite
    transparent to QEMM, which represents a tremendous benefit
    over previous versions.

    Not only is Stacker 4 compatible with QEMM versions 7.5 and
    later, but QEMM and Stacker 4 include technology jointly
    developed by Quarterdeck and Stac Electronics, whereby Stacker
    can greatly reduces the amount of conventional memory it uses;
    thus Quarterdeck and Stac Electronics recommend that you take
    advantage of this technology by upgrading to Stacker 4.

    The earliest versions of Stacker 4 did not include this
    technology; a program to update Stacker feature is available
    to all registered users of Stacker 4, either from Stac
    Electronics or from Quarterdeck, under the filename S4UP.EXE.

    To get your copy of this file, join the CompuServe forum for
    either Quarterdeck or Stac, by typing GO QUARTERDECK or GO
    STAC at any CompuServe main prompt. Alternatively, using your
    modem, call

    Stac Electronics BBS                 (619) 431-5956
    Quarterdeck BBS                      (310) 309-3227

    In order to obtain an upgrade to Stacker 4, or technical
    assistance from Stac Electronics, call the numbers below.

    Stac Electronics Technical Support   (619) 431-6712 (voice)

    Once you have acquired this file and run the update, you may
    activate the Stacker feature in this way:

    1. If you are currently inside Windows, exit it.
    2. At the DOS prompt, change to the Stacker directory.
    3. Type ED /I
    4. Press Enter to insert a new line.
    5. On this new line, type /QD
    6. Press Ctrl-Z to exit the editor, and save your changes.
    7. Restart your system to put the changes into effect.

 Q. I installed Stacker 4 on my system and after running Optimize
    I found that I have 2K less available conventional memory.
    Why is this?

 A. Stacker 4 now uses Novell's DOS Protected Mode Services
    (DPMS), through the driver DPMS.EXE, to place most of the
    Stacker program into extended memory.  When you install
    Stacker 4 on your system, the DPMS.EXE driver will
    automatically be placed into the CONFIG.SYS file directly
    above the STACHIGH.SYS device driver line.  The use of the
    DPMS.EXE driver will reduce the size of the Stacker program
    from about 44K (more or less, depending upon your
    configuration) to about 17K, and /QD line in STACKER.INI will
    reduce Stacker's overhead still further. However, the DPMS.EXE
    driver cannot be loaded into High RAM, so it must load into
    conventional memory.  This will reduce your conventional
    memory by about 2K,  but since your Stacker driver is now much
    smaller, you should be able to load more programs into High
    RAM. Further, the Stacker-QEMM technology mentioned above will
    still further reduce the amount of memory that Stacker uses.

 Q. What if I don't want to use the DPMS.EXE driver?

 A. If you don't want to use the DPMS.EXE driver, you may remove
    it from the CONFIG.SYS file.  Keep in mind that after removing
    DPMS.EXE and rebooting, the Stacker driver will be about 44K
    in size, so you may need to run Optimize after making this
    change.

 Q. How do I go about removing the DPMS.EXE driver from the
    CONFIG.SYS file?

 A. Stacker 4 has a new configuration program called CONFIG.EXE.
    To see what changes you can make to Stacker's configuration,
    simply type:

    CONFIG /?    <ENTER>

    Two of the listed options that will display are:

    /D       Adds Stacker DPMS driver to configuration files.
    /D-      Removes Stacker DPMS driver from configuration files.

    If you want to remove the DPMS.EXE driver from the CONFIG.SYS
    file, simply type:

    CONFIG /D-    <ENTER>

    You will then be asked if you are sure you want the CONFIG.SYS
    changed. To save the changes made, press "Y".

 Q. Is there any other way I can reduce the size of the Stacker
    driver?

 A. If you want to reduce the size of the Stacker driver without
    using DPMS.EXE, you may still use the /EMS parameter to load
    Stacker into expanded memory.  This is much less advantageous
    than the /QD parameter, and is recommended neither by Stac
    Electronics nor by Quarterdeck.

    If you add the /EMS parameter to the STACKER.INI file and you
    want to use QEMM's STEALTH technology, you must add a DBF:2
    parameter to the QEMM device line in the CONFIG.SYS file (this
    can be done from ED, too).


 Q. Is Stacker 4 compatible with QEMM's ST-DSPC.SYS (Stealth 
    D*Space) driver?

 A. No.  Even though Stacker uses a file called DBLSPACE.BIN in
    order to load before the CONFIG.SYS file loads, it is not
    sufficiently similar to Microsoft's DoubleSpace or DriveSpace
    programs to allow ST-DSPC.SYS to work.  Stealth D*Space will
    only work with Microsoft's DOS 6 DoubleSpace or DriveSpace.

 Q. After I installed Stacker 4 over my DoubleSpace program, I
    received the following message:

    ST-DBL: DBLSPACE is not in use, so there is no need to load
    ST-DBL.SYS.

 A. The Stacker 4 install does not detect or remove QEMM's
    ST-DBL.SYS or ST-DSPC.SYS drivers, one of which may be in your
    CONFIG.SYS file if you were using Microsoft's disk compression
    prior to installing Stacker.  Upon installation, Stacker
    simply places a device line in the CONFIG.SYS file that reads

    DEVICE=C:\STACKER\STACHIGH.SYS

    at the end of the CONFIG.SYS file. If you were previously
    loading the ST-DBL.SYS device driver with a multi-config
    system, replace every ST-DBL.SYS device line with the
    STACHIGH.SYS device line above.  If you are loading it from a
    single boot CONFIG.SYS, simply replace the one incidence of
    ST-DBL.SYS.

 Q. What are the different sizes of the Stacker driver?

 A. The size of the driver is strongly dependend on the size of
    our hard drive and the size of Stacker's compressed clusters.
    If you are using Stacker with DPMS.EXE and the /QD parameter,
    the driver's resident size will be as little as 10K.  Without
    the /QD parameter, the driver will typically be at least 8K
    larger. If you are using Stacker's /EMS switch, the driver
    should be at least 25K.  If you are not using DPMS.EXE or the
    /EMS switch, the driver should be at least 44K.  The
    initialization size, the size necessary to load the driver
    before it shrinks down to its resident size, is 87K no matter
    what parameters you use.

 Stacker 3.1 and earlier:

 As mentioned above, both Quarterdeck and Stac Electronics
 strongly recommend upgrading to Stacker 4.

 This portion of this document discusses issues related to Stacker
 versions 2.01 through 3.1.  Most references to Stacker will be
 without a version number, except in those instances where it is
 necessary to specify a particular version.

 Any version of Stacker 2.01 or later properly detects the
 presence of QEMM, regardless of whether or not you install QEMM
 first. If you install QEMM after installing Stacker and you run
 OPTIMIZE, Stacker will detect OPTIMIZE and copy the pertinent
 QEMM files from the COMPRESSED drive to the UNCOMPRESSED boot
 drive.

 This copy process is usually successful, but if you do not have
 enough room on your UNCOMPRESSED drive to hold the QEMM files, you
 must use the Stacker utility STAC.COM to increase the size of the
 UNCOMPRESSED drive and then either run OPTIMIZE again or manually
 copy over the correct files to the drive.  The following is a list
 of those files needed on the UNCOMPRESSED boot drive:

 QEMM386.SYS
 OPTIMIZE.COM
 LOADHI.SYS
 TESTBIOS.COM
 LOADHI.COM
 BUFFERS.COM
 RSTRCFG.SYS
 WINHIRAM.VXD
 WINSTLTH.VXD
 MCA.ADL    (if a Micro Channel machine, typically an IBM PS/2)

 To increase the size of the UNCOMPRESSED partition, through
 Stacker, type:

 STAC   <ENTER>

 at the DOS prompt.  For further information regarding the STAC.COM
 program, please refer to your Stacker manual.


 1.  IF YOU ARE NOT USING SSWAP.COM

 If you are NOT using the SSWAP.COM program to swap drive names,
 then Stacker will not detect the presence of OPTIMIZE and copy the
 correct files to the UNCOMPRESSED drive.  However, this should not
 be a problem because you will most likely have already installed
 QEMM on the UNCOMPRESSED drive.


 2.  "/SYNC" PARAMETER WITH SSWAP.COM

 If you are using the SSWAP.COM program, in order to maintain
 compatibility with OPTIMIZE, you MUST have the "/SYNC" parameter
 at the end of the SSWAP.COM line.  The parameters differ slightly
 between version 2.01 and 3.0.  Examples of the two versions are
 below:

 DEVICE=C:\STACKER\SSWAP.COM C:\STACVOL.DSK /SYNC  (VERSION 2.01)

 DEVICE=C:\STACKER\SSWAP.COM C:\STACVOL.DSK /SYNC+ (VERSION 3.00)

 Stacker places the "/SYNC" parameter at the end of the SSWAP.COM
 line during installation.  It is only discussed in this document
 because sometimes it is accidentally deleted.

 The /"SYNC" parameter for Stacker 3.0 has a "+" sign at the end.
 The "+" tells SSWAP.COM to AUTOMATICALLY update any changed files,
 such as CONFIG.SYS, that are supposed to be on both drives.  If
 you delete the "+" from the "/SYNC" parameter, SSWAP.COM will only
 NOTIFY you of changes to files and ask if you want to synchronize
 them.

 As of Stacker version 3.0 some compatibility issues with OPTIMIZE
 remained unresolved.  These issues may require some
 troubleshooting as well as editing of your CONFIG.SYS and
 AUTOEXEC.BAT files.

 Stacker detects the presence of OPTIMIZE and allows you to run it
 without having to first edit your CONFIG.SYS and AUTOEXEC.BAT
 files. If you are using SSWAP.COM, it will detect when OPTIMIZE is
 being run, make changes to the drive references in the CONFIG.SYS
 and AUTOEXEC.BAT files, then prompt you to press a key to reboot
 the machine again for OPTIMIZE.  This will occur during the
 Detection and Final Phases of OPTIMIZE.  Don't worry if your
 machine reboots itself several times during OPTIMIZE; this is
 normal.

 If you are using DOS 5 with Stacker, and you run OPTIMIZE, the
 number of buffers may disappear from the line in the AUTOEXEC.BAT
 file or CONFIG.SYS file, depending on whether or not you are
 loading DOS into the HMA.  To fix this problem, simply edit the
 AUTOEXEC.BAT or CONFIG.SYS file after the OPTIMIZE process is
 complete and add the number of buffers you want to the
 C:\QEMM\LOADHI line in the AUTOEXEC.BAT or the BUFFERS= line in
 the CONFIG.SYS file.


 3.  "INCORRECT QEMM OPTIMIZE"

 Although it is not common, there may be times during OPTIMIZE when
 you will receive the message:  "Incorrect QEMM Optimize".  To fix
 this problem, you must edit your CONFIG.SYS file on the
 UNCOMPRESSED drive and remove the line that reads:

 DEVICE=C:\QEMM\RSTRCFG.SYS **** OPTIMIZE D%etection %P%hase ****

 After removing the line and saving the file, reboot your machine
 and re-run OPTIMIZE.

 4.  OPTIMIZE.EXC and SSWAP.COM

 Some earlier versions of QEMM LOADHI.SYS driver may have a
 conflict with Stacker's SSWAP.COM.  Although Stacker now creates
 an OPTIMIZE.EXC file which tells the OPTIMIZE program to NOT place
 a LOADHI.SYS line in front of SSWAP.COM, you must make sure that a
 LOADHI.SYS line is not ALREADY in front of SSWAP.COM.  If it is,
 you must remove it before running OPTIMIZE.

 5.  STACKER WITH "/EMS" SWITCH

 Stacker can put its built-in cache into EMS, which reduces the
 amount of conventional memory the STACKER.COM driver requires.
 You can select this option when you are installing Stacker on your
 hard drive.  If you are using the STEALTH option with QEMM,
 however, you must make sure that you have a "DBF=2" parameter at
 the end of the QEMM line.  This is because when STACKER.COM uses
 EMS, it accesses the disk via the EMS Page Frame at the same time
 that STEALTH is using the Page Frame.  "DBF=2" buffers all disk
 read and writes that directly access the Page Frame and thus
 prevents a conflict.

 Stacker 3.0 should automatically place this parameter at the end
 of the QEMM line for you, but 2.01 does NOT.  If you are using
 Stacker 2.01, you MUST add this parameter manually.  Below is a
 sample QEMM device line with the "DBF=2" parameter:

 DEVICE=C:\QEMM\QEMM386.SYS RAM ST:M DBF=2

 6.  "LOADHI: This program took over INT 67!"

 If you are using STACKER.COM with the "/EMS" parameter, under
 certain circumstances you might get the above error message.  To
 get this message, your QEMM / Stacker configuration has to be as
 follows.

 1. STACKER.COM is using the "/EMS" parameter which puts Stacker's
     built-in cache into EMS.

 2. You are NOT using QEMM's "STEALTH" parameter.

 3. QEMM's LOADHI.COM driver is loading, from the COMPRESSED
     Stacker drive, a driver or TSR into HIGH RAM, with the
     LOADHI.SYS "SQUEEZEF" (Squeeze Frame) parameter. "SQUEEZEF"
     uses the Page Frame temporarily, to give a driver or TSR enough
     room to initialize.  Since ANY driver or TSR loading from the
     COMPRESSED Stacker drive becomes an EMS user, and subsequently
     uses the Page Frame at the same time as "SQUEEZEF", the two
     become incompatible.  Hence, the error message above.

 To remedy this problem, you have a number of options:

 1. Use QEMM with the "STEALTH" parameter.  Since "STEALTH" uses
     the Page Frame, "SQUEEZEF" does NOT work with it.  However, the
     "SQUEEZET" (Squeeze Temp) parameter which temporarily uses
     areas of HIGH RAM to give a driver or TSR enough room to
     initialize does work.

 2. If you do not want to use STEALTH, the easiest remedy is to
     rerun OPTIMIZE with the "/NF" parameter.  This tells OPTIMIZE
     to NOT use the "/SQUEEZEF parameter.

 3. A final option would be to simply load all your drivers and
     TSR's from the UNCOMPRESSED boot drive.  For instance, if you
     are using Stacker with SSWAP.COM, and a sample line in your
     AUTOEXEC.BAT file looks like the following:

     C:\MOUSE\MOUSE

     then you must change it to read:

     D:\MOUSE\MOUSE

     After SSWAP.COM has swapped your drive names, the D: drive is
     your UNCOMPRESSED drive.  If you are loading a driver from the
     CONFIG.SYS file, and SSWAP.COM is the last line, there is no
     need to make any changes to that file.

 The suggestions included in this technote should take care of most
 of the problems you are likely to encounter with either Stacker
 version 2.01 or 3.0.

 ******************************************************************
 *      Trademarks are property of their respective owners.       *
 *   This and other technical notes may be available in updated   *
 *     forms through Quarterdeck's standard support channels.     *
 *          Copyright (C) 1996 Quarterdeck Corporation            *
 ******************** E N D   O F   F I L E ***********************


