[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: lynx-dev Lynx386 & Caldera DR-DOS DPMI
Re: lynx-dev Lynx386 & Caldera DR-DOS DPMI
Wed, 6 May 98 16:00:37 -0400
> I do think you may be a little too hard on DJGPP/CWSDPMI/etc. After all,
> if DJ and Charles Sandmann couldn't get copies of "TrueDPMI", how can we
> expect them to have implemented it?
Then how have I implemented a dozen of True DPMI clients by now without
ever seeing the spec? How has Andrew Schulman implemented his superb DPMISH
library in his visionary books _Undocumented DOS_ and _Unauthorized Windows
95_? I think he has the same docs I do.
> I also wonder whether the infamous DPMI Committee is solely responsible
> for the current state of affairs, since a full-blown Protected-Mode DOS
> might have significantly hurt sales of Windows.
Ahhh, we are getting to the crux of the matter. What most people call
Windows _IS_ the full-blown Protected Mode DOS we are talking about. For a
real explanation, read _Unauthorized Windows 95_. All of its ~600 pages are
dedicated to this very subject. It is absolutely required reading for
everyone who doesn't want to fall under the lash of Mr. Adolf the Gates of
Hell. As you can imagine, it is not easy to summarize a 600-page book in
three paragraphs, but I have attempted that once. Here is the relevant
excerpt from <http://www.flora.org/lynx-dev/html/month0398/msg00535.html>:
> Windows v3.xx in 386 Enhanced mode gains its ability to run in protected
> mode, to execute 32-bit code (yes, this ability predates Win95 by 5
> years, appearing first in Windows v3.00 which provides full DPMI support
> including 32-bit apps), to access all of the machine's physical memory,
> and to have virtual memory by shipping with a built-in copy of a new DOS.
> Yes, when you are running Windows v3.xx in 386 Enhanced mode, you are
> essentially running a different DOS! A 32-bit protected-mode multitasking
> DOS with virtual memory that DOS users have always been dreaming about.
> The only reason that you never notice this is that this DOS is
> automatically loaded when you start Windows and unloaded when you quit
> it, and as a result its power is usually unfairly attributed to Windows.
> As for Windows 95, the differences from Windows v3.xx are not as great
> as you would think. In Windows v3.xx the Protected Mode DOS portion has
> full 32-bit app support, but the portion that implements the Windows API
> (with GUI and everything) is limited to 16 bits only. In Windows 95 this
> portion has been extended to provide the Win32 API and to use all the
> functionality of Protected Mode DOS, but the latter has remained
> essentially unchanged from Windows v3.00. Incidentally, Win32s does
> pretty much the same thing as Windows 95, namely, extends the Windows API
> portion, except that Windows 95 does it to a little greater extent
> (implements a larger subset of the Win32 API).
> But the most important point here is that the Protected Mode DOS is
> essentially the same in all versions of Windows starting with 3.00.
> Furthermore, it has nothing to do with Windows in the first place! The
> functional specification for Protected Mode DOS is DOS Protected Mode
> Interface (DPMI) specification, version 0.04. (Note: This is not the same
> interface as the version of DPMI used by DJGPP. The latter is a small
> subset of the True DPMI I am talking about here.) It is a Microsoft
> confidential document, but what it says is rather well-known (to the
> point that I can implement the interface without having a copy of the
> spec). This interface has been correctly implemented by Qualitas' 386Max,
> Quarterdeck's QDPMI, OS/2 DOS boxes, and others. I am currently working
> on a public-domain implementation called MMM386.
Andrew Schulman discusses all of this many orders of magnitude better
than I ever could. After all, I'm a hacker, not a writer. The only caveat
is that he has once worked for Bob Moote, and probably does have some
respect for his former boss. In his books he uses the term "DPMI" in the
same way Bob Moote's and Bob Smith's Committee does, and what I rightfully
call True DPMI he calls Microsoft extensions to DPMI. You may treat this is
a terminology difference, although I consider it more of ideology.
ARPA Internet SMTP mail: address@hidden
- Re: lynx-dev Lynx386 & Caldera DR-DOS DPMI,
Michael Sokolov <=