Saturday, November 23, 2024

SpaceWar is back! Rebuilding the world’s first gaming computer

Must read

On my desk right now, sitting beside my ultra-modern gaming PC, there is a strange device resembling the spaceship control panel from a 1970s sci-fi movie. It has no keyboard, no monitor, just several neat lines of coloured switches below a cascade of flashing lights. If you thought the recent spate of retro video game consoles such as the Mini SNES and the Mega Drive Mini was a surprising development in tech nostalgia, meet the PiDP-10, a 2:3 scale replica of the PDP-10 mainframe computer first launched by the Digital Equipment Corporation (DEC) in 1966. Designed and built by an international group of computer enthusiasts known as Obsolescence Guaranteed, it is a thing of beauty.

The origins of the project go back to 2015. Oscar Vermeulen, a Dutch economist and lifelong computer collector, wanted to build a single replica of a PDP-8 mainframe, a machine he had been obsessed with since childhood. “I had a Commodore 64 and proudly showed it to a friend of my father’s,” he says. “He just sniffed and said the Commodore was a toy. A real computer was a PDP, specifically a PDP-8. So I started looking for discarded PDP-8 computers, but never found one. They are collectors’ items now, extremely expensive and almost always broken. So I decided to make a replica for myself.”

As something of a perfectionist, Vermeulen decided he needed a professionally made front panel cover. “The company that could make it told me I would need to pay for a whole sheet of four square meters of Perspex, enough for 50 of these panels,” he says. “So I made 49 extra, thinking I would find 49 fellow idiots. I had no idea that in the years after I would be making thousands at my dinner table.”

At the same time, Vermeulen began posting on various vintage computing groups on Google Groups where people were already working on software emulators of pre-microprocessor computers. As word about his replica spread, it very quickly became a group activity, and now more than 100 people are involved. While Vermeulen concentrates on designing the hardware reproduction – the front panel with its working switches and lights – others are handling various aspects of the open-source software emulation, which has a complex history. At its core is SIMH, created by ex-DEC employee and megastar hacker Bob Supnik, which emulates a range of classic computers. This was later modified by Richard Cornwell and Lars Brinkhoff adding to the driver support for the PDP-10’s ITS operating system and other Massachusetts Institute of Technology (MIT) projects. There were many other people involved along the way, some collecting and preserving old backup tapes, others adding refinements and debugging, or providing documents and schematics.

Happy hacking! … The PiDP-10 replica computer in Keith Stuart’s games room Photograph: Keith Stuart/The Guardian

The attention to detail is wild. The lights on the front aren’t just for show. As in the original machine they indicate the instructions being carried out, a smattering of CPU signals, the memory contents. Vermeulen refers to it as watching the heartbeat of the computer. This element was taken very seriously. “Two people spent months on one particular problem,” says Vermeulen. “As you know, LEDs flick on and off, but incandescent lamps kind of glow. So there was a whole study to make the LEDs simulate the glow of the original lamps. And then we found out that different lamps from different years had a different glow time. Measurements were done, math was applied, but we added lamp glow. More CPU time is spent on simulating that than on simulating the original CPU!”

Why? Why go to all this trouble? First, there’s the historical importance. Built from 1959 to the early 1970s, the PDP machines were groundbreaking. Not only were they much cheaper than the giant mainframes used by the military and large corporations, they were designed as multipurpose, fully interactive machines. You didn’t have to produce programs on punch cards which were then handed to the IT department, who would run them through the computer, which provided a print-out, which you’d debug maybe a day later. With the PDPs, you could type directly into the computer and test the results immediately.

Laborious … In the 1950s, before PDP machines, mainframe computers took up whole rooms and used punch cards to input computer programs. Photograph: Pictorial Parade/Getty Images

These factors led to an extraordinary burst of experimentation. Most modern programming languages, including C, began on DEC machines; a PDP-10 was the centre of the MIT AI Lab, the room in which the term artificial intelligence was invented. “PDP-10 computers dominated Arpanet, which was the forerunner of Internet,” says Lars Brinkhoff. “Internet protocols were prototyped on PDP-10s, PDP-11s and other computers. The GNU project was inspired by the free sharing of software and information on the PDP-10. Stephen Hawking’s artificial voice came from a DECtalk device, which came from Dennis Klatt’s voice-synthesis research begun on a PDP-9.”

