Mail Archives: djgpp/1995/06/07/18:51:59
> I've been following the talk about go32 going away in DJGPP v2+ and I'm not
> entirely clear on what the new convention will be. I know it has something to
> do with DPMI, but the details are vague to me.
>
> Could someone in the know, perhaps Eli or DJ or ONE of the V2 developers,
> please clue me (us?) in on what the details of this change will be?
>
> Something that briefly describes the current setup and then explains how it
> will change would be really nice.
Currently, go32 intercepts int 21h calls and turns them into dos-aware
calls, transfers the data around, manages the memory, etc.
However, you must have a copy of go32. Building go32 requires a
16-bit development system, which kind of defeats the purpose of djgpp.
In V2, the application relies on DPMI, and loading a program into DPMI
memory space is simple enough that the 2K stub can do it itself. In
fact, it was simple enough that we wrote our own assembler to assemble
it, so there is absolutely nothing in V2 that can't be built with V2.
The stub loads the program into DPMI memory, and most of the code in
go32's exphdlr.c now resides in libc.a (although it's much smaller
now), so the application is now dpmi-aware, and doesn't require an
extender.
The stub is not smart enough to get the program running without DPMI,
but we have turned go32 into a standalone DPMI server for those who
don't already have one.
- Raw text -