QEMM


Quarterdeck Expanded Memory Manager is a memory manager produced by Quarterdeck Office Systems in the late 1980s through the late 1990s. It was the most popular third-party memory manager for the MS-DOS and other DOS operating systems.

QEMM product ranges

;QRAM: A memory manager for Intel 80286 or higher CPUs. It supports Chips and Technologies chipsets. 2.02 added SHADOWRAM switch. QEXT correctly reallocates eXtended Memory Specification. It includes VIDRAM, Optimize, LOADHI from QEMM 6.02, Manifest 1.13. Earlier versions of QRAM also supported the older 8086 and 8088 CPUs.
;QEMM Game Edition: It is a version of QEMM that includes Quarterdeck GameRunner. Patches for regular QEMM do not work on QEMM Game Edition.
;QEMM MegaBundle: In the version shipped with Borland SideKick for Windows, it is a version with SideBar 1.00 and QEMM 7.5.
;DESQview 386: It includes DESQview and QEMM-386.

Features/tools

QEMM driver

QEMM provides access to the Upper Memory Area and memory through the Expanded Memory Specification, Extended Memory Specification, Virtual Control Program Interface and DOS Protected Mode Interface.
  • Quickboot: It allows a form of warm reboot or local reboot to be performed without going through the BIOS. It will therefore completely bypass the POST, including the BIOS startup screen and the time-consuming memory test and device enumeration, and just restore the CPU state and interrupts to their initial state after POST.

    DOS-Up

It relocates DOS kernel, COMMAND.COM interpreter, DOS resources. It supports DOS 3.2 or higher.

HOOKRAM

It allows drivers to be loaded before loading QEMM and still allow the use of QEMM's Stealth feature.

MagnaRAM

It was a virtual memory compression utility for Windows 3.1, Windows For Workgroups and Windows 95. MagnaRAM is included with QEMM 97.
MagnaRAM was also released as a separate utility.
MagnaRAM worked by replacing a portion of Windows' virtual memory system. MagnaRAM would insert itself in the string of Windows Programs that determined what pieces of RAM will be moved to the hard disk. Instead of writing directly to the hard disk, the information to be written would go to MagnaRAM's own buffer as this was a faster process. During CPU idle, MagnaRAM would compress the information in its own RAM buffer. When the RAM buffer becomes full, it is then swapped to the hard disk taking both less time and less space.

Manifest

Manifest is a hardware information utility that displays information about user's system.
  • 1.11 fixed minor cosmetic bugs.
  • 1.12 can identify PS/2 Model 57SX, Compaq Deskpro 486s/16M, Sharp MZ-100. Available EMS in System Overview screen was corrected when using Stealth.
  • 1.13 fixed Award BIOS identification problem.
  • Version 2.0 provides information on network, enhance reporting of video capabilities, APM, DPMI/VCPI/EMS/XMS memory. New feature include editing DOS and Windows boot configuration files.

    Optimize

Similar to MEMMAKER, it is a utility that calculates, and allows user to choose optimal orders of loading drivers and TSRs. However, OPTIMIZE allows preview of adjustments be made without rebooting. Shipped with QEMM and DESQview.

QDPMI

QDPMI is a DPMI 0.9 server driver, authored by Dan Spear. It requires 386 CPU and QEMM386.

QEMM 50/60

It is a version of QEMM driver for the IBM PS/2 Models 50 and 60.
Version 4.03 supports IBM Memory Expansion Option boards with 2-8MB memory.

Stealth

It can relocate memory assigned for CGA character set away from UMA.
Beginning with QEMM version 8, it allows ROM contents in UMA to be relocated to provide more memory for TSRs. Additional Stealth Windows compatibility is provided with VxDs.

Stealth DoubleSpace/D*Space

Stealth D*Space allows DoubleSpace or DriveSpace to be loaded high.

T386

It allows Toshiba laptops to work with QEMM's EMS manager.

VIDRAM

  • Provides extra conventional memory in text mode programs, by reclaiming buffers located in UMA that are used in graphics modes.
  • It requires EGA/VGA-compatible video card.
  • VIDRAM EMS supports DMA-based video memory access at the expense of EMS memory for buffer.

    Limitations

Device driver limit

LOADHI.SYS loads up to 1 device driver at a time in QEMM 4.23, 2 in QEMM 5, 32 in QEMM 6.

MagnaRAM limit

Maximum compression threshold setting is 100% for all versions of MagnaRAM 2.00-2.02, except for MagnaRAM 2.00 included with QEMM 8.00, which has the maximum setting of 80%.

Memory limit

  • QEMM 5.0 can manage up to 16 MB EMS, 16 MB XMS.
  • QEMM 6.0 can manage up to 64 MB EMS, 64 MB XMS.
  • QEMM 6.02 can manage up to 128 MB EMS, 128 MB XMS. EMBMEM parameter limit was removed.
  • QEMM 7.0-7.03 can manage up to 128 MB EMS, 128 MB XMS.
  • QEMM 7.04, 7.5, 8.0-8.3 and 97 can manage up to 256 MB EMS/XMS.
By default, QEMM 7.04 and above provide up to a total of 64 MB RAM shared among XMS, EMS and VCPI memory, unless the USERAM= parameter is used. For example, to allow access to up to 256 MB EMS, specify: QEMM386.SYS USERAM=1M-256M
For QEMM 7.04 and above, the maximum addressable RAM is 256 MB of memory, shared among XMS, EMS and VCPI memory. Initially, XMS allocates the entire 256 MB and shares it with EMS and VCPI as needed, that is, as EMS and VCPI request memory blocks, XMS free memory is reduced by that same amount.