PDPs were installed in university labs around the world, where they were embraced by an emerging generation of engineers, scientists and coders – the original computer hackers. Steve Wozniak got started with coding on a PDP-8, a smaller, cheaper machine which sold in its thousands to hobbyists – its operating system, OS/8, was the forefather of MS-DOS. Teenage schoolkids Bill Gates and Paul Allen used to sneak into the University of Washington to program PCP-10s. And it was on PDP computers that MIT student Steve Russell and a group of friends designed the shoot-’em-up, SpaceWar!, one of the first-ever video games to run on a computer.

Pioneering … Steve Russell at the Computer History Museum, California, 2011. Russell stands in front of Digital PDP-1, a computer game he developed in the early 1960s. Photograph: MediaNews Group/The Mercury News/Getty Images

This legendary game was not alone – there were many others at the time, because making games was an enjoyable way to explore what was possible. “There’s Dazzle Dart, a four-player laser tennis game, and Lunar Lander,” says Vermeulen. “Maze War was the first networked video game; people would connect two IMLAC minicomputers/graphics terminals over the Arpanet through a PDP-10 mainframe, and with that multimillion-dollar pile of hardware they could chase through a maze and shoot each other.” It was also on PDP computers that the original text adventures such as Colossal Cave and Zork were written, as well as the first multiplayer online games, including MUD and Star Trek.

These machines, then, are a vital part of our digital culture – they are the furnace of the modern games and tech industries. But to be understood, they need to be used. “The problem with computer history is that you cannot really show it by putting some dead old computers in a museum – that tells you almost nothing,” says Vermeulen. “You have to experience these machines, how they operated. And the problem with computers from before, roughly, 1975 is that they’re huge, heavy and more or less impossible to keep running. Paul Allen, co-founder of Microsoft, had a deep love for the PDP-10, and with the means that he had, he could afford a team of veteran technicians to repair and run one. But it proved very costly – sadly, his family decided to stop this after his passing.”

The answer is emulation. The PDP replicas all reproduce the original terminal fascias, with their lights and switches, but the computing is handled by a Raspberry Pi microcomputer attached to the rear via a serial port. To get it working at home, you slot in the Raspberry Pi, plug in a keyboard and monitor, boot it up and download the software. Next, flick a switch on the PDP-10 front, re-boot the Raspberry Pi, and now you’re in PDP mode, your monitor running a window emulating the old Knight TV terminal display. Using the command line interface (remember those?), you can then access a whole range of original programmes – including games.

This is what I was waiting for. We all understand SpaceWar’s seminal role in the birth of the modern games industry, but to play it, to actually control one of the spaceships fighting it out amid vector explosions in front of a flickering starscape … it feels like experiencing history.

Fifteen years after Vermeulen began work on his personal PDP-8 emulator, the Obsolescence Guaranteed group has sold many hundreds of its replicas and is working on more, including MIT’s experimental Project Whirlwind computer from the 1950s (which ran a simple version of tic-tac-toe). There is now a company, Chiriqui Electronic Design Studio, in Panama building the hardware. What started as a personal project has become something much larger. “We just had the ‘official’ launch of the PiDP-10 replica at MIT in Boston, where the original machine was located. Around 50 of the 1970s hackers joined us for a demonstration session. It was fun seeing people play a game of multi-user Maze War 50 years later!”

That’s the other reason the PiDP-10 is worthwhile: it’s fun. I never expected to see one of these things up close, let alone plug one into my monitor at home and play with it. It’s been a thrilling, nostalgic and weirdly emotional experience. Navigating the ITS disc system, with that glowing green dot-matrix font, its lists of intriguing programs and games, the message above the terminal command line that reads “happy hacking!”… it’s incredibly evocative.

Evocative … The PiDP-10 screen. Photograph: Keith Stuart/The Guardian

Meanwhile, the coders who have bought PiDP machines are making new programs and games. They range in age from 80-year-old PDP veterans down to 20-year-olds keen to experience a bygone era of programming. The lack of memory and processing power meant you had to write sleek, super-efficient code – there was no room for bloat. “Quite a few universities use the PiDP-11 and -8 in classes,” says Vermeulen. “Partly to show computer science students where we came from, and also because the super low-level programming that you still need to do for microcontrollers or hardware drivers is the sort of coding you learn really well on these dinosaurs.”

Brinkhoff agrees that, while there is nostalgia in these machines, they still have something to teach us. They are functional. “I enjoy writing new software for the 10; for example, a program to display fractals or generating QR codes,” he says.

“I hope this is something more people will pick up, because if you don’t do anything with the PiDP it will mostly just sit on a shelf, blinking its lights. It’s a pretty sight, but I feel a computer will not be truly happy if there are no users programming it.”

Latest article