- This repository contains the fully reverse-engineered and commented source code for the Atari 2600 classic, Raiders of the Lost Ark. \ Unlike a raw disassembly, this project aims to provide a semantic understanding of the game logic. Variables, constants, and subroutines have been renamed and heavily commented to explain how the game works, from the procedural flute music to the complex collision logic in the Map Room.
- From src/raiders.asm: “THIS REVERSE-ENGINEERING PROJECT IS BEING SUPPLIED TO THE PUBLIC DOMAIN FOR EDUCATIONAL PURPOSES ONLY. THOUGH THE CODE WILL ASSEMBLE INTO THE EXACT GAME ROM, THE LABELS AND COMMENTS ARE THE INTERPRETATION OF MY OWN AND MAY NOT REPRESENT THE ORIGINAL VISION OF THE AUTHOR. THE ASSEMBLED CODE IS 1982, ATARI, INC.”
- Die analysis of the 8087 math coprocessor’s fast bit shifter (righto.com)
Floating-point numbers are very useful for scientific programming, but early microprocessors only supported integers directly. Although floating-point was common in mainframes back in the 1950s and 1960s, it wasn’t until 1980 that Intel introduced the 8087 floating-point coprocessor for microcomputers. Adding this chip to a microcomputer such as the IBM PC made floating-point operations up to 100 times faster. This was a huge benefit for applications such as AutoCAD, spreadsheets, or flight simulators. The downside was the 8087 chip cost hundreds of dollars.