Choosing output mode

285 Views Asked by At

I am new to OSDev, and I am currently trying to write my OS from bare bones, i.e. using GRUP as my bootloader, on x86 arch. I want my OS to support both BIOS and UEFI boot.

I am currently trying to write my own graphical interface. And I am kind of confused on how to do it so it would work on all platforms.

I observed that on UEFI 2.x I must use GOP, while on UEFI 1.x I should use UGA and on BIOS I must use either VESA or VGA.

Does it means that in order to implement a cross-firmware OS I would have to support all of them? And only choose one from the supported interfaces? How can I even tell from my OS if I was booted by UEFI? And what version of UEFI?

Should I just abandon the compatibility goal and simply pick one setting and implement my OS for that one?

0

There are 0 best solutions below