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