PC Engines Home
tinyBIOS™ The open source embedded PC firmware solution
Summary: Not recommended for new designs - please consider coreboot as an alternative.

tinyBIOS™ was designed from the ground up for embedded PC applications such as network appliances. It is designed for easy adaptation and simple code. Features not needed or desired for embedded use have been left out.

  • Unattended operation. No more "keyboard failure - press F1 to continue" errors.
  • Access to source code means ease of adaptation and debugging. Control your destiny !
  • Absence of a setup screen eliminates the cost of CMOS RAM configuration and failures.
  • Small size (16 to 32 KB) means more space for your application.
  • Less code (around 10000 lines) - easier to understand and navigate.
  • Use the A386 assembler to build the entire BIOS in seconds.
Download Documentation (PDF)
Source tree

Please note that this is an old source tree. Current source code for ALIX and WRAP BIOS is available on request.

License The tinyBIOS™ core is now published under the Common Public License. Chipset support for two chipsets is open. Chipset modules for other parts can either be implemented by the user or licensed from PC Engines for a one-time fee.
Chipset support The following chipsets are supported. Most of these chipsets are EOL now...
Acer Labs ALI M1487 FINALi (free)
ALI M6117 (free)
ALI Aladdin V
AMD Elan SC400 / SC410
Elan SC520
SC1100 (VSA not supported, native audio driver required)
SC1200 (VSA not supported, native video and audio drivers required).
Intel 430TX
ST Microelectronics STPC Consumer II
STPC Elite
STPC Atlas
STPC Client, Consumer
VIA Technologies CLE266 / C3 CPU
ZF Micro Solutions ZFx86
24 March 2004 STPC Vega available.
15 May 2003 Geode SC1100 available.
4 January 2002 STPC Atlas became available. Removed STPC Industrial.
12 November 2001 STPC Consumer / Elite evaluation BIOS available.
17 May 2001 Added STPC Consumer II / Elite / Atlas listings.
12 February 2001 Initial release.
Which operating systems do you support ? Our customers have used tinyBIOS with DOS, Linux, FreeBSD and Windows NT. tinyBIOS is intended for use with open source operating systems, not optimized for Windows.
Do you offer turn-key adaptations ? Yes. Please contact PC Engines to discuss your project.
Do you offer technical support ? Yes, but not for free.
I want to replace the BIOS on my desktop PC - can I use tinyBIOS ? tinyBIOS is not intended as a desktop BIOS replacement. It is intended for use in embedded systems.
Why do you use the Common Public License ? I consider the CPL to be a flexible, well-written license. The CPL is a generic version of the IBM Public License.
Why aren't all the chipset modules open source ? Some are based on information that was provided to me by chip manufacturers under non-disclosure agreements.
Why do you charge for chipset modules ? Chipset modules are licensed for a one-time fee rather than a unit royalty. Anyone may implement and publish their own chipset modules. I will gladly refer customers to them, or add them to the open source code base.
Why do you use A386 rather than MASM/NASM/TASM ? Prior versions of tinyBIOS were based on an assembler I wrote in 1987. While ridiculously fast, it did have its limitations. A386 is the closest replacement I could find, easy to get through www.eji.com, and fairly priced at $90. Please, please do not attempt to use MASM, NASM, or TASM. Your time is worth more than that.
Why is tinyBIOS written in assembly rather than C ? The legacy BIOS specifications require parameter passing in registers rather than on the stack. Implementing this in C would be very cumbersome. The BIOS core is less than 10000 lines of assembly code, very manageable.
How difficult is it to adapt tinyBIOS to a typical embedded PC board ? Not very difficult. While you should have some x86 assembly language experience, most changes will be limited to selecting options, implementing support for your super I/O controller, and tweaking register settings.

Implementing new chipset modules requires more experience.

© 2002-2021 PC Engines GmbH. All rights reserved .