Mail Archives: djgpp/1996/10/16/18:36:45
Eli Zaretskii (eliz AT is DOT elta DOT co DOT il) wrote:
: > struct vesainfo{
: > ...
: > WORD *Vesamodes; (WORD = ushort)
: > ..}
: >
: > Now the problem is that this (i think) is a far pointer into DOS
: > memory somewhere.
:
: WORD is 16 bit, so it cannot be a far pointer (which is stored as a
: DWORD, i.e. 32 bit).
:
But the WORD * is a 32 bit value (It point to a 16 bit value);
and yes I'm using the packed data, and I've checked that the size of the
structure is a total of 256 bytes. Another weird thing I've noticed is
that when treating the Manufacturer pointer (BYTE * Manufacturer) the same
way, => Segment is 16 high bits, Offset is 16 Low bits, it works. This
really puzzles me, since the same operation on the VideoModes pointer
doesn't work. Any other suggestions out there?
I'll send my code if any body wishes to see it.
Regards Olav Kindt
- Raw text -