|
|
1.1 root 1: .de @h
2: 'sp 4
3: 'tl 'TREK SETUP INSTRUCTIONS''%'
4: 'sp 2
5: .ns
6: ..
7: .de @f
8: 'bp
9: ..
10: .wh 0 @h
11: .wh -6 @f
12: .de pp
13: .sp
14: .ne 2
15: .ti +5
16: ..
17: .de s1
18: .sp 2
19: .nr S1 +1
20: .nr S2 0
21: .ne 5
22: .in 4
23: .ti 0
24: \\n(S1.\ \ \c
25: ..
26: .de s2
27: .sp 1
28: .nr S2 +1
29: .ne 3
30: .in 8
31: .ti 4
32: \\n(S2.\ \ \c
33: ..
34: .br
35: .ce
36: TREK SETUP INSTRUCTIONS
37: .sp 2
38: .pp
39: This document describes all sorts of nifty things
40: you should know
41: before you start to muck around
42: with the trek source code.
43: Please read them carefully.
44: .s1
45: MAINTENANCE
46: .s2
47: There are a number of shell files
48: which you may use to maintain the system.
49: "Prtrek" produces a copy of the source code.
50: It pipes its output to lpr
51: and runs in background.
52: "Comp" compiles up to nine source modules
53: and leaves them in .o files.
54: "Compile" is the same as "comp"
55: except that it loads after compiling.
56: If stated without any arguments,
57: it loads from .o files.
58: "Compall" compiles all the .c files
59: into .o files,
60: but does not load.
61: It redirects its output to the file "output".
62: To recompile the entire system,
63: type
64: .ti +8
65: compall
66: .ti +8
67: compile
68: .br
69: .s2
70: Main.c contains a variable called "Mother".
71: This is initialized to the result of the
72: "getuid()" call for the maintainer of trek
73: at your installation.
74: Only Mother is allowed to set trace flags
75: and run the game at other than the default priority.
76: .s2
77: Speaking of priorities,
78: trek eats up a lot of system resources.
79: Hence, it normally runs at a very low priority.
80: This makes it almost impossible to play
81: if the system is loaded.
82: However,
83: the -pN flag sets the priority to N,
84: which makes it possible to debug
85: when the system is loaded.
86: The default priority is set by a #define of
87: PRIO,
88: which is set to 10 in the default system.
89: .s2
90: Trace information is provided
91: which may be useful in debugging things in the system.
92: If you are in a bad way for space,
93: comment out the #define xTRACE
94: which appears in trek.h.
95: This will cause the trace stuff to not occur
96: in the object.
97: .s2
98: The version of trek released to you
99: is compiled with the -f flag (for no floating point)
100: and should work without problems on your machine.
101: You can edit out the -f flag
102: in "compile" if you have floating point hardware
103: on your machine
104: so that it will take less space.
105: .s1
106: THE PORTABLE C LIBRARY
107: .pp
108: The portable C library was used
109: to do I/O in trek.
110: Unfortunately,
111: the version which we had at Berkeley
112: had a number of small bugs
113: which caused trek to do bad things at times.
114: For some unknown reason
115: (temporary insanity perhaps)
116: I rewrote the portable C library.
117: This version is much smaller than the old version
118: and has cleaner code.
119: It also works right
120: (???).
121: However, there are a few minor differences
122: which you should be aware of.
123: .s2
124: Scanf no longer ignores the noise characters "\\n",
125: "\\t", and space in the format string;
126: i.e.,
127: these characters now require a match
128: in the input stream.
129: .s2
130: A variable
131: f_log
132: has been added
133: which is the file descriptor
134: of a "log" file.
135: If f_log is greater than zero
136: a copy of everything read from
137: the standard input
138: and written to
139: the standard output
140: is written in the file f_log.
141: .s1
142: DISCLAIMERS
143: .s2
144: Frankly,
145: I am getting pretty sick of playing this game.
146: Hence,
147: the version which you get may have several bugs
148: in it;
149: I freely admit
150: that it is probably buggier
151: than some previous versions.
152: Sorry about that.
153: .s2
154: Along with being buggy,
155: the game never had quite everything implemented
156: that was originally intended.
157: If you see things that look weird,
158: that may be why.
159: There are even some features which I have taken out
160: (like ghost starsystems)
161: upon deciding that I didn't have the energy
162: to implement them correctly.
163: .s1
164: REQUESTS
165: .pp
166: There are several things that I would like to ask of anyone
167: who does work on the source code.
168: .s2
169: Please let me know of any bugs which you find
170: in the code,
171: and any fixes which you may have.
172: Other copies will probably be going out to other people later,
173: and it would be nice if those copies where less buggy.
174: Also,
175: I would be interested in hearing about any
176: enhancements of the game which you might install.
177: .s2
178: Please note that I have a distinct coding style.
179: I feel that it is cleaner
180: and easier to read than a more
181: casual style.
182: If possible,
183: please stick to it,
184: especially if you end up sending tapes back to me.
185: This goes along with my whole belief in clean code:
186: I ask you to please avoid obscure code
187: whenever possible.
188: If you throw some in,
189: please don't let me see it.
190: It just depresses me.
191: .s2
192: Unfortunately,
193: the game is huge.
194: There are many neat things
195: which could go in,
196: if there were only enough space.
197: However,
198: I have specifically not gone to seperated I/D
199: space.
200: The main reason is that I would like future versions
201: of the game
202: to be 11/40 compatible.
203: .s1
204: SUGGESTIONS FOR THE FUTURE
205: .pp
206: If you happen to have more energy than I do,
207: you may want to examine the following areas.
208: These are things that I may get to,
209: but don't hold your breath.
210: .s2
211: Frankly,
212: making the portable C library work
213: (even without bugs)
214: was a bitch.
215: I should have done the I/O in a more
216: ad hoc manner.
217: It is my intent to rewrite the I/O
218: routines to bypass the portable C library entirely.
219: .s2
220: The routine "capture" is quite unclean.
221: First, it should have a manner of selecting Klingons
222: other than random,
223: either selecting the most likely
224: or asking the captain (probably best).
225: It should either be fully implemented,
226: which includes adding a "board" routine
227: (half written,
228: on some tapes as board.x)
229: which sends a boarding party to forcefully
230: take over the Klingon,
231: or it should go out completely,
232: which is probably what I will end up doing.
233: When this happens,
234: the transporter will go completely.
235: It seems that the space may be better used
236: for something which more directly enhances the game.
237: .sp 3
238: .in 0
239: Well, that's about it.
240: To get hold of me,
241: write to:
242: .nf
243: .sp
244: Eric P Allman
245: Electronics Research Laboratory
246: University of California
247: Berkeley, California 94720
248: .fi
249:
250: Happy trekking!!
251: .pp
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.