Previously, I wrote an article on an Introduction to Zephyr , a popular RTOS ( the most popular RTOS?) in the embedded systems space today, ...
Grandpa, Tell Me The Story Again About The A20 Gate
After my previous article on the keyboard controller interface , there was a global public outcry (well, OK, there was Rothman ) absolutely ...
The Keyboard Controller Interface, 0x60/0x64
The original IBM PC (1981), and its immediate successor, the IBM PC/XT (1983), had keyboards limited to unidirectional communication: data ...
Guide to the SWEBOK v4.0 Has Been Released
The Guide to the Software Engineering Body of Knowledge (SWEBOK) v4.0 was released on October 15, 2024. The Guide is a publication of the ...
Generating EDKII Build Reports
This article describes how the EDK2 build reporting system works. I think it's a little known topic; most people just run a build and s...
From .c to SPI: How Code Becomes Firmware
There is a long and complex series of steps that turn your EFI source code into bits sitting on a SPI part. Ever wonder how that works? I ...
VS Code Plugin for UEFI: Edk2Code
One of the challenges of EDK2 development is its domain specificity. By that, I mean that EDK2 is laser-focused on one, and only one, thing...
Pardon the Interruption... A Brief History of Interrupts
One of the most overloaded terms in the computer industry is interrupt . As in: IRQ5, NMI, APIC, LINT[1:0] , INT 13h , INTR , INT and IN...