On 8/21/2024 1:32 PM, Eric Auer via Freedos-devel wrote:
Hi Ralf and Steve,
Our EMM386 has been supporting VCPI for quite a while ;-)
better would be "some" VCPI suuport...
In ancient times, free EMM386 versions without VCPI existed.
Those were not even compatible with DOS extenders or DPMI
hosts (CWSDPMI, DPMIONE etc.) which was quite a limitation.
That's why VCPI came into play...
GEMMIS is a different story. It tells Windows that internal
state of EMM386 is structured exactly as Windows expects, so
it can import the state and replace the entire EMM386 in RAM
by something built into Windows itself, on the fly, which it
has to do in 386enh mode. WfW is no fun without 386enh mode,
Win3 was acceptable, Win9x is not even possible without it.
The easiest and most obvious solution to that problem is to
use the EMM386 for DOS which comes with Windows itself :-)
But only Windows cares about GEMMIS, no other apps do.
That is NOT correct. GEMMIS was the interface to allow two (any two)
memory managers to work together, nicely.
We had the GEMMIS specs back in those days due to the CAD software that
we developed having its own memory manager and running in protected mode
(first 80286, then 386), well before "memory managers" and "DOS
Extenders" became a thing.
And our problem was that clients always ran into problems when they
already had a (standard for their version of DOS) memory manager
installed. That's why for some time, we worked rather closely with
Compaq (one of our reseller in Switzerland at that time was also one of
the largest Compaq retailers in Europe) as well as Quarterdeck and
Qualitas. GEMMIS was the specs that defined how two memory managers
could work along side each other, Windows was the initial case for
Microsoft to come up with that specification, in order to have Windows
in enhanced mode play along nicely. But there were other applications as
well, not only our CAD system.
And the issue is not only for Windows, for example, to take over the
memory management FROM EMM386 (or CEMM, QEMM, 386Max, ...) but when
exiting, giving that memory management task and CPU state) BACK to DOS...
Ralf
_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel