README
1This is a source file distribution for the game dungeon as implemented
2in C. It is based on the game dungeon as distributed on a DECUS tape,
3circa 1980. It has been converted from the original DEC FORTRAN to
4f77 to C. See the file "History" for some revision history and credit
5to those whose efforts have made this possible.
6
7Take a look at the Makefile. It should be fine for most systems,
8although you may want to change BINDIR and LIBDIR. On SCO UNIX see
9the note at the definition of CFLAGS. Makefile.MSC should work for
10MS-DOS using Microsoft C. It was contributed by Jonathan Mark
11(uunet!microsoft!jonm).
12
13To compile and link dungeon, type make. To install it in BINDIR and
14LIBDIR, type make install.
15
16There are two functions in local.c that you may want to write for your
17system. The first controls when the game can be played, and can be
18used to disallow play during business hours, for example. The second
19controls who is allowed to invoke the game debugging tool; note that
20this will only be available at all if you uncomment the GDTFLAG line
21in the Makefile. The comments in local.c explain what to do.
22
23All files in the distribution kit are ASCII. The files dtextc.uu1,
24dtextc.uu2, dtextc.uu3, dtextc.uu4 are parts of a uuencoded binary
25file named dtextc.dat. The Makefile will create the binary file
26automatically on a UNIX system; elsewhere you will have to stick the
27four files together in numerical order and run the resulting large
28file through uudecode. I can't help you find uudecode, though.
29
30The binary file dtextc.dat holds the text strings and initialization
31information for the game. The strings are encrypted to prevent easy
32cheating; if you want to do further work on the program, or translate
33the strings, Ian Taylor (address below) has a program to convert this
34file back and forth from a human-readable form.
35
36This has been compiled and tested on a DECstation 3100 running Ultrix
374.0, a VAXstation GPX running Ultrix 3.1, an 80386 box running SCO
38Unix 3.2.2, an 8800 running Ultrix, a Sun box running SUN OS 4 release
394, and an 80386 PC running MS-DOS.
40
41I consider my changes to be in the public domain, as did previous
42contributors (see the History file for more detail). The original
43source, however, is copyright.
44
45 Ian Lance Taylor
46 ian@airs.com or uunet!airs!ian
47 11 March 1991
48
49Dungeon consists of the following files:
50
51 dmain.c -program root
52 dgame.c -main routine
53 dsub.c -resident subroutines
54 dinit.c -initialization routine
55 np.c -parser, part 0
56 np1.c -parser, part 1
57 np2.c -parser, part 2
58 np3.c -parser, part 3
59 gdt.c -game debugging tool
60 verbs.c -principal verbs
61 objcts.c -principal objects
62 sverbs.c -simple verbs
63 dverb1.c -auxiliary verbs, part 1
64 dverb2.c -auxiliary verbs, part 2
65 actors.c -character processors
66 demons.c -demon processors
67 clockr.c -clock event processors
68 rooms.c -room processors
69 nrooms.c -new room processors
70 sobjs.c -simple objects
71 nobjs.c -new objects
72 ballop.c -balloon processor
73 lightp.c -light processors
74 villns.c -villain processors
75 dso1.c -overlaid subroutines, part 1
76 dso2.c -overlaid subroutines, part 2
77 dso3.c -overlaid subroutines, part 3
78 dso4.c -overlaid subroutines, part 4
79 dso5.c -overlaid subroutines, part 5
80 dso6.c -overlaid subroutines, part 6
81 dso7.c -overlaid subroutines, part 7
82 funcs.h -header file with function prototypes
83 vars.h -header file with variable definitions
84 parse.h -header file for parsing routines
85 supp.c -support routines and more processing
86 local.c -hooks for local definition
87 dindxc.dat -data base [binary file]
88 dungeon.6 -man page
89 Makefile -Makefile
90 Makefile.MSC -Makefile for MS-DOS and Microsoft C
91 History -Some revision history notes
92 README -This file
93
94------------------------------------------------------------------------------
95
96I supplied a new file Makefile.BCC for Borland C++ (tested with version 3.1).
97While working on this, I discovered that I had to change function main in
98dmain.c from 'returning void' to 'returning int' - bcc doesn't accept
99'void main(...)' in ANSI mode.
100
101Volker Blasius, 11jul93 <Volker.Blasius@gmd.de>
102