Mail Archives: djgpp/1994/05/11/15:18:27
> - how can I write directly in the video ram (text mode) ?
> - how can I access to a specific PHYSICAL address (such as with
> Borland C peek and poke instructions
See internal.doc for the mappings of the first MB of memory and VGA video
memory in non-DPMI mode. In DPMI mode you need to use far pointers, and gcc
doesn't support these. Starting with maintenance level 5, djgpp includes
inline functions for emulating far pointers; look at farptr.h for details.
As I enter this, I realize that I don't know how to obtain a selector which
points at a physical address outside the first MB. I suspect that there is a
standard DPMI function call to do this, but is there a C routine which
implements this call, and does go32 support this function? This question has
come up several times, usually in the context of a frame grabber or other
hardware add-on which has memory which can be jumpered to appear at some high
address. The answer used to be that hacking go32 was required, but perhaps
it is easier now.
- Raw text -