Mail Archives: djgpp/2001/09/13/10:48:11
dima 3141596 <dima AT rts-ukraine DOT com> wrote:
> Ok, I have GDT with 3 valid entries: code segment, data segment and
> data segment pointed to video RAM (0x0b8000). Than I switch to PM
You cannot do that, in a DJGPP application. You *are* in PM, all the
time, so there's nothing to switch away from, into PM.
> How can I make it in the DJGPP ?
Use far*() functions or dosmemput(). Or reinvent what they're doing,
using inline asm, if you really believe that gains you anything.
Those functions ware added to DJGPP for a reason, see?
> but djgpp has not far* !!!
Right. And for a good reason, too. It violates the most basic
assumptions the C programming language makes about how the host
computer works, causing all kinds of ill effects.
> I try functions described in the farptr.h. It's work but I want to
> use C POINTERS !!!
You may want to, but DJGPP does not and will not let you. A far
pointer (as found in 16bit DOS compilers, including Borland Turbo C)
*is* not a C pointer. I may look like one, but it isn't.
--
Hans-Bernhard Broeker (broeker AT physik DOT rwth-aachen DOT de)
Even if all the snow were burnt, ashes would remain.
- Raw text -