How can i change the 32 or 16 bit mode of a segment ?
CS or DS ?
is it possible ?
Posted on 2001-11-28 03:38:27 by Rosky
In the 16b world *S registers (16b long) are used as pointers to segments (64k). In the 32b world *S registers (still 16b long) are used as pointer to section descriptors. Since a section is a virtual 4GB, you usually don't worry about them.

If you want to change from 32b to 16b interpretation, try removing the heatsink off of you CPU.
Posted on 2001-11-28 05:24:46 by eet_1024

If you want to change from 32b to 16b interpretation, try removing the heatsink off of you CPU.


The proposed solution only works on Pentium < III and AMDs :grin:
Posted on 2001-11-28 05:47:54 by Hiroshimator
Rosky, changing the 32/16bitness of a segment is not an easy job.
If you're in protected mode, it involves messing with descriptors,
plus jumping to the new selector (I would never ever change the
descriptor of a selector that's used). From real mode, you first have
to enable protected mode (which involves enabling gate A20 if you
want access to memory > 1 meg), and lots of other stuff. As always,
the intel manuals have exhaustive information on this.
Posted on 2001-11-28 07:07:10 by f0dder
:)
Posted on 2001-12-05 10:48:05 by Rosky