Fake UEFI firmware

Discussions on more advanced topics such as monolithic vs micro-kernels, transactional memory models, and paging vs segmentation should go here. Use this forum to expand and improve the wiki!
Post Reply
User avatar
AlfaOmega08
Member
Member
Posts: 226
Joined: Wed Nov 07, 2007 12:15 pm
Location: Italy

Fake UEFI firmware

Post by AlfaOmega08 »

After getting disappointed for my 3-yrs motherboard not supporting uefi, and find that an upgrade wont be released I decided to write an UEFI fake firmware to be runt on top of legacy BIOS. The pourpose is to boot my OS on.top of.UEFI without buying another mobo/cpu etc...

A few questions come to my mind:
1) Is this actually feasible? I already wrote some boot code long mode but I'm not sure that anything can be implemented.
2) Where fan I found dova about the EFI Executable Format and EFI System Partition? The UERI specifications.tells to look for them on the UEFI website itself but I can't find them.
3) Did I read correctly? The firmware won't receive interrupts but drivers will only poll devices?
4) If I release.my code opensource, will someone join me?
5) Should drivers be fast (dma instead of pio) for something that will last only a few seconds?
6) Is multitasking used in a UEFI firmware?
7) more to come...!

Thanks
Last edited by AlfaOmega08 on Sat Jul 28, 2012 9:47 pm, edited 1 time in total.
Please, correct my English...
Motherboard: ASUS Rampage II Extreme
CPU: Core i7 950 @ 3.06 GHz OC at 3.6 GHz
RAM: 4 GB 1600 MHz DDR3
Video: nVidia GeForce 210 GTS... it sucks...
Nable
Member
Member
Posts: 453
Joined: Tue Nov 08, 2011 11:35 am

Re: Fake UEFI firmware

Post by Nable »

try googling before implementing anything.
At least, there are EFI roms for emulators, for example: http://smackerelofopinion.blogspot.com/ ... -bios.html
You can try porting it to be used with real hardware.

Then, if your motherboard is supported by coreboot, you may try to search about coreboot+EFI, here's somehow related link: http://blogs.coreboot.org/blog/category/uefi/
User avatar
AlfaOmega08
Member
Member
Posts: 226
Joined: Wed Nov 07, 2007 12:15 pm
Location: Italy

Re: Fake UEFI firmware

Post by AlfaOmega08 »

I did google but.my motherboard bis unsupported by coreboot. Also I found chamelon and.grub-efi to boot the Mac. But they only implement a small subset of UEFI needed to boot OSX.

I didn't find sources for TianoCore either...
Please, correct my English...
Motherboard: ASUS Rampage II Extreme
CPU: Core i7 950 @ 3.06 GHz OC at 3.6 GHz
RAM: 4 GB 1600 MHz DDR3
Video: nVidia GeForce 210 GTS... it sucks...
djmauretto
Member
Member
Posts: 116
Joined: Wed Oct 22, 2008 2:21 am
Location: Roma,Italy

Re: Fake UEFI firmware

Post by djmauretto »

Qui c'è un link dove puoi scaricare EFI (TIANOCORE) per QEMU.
http://sourceforge.net/apps/mediawiki/t ... title=OVMF

Io l'ho uso con QEMU per windows e gira abbastanza bene :-)
Considera che è sempre un emulatore e non una cosa reale, quindi se
vuoi sperimentare va benissimo, ma diffida sempre degli emulatori...
Quando avrai la possibilità, ti conviene prendere una scheda madre che supporti EFI
e sperimentare direttamente con una cosa reale :-)
User avatar
AlfaOmega08
Member
Member
Posts: 226
Joined: Wed Nov 07, 2007 12:15 pm
Location: Italy

Re: Fake UEFI firmware

Post by AlfaOmega08 »

L'ho già provato ma non trovo il source... "Already test ed OVMF but I cant find tianocore sources"
Please, correct my English...
Motherboard: ASUS Rampage II Extreme
CPU: Core i7 950 @ 3.06 GHz OC at 3.6 GHz
RAM: 4 GB 1600 MHz DDR3
Video: nVidia GeForce 210 GTS... it sucks...
User avatar
Owen
Member
Member
Posts: 1700
Joined: Fri Jun 13, 2008 3:21 pm
Location: Cambridge, United Kingdom
Contact:

Re: Fake UEFI firmware

Post by Owen »

User avatar
Firestryke31
Member
Member
Posts: 550
Joined: Sat Nov 29, 2008 1:07 pm
Location: Throw a dart at central Texas
Contact:

Re: Fake UEFI firmware

Post by Firestryke31 »

I've been working off and on on a UEFI implementation on top of BIOS. It's been shelved in favor of another project, but I'd still like to keep working on it once I've finished my current project. My current iteration is a restart after reviewing my previous iteration and how difficult to expand it was. All I have done is the MBR for reading GPT/MBR formatted disks, and started on the FAT32 VBR, so I still have a long way to go, especially since my plan was to do some low-level takeover from the BIOS (including modifying ACPI tables and memory maps, and if conceivable hook into SMM interrupts to emulate certain things). In my implementation ideally the user would be able to take their HDD and put it into a real UEFI machine and the OS would be none the wiser (other than maybe missing NVRAM variables and obviously different hardware). It's gonna take a while.
Owner of Fawkes Software.
Wierd Al wrote: You think your Commodore 64 is really neato,
What kind of chip you got in there, a Dorito?
ACcurrent
Member
Member
Posts: 125
Joined: Thu Aug 11, 2011 12:04 am
Location: Watching You

Re: Fake UEFI firmware

Post by ACcurrent »

Hmm... I know those Hackintosh guys would need something that supports EFI and I believe grub does have some form of EFI emulation to bootload XNU.
Get back to work!
Github
Nable
Member
Member
Posts: 453
Joined: Tue Nov 08, 2011 11:35 am

Re: Fake UEFI firmware

Post by Nable »

+1, i've also found recently that grub2 has efiemu modules out-of-the-box.
User avatar
AlfaOmega08
Member
Member
Posts: 226
Joined: Wed Nov 07, 2007 12:15 pm
Location: Italy

Re: Fake UEFI firmware

Post by AlfaOmega08 »

Efiemu only supports UEFI runtime services. The most simple to implement (and the only required by OSX). I'm writing something that will be installed onto the HD to fully replace.BIOS whit an UEFI-like software.
Please, correct my English...
Motherboard: ASUS Rampage II Extreme
CPU: Core i7 950 @ 3.06 GHz OC at 3.6 GHz
RAM: 4 GB 1600 MHz DDR3
Video: nVidia GeForce 210 GTS... it sucks...
Post Reply