1 .\" $FreeBSD: src/games/trek/DOC/read_me.nr,v 1.1.1.1.14.1 2001/03/05 12:11:40 kris Exp $
2 .\" $DragonFly: src/games/trek/DOC/read_me.nr,v 1.2 2003/06/17 04:25:25 dillon Exp $
5 'tl 'TREK SETUP INSTRUCTIONS''%'
38 TREK SETUP INSTRUCTIONS
41 This document describes all sorts of nifty things
43 before you start to muck around
44 with the trek source code.
45 Please read them carefully.
49 There are a number of shell files
50 which you may use to maintain the system.
51 "Prtrek" produces a copy of the source code.
52 It pipes its output to lpr
53 and runs in background.
54 "Comp" compiles up to nine source modules
55 and leaves them in .o files.
56 "Compile" is the same as "comp"
57 except that it loads after compiling.
58 If stated without any arguments,
59 it loads from .o files.
60 "Compall" compiles all the .c files
63 It redirects its output to the file "output".
64 To recompile the entire system,
72 Main.c contains a variable called "Mother".
73 This is initialized to the result of the
74 "getuid()" call for the maintainer of trek
76 Only Mother is allowed to set trace flags
77 and run the game at other than the default priority.
79 Speaking of priorities,
80 trek eats up a lot of system resources.
81 Hence, it normally runs at a very low priority.
82 This makes it almost impossible to play
83 if the system is loaded.
85 the -pN flag sets the priority to N,
86 which makes it possible to debug
87 when the system is loaded.
88 The default priority is set by a #define of
90 which is set to 10 in the default system.
92 Trace information is provided
93 which may be useful in debugging things in the system.
94 If you are in a bad way for space,
95 comment out the #define xTRACE
96 which appears in trek.h.
97 This will cause the trace stuff to not occur
100 The version of trek released to you
101 is compiled with the -f flag (for no floating point)
102 and should work without problems on your machine.
103 You can edit out the -f flag
104 in "compile" if you have floating point hardware
106 so that it will take less space.
108 THE PORTABLE C LIBRARY
110 The portable C library was used
113 the version which we had at Berkeley
114 had a number of small bugs
115 which caused trek to do bad things at times.
116 For some unknown reason
117 (temporary insanity perhaps)
118 I rewrote the portable C library.
119 This version is much smaller than the old version
120 and has cleaner code.
123 However, there are a few minor differences
124 which you should be aware of.
126 Scanf no longer ignores the noise characters "\\n",
127 "\\t", and space in the format string;
129 these characters now require a match
135 which is the file descriptor
137 If f_log is greater than zero
138 a copy of everything read from
142 is written in the file f_log.
147 I am getting pretty sick of playing this game.
149 the version which you get may have several bugs
152 that it is probably buggier
153 than some previous versions.
156 Along with being buggy,
157 the game never had quite everything implemented
158 that was originally intended.
159 If you see things that look weird,
161 There are even some features which I have taken out
162 (like ghost starsystems)
163 upon deciding that I didn't have the energy
164 to implement them correctly.
168 There are several things that I would like to ask of anyone
169 who does work on the source code.
171 Please let me know of any bugs which you find
173 and any fixes which you may have.
174 Other copies will probably be going out to other people later,
175 and it would be nice if those copies where less buggy.
177 I would be interested in hearing about any
178 enhancements of the game which you might install.
180 Please note that I have a distinct coding style.
181 I feel that it is cleaner
182 and easier to read than a more
186 especially if you end up sending tapes back to me.
187 This goes along with my whole belief in clean code:
188 I ask you to please avoid obscure code
190 If you throw some in,
191 please don't let me see it.
192 It just depresses me.
196 There are many neat things
198 if there were only enough space.
200 I have specifically not gone to separated I/D
202 The main reason is that I would like future versions
204 to be 11/40 compatible.
206 SUGGESTIONS FOR THE FUTURE
208 If you happen to have more energy than I do,
209 you may want to examine the following areas.
210 These are things that I may get to,
211 but don't hold your breath.
214 making the portable C library work
217 I should have done the I/O in a more
219 It is my intent to rewrite the I/O
220 routines to bypass the portable C library entirely.
222 The routine "capture" is quite unclean.
223 First, it should have a manner of selecting Klingons
225 either selecting the most likely
226 or asking the captain (probably best).
227 It should either be fully implemented,
228 which includes adding a "board" routine
230 on some tapes as board.x)
231 which sends a boarding party to forcefully
232 take over the Klingon,
233 or it should go out completely,
234 which is probably what I will end up doing.
236 the transporter will go completely.
237 It seems that the space may be better used
238 for something which more directly enhances the game.
241 Well, that's about it.
247 Electronics Research Laboratory
248 University of California
249 Berkeley, California 94720