On Aug 29, 2013, at 9:22 AM, David Woodhouse <[email protected]> wrote:
> On Thu, 2013-08-29 at 09:13 -0700, Andrew Fish wrote: >> In the this case it is easy to explain. In UEFI (without CSM) there is >> no need to have a real mode IDT so there is typically nothing at >> address 0 (the protected mode/long mode IDT is usually not at zero). >> But even if the vector table existed there are no INT based BIOS >> 16-bit real mode services that are required by DOS to boot. Also >> BIOS/DOS imply magic hardware devices like 8259, VGA, PIT, etc and, >> these devices don't exist on all UEFI platforms. The Microsoft Surface >> RT would be an example of one of these platforms. > > If you *are* on a platform with the legacy PC devices, however, then you > could probably build SeaBIOS as a UEFI 'application' and boot that. > There are a few issues. 1) From a security perspective SMM is locked at this point and you can't add SMM drivers. Why is this important? Well BIOS/DOS assume a PS/2 keyboard controller so for USB keyboards the BIOS typically has a USB stack running in SMM that stuffs data into/out of the keyboard controller. I'm not sure if SeaBIOS has a non SMM scheme for this? Then there are problems with getting the hardware into the correct state. Like needing a BIOS Option ROM to get the video controller in VGA mode (DOS code can poke the video memory directly). > I suppose there will be people who say it can't possibly be done. But > they told me that about SeaBIOS-as-CSM too :) > Never say never. A simplistic bare metal VM on top of EFI with SeaBIOS in it might be more portable than trying to make a platform agnostic CSM. But man that is a lot of work to just run a DOS program prior to booting a real OS.... Thanks, Andrew Fish > -- > dwmw2 > ------------------------------------------------------------------------------ Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! Discover the easy way to master current and previous Microsoft technologies and advance your career. Get an incredible 1,500+ hours of step-by-step tutorial videos with LearnDevNow. Subscribe today and save! http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk _______________________________________________ edk2-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/edk2-devel
