New video BIOS for bhyve

Henrik Gulbrandsen henrik at gulbra.net
Fri Jul 19 10:02:16 UTC 2019


In the last few months, I have been extending the video support in bhyve
to allow booting from live ISO images, which sometimes lack UEFI 
loaders.
There was already a video BIOS with dormant support for VGA, but I could
not use that, because the X11 int10 module runs a real-mode x86 emulator
that aborts when it tries to enter the C code running in protected mode.

Instead, I added support for PCI Expansion ROMs to bhyve and wrote a new
SVGA video BIOS from scratch in 8086 assembly code. The current features
include VGA modes 3 and 12h, 24-bit and 32-bit VESA modes from 640x480 
to
1920x1200, and enough BIOS functions to boot a typical Linux desktop.

At this point, I think it's good enough for a preliminary release, so if
you are interested, you will find all patch files at the following URL:

     https://www.gulbra.net/freebsd-bhyve/

My apologies for the 15-year-old web layout, which will probably break
horribly on modern smartphones. Also, I hope I have not duplicated the
work of someone else. I didn't want to announce this before it worked.

/Henrik



More information about the freebsd-virtualization mailing list