Mail Archives: djgpp/1993/03/16/09:35:45
>I hopefully assume that my "vesa" version of go32 DOES WORK with all the
>programs and video drivers. Please correct me if I am wrong (nobody did so far).
>Certainly official VESA support is crucial. Hope DJ will acknowledge it.
It is. Supporting ANYTHING that increases use of djgpp/go32 is
important. Post diffs! As long as they don't break other things,
I'll include them. Also, coordinate grx drivers with Csaba.
>I vote AGAINST physical mapping of whole video RAM into system's address space,
>because by the end of this year most of PCs will already have 16MB memory
>installed, and this continuous mapping is non-standard feature (although it
>appears in most of modern chipsets).
Hopefully, the GRX library will become good enough to warrant hiding
the graphics driver completely, and then all those problems will go
away.
>BTW: There is no space in projected go32-2.0 memory map for graphics memory.
>Does it mean that there will be no graphics support? :-).
The space reserved for "user shared libraries and mappings" is the
correct space. The architecture assumes that the driver can handle
vmem being mapped *anywhere* instead of at a fixed location.
>DJ, please allow for transparent calling of all the real mode ints from
>any other mode (application and exception handlers), without telling us
>that we should change something in exphndlr.c. I would like to see this
>improvement in 1.10. I would also like the int86x function to work properly
>(the problem lies also in exc. handling) - I mean: PASS THE CONTENTS OF
>SEGMENT REGISTERS from SEGS structure to real mode int handlers.
The ability to service interrupts with drivers in protected mode was
mentioned in the notes. In go32v2 I expect the extender to handle
NONE of the int86 functions. Instead, it will have a generic hook
such that the application can build some code in the transfer buffer
and have go32 execute it. That way, the application can add new int86
handlers without having to modify go32. The int86...() functions
would be emulated in libc.a through a dispatcher that called the
appropriate routines, with hooks to add new routines.
- Raw text -