Skip to primary content
Skip to secondary content

The Gary Hawkins Full Size Blog

Just like a newspaper without any interesting news in it

The Gary Hawkins Full Size Blog

Main menu

  • Contact
  • FAQ
  • Mastodon Profile
  • Online Safety Act

Monthly Archives: April 2013

Custom logo on UEFI boot screen

Posted on 30 April 2013 by Gary Hawkins

This is just one of those things you always wish you could do on a real piece of hardware, just “cos you can”, but once you can, you never actually do it.  But, now, you can actually “roll your own BIOS” when it comes to running virtual machines.  Two methods you can use with qemu/kvm – the first is the SeaBIOS package, which you can compile to produce a traditional 16-bit BIOS (though quite why you’d want to add a logo to that is beyond me, since the boot screen only appears for one or two seconds, tops); and secondly OVMF, which comes as part of the TianoCore EDK II UEFI development kit, which can (optionally) use a specially compiled version of SeaBIOS to provide a Compatiblity Support Module so that it can emulate a BIOS as well as being UEFI firmware.

As it so happens, it is possible to add a custom logo to the OVMF UEFI code.  I’ll assume you’re already familiar with how to roll your own UEFI here from the source.

  1. Create a BMP file using your favourite graphics program – use a black background.  Don’t make it any bigger than the logo size itself (i.e. don’t make it full screen)
  2. Save it as an 8-bit BMP file with 256 colours (note: GIMP 2.8 appears to be buggy in this regard and actually saves the image with the wrong number of bits even if the palette size is only 256 – I had to import the 24-bit file into Paint.net and save it as 8-bit from that)
  3. Copy it to the EDK source tree into the directory $EDK_HOME/MdeModulePkg/Logo/Logo.bmp (back up the existing one first)
  4. Compile your OVMF UEFI firmware
  5. That’s it!

And here’s the result … (click the image for a better look)

uefi_logo

Update: It’s been a long time since I’ve tried this, but it appears you can actually use 24-bit BMP files now (on the 202311 release of OVMF).  According to the source code they must not be compressed, so no RLE encoding or anything like that.  I’ve had success today with a 24-bit colour uncompressed BMP image, uncompressed, 640 pixels wide.  You may or may not need imagemagick installed for this to work.

Posted in Computers | Tagged logo, uefi
April 2013
M T W T F S S
1234567
891011121314
15161718192021
22232425262728
2930  
« Feb   May »

Categories

  • Books
  • Cars
  • Christmas
  • Coffee
  • Computers
  • Events
  • Food
  • Miscellaneous
  • Money
  • Music
  • Opinion
  • Roads
  • Shopping
  • Telecoms
  • Trains
  • TV
  • Uncategorized

Tags

  • 24-bit
  • 192kHz
  • adverts
  • analogue
  • atoc
  • audio
  • Blu-Ray
  • bread sauce
  • Brexit
  • bt
  • bt retail
  • Bucks Herald
  • ceefax
  • cgnat
  • debian
  • DNSSEC
  • DSO
  • e-mail
  • exhaustion
  • fabia
  • fares
  • faretools
  • FLAC
  • FreeSWITCH
  • Google Talk
  • Horse and Jockey
  • HTML
  • IPv4
  • IPv6
  • logo
  • nat
  • openpgp
  • pgp
  • PVR
  • rjis
  • Roads
  • sonar
  • Traffic Lights
  • train
  • trains
  • uefi
  • Waitrose
  • wheezy
  • World IPv6 Day
  • xmpp

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org

Copyright Notice

Copyright © MMXXIII Gary Hawkins.  Please don’t break the law by copying from this blog without permission. If you would like permission, please email me and ask me. You never know, I might even say yes!

Proudly powered by WordPress