1FROTZ(6) Games Manual FROTZ(6)
2
3
4
6 frotz - interpreter for Infocom and other Z-Machine games
7
8
10 frotz [options] file
11
12
14 Frotz is a Z-Machine interpreter. The Z-machine is a virtual machine
15 designed by Infocom to run all of their text adventures. It went
16 through multiple revisions during the lifetime of the company, and two
17 further revisions (V7 and V8) were created by Graham Nelson after the
18 company's demise. The specification is now quite well documented; this
19 version of Frotz supports version 1.0.
20
21 This version of Frotz fully supports all these versions of the Z-
22 Machine except for version 6. Version 6 is semi-supported by display‐
23 ing the outlines of V6 graphics with the picture number in the bottom-
24 right corner.
25
26
27 This port supports old-style sound effects through the OSS sound
28 driver.
29
30
31
33 -a Watch attribute setting. Setting and clearing of attributes on
34 objects will be noted in debugging messages.
35
36
37 -A Watch attribute testing. Every time the z-machine tests an
38 attribute value, the test and the result will be reported.
39
40
41 -b <colorname>
42 Sets the default background color. <colorname> corresponds to
43 one of the Z-machine colors, which are as follows:
44 black red green yellow blue magenta cyan white
45 If color support is disabled or not available on your terminal,
46 this option does nothing.
47
48
49 -c N Sets the number of context lines used. By default, after a
50 ``[MORE]'' prompt, and assuming there is enough output pending,
51 Frotz will allow all the currently visible lines to scroll off
52 the screen before prompting again. This switch specifies how
53 many lines of text Frotz will hold over and display at the top
54 of the next screen.
55
56
57 -d Disable color.
58
59
60 -e Enable sound. If you've disabled sound in a config file and
61 want to hear sound effects, use this.
62
63
64 -f <colorname>
65 Sets the default foreground color. <colorname> corresponds to
66 one of the Z-machine colors, which are as follows
67 black red green yellow blue magenta cyan white
68 If color support is disabled or is not available on your termi‐
69 nal, this option does nothing.
70
71
72 -F Force color mode. If you've disabled color in a config file and
73 want to Frotz to display colors, use this.
74
75
76 -h N Manually sets the screen height. Though most curses libraries
77 are intelligent enough to determine the current width from the
78 terminal, it may sometimes be necessary to use this option to
79 override the default.
80
81
82 -i Ignore fatal errors. If a Z-Machine interpreter encounters a
83 zcode error such as division-by-zero or addressing an illegal
84 object, the proper response is to abort execution. This is done
85 because the zcode program doesn't have a clear idea of what is
86 going on. There are some games out there that cause fatal
87 errors because the authors were careless and used an interpreter
88 that didn't properly check for errors. This option is intended
89 to get around such bugs, but be warned that Strange Things may
90 happen if fatal errors are not caught.
91
92
93 -l N Sets the left margin, for those who might have specific format‐
94 ting needs.
95
96
97 -o Watch object movement. This option enables debugging messages
98 from the interpreter which describe the moving of objects in the
99 object tree.
100
101
102 -O Watch object location. These debugging messages detail the
103 locations of objects in the object tree.
104
105
106 -p Plain ASCII output only. This inhibits the output of accented
107 letters and other characters from the Latin-1 character set,
108 replacing them with reasonable alternatives. This may be neces‐
109 sary on devices lacking these characters.
110
111
112 -P Alter the piracy opcode. The piracy opcode was never used by
113 Infocom. This switch is really only useful for those who like
114 to toy around with Z-code.
115
116
117 -q Quiet. Turns off sound effects. Useful when running Frotz on a
118 remote machine and you don't want to bother whoever's near the
119 console with weird noises.
120
121
122 -Q No Quetzal. By default, Frotz uses the new Quetzal save format
123 when you save your game. If for some reason you want to save
124 and restore using the old Frotz format, use this flag.
125
126
127 -r N Sets the right margin.
128
129
130 -s N Set the random number seed value. The given seed value is used
131 as the initial seed value on every restart. This is helpful for
132 testing games like Curses which make random decisions before the
133 first input (such that the hot key Alt-S does not really help).
134
135
136 -S N Set the transcript width. By default your transscript files are
137 formatted to a width of 80 columns per line, regardless of the
138 current screen width. This switch allows you to change this
139 setting. In particular, use -S 0 to deactivate automatic line
140 splitting in transscript files.
141
142
143 -t Sets the z-machine's Tandy bit, which may affect the behavior of
144 certain Infocom games. For example, Zork I pretends not to have
145 sequels, and Witness has its language toned down.
146
147
148 -u N Sets the number of slots available for Frotz's multiple undo
149 hotkey (see below). This defaults to twenty, which should be
150 sufficient for most purposes. Setting too high a number here
151 may be dangerous on machines with limited memory.
152
153
154 -w N Manually sets the screen width. Again, this should not be nec‐
155 essary except in special circumstances.
156
157
158 -x Expand the abbreviations "g", "x", and "z" to "again", "exam‐
159 ine", and "wait". This switch is for use iwth old Infocom games
160 that lack these common abbreviations which were introduced in
161 later games. Use it with caution: A few games might use "g",
162 "x" or "z" for different purposes.
163
164
165 -Z N Error checking mode.
166 0 = don't report errors.
167 1 = report first instance of an error.
168 2 = report all errors.
169 3 = exit after any error.
170 Default is 1 (report first instance of an error).
171
172
173
175 On startup, frotz will first check the system's frotz.conf then
176 $HOME/.frotzrc for configuration information. The configuration file
177 uses a simple
178 <variable> <whitespace> <value> syntax.
179
180
181 Color names may be any of the following:
182 black | red | green | blue | magenta | cyan | white
183
184
185
186 ascii on | off
187 Use plain ASCII only. Default is "off".
188
189
190 background <colorname>
191 Set background color. Default is terminal's default background color.
192
193
194 color yes | no
195 Use color text. Default is "yes" if supported.
196
197
198 errormode never | once | always | fatal
199 Set error reporting mode.
200 never Don't report any errors except for fatal ones.
201 once Report only the first instance of an error.
202 always Report every instance of an error.
203 fatal Abort on any error, even non-fatal ones.
204 Default is "once".
205
206
207 expand_abb on | off
208 Expand abbreviations. Default is off. Expand the abbreviations "g",
209 "x", and "z" to "again", "examine", and "wait". This switch is for use
210 with old Infocom games that lack these common abbreviations which were
211 introduced in later games. Use it with caution. A few games might use
212 the "g", "x", or "z" for different purposes.
213
214
215 foreground <colorname>
216 Set foreground color. Default is terminal's default forground color.
217
218
219 ignore_fatal on | off
220 Ignore fatal errors. If a Z-Machine interpreter encounters a zcode
221 error such as division-by-zero or addressing an illegal object, the
222 proper response is to abort execution. This is done because the zcode
223 program doesn't have a clear idea of what is going on. There are some
224 games out there that cause fatal errors because the authors were care‐
225 less and used an interpreter that didn't properly check for errors.
226 This option is intended to get around such bugs, but be warned that
227 Strange Things may happen if fatal errors are not caught.
228 Default is "off"
229
230
231 piracy on | off
232 Alter the piracy opcode. Default is off. The piracy opcode was never
233 used by Infocom. This option is only useful for those who like to toy
234 around with Z-code.
235
236
237 quetzal on | off
238 Use Quetzal save format. Default is on. If for some reason you want
239 to save or restore using the old Frotz format, set this to "off".
240
241
242 randseed <integer>
243 Set random number seed. Default comes from the Unix epoch.
244
245
246 sound on | off
247 Turn sound effects on or off. Default is "on".
248
249
250 tandy on | off
251 Set the machine's Tandy bit. This may affect the behavior of certain
252 Infocom games. For example, Zork I pretends not to have sequels, and
253 Witness has its language toned down. Default is "off".
254
255
256 undo_slots <integer>
257 Set number of undo slots. Default is 500.
258
259
260 zcode_path /path/to/zcode/files:/another/path
261 Set path to search for zcode game files. This is just like the $PATH
262 environmental variable except that you can't put environmental vari‐
263 ables in the path or use other shortcuts. For example,
264 "$HOME/games/zcode" is illegal because the shell can't interpret that
265 $HOME variable.
266
267
268
269 The following options are really only useful for weird terminals, weird
270 curses libraries or if you want to force a certain look (like play in
271 40-column mode).
272
273
274 context_lines <integer>
275 Set the number of context lines used. By default, after a ``[MORE]''
276 prompt, and assuming there is enough output pending, frotz will allow
277 all the currently visible lines to scroll off the screen before prompt‐
278 ing again. This switch specifies how many lines of text frotz will
279 hold over and display at the top of the next screen. Default is "0".
280
281
282 left_margin <integer>
283 Set the left margin. This is for those who might have special format‐
284 ting needs.
285
286
287 right_margin <integer>
288 Set the right margin. This is for those who might have special format‐
289 ting needs.
290
291
292 screen_height <integer>
293 Manually set screen height. Most curses libraries are intelligent
294 enough to determine the current width of the terminal. You may need to
295 use this option to override the default.
296
297
298 screen_width <integer>
299 Manually set screen width. Again, this should not be necessary except
300 in special circumstances.
301
302
303 script_width <integer>
304 Set the transcript width. Default is 80 columns per line, regardless
305 of the current screen width. This switch allows you to change this
306 setting. You may set this to "0" to deactivate automatic line-split‐
307 ting in transcript files.
308
309
310
311 The following options are mainly useful for debugging or cheating.
312
313
314 attrib_set on | off
315 Watch attribute setting. Setting and clearing of attributes on objects
316 will be noted in debugging messages. Default is "off"
317
318
319 attrib_test on | off
320 Watch attribute testing. Every time the z-machine tests an attribute
321 value, the test and the result will be reported. Default is "off".
322
323
324 obj_loc on | off
325 Watch object location. These debugging messages detail the locations
326 of objects in the object tree. Default is "off".
327
328
329 obj_move on | off
330 Watch object movement. This option enables debugging messages from the
331 interpreter which describe the movement of objects in the object tree.
332 Default is "off".
333
334
336 If the ZCODE_PATH environmental variable is defined, frotz will search
337 that path for game files. If that doesn't exist, INFOCOM_PATH will be
338 searched.
339
340
341
342 Latest information on Unix Frotz is here:
343 http://www.cs.csubak.edu/~dgriffi/proj/frotz/
344
345
346 The latest release of Unix Frotz is here:
347 ftp://ftp.ifarchive.org/if-archive/infocom/interpreters/frotz/
348
349
350 See this website for a list of mirrors:
351 http://www.ifarchive.org
352
353
354 See this website for more information on Infocom past, present, and
355 future; and where to get new Z-Machine games and the old ones by Info‐
356 com:
357 http://www.csd.uwo.ca/Infocom/
358
359
360 Frotz for other platforms:
361 http://www.geocities.com/SiliconValley/Heights/3222/frotz.html
362
363
364
366 The Z Machine itself has trouble with the concept of resizing a termi‐
367 nal. It assumes that once the screen height and width are set, they
368 will never change; even across saves. This made sense when 24x80 ter‐
369 minals were the norm and graphical user interfaces were mostly unknown.
370 I'm fairly sure there's a way around this problem, but for now, don't
371 resize an xterm in which frotz is running. Also, you should try to
372 make sure the terminal on which you restore a saved game has the same
373 dimensions as the one on which you saved the game.
374
375
376 You can use a path like "/usr/local/games/zcode:$HOME/zcode" with
377 $ZCODE_PATH or $INFOCOM_PATH because the shell will digest that $HOME
378 variable for you before setting $ZCODE_PATH. While processing
379 frotz.conf and $HOME/.frotzrc, a shell is not used. Therefore you can‐
380 not use environmental variables in the "zcodepath" option within the
381 config files.
382
383
384 This manpage is not intended to tell users HOW to play interactive fic‐
385 tion. Refer to the file HOW_TO_PLAY included in the Unix Frotz docu‐
386 mentation or visit one of the following sites:
387 http://www.csd.uwo.ca/Infocom/faq.html
388 http://www.cs.csubak.edu/~dgriffi/proj/frotz/HOW_TO_PLAY
389 http://www.ifarchive.org
390
391
393 This program has no bugs. no bugs. no bugs. no *WHAP* thank you.
394
395
397 Frotz was written by Stefan Jokisch in 1995-7.
398 The Unix port was done by Galen Hazelwood.
399 Currently the Unix port is maintained by David Griffith.
400
401
402
404 dfrotz(6) nitfol(6) rezrov(6) jzip(6) xzip(6) inform(1)
405
406
407
408
409
410 2.43 FROTZ(6)