Linked by Eugenia Loli-Queru on Tue 14th Mar 2006 00:48 UTC, submitted by my friend Billy
Apple IBM researchers Singh, Smith & Reed are developing in their free time legacy BIOS support for Intel Macs. "BAMBIOS" is using Boch's BIOS emulation code and has also adapted its graphical BIOSes for the current ATi and Intel graphics chipsets used on the Intel Macs today. The BIOS itself loads as a small EFI-capable OS that then chainloads to a second stage boot manager to then boot non-EFI OSes (editor's note: In the past some unsupported VESA 1.2 PC users used a small DOS partition to load a special DOS-based "VESA 2.0 graphics bios" code that was preparing the way for what BeOS was expecting and then it was chainloading the BeOS from DOS). BAMBIOS is a very promising project to bring Windows and non-EFI Unices to the Mac platform, although the downside is that you most likely need updated versions for it for each new Mac released - if the Mac hardware has changed from its previous models that is. And if the trick used is indeed chainloading, then some quirky re-partitioning of the drive will be required by the user too. Update: Additional info from Amit Singh below.
Thread beginning with comment 104217
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE: Clean solution
by jjezabek on Tue 14th Mar 2006 13:07 UTC in reply to "Clean solution"
jjezabek
Member since:
2005-08-07

My only problem is that I don't trust Bochs' BIOS emulation code. It has problems with many OSes, especially with OSes like OS/2 or BeOS. It works so-so with Linux and XP, but if other OSes don't like it too much it means that there are remaining bugs in it or the solution is not complete. Hopefully the Bochs BIOS code gets more rich as time goes by and so BAMBIOS becomes more solid.

I don't think BIOS is the problem. OS/2 has problems running in many VMs, including VMWare (which is using PhoenixBIOS - a commercial BIOS implementation). OS/2 had been (in)famous for using undocumented instructions - e.g. a 286-specific version of LOADALL which made it break on 386s. I'd guess that problems with OS/2 are more related to CPU and MMU emulation than to BIOS.
What is 'BIOS emulation code'? ;)

I've read "framebuffer" somewhere in their presentation. S'that mean we'll have slow-as-hell graphics?

Now that's good ;)
Oh well - the short answer is no. Without the "framebuffer" you wouldn't be having any graphics at all (even on MacOS X).
I'll try to answer what you probably really meant: BAMBIOS will need a VGA BIOS - basically an interface for displaying graphics at a few common resolutions (320x240x8, 640x480x4, etc.). Windows is using the VGA BIOS in safe mode; as soon as you install a driver for your video card, the VGA BIOS isn't being used anymore. And BTW - using the framebuffer is in fact the only sensible way to implement a VGA BIOS, not to mention that it's also the fastest.

It's basically exactly like USB. Apple led the way, then five years later it became common-place on PCs. If you want to blame anyone, blame Microsoft for their failure to support contemporary (not new) hardware after six years spent developing Vista.

That's not really true. It's Microsoft who is dealing the cards here. No motherboard vendor will release a motherboard to retail stores which won't boot Windows; their customers wouldn't switch to Linux, but just return the motherboard for a refund.
Apple's hardware is not only 'new' but also in some ways 'weird' - it doesn't have a feature which it basically should have, as BIOS compatibility is part of EFI. Microsoft doesn't have to support every weird x86 based motherboard out there.

Reply Parent Bookmark Score: 5

RE[2]: Clean solution
by Mork from Ork on Wed 15th Mar 2006 02:55 in reply to "RE: Clean solution"
Mork from Ork Member since:
2006-03-15

This is a chicken and egg problem. No motherboard vendor will want to drop legacy support if Microsoft continues to prolong the life of BIOS. With Vista, they could have forced this transition to finally leave it behind. If Microsoft finally did this, motherboard vendors would now have incentive to drop legacy support. This in turn would emphasize other OS' that rely on legacy booting methods to update.

I also don't see anything weird about the Intel based Mac hardware. The Compatibility Support Module (aka BIOS compatibility) is an OPTIONAL part of EFI (refer to the 2nd paragraph).

http://www.intel.com/technology/framework/overview4.htm

Apple had no need to include it in their hardware because they chose the legacy free route to use a more modern firmware implementation which offered a better transition from OpenFirmware.

By also leaving a solution open to a third party vendor, Apple can also absolve itself from support related issues but also opens up another niche market for anyone capable enough to fill that role.

Users who don't need this ability won't have to be bothered with this while those who could make use of it will understand the delineation of responsibility when they install it.

Reply Parent Bookmark Score: 1