This is Conway's game of Life, implemented for MS-DOS in straight assembly language. I wrote it sometime in high school (late 1980s) to see how fast I could make it. In retrospect, the speed is not as impressive as the size. You don't see many 621-byte executable files these days. I'm posting it mainly as a curiosity; there are much better implementations out there. Just do a search for "Conway Life" and I'm sure you'll find a bunch. Though my favorite is, of course, my own screensaver that runs Life on the surface of a torus.

It runs in 80x50-character text mode. Don't try double-clicking on the file in Windows unless you've set the file's properties to run "full-screen". I recommend that you close all other applications, run a command window, press alt-Enter to make it full screen, and then run LIFE.COM from the command line. I think it would be dangerous to switch back to Windows while it's running; quit first.

I've tested it successfully under Windows XP with an NVidia GeForce MX, and under Windows 95 with an NVidia TNT card. It does not seem to work under XP with an NVidia GeForce 7600 GS (a more recent model). I don't know of any reason why it wouldn't work under any particular combination of Windows version and video adapter, except possibly that it uses the 80x50 text mode, which isn't used much anymore and so some cards may not support it. If it doesn't work for you, there's probably not much anyone can do about it.

When you run the program, you should see a blank screen with a blinking square in the middle. That's your cursor. Move it around with the arrow keys, and toggle cells "alive" or "dead" with the space bar. Press Enter to start it running, and then any key to halt it and go back to editing. Press Escape to quit.

There is no way to save and load images, slow down execution, or step through one generation at a time. I originally meant to add those functions, but I'm not about to do it now. (You could get one of those slow-down programs used for running old DOS games, but if you really want to do serious Life-ing, you should find a better implementation.)

One unusual thing about this version of Life is that the screen edges wrap around. Gliders glide off one side and back on the other. It seemed like the best way to do it when the universe is limited to a 78x48 grid.

Download here.


(silly game ad)