OSDev.org

The Place to Start for Operating System Developers
It is currently Tue Mar 19, 2024 12:33 am

All times are UTC - 6 hours




Post new topic Reply to topic  [ 7 posts ] 
Author Message
 Post subject: Implement BIOS for EFI
PostPosted: Sat Jul 06, 2019 7:23 pm 
Offline
Member
Member
User avatar

Joined: Tue Mar 06, 2007 11:17 am
Posts: 1225
A layer fully implementing the 16-bit BIOS to get a more standard machine from an EFI/UEFI-only board would be great

BIOS includes all DOS services for completeness.

I think that a way has to be figured to fully emulate 16-bit code but also be able to execute 16/32-bit code natively at the root of the system as much as to fully override the EFI/BIOS running.

There could be versions of the BIOS using pure emulation or virtualization with VT-x, etc.

It has to be possible to go from 64 or 32 bits UEFI to 16-bit mode if possible (with Unreal Mode).

Special test code should be developed to detect the execution paths for all UEFI capabilities and reimplementing them as a driver on the fly to run as native 16/32/64-bit code for use by our BIOS, fully customized and native for every board.
------------------------------------------------------

The goal would be to fully support COM, LPT, PS/2 ports, IDE adapters to plug SATA as old IDE hard disks and being able to access them from emulation. CGA/EGA/VGA/SVGA/VESA modes (at least all native hardware modes should be exposed if not non-existent standard emulated modes), mouse, and the like, should be available.

A BIOS that runs natively in 32/64-bit portably would also be better than having only EFI.

It would make for PC-compliant computers again, specially if all new computers in coming years start ending up being EFI/UEFI-only motherboards.

_________________
Live PC 1: Image Live PC 2: Image

YouTube:
http://youtube.com/@AltComp126/streams
http://youtube.com/@proyectos/streams

http://master.dl.sourceforge.net/projec ... 7z?viasf=1


Top
 Profile  
 
 Post subject: Re: Implement BIOS for EFI
PostPosted: Sat Jul 06, 2019 8:07 pm 
Offline
Member
Member

Joined: Sun Jun 23, 2019 5:36 pm
Posts: 618
Location: North Dakota, United States
I significantly doubt this is going to ever happen. UEFI/EFI already has the CSM; why would you ever want to add even more complexity on top of the complexity of UEFI and CSM together by adding a full BIOS layer (and thereby defeating the purpose of UEFI)? UEFI was designed, and is, a full BIOS replacement. It is not designed to function completely like a PC-AT BIOS, hence its BIOS emulation mode, aka CSM, which, if memory serves, operates in 64-bit only mode. I doubt you're going to ever find a UEFI system that operates in 16-bit mode. 32-bit mode is more possible though I don't know of any system that has a 32-bit UEFI implementation that is popular or well-known that is x86 compatible.


Top
 Profile  
 
 Post subject: Re: Implement BIOS for EFI
PostPosted: Mon Jul 08, 2019 1:27 am 
Offline
Member
Member

Joined: Wed Sep 19, 2012 3:43 am
Posts: 91
Location: The Netherlands
I would argue that ditching the legacy (PC-AT) compatibility is one of the best things about UEFI.
The x86 (and x68_64, etc) architectures suffer from a huge amount of backward compatibility bloat and this is a nice cleanup.

Why would you even want to boot through a virtualised BIOS. Why not boot a (tiny) Linux kernel and hypervisor and emulate a BIOS machine through that.
The advantages are that (almost) no coding is required and it uses existing, well tested technologies


Top
 Profile  
 
 Post subject: Re: Implement BIOS for EFI
PostPosted: Mon Jul 08, 2019 2:53 am 
Offline
Member
Member
User avatar

Joined: Sat Mar 31, 2012 3:07 am
Posts: 4591
Location: Chichester, UK
Ditching 16-bit mode on x86 processors is the next logical step.


Top
 Profile  
 
 Post subject: Re: Implement BIOS for EFI
PostPosted: Mon Jul 08, 2019 7:48 am 
Offline
Member
Member
User avatar

