Original Zork MDL Source Code Has Been Released

Though mostly known for its releases on countless 8-bit personal computers from the 1970s and 1980s, the game of Zork began its life on a PDP-10 mainframe. Recently, MIT released the original source code for this version of Zork. As we covered a while ago, the history of Zork is a long and lustrous one, a history that is based on this initial version written in MDL.

To recap, MDL is a LISP-derived language that excels at natural language processing. It was developed and used at MIT’s AI and LCS (now CSAIL) departments for a number of projects, and of course to develop games with. The use of MDL gave Zork as a text-based adventure a level of interaction that was far ahead of its time.

What MIT has made available is the source code from Zork as it existed around 1977, at a time when it was being distributed to universities around the US. For purely educational purposes, obviously. This means that it’s a version of Zork before it was commercialized (~1979), showing a rare glimpse of the game as it was still busily being expanded.

Running the game will take a bit of effort, however. These files were retrieved from an original MIT backup tape that was used with their PDP-10 machines. Ideally one would use a 1970s-era PDP-10 mainframe with an MDL compiler, but in a pinch one could run a PDP-10 emulator as well.

Let us know whether you got it to run. Screenshots (ASCII or not) are highly encouraged.

Restoring A PDP-10 Console Panel

The PDP-10 was one of the first computers [Jörg] had gotten his hands on, and there are very, very few people that can deny the beauty of a panel full of buttons, LEDs, dials, and analog meters. When one of the front panels for a PDP-10 showed up on eBay, [Jörg] couldn’t resist; a purchase that would lead him towards repairing this classic console and making it functional again with a BeagleBone.

The console [Jörg] picked up is old enough to have voted for more than one Bush administration, and over the years a lot of grime has covered the beautiful acrylic panels. After washing the panel in a bathtub, [Jörg] found the dried panel actually looked worse, like an old, damaged oil painting. This was fixed by carefully scraping off the clear coat over two weeks; an important lesson in preserving these old machines. They’re literally falling apart, even the ones in museums.

With the front panel cleaned, [Jörg] turned his attention to the guts of this panel. The panel was wired up for LEDs, and each of the tiny flashlight bulbs in the pushbuttons were replaced. The panel was then connected to a BlinkenBone with a ton of wiring, and the SIMH simulator installed. That turns this console into a complete, working PDP-10, without sucking down kilowatts of power and heating up the room

This isn’t the first time we’ve seen [Jörg] with a BeagleBone and some old DEC equipment; earlier he connected the front panel of a PDP-11 variant to one of these adapters running the same software.

Putting A PDP-10 On An FPGA

[dgcx] has been working on reimplementing a PDP-10/x on an FPGA for the last 2 and a half years. This surprised us because we’re only hearing about this project now.

After designing three versions, [dgcx] eventually ended up with a one-FPGA implementation of a PDP-10 and an awesome PDF writeup. Although PDP-10 emulators do exist, this project isn’t an emulation – the system actually has the 36-bit word length of the original, implemented on five 4096 kilobit SRAM chips. This is a fully functioning replica, and even has CHAOSNET implemented with a small Ethernet controller.

Continue reading “Putting A PDP-10 On An FPGA”