Running MS-DOS 5.0 EMM386.EXE with VCPI Applications (73627)

The information in this article applies to:
    Microsoft MS-DOS operating system 5.0

This article was previously published under Q73627


You are running virtual control program (VCPI) applications under MS-DOS 5.0 with upper memory block support, and the applications do not run in protected mode.


In EMM386.EXE version 4.20 (which shipped with MS-DOS 5.0), VCPI is turned off by default.

NOTE: This information applies to EMM386.EXE version 4.20 and earlier. It does not apply to later versions of EMM386.EXE


You must use the RAM switch to run the applications in protected mode. VCPI applications cannot run in protected mode if the EMM386.EXE NOEMS switch is used.


For programs to run in protected (80286) mode while a virtual-86 (80386) mode monitor is running, the two programs need to communicate. This method of communication is called VCPI.

EMM386.EXE is fully compatible with VCPI-compliant applications; however, VCPI applications require that some EMS memory is available when running in protected mode. This means that VCPI applications cannot run unless the RAM switch is used with EMM386.EXE. If you are using EMS only for VCPI support, you can use RAM in conjunction with the P0= parameter to specify the presence of only a single 16K EMS page. This allows EMM386 to use all the remaining memory for UMB support. The disadvantage of this option is that it makes EMS available without a page frame, which may confuse applications that always expect a page frame when EMS is present.


"Microsoft MS-DOS User's Guide and Reference," version 5.0, pages 605-609.

Modification Type: Major Last Reviewed: 11/23/1999
Keywords: KB73627