The content on this page is all about developing of
UEFI applications
and drivers using Microsoft Visual Studio 2026 for x86 platforms.
The toro C Library introduced here is written by myself only independently of any other source code and without any other contribution.
The toro C Library and all associated materials are original works authored solely by Kilian Kegel, unless otherwise stated.
All copyrights and other intellectual property rights are owned by Kilian Kegel.
License notice toro C Library binary
toro C Library binary is free to use like the GLIBC runtime library
Developers are free to use toro C Library binary to compile any program, regardless of its license.
License notice toro C Library source code
Copyright (c) 2017-2025, Kilian Kegel. All rights reserved.
SPDX-License-Identifier: GNU General Public License v3.0
- update to latest available ACPICA drop 20251212
- Enable Windows 64 full DEBUG support (including toro C Library source code)
All C90/ANSI C functions of math.h compared against original Microsoft C Library implementation:

- add errno.h support for math.h functions
- publish math.h C-Validation Suite results
"Credit must be given to those people who played key roles in the development of the 8087.
The 8087 would not have been possible without the clear insight and strong guidance offerred by Prof. W. Kahan at UC Berkeley.
We did not do as well as he wanted, but we did better than he expected."
[0]
[1]
[2]
The 8087 successor 80387 is fully IEEE 754 compliant.
The Math-Coprocessor is the foundation of this math library, providing a space-optimized,
ROM-able implementation of C's MATH.H functions while maintaining the precision and correctness
already established in earlier x87-based math libraries.
Since the traditional math coprocessor 80387 is still present in current x86 processors and is
also not deprecated in the X86S specification .PDF,
it can be safely used here, now and in the future on x86-based platforms.
The 80387 processor has various improvements over its 8087 predecessor, such as
-
range extension for transcendental function:
Instruction function FPTAN Partial tangent FPATAN Partial arctangent F2XM1 2x - 1 FYL2X Y * log2X FYL2XP1 Y * log2(X + 1) -
new instructions, e.g.
Instruction function FXAM Examine Floating-Point FSIN sine FCOS cosine
That has reduced the programming effort dramatically and made algorithms very simple and easy to implement.
toro C Library source code
builds with LLVM/CLANG tool chain in Visual Studio 2026
Flagship Projects based on toro C Library
| Flagship Project | Content |
|---|---|
| toro C Library source code |
builds with LLVM/CLANG tool chain in Visual Studio 2026![]() |
| ANSI C for UEFI Shell | getting started with simple programs ![]() |
| ACPICA | Intel ACPI COMPONENT ARCHITECTURE Original Intel reference implementation running in UEFI Shell: - AslCompiler.EFI - AcpiBin.EFI - AcpiDump.EFI |
| UEFI-SHELL | Build original UEFI SHELL from latest available EDK2 drop![]() 1. integrate Tianocore EDK2 build tools into project (portable build) 2. introduce ♉toro-UEFI-SHELL with plugins and other improvements build with VS2026. |
| TSCSync | TimeStampCounter-Synchronizer![]() 1. Introduce TUI TextUserInterface, a menu driven UEFI application — that looks not so bad... 2. Introduction of multi chart 3. Introduce reliable speed measurement to enable TSC for timer and wallclock usage AcpiClkWait() vs. InternalAcpiDelay() |
| Visual-LIBXLSXWRITER-for-UEFI-Shell | Create XLSX tables in UEFI and Windows applications libxlsxwriter-port to Visual Studio ![]() Also for Windows. |
| EDK2 Emulator | Get started with the original TianoCore UEFI/BIOS Framework in the Windows Emulator. Understand UEFI software, configuration and build architecture from the ground up. ![]() |










