UEFI

From Lazarus wiki
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Motivations behind this target

Unified Extensible Firmware Interface (UEFI) now replace BIOS in most current PCs.

Currently, there is two main options to develop UEFI applications :

- Tianocore : http://www.tianocore.org/
- gnu-efi : http://sourceforge.net/projects/gnu-efi/

Both solutions require a tedious setup process.

Thank to his internal linker, Freepascal can become the easiest option to develop UEFI applications, as no external tools would be required to start hacking.

Technical requirements

UEFI applications are PE binaries like Windows target. Freepascal already support that. The only difference is a different subsystem in the PE header.

Calling conventions under UEFI are identical to the corresponding one under Windows on the same architecture. Freepascal already support that too.