SPACEWAR!
REAL-TIME CAPABILITY OF THE PDP-1
This paper was published in the DECUS Proceedings 1962.
The full citation is:J. M. Graetz, "Spacewar! Real-Time Capability of the PDP-1", DECUS Proceedings 1962: Papers and Presentations of the Digital Equipment Computer Users Society (Maynard, Massachusetts, 1962), p. 37-39.
A digitized copy is available at http://bitsavers.org/pdf/dec/decus/confProceedings/DECUS_1962.pdf.
Abstract
The game starts with each player in control of a spaceship (shown on PDP scope) equipped with propulsion rockets, rotation gyros, and space torpedos. The use of switches to control apparent motion of displayed objects amply demonstrates the real-time capabilities of the PDP-1.
Introduction
The demonstration program known as SPACEWAR! was first conceived in December, 1961 at an informal gathering of the Hingham Institute where Wayne Wiitanen, Stephen Russell, and the author were discussing some of the possibilities of the use of the large-screen CRT which was to be attached to the new PDP-1 computer at M.I.T. One idea that caught our fancy was the thought of a moving display under the control of the user. We thought that a simulation of ships in space would provide an excellent demonstration and the discussion developed into the Hingham Institute Study Group on Space Warfare, under whose auspices almost all of the work described here was done. The main control and computation programs were written and debugged in the first months of 1962 by Stephen R. Russell of Harvard.
The program is set up in the form of a game for two persons and a PDP-1. Each person has control over one of two displayed spaceship outlines. The object of the game is to destroy the opponent's ship by blasting him out of space with torpedos. Control is maintained over the ship's orientation by simulating rotational gyroscopes. All translation is achieved with the ship's main drive rocket; the ship will accelerate in the direction its nose is pointing as long as the rocket engines are turned on. Both ships are armed with ballistic missiles (torpedos) which are released from the nose of the ship with a velocity equal to the ship's velocity plus that imparted to the missile by the launcher. From then on, the torpedos are in true ballistic flight. Each ship has one other means of getting from one place to another, namely "hyperspace," which allows him to get out of the way quickly.
The display includes a background of stars and a bright, flickering star or "heavy star" in the center of the scope which maintains a rather fierce gravitational field.
The Game
At the beginning of the game two spaceships, equipped with 31 torpedos, are displayed in diagonally opposite quadrants of the scope face. The players operate switches for the purpose of maneuvering into position for joining the fray. (It is unwise to remain in a single position for a very long time, and also fruitless, for the torpedos have only a limited range.) The torpedos have two types of fuze: one is a proximity fuze which causes the torpedo to explode when it comes within a certain critical distance of any other collidable object which will also be caused to explode. The other is a time fuze which causes the torpedo itself to explode if it has not encountered another object after a given length of time.
The "heavy star" in the center is constantly exerting a strong gravitational influence on the two spaceships (torpedos are not affected by gravity). This star also has a very short capture radius; a ship with reasonably large intrinsic velocity can come in quite close to the star without fear of being captured. This maneuver is frequently used to change direction rapidly.
If a ship is captured by this star, it loses all velocity and is thrust into the "anti-point," that point on the surface of a topologically toroidal scope which is represented by the four corners of the face.
All collidable objects explode on coming into critical range. The current rules require that a game is won only if the remaining ship (after the opponent has exploded) can successfully avoid being blown up by any torpedos which may be left over. A tie is declared: when both ships collide (and explode); when an apparent victor is destroyed by a loose torpedo; or when both ships run out of torpedos. (Each ship has 31 torpedos at the start of each game).
The Spaceships
The two ships have different outlines making them more easily distinguishable on the scope face. Rotation is readily apparent and rocket blast is equally detectable. When the ship is blasting, a fiery tail is seen at the base of the ship, where the main rocket exhaust is placed. The spaceship outlines are generated and displayed by a program written by Daniel Edwards of M.I.T. This program provides a very fast and reasonably flicker-free display. Torpedos appear as single moving dots. They resemble stars rather closely.
The Heavy Star
A bright, flickering point in the center of the scope represents the massive star referred to as the "heavy star." This star has a strong effect (which approximates gravitation) on the two spaceships. The program for this was also written by Daniel Edwards. In the final version of SPACEWAR! he is going to provide an improved integration to eliminate some of the more unexpected, albeit interesting, properties of the "heavy star."
The Stars of the Heavens
To add verisimilitude to the display, a background of stars is provided. At first, this was merely a random display of dots. However, Peter Samson of M.I.T. has written a program which displays a star map of the sky as seen from the Earth's equator. The size of the scope limits the extent of the map to a 45° segment of the heavens. Stars down to just above fifth magnitude are displayed. The display moves imperceptibly across the face of the scope from left to right, and, given time, the complete band of stars of this section of the map will be displayed.
Hyperspace
This is an emergency device. It frequently happens that a ship cannot accelerate fast enough to get out of the way of an approaching torpedo. The player may send the ship into hyperspace then. The ship then will disappear and very shortly will reappear somewhere else on the scope. Since this is a way of getting from one place to another without traveling the distance between, the method used must be hyperspace! Each player has exactly three hyperspace jumps.
On most PDP-1s, the ships are controlled by switches in the Test Word. For the M.I.T. machine, however, two control consoles were devised by Robert A. Saunders and Alan Kotok, both of M.I.T. Each console has a double-throw switch to control rotation, a firing button, and a blast lever. Hyperspace is entered by pushing the blast lever forward and releasing.
Acknowledgement
Special thanks from the Hingham Institute are extended to: the various members of the Tech Model Railroad Club for help and encouragement; to Prof. Jack B. Dennis, director of the M.I.T. TX-0 and PDP-1 installations, whose assistance went beyond the generous allowance of time on the computer; and, to Digital Equipment Corporation without whose gift SPACEWAR! would still be wishful thinking at the Hingham Institute.