Mail Archives: djgpp-workers/1997/09/12/10:07:22
> Such a code was in dosexec.c before 2.01, and it was disabled because we
> didn't want to break DPMI 1.0 compatibility. It shouldn't be hard to
> resurreect it, but we need to decide how to deal with the DPMI 1.0 issue.
First thing to do is to see if 386MAX really uses separate page tables and
separate LDTs. If not, problem solved for all known DPMI providers. If
it won't work in the shared mode (which I actually doubt, since this probably
breaks something someone else does) then we call the allocate shared memory
function. All the 0xd00 function does is to assign a name to a memory
area and make sure the page tables for all clients map that memory space
to the same linear address (dpmi 0.9 clients share the same linear address
space, so this call isn't needed).
We add YAEV (Yet Another Environment Variable) to suppress the extended
memory passing mechanism, just in case it breaks something in some
environment (which case you fall back to using the tb, which works OK 99.9%
of the time).
Details, like what the proxy syntax should look like, is left as an
exercise to the person who has enough time to code instead of writing the
400th follow up to this thread :-)
- Raw text -