Category Archives: PC architecture

WordStar needs address wraparound?

The CP/M compatible interface in DOS was initially documented, later forgotten, and then re-discovered every once in a while. In 1989, John Switzer described parts of the CALL 5 system call interface mechanism in a slightly hysterical article as a “back … Continue reading

Posted in DOS, PC architecture, WordStar | 11 Comments

Who needs the address wraparound, anyway?

The infamous A20 gate is well known and documented in hair-raising detail. What’s much less well documented is the real purpose of the A20 gate, that is, who actually needs the 8086 address wrap-around to be emulated in the first … Continue reading

Posted in DOS, PC architecture | 4 Comments

The Danger of Knowing Too Much

A few days ago I had to look a little closer at Microsoft’s KEYB.COM because it was misbehaving in a virtualized environment. As a reminder for those readers who perhaps forgot, KEYB.COM was the DOS keyboard “driver” with support for … Continue reading

Posted in DOS, PC architecture | Leave a comment

IBM PC/AT 8042 Keyboard Controller Commands

Anyone trying to use the classic 8042-style keyboard controller (KBC) found in the IBM PC/AT and nearly all later PCs typically runs into a problem with lack of accurate documentation. The 8042 (or 8742, or any number of compatible parts … Continue reading

Posted in PC architecture | 22 Comments

Detecting floppy drive presence and type

Detecting floppy drives is surprisingly tricky and poorly understood. The difficulty lies mainly in the interface between the floppy disk controller (FDC) and the actual drive(s). The interface isn’t particularly complex, but it isn’t straightforward, and it does not follow … Continue reading

Posted in BIOS, PC architecture | 1 Comment

DOS Memory, Managers & Extenders, Part I

To understand why the maddeningly complex world of DOS memory managers and extenders came to be, it’s necessary to understand the evolution of the PC platform. Even though memory managers and DOS extenders reached their peak on 32-bit 386 and … Continue reading

Posted in DOS, PC architecture, PC history, x86 | 26 Comments

The floppy controller evolution

The floppy subsystem in PCs hadn’t mutated over time quite as much as, say, the hard disk subsystem, but prior to its extinction in the early 21st century, the floppy disk controller (FDC) did evolve noticeably. In the original IBM … Continue reading

Posted in PC architecture | 13 Comments

The Fixed Disk Parameter Table

The Fixed Disk Parameter Table, or FDPT, is a structure primarily used by the BIOS in IBM compatible computers, but is also of critical importance to some (especially older) operating systems which do not use the BIOS. The FDPT was … Continue reading

Posted in BIOS, PC architecture, Virtualization | 3 Comments

Geometry Problems

When introducing hard disk support in the PC/XT back in early 1983, IBM made a very unfortunate design decision: the information about drive geometry was exposed in the BIOS, and even worse, in the boot sector stored on the disk. SCSI … Continue reading

Posted in BIOS, PC architecture, Virtualization | 2 Comments

The PC floppy subsystem

The PC floppy subsystem, ubiquitous and indispensable until the early 21st century, suffered the typical fate of many “legacy” subsystems: The initial design was adequate, but did not adapt to newer and more complex hardware. With the original IBM PC, … Continue reading

Posted in PC architecture | Leave a comment