Mail Archives: djgpp/2000/04/10/03:25:47
On Mon, 10 Apr 2000, Damian Yerrick wrote:
> >Sorry, I don't understand: what pushing and popping? All you need to
> >access a far pointer in assembly is to load FS with the _dos_ds
> >selector (once) and then use the fs: segment override.
>
> What are the names of those segments?
> SS = stack
> CS = code
> DS = data
> ES = extra
> (DS = ES = SS references the same memory as CS, right?)
> FS = farptr
> GS = ?
FS and GS are general-purpose segment registers (in particular `F' in
FS does NOT mean Far).
DJGPP library doesn't use FS. It uses GS to access the transfer
buffer (via a special variant of the farptr functions). But that's
DJGPP-specific convention, there's nothing special about it.
> If you leave far memory access to libraries (Allegro, etc.),
> your program can remain a ``normal'' program, right?
Yes.
- Raw text -