Spacewar!

This is a virtual DEC PDP-1 emulated in HTML5/JavaScript running the original code of "Spacewar!", the earliest known digital screen game. The emulation is based an the original PDP-1 emulation by Barry Silverman, Brian Silverman, and Vadim Gerasimov.

This implementation by Norbert Landsteiner, mass:werk – media environments, 2012 – 2016

Spacewar! was conceived in 1961 by Martin Graetz, Stephen Russell, and Wayne Wiitanen. It was first realized on the PDP-1 in 1962 by Stephen Russell, Peter Samson, Dan Edwards, and Martin Graetz, together with Alan Kotok, Steve Piner, and Robert A Saunders. – Spacewar! is in the public domain, but this credit paragraph must accompany all distributed versions of the program.

This page provides "Spacewar!" in its original resolution of 1024 x 1024 px for use with large screens or high-density ("retina") displays.

Versions available (by the "versions menu" at the top left of the emulated display):

Some research has been invested in order to identify various versions and paper tapes, some of these versions are here playable for the first time in decades. The locations of the individual sources are linked in the descriptions above. Versions marked "[bin]" are loaded as-is from binary paper-tape images as they are found in the archives. Versions marked "[rim]" were newly assembled for this emulation from historic source listings. Modules marked "[mod]" are modified versions based on genuine listings.
You might want to play in classic setup with the "Sun" killing on contact by activating sense switch 5 (see the options menu options menu icon at the top right of the screen).

Usage

Set your browser to presentation mode and choose an appropriate zoom factor.
For retina/high-resolution devices (with a pixel density of 2 or higher) the resolution will be already adjusted to double density.

See the options menu options menu icon at the top right of the screen for emulation options.
Visit the "Sense Switches / Setup" dialog to select a national or non-standard keyboard layout.

For details, credits, and a browser-optimized version see http://www.masswerk.at/spacewar.

PDP-1 Sense Switches

The PDP-1's control console provided an array of switches, the “sense switches”, which were used to control some of the game's behavior (“off” = default settings):

(unknown)

(unknown)

(unknown)

(unknown)

(unknown)

(unknown)

Emulation:

(On: display each frame, Off: double frames, no flicker)