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.
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.
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.
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/.
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.
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.
The program files dpmione.zip may be downloaded from our FTP site.
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)
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
©
Sudley Place Software 1997-2019.
![]() ![]() ![]() ![]() |
Comments or suggestions? Send them to . |