Welcome to Dungeon. This version created 11-MAR-91.
You are in an open field west of a big white house with a boarded
There is a small mailbox here.
# DUNGEON (Zork I)
Public Domain source code to the original DUNGEON game (Zork I). Released to the PD by Infocom. Includes
source files, headers, and information.
## History of the C Implementation of Dungeon
This version of dungeon has been modified from FORTRAN to C. The
original was written in DEC FORTRAN, translated from MDL. It was then
translated to f77 for UN*X systems, from which it was translated to C.
The C translation was done with the help of f2c, the FORTRAN to C
translator written by David Gay (AT&T Bell Labs), Stu Feldman
(Bellcore), Mark Maimone (Carnegie-Mellon University), and Norm
Schryer (AT&T Bell Labs).
I. From the original documentation...
To: Dungeon Players
From: "The Translator"
Subj: Game Information
This is the first (and last) source release of the PDP-11 version of
Please note that Dungeon has been superceded by the game ZORK(tm).
The following is an extract from the new product announcement for
ZORK in the September, 1980 issue of the RT-11 SIG newsletter:
"'ZORK: The Great Underground Empire - Part I' ...was developed
by the original authors based on their ZORK (Dungeon) game for
the PDP-10. It features a greatly improved parser; command
input and transcript output files; SAVEs to any device and
file name; and adaptation to different terminal types,
including a status line on VT100s. Note: this is not the
FORTRAN version that has been available through DECUS. This
version has been completely rewritten to run efficiently on
small machines - up to 10 times as fast as the DECUS version.
...ZORK runs under RT-ll, HT-ll, or RSTS/E and requires as
little as 20K words of memory and a single floppy disk drive.
The game package, consisting of an RX01-format diskette and
an instruction booklet, is available from Infocom, Inc.,
P.O. Box 120, Kendall Station, Cambridge, Ma. 02142."
ZORK(tm) is a trademark of Infocom, Inc. It is available for several
popular personal computers as well as for the PDP-ll.
Welcome to Dungeon!
Dungeon is a game of adventure, danger, and low cunning. In it
you will explore some of the most amazing territory ever seen by mortal
man. Hardened adventurers have run screaming from the terrors contained
In Dungeon, the intrepid explorer delves into the forgotten secrets
of a lost labyrinth deep in the bowels of the earth, searching for
vast treasures long hidden from prying eyes, treasures guarded by
fearsome monsters and diabolical traps!
No DECsystem should be without one!
Dungeon was created at the Programming Technology Division of the MIT
Laboratory for Computer Science by Tim Anderson, Marc Blank, Bruce
Daniels, and Dave Lebling. It was inspired by the Adventure game of
Crowther and Woods, and the Dungeons and Dragons game of Gygax
and Arneson. The original version was written in MDL (alias MUDDLE).
The current version was translated from MDL into FORTRAN IV by
a somewhat paranoid DEC engineer who prefers to remain anonymous.
On-line information may be obtained with the commands HELP and INFO.
II. DEC FORTRAN to f77 Conversion (17-nov-81)
The conversion from DEC FORTRAN to Unix f77 was done by Randy
Dietrich, Lynn Cochran and Sig Peterson. Much hacking was done to get
it to fit in the limited address space of a PDP-11/44 (split I/D).
Suffice it to say that by leaving out the debugging package and not
linking in the f77 i/o library they managed to get it to run.
III. PDP to VAX (dec-85)
Based on the work of Randy, Lynn and Sig, Bill Randle folded in the
full save/restore functions and the game debugging package (gdt) into
the pdp version to create a Vax/Unix version. This version also uses
f77 i/o, thus eliminating the extra speak and listen processes needed
on the pdp.
IV. Cleanup I (11-dec-86)
John Gilmore (hoptoad!gnu) cleaned up the source files by moving
most of the common declarations into include files and added
comments from the original (FORTRAN or MDL?) source. His efforts
are greatly appreciated.
V. Cleanup II (9-feb-87)
Bill Randle (firstname.lastname@example.org) added the pdp dependencies back
into the Vax source files with #ifdefs in order to have just one
set of sources. Previously, there were two sets of source: one for
the pdp and one for the Vax. In addition, a shell escape of the
form !cmd was added and the wizard can enter the gdt without having
to recompile the source. Finally, a man page was generated, based
on the dungeon.doc file.
VI. f77 to C (11-mar-91)
Ian Lance Taylor (email@example.com or uunet!airs!ian) used the f2c
translator to generate C source code. The resulting code was modified
to remove the FORTRAN I/O library, to add simple more processing, and
to change the format of the database file. Andre Srinivasan
(firstname.lastname@example.org) help test it. Jonathan Mark
(uunet!microsoft!jonm) made it work under MS-DOS and Microsoft C.