[Company Logo Image] Home Up Feedback Contents Search



v 1.1b   Release Date: April 26, 1994

VMS40 EMS Memory Emulator

This is a device driver that makes either a hard disk or a floppy disk into LIM4 expanded memory. It is a software emulation of the 28 function standard set forth in the Lotus/Intel/Microsoft Expanded Memory Standard (LIM/EMS) version 4.0. All of the EMS 4.0 functions that can be implemented through software are provided by VMS40, with the exception of the DMA functions included in the Alternate Map Register Set function (function 28).

The program is backwards compatible with software written for the earlier LIM 3.2 standard (courtesy of Lotus, Intel & Microsoft). It lets you specify which drive to use for expanded memory, and how much disk to reserve.

The trial version VMS40.240 restricts you to reserving no more than 240K for LIM memory, while the registered version VMS40.SYS allows you to reserve up to 32M

You install VMS40 as you would any other DOS device driver through you CONFIG.SYS file. When you include the driver in you file, be sure to include the drive and path information so that DOS can find the file at boot time. The full syntax is

    DEVICE=[d:\][path\]VMS40.SYS [d:] [nnn] [/Fm]

where [d:\][path\] specifies the drive and path in which the driver lives.

optional [d:] specifies which drive to place the Virtual LIM memory on. If omitted, it defaults to C: if you boot from a hard disk, and A: if you boot from a floppy.

optional [nnn] specifies the amount of memory you wish to reserve, in Ks (Kilobytes). If omitted, the trial version uses a default (and maximum) value of 240K, while the registered version uses a default value of 360K.

you have high memory available, you can set the page frame to a high memory address by using the /F parameter:

    /F1 = C000 - CFFF
    /F2 = C800 - D7FF
    /F3 = D000 - DFFF
    /F4 = D800 - E7FF
    /F5 = E000 - EFFF
    /F6 = E800 - F7FF
    /F7 = A000 - AFFF

you use this parameter, it must be LAST. Please run the program EMS to test that everything works on your machine. IF YOU DO NOT HAVE HIGH MEMORY, but you try to locate the page buffer there, you will not get an error, BUT the data stored to LIM memory will be trashed!



which uses the registered version residing in directory UTILS on drive C: to reserve 6000K (= 6M) on drive C: for expanded memory.

As with all device drivers, once installed, it can only be removed by rebooting.

The VMS40 driver logically maps disk-memory pages of 16k blocks into four contiguous physical pages of conventional RAM. Including the 64K physical page map area, the installed size of the driver is approximately 69K. VMS40 cannot map the pages into any other area than the 64K window it allocates automatically on boot up.

The program allocates a disk file called $VMS40@@.VM$ in the root directory. Its attributes are System and Hidden. It is allocated at the appropriate size to hold the LIM memory pages. Don't try deleting it if you have the driver running!!! If you allocate the file on floppy, don't remove the floppy while the driver is running!!!

Naturally, using disk to simulate LIM memory is somewhat slower than having the appropriate hardware implementation, but it is also a lot cheaper! If you need to run big spreadsheets, or use Borland's standalone debugger to debug a really large program, and you cannot afford 2Meg of LIM memory, then VMS40 is your answer.


This is for use on AT computers wih extended memory above the 1 Meg barrier. This driver converts extended memory into LIM memory, in a similar fashion to VMS40.


    DEVICE=C:\UTILS\LMS40.SYS 1400 /F5

which converts 1.4M of extended memory into LIM 4 expanded memory, with a page frame at E000


If you have a machine that has free memory above 640K and below 1M, AND you have a suitable loader such as Quarterdecks QEMM, you can free up the 69k below and load the entire device driver into Hi Memory. Consult your software manual for details on how to load device drivers into Hi Memory. In this situation, DO NOT use the /F parameter, but let the page frame default to follow after the driver. (otherwise you may confuse the hi load program)


  • Download evaluation version of software. (36k)
  • Download registered version of software. (58k)
    You will need the registration key to unzip this file.
  • If you can't or don't wish to download, you can order your copy on disk. (See below for pricing)

Pricing (All prices in Australian Dollars)

(about 2/3 of US Dollars, so $A40 is about $US26.67, $A25 is about $US16.67)

Description SKU # Price
Evaluation Copy vms240-e $7
Full Version vms40-f $25
Postage (airmail)   $5

Australian residents please add 10% GST

Order Form / Information Request Form

Select the items that apply, and then let us know how to contact you:

I want to order

Send product literature

Credit Card
Credit Card
Expiry Date

Send mail to sales@FugueSoftware.com with questions or comments about this web site.
Copyright 1999 Fugue Software
Last modified: September 14, 1999