Category Archives: PC architecture

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 | 10 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

IBM PS/2 Model 50 Keyboard Controller

Thanks to John Elliott, a ROM dump of the PS/2 Model 50 keyboard controller (an 8742 chip) is now available. The IBM PC/AT keyboard controller (KBC) ROM has been analyzed earlier. So what exactly changed between the PC/AT and the … Continue reading

Posted in IBM, PC architecture | 1 Comment