Optimize limit

Versions up to QEMM 6.01 can process batch files up to 9KB, and 20KB in QEMM 6.02.
Batch file line limit is 512 for QEMM versions up to 6.02.

Stealth DoubleSpace/D*Space

Stealth D*Space does not support Windows 95 or later versions of DriveSpace.

Version history

Originally, the product was called QEMM-386, and was released with a complementary product called QRAM. The 386 suffix was dropped starting with QEMM version 7.0 in 1993, when Intel released the Intel Pentium on March 22, 1993. The final release was re-branded as QEMM 97 to follow Microsoft's new branding trend of using year released instead of version numbers, specifically, Windows 95 and Windows 95 OSR2.

QEMM-386 v4.2 (November 11, 1988)

  • Supported Intel 80386 and DOS 3.30.
  • Bundled with QRAM for 80286 or 8088/8086 computers.

    QEMM-386 v5.0 (January 1990)

  • Added support for Intel 80486, DOS 4.01 and Windows 3.0.
  • Maximum RAM is 16MB XMS/16MB EMS.
  • LOADHI.SYS now loads 2 device drivers at a time.
  • New QEMM parameters include COMPAQ386S.

    QEMM-386 v5.11 (mid 1990)

  • Added support for Virtual DMA Services.
  • Supported larger memory cache.

    QEMM-386 v6.0 (early 1991)

  • Added support for DOS 5.00a and Windows 3.0a.
  • Maximum RAM is 64MB XMS/64MB EMS.
  • New features include Stealth.
  • New utilities include HOOKRAM.
  • LOADHI.SYS now loads 32 device drivers at a time.
  • Manifest was updated to 1.10.
  • QRAM updated to 2.02 for intel 80286 and intel 8088 systems.

    QEMM-386 v6.01 (mid 1991)

  • QEMM supports loading XMS driver before QEMM, running Stealth in Windows 3.0 in 386 Enhanced mode.
  • Optimize support indented CALL statements in batch files.
  • Manifest was updated to 1.11.

    QEMM-386 v6.02 (November 13, 1991)

  • Supports 2.88MB floppy drives.
  • New Optimize switches include /COMMANDFILE, /LOADLOW, /QUICK. Optimize supports default OPTIMIZE.EXC exclusion file.
  • New QEMM parameters include DISKBUFFRAME=xx, EXCLUDESTEALTHINT=xx, SHADOWRAM=xxx, UNMAPFREEPAGES=Y/N, WINSHRINKUMBS=N.
  • By default, EMS is un-mapped when Stealth is active.
  • Optimize can support batch file up to 20KB.
  • The 64MB limit was removed from EMBMEM parameter.
  • TESTBIOS' 'Danny and Larry' messages were removed.
  • Manifest was updated to 1.13.
  • Vidram now support systems with over 640KB conventional memory, uses EMS by default.

    QEMM v7.0 (mid 1993)

Dropped the 386 suffix from the name since Intel introduced the Pentium processor.
  • Added support for Intel Pentium, DOS 6.00 and Windows 3.10.
  • Maximum RAM is 128MB XMS/128MB EMS.
  • QEMM was rewritten with 32-bit code.
  • New features include DOSDATA, DOS-Up, Stealth ROM, Stealth DoubleSpace.
  • New utilities include SWAPECHO.COM, OPTIMIZE.EXE, QDPMI, QSETUP, SCANMEM.COM.
  • Updated utilities include Manifest 2.0. Add support of Virtual Mode Extensions and Page Size Extensions found in Pentium, later Intel 80486, or later CPUs; Bus-Mastering hard drives. Improved adapter RAM detection.
  • Added support for reading qemm configuration file, @filename.
  • Added support for DOS 6.00 Multi-Config in CONFIG.SYS, IF statements in AUTOEXEC.BAT.
  • Optimize supports disk compression software.
  • Vidram can now operate in Windows Enhanced mode DOS windows.
  • QEMM 7.0x loads itself to shadow RAM by default.

    QEMM v7.03 (November 17, 1993)

  • VIDRAM no longer suppress interrupt 10, function 1B calls.
  • New Optimize switches include /NOFLUSH.
  • Stealth DoubleSpace virtualizes DOS Function 9.
  • DOSDATA improves compatibility with Stacker 3.1, supports PC DOS 6.1 and XTRADRIVE or OS/2 2.x Boot Manager.
  • Stealth Windows driver was updated to 7.02.
  • QEMM driver now supports Compaq 20/e and 25/e.

    QEMM v7.04 (February 28, 1994)

  • Added support for DOS 6.20.
  • Maximum RAM is 256MB XMS/256MB EMS.
  • DOS-Up now supports Novell DOS 7. In DR DOS 6.0 and Novell DOS 7, only DOS resource is loaded high.
  • Improved VCPI compatibility on systems with large amounts of memory.
  • QEMM supports DESQview/X 2.0 server.*Manifest now recognizes STB processors.

    QEMM v7.5 (September 17, 1994)

  • New features include Stealth D*Space which supports both drive compression techniques, DrvSpace and DblSpace ; replacing Stealth DoubleSpace.
  • New tools include QPI.VXD.
  • Improved Pentium support with DigiSpeech Portable Sound parallel port sound card. QEMM 7.5 no longer loads itself to shadow RAM. Optimize now properly detects hardware on system with network card.