Michael Abrash

Michael Abrash is a game programmer and technical writer specializing in optimization and 80x86 assembly language, game programming, a reputation cemented by his 1990 book Zen of Assembly Language Volume 1: Knowledge. Related issues were covered in his later book Zen of Graphics Programming. After leaving Microsoft, where he wrote the low-level graphics primitives used by the Windows NT operating system, Abrash worked for id Software briefly starting in 1995 to work on fundamental graphics and 3D rendering challenges in the Quake engine. For this reason, his name appears on the credits screen in The Ultimate Doom.

Though Abrash did not directly write any code for the Doom engine, his work was influential on both it and John Carmack's earlier works, in particular the Keen engine and Wolfenstein 3-D. The strongest influence of Abrash's work on Doom itself is no doubt in its use of the page-flipped "Mode Y" video mode, which is a variant on the unchained "Mode X" which Abrash invented. The low-level assembly routine used to accomplish screen refresh in the DOS engine heavily resembles approaches used by Abrash in his own work.

Carmack has cited Abrash as a mentor and source of inspiration, and left the following glowing review for the special edition of Michael Abrash's Graphics Programming Black Book on Amazon.com: ''If you have any interest in programming, you should look at Michael Abrash's Graphics Programming Black Book Special Edition. It has just about everything he has written, from the ancient work on optimizing for the 8086 (still interesting to read) to the articles written during quake's development.'' I personally learned a lot from Michael's early articles, and I was proud to contribute to the later ones.

In addition, Raven Software later used some of Abrash's code directly in the automap for Heretic and Hexen, using a modified version of the Wu antialiased line drawing algorithm, as published by Abrash in an issue of Dr. Dobb's Journal.