The Death Match 3D raycasting engine was my first attempt at 3D graphics. Running on a ‘286, I was trying to recreate a Wolfenstein-like game. I wrote the original version using native Pascal and started converting the code over, piece-by-piece, until the main loop was mostly assembler. I got stuck with trying to do 32-bit division quickly on a 16-bit processor and, unfortunately, gave up.

I could never match the speed of Wolfenstein because from what I understand, the Wolfenstein line-scaling routines were all pre-compiled for the different heights. I’ll give credit to Carmack here for his stroke of genius.

Read full post