On 1/5/2011 7:55 AM, Kenneth Brody wrote:
> On 1/4/2011 8:57 PM, wrote:
> [...]
>> In the same vein, both Intel and IBM have defined explicit undefined
>> instructions. Intel even gave it a mnemonic.
>
> Well, by giving it a mnemonic, they've "reserved" that opcode more
> strongly than simply saying "don't use it".
>
> Unlike, as I recall, when the 8086 first came out, one of the interrupt
> vectors was marked by Intel as "reserved" or "unused". IBM, in their
> infinite wisdom, decided to use that interrupt as their "print screen"
> handler. Along comes the 80286, and Intel now uses that interrupt for
> some hardware trap, leaving BIOS writers with the task of deciding "was
> this a hardware trap, or a software-generated interrupt meant to 'print
> screen'?"
>
and then in the 386 and newer most of the interrupts used by the BIOS
and IRQ controllers happen to fall into the region where the CPU may
validly generate PMode exceptions (hence meaning the need to remap the
IRQ controllers for a PMode OS, and mapping them back if one for some
reason feels a need to go back into real-mode and access the BIOS, well
that or probably have remap entries in the real-mode IVT which redirect
calls to the appropriate BIOS handlers...).