New video BIOS for bhyve

Matthew Grooms mgrooms at
Fri Jul 19 14:43:23 UTC 2019

On 7/19/2019 5:02 AM, Henrik Gulbrandsen wrote:
> 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.

Hi Henrick,

Wow. This looks impressive. Thanks for taking it on :)

> 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.

I wonder if this could be related to your CPU not supporting 
unrestricted guest mode? I know it's required for some bhyve functionality.

> 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:
> 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.
Are you maintaining your changes in a public repo somewhere? If so, it 
would be great if you could share the location.



More information about the freebsd-virtualization mailing list