Ronald G Minnich <[EMAIL PROTECTED]> writes:
> Anybody know how I can get a 32-bit memory reference in 16-bit mode?
>
> If I do this:
> mov $0x400000, %esi
> addr32 movb $0,(%esi)
>
> I get a GPF on the add32 part, although the generated code is correct.
That I even know this is terrible, but..
The problem is that you are exceeding the segment limit on your
16 bit data segment. The only way I have actually heard to do this
is to go into protected mode set up a segment register with
a higher limit, and switch back to real mode. fs&gs are usually
chosen because other 16 bit code doesn't play with them. And
a segment reload of course resets the segments limits.
Eric