Category Archives: PC architecture

First ROM Shadowing

The other day I was asked an interesting question: What was the first BIOS with support for ROM shadowing? In the 1990s, ROM shadowing was common, at first as a pure performance enhancement and later as a functional requirement; newer … Continue reading

Posted in C&T, Compaq, IBM, PC architecture, PC history | 43 Comments

Xenix 2.2 vs. VGA

The other day I started wondering why certain old versions of 286 and 386 XENIX look a bit weird in emulation: The characters are cut off, because XENIX sets up an EGA text mode with 8×14 character matrix but uses … Continue reading

Posted in 286, 386, PC architecture, PC history, VGA, Xenix | 14 Comments

Learn Something Old Every Day, Part IV: Ctrl+Scroll Lock is Ctrl+Break

The other day I tried running NSNIPES, a multiplayer networked game that came with old versions of NetWare. The game worked fine, but I couldn’t get out of it. Esc did nothing, any “usual” combinations like Alt+X, Alt+Q or similar … Continue reading

Posted in NetWare, PC architecture, PC history | Leave a comment

8237A DMA Page Fun

The other day I was trying to fill a couple of gaps in my understanding of the Intel 8237A DMA controller documentation. I wrote a small testcase that performed a dummy transfer and modified the base address and count registers … Continue reading

Posted in Intel, PC architecture, PC history | 3 Comments

386 Cache Coherency

I’ve been slowly chewing my way through U.S. Patent 5,724,549, titled Cache Coherency without Bus Arbitration Signals, initially filed by Cyrix Corporation in 1992 and published in 1998 (when it was utterly irrelevant, but such is the life of patents). … Continue reading

Posted in 386, Cyrix, PC architecture, PC history | 15 Comments

A Brief Visit to Disk Geometry Hell

Several weeks ago I thought I’d install NetWare 3.12 in a virtual machine using the BusLogic SCSI controller emulation. While configuring a 1.5 GB virtual drive, I thought I should be safe and not run into any trouble with a … Continue reading

Posted in BusLogic, IBM, NetWare, PC architecture, Storage | 31 Comments

More Fun with ISA DMA

A reader comment on a previous post on ISA DMA pointed out that UMBPCI (or rather the DMACHK utility distributed with it) does something unusual with regard to ISA DMA. There was a suspicion of somehow accomplishing the mythical memory-to-memory … Continue reading

Posted in PC architecture, PC hardware, Software Hacks | 8 Comments

A Piece of History

A few months ago I received a well-used but not abused copy of Rakesh K. Agarwal’s book 80×86 Architecture and Programming (Volume II): Architecture Reference, published by Prentice Hall in 1991. This is an unusually well-informed book, no doubt because … Continue reading

Posted in 386, Books, Cyrix, Intel, PC architecture, PC history | 6 Comments

The A20-Gate Fallout

A recent post explored the motivation (i.e. backwards compatibility) to implement the A20 gate in the IBM PC/AT. To recap, the problem IBM solved was the fact that 1MB address wrap-around was an inherent feature of the Intel 8086/8088 CPU, … Continue reading

Posted in IBM, Microsoft, PC architecture, PC history | 91 Comments

Floating-Point Exceptions and DOS Extenders

Recently I had a need to test the behavior of floating-point exceptions (FPEs) in environments where traditional FPE reporting is used. To briefly recap, in the original PC equipped with an 8088/8087 pair, floating-point exceptions, which are generally asynchronous events, were … Continue reading

Posted in 386, Bugs, DOS, DOS Extenders, PC architecture | Leave a comment