Height-mapped raycasting on a 10MHz 68000

A raycasting engine with elevation, occluding sprites, and procedural levels on a TI-89. Every interesting decision is downstream of two numbers: a signed divide costs 158 cycles, and you have 32KB of RAM.