The Mystery of the 8x19 Font in Intel BIOS

2025-08-18

This article details the author's journey to uncover the origins of a non-standard 8x19 font found in Intel motherboards' BIOS. Starting with a BIOS POST screenshot from an Intel AN430TX board, the author discovers early Intel boards (like the AN430TX and AL440LX) used a custom 8x19 font, unlike the standard 8x16. To solve the mystery, the author attempts to decode BIOS images, ultimately succeeding with a clever method. This reveals the font's presence in early BIOS versions, cleverly integrated with the string module to save space. Further investigation shows the font's use across different eras, BIOS manufacturers (AMI and Phoenix), and even into later EFI shells. The author speculates Intel, not the BIOS manufacturers, is the font's source, analyzing its role in display technology's evolution.

Read more
Hardware

Google AI Search: Hallucinations More Convincing Than Facts?

2025-05-31

The author attempted to use Google AI search to find an old IBM PS/2 server model, only to discover the AI repeatedly giving fabricated and contradictory answers, even inventing a non-existent model, "PS/2 Model 280," and its specifications. While the AI occasionally provides the correct answer, the incorrect answers are more convincing because they are detailed and appear realistic. This highlights the potential for significant errors in AI search results; even if an answer sounds convincing, it may not correspond to reality. Users should exercise caution.

Read more

The Evolving Saga of 80387 FPU State Saving: A Tale of Documented Errors

2025-02-07

While investigating the behavior of x87 Floating Point Units (FPUs) and their state saving mechanisms (FSTENV/FLDENV and FSAVE/FRSTOR instructions), the author discovered discrepancies between early Intel documentation and later revisions concerning the 32-bit protected mode FPU state. Early 80387 documentation omitted the floating-point opcode from the 32-bit protected mode FPU state, while updated documentation included it. This led to several third-party reference books perpetuating the outdated information for years. The story highlights the evolution of technical documentation and how errors can persist in technical literature for extended periods.

Read more

A 50-Year-Old Bug in C's File I/O: Unraveling a Legacy Mystery

2024-12-26

While improving a DOS emulator, a developer stumbled upon a seemingly trivial bug in file I/O: appending text to a file using the `echo` command produced unexpected results. Debugging revealed a flaw in how C runtime libraries handle switching between reading and writing, a flaw tracing back to the 1970s and even earlier UNIX systems. The article delves into the historical context, from early K&R C to modern C standards, exploring implementation differences across various UNIX versions and C compilers. The root cause is identified as limitations in early C libraries' handling of update mode, with variations in how different operating systems and compilers addressed these limitations. The author concludes that even today, for portable C code, an explicit `fseek` call is necessary when switching between reading and writing a file.

Read more
Development file I/O legacy bug

DOS APPEND Command: Bridging the Gap Between Old and New

2024-12-20

While reconstructing the DOS 2.11 source code, the author encountered a challenge: the ancient MASM 1.25 assembler lacked directory support, clashing with modern file organization using a tree structure. To avoid a monolithic directory, the author cleverly employed the DOS APPEND command. APPEND is a TSR (Terminate and Stay Resident) program that intercepts system calls like file opening and searches a predefined path list if the file isn't found in the current directory. This allowed MASM 1.25 to locate files within the hierarchical structure, resolving the incompatibility and highlighting APPEND's surprising utility in specific scenarios.

Read more
Development