Microsoft KB Archive/77855

= Lotus 1-2-3 Versions 3.x and EMM386.EXE =

Article ID: 77855

Article Last Modified on 11/16/2006

-

APPLIES TO


 * Microsoft MS-DOS 5.0 Standard Edition
 * Microsoft MS-DOS 5.0a
 * Microsoft MS-DOS 6.0 Standard Edition
 * Microsoft MS-DOS 6.2 Standard Edition
 * Microsoft MS-DOS 6.21 Standard Edition
 * Microsoft MS-DOS 6.22 Standard Edition

-



This article was previously published under Q77855



SUMMARY
Lotus 1-2-3 for DOS is a virtual control program interface (VCPI) compliant application. VCPI is an extension to the Expanded Memory Services (EMS) specification that allows MS-DOS-based applications to directly access extended memory on an 80386 or higher processor.

To use Lotus 1-2-3 in combination with EMM386.EXE, you must configure EMM386.EXE to provide VCPI services and some VCPI memory. If you try to run Lotus 1-2-3 without providing VCPI services, Lotus 1-2-3 displays an error message and fails to start.



MORE INFORMATION
To configure EMM386.EXE to provide VCPI services and VCPI memory, use the RAM parameter on the EMM386 command line. For example:

DEVICE=C:\DOS\EMM386.EXE RAM

Keep in mind that the above line creates a 64-kilobyte (K) page frame in the upper memory area (UMA). This reduces the amount of memory that is available for loading programs in upper memory (high). If your program ONLY needs LIM 4.0 expanded memory, you can specify the P switch as shown below. This creates a 16K page frame in the UMA.

DEVICE=C:\DOS\EMM386.EXE RAM P0=D000

NOTE: This works only if your programs do NOT need LIM 3.2 expanded memory. D000 is the starting address of a 16K page frame and can be replaced by any upper memory address that is available.

Providing VCPI Without an EMS Page Frame
If you are using EMM386.EXE version 4.45 (the version included with MS-DOS 6.0) or later, you can provide VCPI services and VCPI memory without dedicating UMA space to an EMS page frame. To do this, specify the NOEMS switch along with a number that indicates the amount of VCPI memory to provide in kilobytes. For example:

DEVICE=C:\DOS\EMM386.EXE NOEMS 256

The 256 on this command tells EMM386 to provide 256K of VCPI memory.

If you are using a version of EMM386.EXE earlier than 4.45, you may be able to provide sufficient VCPI services without dedicating UMA space to an EMS page frame. To do this, specify both the RAM and the FRAME=NONE switches on EMM386. For example:

DEVICE=C:\DOS\EMM386.EXE RAM FRAME=NONE