Joined: Fri Oct 27, 2006 9:42 am
Posts: 1925
Location: Athens, GA, USA
~ wrote:
It would make for PC-compliant computers again, specially if all new computers in coming years start ending up being EFI/UEFI-only motherboards.


'Start'? That ship has already sailed. The last Legacy BIOS motherboards I know of (aside from that one specific SBC mentioned in an earlier thread) were taken off the market in 2012, at least in North America, and I expect that the same applies in most of Europe (including Spain, unless something very odd is going on there). I'm pretty sure that the SBC in question is the last BIOS system being made anywhere, and as I said in the earlier thread, the SBC itself is mainly meant as a drop-in replacement for legacy embedded hardware.

Seriously, even backwards support for BIOS (the CSM) is going to be discontinued in new chipsets as of the end of this year by both Intel and AMD, unless things have changed (we've discussed this matter in that same thread).

~, I get that you see 16/32-bit PCs running MS-DOS as some sort of pinnacle of computing, but for most people, it isn't even a forgotten time - it's a time they had never experienced personally at all. Even in the US and Europe, there are more people whose only experience with computing has been with iOS or Android than there are who have ever used vanilla MS-DOS. Regardless of whether this is a good thing or a bad thing, it is a thing.

_________________
Rev. First Speaker Schol-R-LEA;2 LCF ELF JAM POEE KoR KCO PPWMTF
Ordo OS Project
Lisp programmers tend to seem very odd to outsiders, just like anyone else who has had a religious experience they can't quite explain to others.


Top
 Profile  
 
 Post subject: Re: Implement BIOS for EFI
PostPosted: Mon Jul 08, 2019 12:58 pm 
Offline
Member
Member

Joined: Sun Jun 23, 2019 5:36 pm
Posts: 618
Location: North Dakota, United States
Go, Schol-R-LEA! :) I was born in 1999. I first used a computer when I was 6 years old and fell in love with them then, and have been in love with them ever since.
While I have experienced a BIOS firmware, it is not something I actually enjoyed. Programming with them is even harder since there is no standardized interface that we know for sure all BIOSes will implement, so its a hit-or-miss situation. UEFI changes that completely, something I am grateful for; as a blind person, I want to be able to operate my computer at all levels, and UEFI makes that possible. Whether firmware vendors will implement that is an entirely different story. I'd write a driver for it, but unfortunately I have absolutely no experience with UEFI programming -- though I've read it and have tried it before.
As for DOS? Throw DOS out the nearest window or airlock near you. The only "DOS" that I have experienced, if you can call it that, is the windows command prompt. While I have used Dosbox, I found it quite the miserable experience.


Top
 Profile  
 
 Post subject: Re: Implement BIOS for EFI
PostPosted: Mon Jul 08, 2019 3:06 pm 
Offline
Member
Member
User avatar

Joined: Mon May 22, 2017 5:56 am
Posts: 811
Location: Hyperspace
I'm not sure if it would be fun to write or just too frustrating to be worth it. Compatibility issues can get unpleasant at times. I'd suggest porting SeaBIOS to UEFI, but as mentioned, how long is real mode going to be available on UEFI-only systems? Better to buy computers built for BIOS, if BIOS is what you want, and no, they are NOT going to all vanish from the Earth tomorrow!

I hate all this "wah wah there will be no BIOS computers ever starting tomorrow!" It was not one BIOS-based SBC released in 2018, it was one BIOS-based SoC which is already available in a whole range of SBCs for commercial applications and one for hobbyist. If a new SoC was released, there must be other such SoCs on the market. Knowing a little about this side of the market, I'm 100% certain they will still be available new for at least 10 years. Devices for industrial applications especially do NOT go away when they "become obsolete".

Edit: I'm sorry, that's two whole ranges of SBCs, System On Module and Panel PC, and it's not even one SoC, it's a range of SoCs. And that's just from the one link which appeared in these forums previously. What else is out there?

_________________
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 7 posts ] 

All times are UTC - 6 hours


Who is online

Users browsing this forum: DotBot [Bot], Google [Bot] and 14 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group