I also wanted to add that all this nonsense was necessary because int he design of the 80286 there was a method of ENTERing protected mode, but no clean way to get back. I'm curious to know whether the double/triple fault was used as a way back because that's how Intel had *designed* it, or if the lack of method to come back to Real mode was an oversight.
I'd say it was by mistake. Resetting upon tripple fault is about the only intelligent thing you can do, giving your system the chance to reboot. That I'll given them.
But it took some hacking to get the rest of this to work. Even the BIOS has to be aware of this aweful technique. There's a boot flag in CMOS (reg 0xf) letting the BIOS know what the cause of the shutdown was. That way an intentional switch back to real mode could be detected, and the init routines are bypassed. It jumps to a prescribed address stored in 0x467.
Looks like Intel screwed up, and didn't give the 286 enough power to virtualize real mode stuff. Can you hear that Intel commercial tune playing in your head? Bum bump bum bummmmmmmmmmmm
Also IMHO, by far their greatest mistake in history was when they went to a new protected mode environment in the 286, they carried forward the segmentation architecture. If you think about it, they could have had a strict v8086 environment in the 286 which would virtualize the 8086 completely giving compatability there, then go to a whole new instruction set and architecture in protected mode.
-Kevin - To Unsubscribe: send mail to majordomo@freiburg.linux.de with "unsubscribe openbios" in the body of the message