DPMIONE Documentation File
Version 0.91

Overview

The DOS Protected Mode Interface (DPMI) Specification version 0.9 was created by the DPMI Committee in 1990, and extended to version 1.0 in 1991. From the introduction to the DPMI 1.0 spec, "The DOS Protected Mode Interface (DPMI) allows DOS programmers to access the advanced features of 80286, 80386, and 80486-based PCs in a well-behaved, hardware-independent fashion that does not compromise system protection". With this spec, it becomes especially easy to write a program which enters Protected Mode (PM), and has access to all of the system's extended memory.

DPMI 0.9 hosts are readily available, standalone or otherwise. Some DPMI 0.9 hosts implemented a handful of DPMI 1.0 features, but other than 386MAX, none of them do the whole spec.

DPMIONE is, to my knowledge, the first publicly available standalone DPMI 1.0 host. This program is an outgrowth of the DPMI 1.0 host which first appeared in 386MAX from Qualitas, Inc. in 1992. As such, it has undergone extensive testing in that commercial product before being ported to this standalone program.

Features

System Requirements

Limitations

Installation

  1. Unzip the files into a separate directory (say, C:\DPMIONE).
  2. Edit the file DPMIONE.PRO to include a line which loads the DPMI.LOD file, e.g.

    load=c:\dpmione\dpmi.lod pro=c:\dpmione\dpmi.pro

  3. Edit the DPMI.PRO file as necessary (no changes are needed from the defaults).
  4. Decide whether you want to load DPMIONE.EXE in your CONFIG.SYS or AUTOEXEC.BAT file (or neither). Then, do either step 4a or 4b (but NOT BOTH):
  5. If necessary, reboot your system to load DPMIONE.

Compatibility

As a test of this program's compatibility as a DPMI host, you can actually use it as a substitute for the Windows 3.1x DPMI host. That is, install a fresh copy of Windows 3.1x. Then, with DPMIONE resident, go to the WINDOWS directory and type

        system\krnl386

and Windows is up and running! This instance of Windows does not support DOS sessions or anything related to that, but most other Windows functions are there including File Manager. This has proven to be an exceptionally rigorous test of a DPMI host. No other unrelated DPMI host can make this claim.

Expand Down Stacks

The Locked Protected Mode stack used by DPMIONE for hardware interrupts and faults is marked as Expand Down so it expands automatically. In the process of making this work, I learned a lot. For more details on Expand Down segments, see this page.

Author & Copyright

This program was written by Bob Smith () and is © Copyright 1990-2004 Qualitas, Inc. The most recent version may be found at http://www.sudleyplace.com/dpmione/.

License

This program is licensed under the GNU Public License (GPL) 3 or any later version. For more details, see the file LICENSE that accompanies the program.

Source Code

The source code for DPMIONE may be viewed as a web page, or accessed directly by a Subversion (SVN) client if you have one on your local machine.

Download

The program files dpmione.zip may be downloaded from this site.

Specification

To view the DPMI 1.0 specification, try one of the following links:

http://www.delorie.com/djgpp/doc/dpmi/ (HTML)
http://sudleyplace.com/dpmione/dpmispec1.0.pdf (PDF)

Version History

0.91    22 April 2004

0.90    9 February 2004

0.89    8 July 2003

0.88    4 June 2003

0.87    26 May 2003

0.86    17 May 2003

0.85    14 May 2003