Go to most recent revision | Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
5131 | clevermous | 1 | Welcome to the Quake Technical Information file! |
2 | |||
3 | TABLE OF CONTENTS |
||
4 | ----------------- |
||
5 | Introduction to the Console.............. |
||
6 | Video Subsystem Documentation............ |
||
7 | Sound Subsystem Documentation............ |
||
8 | CD Audio Subsystem Documentation......... |
||
9 | Network Subsystem Documentation.......... |
||
10 | Modem Strings............................ |
||
11 | Win95 Documentation...................... |
||
12 | Key Binding and Aliases.................. |
||
13 | Quake Keys and Common Commands........... |
||
14 | Making a Config File..................... |
||
15 | Demos.................................... |
||
16 | Reporting Quake Bugs..................... |
||
17 | |||
18 | |||
19 | ========================================== |
||
20 | == Introduction to the Console == |
||
21 | ========================================== |
||
22 | |||
23 | Throughout this document, examples of commands are given, all of which |
||
24 | are typed in at the console. To bring up the console, press the tilde ('~') |
||
25 | key or press ESC to bring up the menu, select Options, and select Console... |
||
26 | from the options menu. To exit the console, press ESC. |
||
27 | |||
28 | The console provides a way to change console variables and also accepts |
||
29 | commands that change game settings such as movement keys, video mode, as |
||
30 | well as providing an interface for key binding and command aliasing (more |
||
31 | on that later). |
||
32 | |||
33 | The console also has a command history with which you can browse through |
||
34 | previous commands. Use the up and down arrows to navigate through the |
||
35 | command history and press |
||
36 | |||
37 | Partially typing a command and then pressing the TAB key will complete the |
||
38 | currently typed text with the first matching console variable or command. |
||
39 | (Yes, this is a good way to look for console commands.) |
||
40 | |||
41 | To review previous actions by page, use the PGUP and PGDN keys. |
||
42 | |||
43 | |||
44 | ========================================== |
||
45 | == Video Subsystem Documentation == |
||
46 | ========================================== |
||
47 | |||
48 | The Video Modes menu |
||
49 | -------------------- |
||
50 | |||
51 | Video modes can most easily be selected from the the Video Modes menu, which |
||
52 | is brought up by selecting the Video Options choice in the Options menu. |
||
53 | All the resolutions that Quake can support on the current computer are |
||
54 | displayed. |
||
55 | |||
56 | Please note that higher-resolution modes require correspondingly more |
||
57 | system memory in order for Quake to run, and that some high-resolution |
||
58 | modes may not be available when running Quake on 8 Mb machines. Such |
||
59 | modes are not listed in the Video Modes menu. Please do not report |
||
60 | video modes that do not appear in the Video Modes menu as bugs; either |
||
61 | those modes are not supported by your video adapter, or there is not |
||
62 | enough system memory for Quake to support those modes. |
||
63 | |||
64 | The video modes listed in the Video Modes menu can be tested, set, and made |
||
65 | the default mode for Quake from the Video menu, as follows: |
||
66 | |||
67 | * The arrow keys can be used to move the blinking indicator to any of the |
||
68 | modes listed in the Video menu. |
||
69 | |||
70 | * Pressing the 'T' key tests the mode the blinking indicator points to, by |
||
71 | setting the mode, leaving it set for 5 seconds, and returning to the previous |
||
72 | mode. This lets you verify that your computer does in fact support that |
||
73 | mode. We highly recommend that you always test modes with 'T' before setting |
||
74 | them |
||
75 | permanently by pressing the Enter key, in case some sort of hardware or |
||
76 | software glitch causes a mode to function incorrectly and produce a garbled |
||
77 | screen. It is unlikely but possible that testing or setting a mode will |
||
78 | cause your computer to hang or crash; if this happens, there is a serious |
||
79 | hardware or software bug, and you should not attempt to select that mode |
||
80 | again. |
||
81 | |||
82 | * Pressing the Enter key sets the mode the blinking indicator points to, |
||
83 | leaving it set so Quake will then run in that mode. We suggest that you |
||
84 | test a mode by pressing the 'T' key before setting it by pressing the Enter |
||
85 | key. Note that a selection made with the Enter key remains in effect only |
||
86 | until Quake is exited (or a new mode is set). You must explictly make a mode |
||
87 | the default mode by pressing the 'D' key in order to automatically set that |
||
88 | mode when you start Quake up in the future. |
||
89 | |||
90 | * Pressing the 'D' key makes the current mode the default mode that Quake |
||
91 | starts up with. Note that the current mode is the mode that's displayed in |
||
92 | white in the mode list, not necessarily the mode that the blinking indicator |
||
93 | points to. The current default mode is listed in the description of the 'D' |
||
94 | key at the bottom of the Video Modes menu. |
||
95 | |||
96 | * Pressing Esc exits the Video Modes menu. |
||
97 | |||
98 | Please see "Bug Reporting," below, for information on how to report any |
||
99 | problems you encounter. |
||
100 | |||
101 | |||
102 | Video modes from the console: Quick start |
||
103 | ------------------------------------------ |
||
104 | |||
105 | More comprehensive but more complex video control is available through the |
||
106 | Quake console. This section describes the commands necessary to perform |
||
107 | basic mode setting through the console (this is similar to what can be |
||
108 | accomplished through the Video Modes menu), and following sections describe |
||
109 | console video control in detail. |
||
110 | |||
111 | To see all the video modes that are available, bring up the console (either |
||
112 | press tilde ('~'), or press Esc to bring up the menu, select Options, and |
||
113 | select Console... from the Options menu). |
||
114 | |||
115 | From the console, type vid_describemodes |
||
116 | Type vid_mode |
||
117 | listed for the desired mode by vid_describemodes. Higher-resolution modes |
||
118 | generally require more extra system memory in order to run, and many are |
||
119 | not available in 8 Mb systems; modes that are supported by the video |
||
120 | adapter but are currently unavailable due to system memory limitations |
||
121 | will still show up in |
||
122 | the mode list from vid_describemodes, but will |
||
123 | have "**" in place of a mode number. (Such modes will not show up at |
||
124 | all in the Video Modes menu.) If you try to set a mode for which |
||
125 | there is insufficient system memory, you will receive a message to that |
||
126 | effect, and the video mode will remain unchanged. |
||
127 | |||
128 | |||
129 | More detail |
||
130 | ----------- |
||
131 | |||
132 | This version of Quake supports software drawing in a variety of |
||
133 | video modes. It does not support any 3-D hardware accelerators. |
||
134 | Video modes that are built into Quake are: |
||
135 | |||
136 | 320x200, 360x200, 320x240, 360x240, 320x350, 360x350, 320x400, |
||
137 | 360x400, 320x480, 360x480 |
||
138 | |||
139 | However, the higher-resolution modes on this list require additional |
||
140 | memory, and may not be available in 8 Mb systems. |
||
141 | |||
142 | In addition, all VESA 2.0 256-color linear framebuffer modes |
||
143 | supported by the video adapter are supported. Further information |
||
144 | about VESA 2.0 is provided below. |
||
145 | |||
146 | |||
147 | Video mode reporting and selection |
||
148 | ---------------------------------- |
||
149 | |||
150 | Quake assigns each available video mode a mode number, which can |
||
151 | then be used to query information about the mode or to select the |
||
152 | mode. The first 11 mode numbers are always as follows: |
||
153 | |||
154 | 0: 320x200 |
||
155 | 1: 320x200 |
||
156 | 2: 360x200 |
||
157 | 3: 320x240 |
||
158 | 4: 360x240 |
||
159 | 5: 320x350 |
||
160 | 6: 360x350 |
||
161 | 7: 320x400 |
||
162 | 8: 360x400 |
||
163 | 9: 320x480 |
||
164 | 10: 360x480 |
||
165 | |||
166 | You will notice that modes 0 and 1 are both 320x200; mode 1 is a |
||
167 | Mode X-style version, which may someday allow support of page |
||
168 | flipping for cleaner graphics, but right now it's just slower with |
||
169 | no advantages, so use mode 0 for 320x200 resolution. Modes 2-10 |
||
170 | are all higher resolution than mode 0, and look very nice, but are |
||
171 | also all slower than mode 0. Mode 0 is the fastest of the 11 |
||
172 | built-in modes. |
||
173 | |||
174 | In addition to the built-in modes, Quake checks for the presence |
||
175 | of a VESA version 2.0 driver. If such a driver is detected, the |
||
176 | driver is queried for all 8-bit-per-pixel linear framebuffer (LFB) |
||
177 | modes that are supported; also, if no LFB 320x200 mode is available, |
||
178 | a banked 320x200 VESA mode is queried for. All such modes are added |
||
179 | to the mode list starting at mode 11. The available modes will vary |
||
180 | depending on adapter, graphics chipset, amount of video memory, and VESA |
||
181 | 2.0 |
||
182 | driver. The higher the resolution, the lower the performance, and |
||
183 | the |
||
184 | higher-resolution modes will often be too slow for good gameplay |
||
185 | on most machines. (Also, higher-resolution modes often need more memory |
||
186 | than is available in an 8 Mb system.) The screen can be sized down to |
||
187 | improve performance in higher-resolution modes, but then of course the |
||
188 | effective resolution of Quake is reduced. |
||
189 | |||
190 | At the same resolution, VESA LFB modes are often faster than the non-VESA |
||
191 | modes 0-10, because adapters often have faster memory access in LFB modes. |
||
192 | |||
193 | If a given VESA mode can support page flipping, then it defaults to page- |
||
194 | flipped operation. A VESA mode can be forced to non-page-flipped operation |
||
195 | by setting the vid_nopageflip console variable to 1, then setting the mode |
||
196 | |||
197 | (note that vid_nopageflip takes operation on the next, not the current, mode |
||
198 | set, and note that it then stays in effect permanently, even when Quake is |
||
199 | exited and restarted, unless it is manually set back to 0). If there is not |
||
200 | enough memory for two pages in a VESA mode, or if the |
||
201 | adapter doesn't support page flipping, then the mode will automatically |
||
202 | be non-page-flipped. Page flipping can have higher visual quality, but may |
||
203 | be either faster or slower, depending on the graphics adapter and other |
||
204 | hardware. (See the discussion of the Pentium Pro, below, for a |
||
205 | discussion of why page flipping can be faster but is sometimes much slower |
||
206 | on that processor.) Page-flipped modes use less system memory than non- |
||
207 | page-flipped modes. |
||
208 | |||
209 | Quake's VESA support, including VESA driver detection, can be disabled by |
||
210 | using the -stdvid command-line switch, and can also be disabled, along with |
||
211 | sound, network, and other hardware support, by the -safe command-line switch. |
||
212 | |||
213 | The maximum resolution supported by Quake is 1280x1024. Modes with higher |
||
214 | resolutions will not be reported by vid_describemodes, and cannot be set. |
||
215 | |||
216 | There is no support for any 3-D accelerator boards in this version of Quake. |
||
217 | Coming soon. |
||
218 | |||
219 | Quake always starts up in mode 0, and modes 0-10 are always available, given |
||
220 | enough system memory. |
||
221 | |||
222 | |||
223 | A note on modes reported in the Video Modes menu |
||
224 | ------------------------------------------------ |
||
225 | |||
226 | The vid_describemodes console command lists all modes with |
||
227 | resolution less than or equal to 1280x1024 that are |
||
228 | supported by the video adapter, although modes for which there |
||
229 | is not enough system memory have "**" for the mode number. VGA, |
||
230 | Mode X-style, and VESA 2.0 modes are listed separately, so a |
||
231 | single resolution can be listed as many as three times, once for |
||
232 | each hardware mode that supports it. For example, mode 0 is |
||
233 | VGA mode 0x13, which supports 320x200 resolution, and mode 1 is |
||
234 | 320x200 Mode X-style mode. Quake looks identical in both |
||
235 | modes, although it usually runs faster in mode 0. |
||
236 | |||
237 | The Video Modes menu is much simpler. Only modes with resolution |
||
238 | less than or equal to 1280x1024 that are both supported by the |
||
239 | hardware and for which there is sufficient system memory are |
||
240 | listed. Further, a given resolution is listed only once. If a |
||
241 | given resolution is available in multiple hardware modes, then |
||
242 | selecting that resolution will select the appropriate hardware mode |
||
243 | as follows: |
||
244 | |||
245 | If the mode is 320x200, then VGA mode 0x13 is selected, and |
||
246 | equivalent Mode X and VESA modes are ignored; |
||
247 | |||
248 | Otherwise, the VESA version of the mode is used. |
||
249 | |||
250 | You can always see what video mode is selected from the console by typing |
||
251 | the command: |
||
252 | |||
253 | vid_mode |
||
254 | |||
255 | command. |
||
256 | |||
257 | None of this has any effect on selecting modes through the |
||
258 | console, where all the different versions of each mode are |
||
259 | listed, and the desired version can be selected by using the |
||
260 | appropriate mode number. |
||
261 | |||
262 | |||
263 | How to get VESA 2.0 support |
||
264 | --------------------------- |
||
265 | |||
266 | Some video adapters have VESA 2.0 support in ROM. Other video |
||
267 | adapters come with loadable VESA 2.0 TSRs. In the absence of either |
||
268 | of these, UniVBE, a shareware product from SciTech, provides VESA 2.0 |
||
269 | support for most video adapters. The latest version of UniVBE can be |
||
270 | obtained from the following locations: |
||
271 | |||
272 | www: http://www.scitechsoft.com |
||
273 | ftp: ftp.scitechsoft.com |
||
274 | CIS: GO SCITECH |
||
275 | AOL: Keyword SciTech |
||
276 | |||
277 | SciTech can be contacted at: |
||
278 | |||
279 | email: sales@scitechsoft.com |
||
280 | |||
281 | SciTech Software |
||
282 | 5 Governors Lane, Suite D |
||
283 | Chico, CA |
||
284 | 95926-1989 |
||
285 | |||
286 | The current version at this writing is UniVBE 5.2. This version |
||
287 | supports many more adapters than previous versions, and adds |
||
288 | a number of useful low- and medium-resolution modes, such as 400x300 |
||
289 | and 512x384. |
||
290 | |||
291 | |||
292 | Video-related commands |
||
293 | ---------------------- |
||
294 | |||
295 | vid_describecurrentmode |
||
296 | lists the description for the current video mode. |
||
297 | |||
298 | vid_describemode |
||
299 | lists the description for the specified video mode, where |
||
300 | reported by vid_describemodes. |
||
301 | |||
302 | vid_describemodes |
||
303 | lists descriptions for all available video modes. |
||
304 | |||
305 | vid_mode |
||
306 | sets the display to the specified mode, where |
||
307 | vid_describemodes. |
||
308 | |||
309 | vid_nopageflip <1|0> |
||
310 | when set to 1, VESA mode sets will always select non-page-flipped |
||
311 | operation. When set to 0, VESA mode sets will select page-flipped |
||
312 | operation whenever possible. All non-VESA modes are always |
||
313 | non-page-flipped. The setting of vid_nopageflip is remembered |
||
314 | when Quake is exited (by being saved in config.cfg), and is reloaded |
||
315 | when Quake is restarted, so once vid_nopageflip is set to 1, all |
||
316 | VESA modes set in all Quake sessions after that point be will non-page- |
||
317 | flipped until vid_nopageflip is set to 0. Note that setting this |
||
318 | variable doesn't affect whether the current video mode is page-flipped, |
||
319 | but rather whether page-flipping can be used by future mode sets. |
||
320 | |||
321 | vid_nummodes |
||
322 | reports the total number of modes available. |
||
323 | |||
324 | vid_testmode |
||
325 | tries to switch Quake to the specified mode, then returns to the current |
||
326 | mode after 5 seconds. This allows you to try an untested mode without |
||
327 | ending up with a black screen if, for example, the monitor can't display |
||
328 | the mode properly. There may still be instances in which, due to VESA |
||
329 | driver or hardware bugs, the machine will hang in certain modes; |
||
330 | vid_testmode can't recover from these situations, but it can recover |
||
331 | from a blank or scrambled screen. |
||
332 | |||
333 | vid_wait |
||
334 | sets the type of waiting that the video adapter should do, as follows: |
||
335 | 0: no waiting |
||
336 | 1: wait for vertical sync active |
||
337 | 2: wait for display enable active |
||
338 | |||
339 | The default state of vid_wait depends on the video mode selected. |
||
340 | (_vid_wait_override can force vid_wait to 1, wait for vertical |
||
341 | sync; see the description of _vid_wait_override below.) |
||
342 | In built-in modes 0-10, the default is always 0, no waiting. You |
||
343 | can set vid_wait to 1 (wait for vertical sync) to eliminate shear |
||
344 | and tearing in these modes (so partially-completed frames are never |
||
345 | drawn, resulting in a rock-solid image). However, waiting for |
||
346 | vertical sync can result in substantial performance loss. |
||
347 | |||
348 | In VESA modes, if the adapter is VGA compatible and there's enough |
||
349 | memory for three video pages, then triple-buffering is enabled and |
||
350 | vid_wait is set to 2, wait for display enable. There is little |
||
351 | performance loss to this sort of waiting. If the adapter is not |
||
352 | VGA compatible, or if there's only enough memory for double-buffering, |
||
353 | then vid_wait is set to 1 (wait for vertical sync). This can cause |
||
354 | significant loss of performance, but some sort of wait is generally |
||
355 | necessary to avoid occasional glitching of the screen when |
||
356 | page-flipping; we always choose the lowest-cost wait option that |
||
357 | seems to be safe to use. If there's only enough memory for one |
||
358 | page, or if vid_nopageflip 1 is in effect, then vid_wait is set to 0 |
||
359 | (no wait). As with modes 0-10, vid_wait 1 can be used to eliminate |
||
360 | shear, but at a performance cost. |
||
361 | |||
362 | We have encountered problems with a few adapters in VESA modes when |
||
363 | vid_wait is set to 2 (wait for display enable). Apparently some adapters |
||
364 | just toggle display enable all the time, rather than only when pixels |
||
365 | are being sent to the screen; this can cause occasional glitches in |
||
366 | which the screen image jumps for one frame. You can fix this by |
||
367 | setting vid_wait to 1 (wait for vertical sync). We would have made |
||
368 | vid_wait 1 the default, but it's slower, and vid_wait 2 works on most |
||
369 | machines. |
||
370 | |||
371 | The default setting for vid_wait can be changed from the console |
||
372 | at any time. If you are in a VESA mode that waits for vertical |
||
373 | sync and want to turn it off to get a speed-up, you can do so. |
||
374 | However, changing a vid_wait 1 default in a VESA mode may result |
||
375 | in problems. If vid_wait defaults to 1 (wait for vertical sync) |
||
376 | in a mode, and you force it to 2 (wait for display enable), the |
||
377 | machine may hang, because some VGA-incompatible adapters, such as |
||
378 | some ATI Mach64s, don't support the display enable status. If you |
||
379 | force vid_wait to 0 (no wait), then the screen may glitch periodically |
||
380 | if the page flips at a time that results in a bad flip address, |
||
381 | although some adapters work fine with no wait at all. |
||
382 | |||
383 | If you force a new setting for vid_wait and encounter problems, DO |
||
384 | NOT send us a bug report! |
||
385 | |||
386 | _vid_wait_override <1|0> |
||
387 | can be used to force wait for vertical sync in all modes. When |
||
388 | _vid_wait_override is set to 0, the type of waiting, if any, for |
||
389 | each video mode that's set thereafter is automatically set to |
||
390 | what appears to be the fastest safe state. However, it is |
||
391 | possible in some cases that automatic setting may result in some |
||
392 | screen glitching, and it is also true that shear can be |
||
393 | eliminated by waiting for vertical sync (although at a cost in |
||
394 | performance), so it may be desirable in some cases to override |
||
395 | the automatic wait selection and always wait for vertical sync. |
||
396 | This can be done by setting _vid_wait_override to 1. Once set, |
||
397 | this remains in effect through all succeeding mode sets, even |
||
398 | when Quake is exited and re-entered; the only way to keep Quake |
||
399 | from waiting for vertical sync once _vid_wait_override is set to |
||
400 | 1 is to set _vid_wait_override to 0. Note that changing |
||
401 | _vid_wait_override doesn't affect the current mode, but rather |
||
402 | takes effect on the next mode set. _vid_wait_override is initially |
||
403 | set to 0. |
||
404 | |||
405 | _vid_default_mode |
||
406 | can be used to force Quake to start up in a particular mode. |
||
407 | The easiest way to select a default mode is by pressing the |
||
408 | 'D' key in the Video Modes menu, but you can alternatively |
||
409 | use _vid_default_mode to specify the mode in which you want |
||
410 | Quake to start up in future Quake sessions. _vid_default_mode |
||
411 | is initially set to 0. |
||
412 | |||
413 | |||
414 | Higher-quality perspective texture mapping |
||
415 | ------------------------------------------ |
||
416 | |||
417 | For maximum speed, perspective correction is performed only every 16 |
||
418 | pixels. This is normally fine, but it is possible to see texture ripples |
||
419 | in surfaces that are viewed at sharp angles. For more precise texture |
||
420 | mapping, set the console variable d_subdiv16 to 0. Doing this will result |
||
421 | in somewhat slower performance, however, and the difference in visual |
||
422 | quality will not normally be noticeable. |
||
423 | |||
424 | |||
425 | Known video problems and workarounds |
||
426 | ------------------------------------ |
||
427 | |||
428 | If you think you've encountered a bug, see "Bug Reporting," below. |
||
429 | As a general rule, go back to mode 0 if you have problems; mode 0 |
||
430 | should work properly in all cases. |
||
431 | |||
432 | On some ATI Mach64 adapters, the palette is sometimes too dark in |
||
433 | some VESA modes, and is tinted oddly (too red, for example) in other |
||
434 | modes. The workaround is to use different modes, or modes 0-10. |
||
435 | |||
436 | In modes 0-10, shear and tearing can occur as partially finished |
||
437 | frames are displayed. Workaround: set vid_wait to 1 (wait for |
||
438 | vertical sync); this can result in a substantial performance loss, |
||
439 | however. An alternative is to use a page-flipped VESA mode. |
||
440 | |||
441 | In page-flipped VESA modes, occasional glitched frames may occur with some |
||
442 | VESA driver-hardware combinations. Workaround: set vid_wait to 1 (wait |
||
443 | for vertical sync) (you can set _vid_wait_override to 1 to make waiting |
||
444 | for vertical sync permanent for future Quake sessions), or use a different |
||
445 | mode. |
||
446 | |||
447 | The VESA video drivers that come with some video adapters don't |
||
448 | support low-resolution modes such as 320x200; often, |
||
449 | nothing lower than 640x400 is supported. For example, |
||
450 | this is the case with some ATI adapters. There's nothing |
||
451 | Quake can do to provide low-resolution VESA modes in these |
||
452 | cases, because Quake simply supports whatever modes the VESA |
||
453 | driver chooses to report as supported. Unfortunately, 640x400 |
||
454 | is too high a resolution for really good performance unless you |
||
455 | have a very fast Pentium or a Pentium Pro, so on machines with |
||
456 | this sort of adapter, the VESA modes aren't very usable. |
||
457 | Workaround: Use UniVBE 5.2, which supports low-resolution modes |
||
458 | on a wide variety of adapters. Note that a few adapters simply can't |
||
459 | support low-resolution modes, in which case you'll have to stick with |
||
460 | the low-resolution VGA and Mode X modes that are built into Quake, |
||
461 | which run fine but may be somewhat slower than VESA modes. |
||
462 | |||
463 | A few video adapters are almost but not fully VGA compatible, because |
||
464 | they don't support some unusual VGA video modes. In particular, a few |
||
465 | adapters don't support the 360-wide Mode X-style video modes that are |
||
466 | build into Quake (modes 2, 4, 6, 8, and 10), and display garbage in those |
||
467 | modes. Workaround: use different modes, such as 0, 3, 5, 7, 9, or any |
||
468 | VESA modes that are available. |
||
469 | |||
470 | Under Win 95, the palette occasionally gets messed up when switching from |
||
471 | Quake to the desktop and back again. You can restore the palette by |
||
472 | bringing down the console (either press tilde ('~'), or press Esc to bring |
||
473 | up the menu, select Options, and select Console... from the Options menu), |
||
474 | and typing bf and pressing the enter key, to generate a background flash, |
||
475 | which sets the palette. Press Esc to exit the console. Alternatively, |
||
476 | setting the screen brightness, either from the Options menu or via the |
||
477 | gamma console variable, sets the palette. |
||
478 | |||
479 | Under Win 95, if the system key (the key with the Win 95 flag on it) is |
||
480 | pressed while Quake is running fullscreen in a VESA mode, Win 95 may be |
||
481 | unable to switch back from the desktop to Quake, in which case it will |
||
482 | notify you of this, then terminate the Quake session. This is a quirk |
||
483 | of Win 95, and normally there is no workaround other than not to press |
||
484 | that key or not to use VESA modes. (Some people go so far as to remove |
||
485 | the system key from their keyboard.) However, you can |
||
486 | disable the system key for Quake with the following utility: |
||
487 | |||
488 | http://www.microsoft.com/windows/download/doswinky.exe |
||
489 | |||
490 | Switching away from Quake with Alt-Enter, Ctrl-Esc, Alt-Tab, or |
||
491 | Alt-Spacebar all work fine (except that if you disable the system key |
||
492 | with doswinky.exe, Ctrl-Esc will also be disabled). |
||
493 | |||
494 | |||
495 | Performance |
||
496 | ----------- |
||
497 | |||
498 | Quake's graphics should be adequately fast in mode 0 (320x200) on all |
||
499 | Pentium-class machines. If you feel Quake is running slowly, set the |
||
500 | showturtle console variable to 1; you will then see a turtle icon |
||
501 | appear in the upper left corner of the screen if the frame rate drops |
||
502 | below 10 frame/second. If you are getting the turtle, you are probably |
||
503 | not getting great gameplay. Performance can be improved in several ways: |
||
504 | |||
505 | * size down the screen with the minus key |
||
506 | |||
507 | * select a lower-resolution mode, if possible |
||
508 | |||
509 | * use a VESA mode |
||
510 | |||
511 | * if you're using a VESA mode and vid_wait is set to 1 (wait for |
||
512 | vertical sync) by default (you can check by typing vid_wait |
||
513 | in the console), you can try setting vid_wait to 0 or 2, as detailed |
||
514 | in the discussion of the vid_wait command above. Be aware that |
||
515 | risks of screen glitching or hung machines are associated with |
||
516 | overriding a default vid_wait 1 setting in VESA modes. |
||
517 | |||
518 | To see how exactly fast Quake is running, bring up the console and type |
||
519 | |||
520 | host_speeds 1 |
||
521 | |||
522 | You will see a display at the top indicating total frame time in |
||
523 | milliseconds, and also server, graphics, and sound frame time in |
||
524 | milliseconds. (Note, though, that unless you also do |
||
525 | |||
526 | snd_noextraupdate 1 |
||
527 | |||
528 | sound time will actually show up as graphics time. However, |
||
529 | snd_noextraupdate 1 can cause sound to get choppy, so it's not |
||
530 | generally recommended.) |
||
531 | |||
532 | Lower numbers are better. |
||
533 | |||
534 | Type |
||
535 | |||
536 | host_speeds 0 |
||
537 | |||
538 | to turn off the frame time display. |
||
539 | |||
540 | |||
541 | Pentium Pro Performance |
||
542 | ----------------------- |
||
543 | |||
544 | The Pentium Pro is a very fast Quake platform, but has one weak spot; it is |
||
545 | by default very slow on writes to video memory. This means that in default |
||
546 | hardware configurations, you are usually much better off setting |
||
547 | vid_nopageflip to 1 if you use VESA modes, so drawing is done to system |
||
548 | memory instead of to video memory. Remember that you must set the mode |
||
549 | after setting vid_nopageflip to 1 in order to get vid_nopageflip to take |
||
550 | effect. (vid_nopageflip can sometimes be faster on a Pentium, too, but |
||
551 | not by nearly as much in general, and it's often slower.) |
||
552 | |||
553 | The Pentium Pro has some special features that are not turned on by default, |
||
554 | but which can help Quake performance a LOT. These features can be enabled |
||
555 | by John Hinkley's program FASTVID, which can be obtained from |
||
556 | ftp://members.aol.com/JHinkley/fastvid.zip. Performance in 640x480 |
||
557 | mode on a Pentium Pro/150 nearly doubled after FASTVID was run; Quake |
||
558 | was very playable (and looked great!) at this resolution. |
||
559 | |||
560 | There's the usual caution with FASTVID: It could conceivably make your |
||
561 | system run goofily, or who knows what. FASTVID is not a product of |
||
562 | id Software, and id makes no guarantees regarding FASTVID. In other words, |
||
563 | use FASTVID at your own risk. |
||
564 | |||
565 | ************************************************************************ |
||
566 | IMPORTANT NOTE: FASTVID works only on Pentium Pros!!! Please do NOT |
||
567 | contact either John Hinkley or id with problems concerning FASTVID on |
||
568 | Pentium or 486 machines. |
||
569 | ************************************************************************ |
||
570 | |||
571 | |||
572 | Video Bug Reporting |
||
573 | ------------------- |
||
574 | |||
575 | If you encounter a video-related bug, please fill out the form found at the |
||
576 | end of this file and e-mail it to support@idsoftware.com. There are several |
||
577 | problems that are not bugs, and shouldn't be reported, including: |
||
578 | |||
579 | * unavailability of some VESA modes; VESA modes are only supported by |
||
580 | Quake if they are 8-bpp, are LFB modes (except for 320x200), and are |
||
581 | no greater than 1280x1024 in resolution. If you have a VESA mode |
||
582 | that doesn't seem to be working properly, please contact the |
||
583 | manufacturer; we just use the information that the VESA driver |
||
584 | provides us with. |
||
585 | |||
586 | * problems that occur when you change vid_wait from a default value |
||
587 | of 1 (wait for vertical sync) in VESA modes |
||
588 | |||
589 | * sluggish performance on 486s |
||
590 | |||
591 | * the known palette problem on some Mach64s. |
||
592 | |||
593 | * the known palette problems switching from fullscreen to the desktop and |
||
594 | back under Win95. |
||
595 | |||
596 | * the known problems switching back from the desktop in VESA modes after the |
||
597 | system (Windows flag) key has switched from fullscreen to the desktop. |
||
598 | |||
599 | * video modes that are not listed in the Video Modes menu, or that are not |
||
600 | listed or are listed with "**" in the output from vid_describemodes; such |
||
601 | modes are either not supported by your video adapter, or cannot be supported |
||
602 | by Quake in the amount of memory your system has. High-resolution modes will |
||
603 | often not be available in 8 Mb systems. |
||
604 | |||
605 | * 360-wide video modes that don't work although other resolutions do work |
||
606 | |||
607 | * lack of low-resolution VESA modes; the availability of low-resolution modes |
||
608 | is the responsibility of the VESA driver. UniVBE 5.2 provides low-resolution |
||
609 | modes on most adapters. |
||
610 | |||
611 | Apart from these, we would very much like to hear about any video |
||
612 | problems you encounter. |
||
613 | |||
614 | |||
615 | ========================================== |
||
616 | == Sound Subsystem Documentation == |
||
617 | ========================================== |
||
618 | |||
619 | Quake's sound subsystem works only with Sound Blaster compatible sound |
||
620 | cards. For Quake to get the correct settings for DMA channel and PORT |
||
621 | address, you must set your BLASTER environment variable (or have it set for |
||
622 | you with the DIAGNOSE utility in your SB16 directory). If you do not have |
||
623 | the BLASTER environment variable set, your sound will not work. If your |
||
624 | sound card supports Sound Blaster compatibility, Windows 95 should set this |
||
625 | variable for you. |
||
626 | |||
627 | Note: some sound cards do not have 100% Sound Blaster compatible |
||
628 | hardware, but emulate the Sound Blaster interface. Such cards may |
||
629 | display some inconsistencies relative to an actual sound blaster. |
||
630 | In particular, sound may be delayed on some cards. |
||
631 | |||
632 | Note: it is possible for sound to get choppy if the frame rate |
||
633 | drops to a very low level, below 5 frames a second. A frame rate |
||
634 | that low will not provide a good gameplay experience, so if you |
||
635 | do experience choppy sound, your machine is almost certainly not |
||
636 | fast enough to run Quake satisfactorily in general. |
||
637 | |||
638 | If (when) you see bugs, please use the form attached to the end |
||
639 | of these docs to submit a bug report. |
||
640 | |||
641 | Sound Card Command Line Options, Commands, and Variables |
||
642 | ================================================================== |
||
643 | |||
644 | The commands and variables below work under any operating system. |
||
645 | Command-Line options are typed on the command line in most any place |
||
646 | but only in operating systems which support command line interfaces, |
||
647 | like DOS's COMMAND.COM, or NEXTSTEP's or Linux's csh, sh, or bash. |
||
648 | For example, under DOS, the NOSOUND option would be used like this: |
||
649 | "C:> quake -nosound". |
||
650 | |||
651 | Command-Line Options |
||
652 | -------------------- |
||
653 | |||
654 | NOSOUND |
||
655 | Syntax: -nosound |
||
656 | Description: This will prevent *any* sound code from being executed. If |
||
657 | you are having technical difficulty with the game and then try |
||
658 | running the game with this option and the problem goes away, then |
||
659 | the problem is probably somewhere in the sound code. |
||
660 | |||
661 | SSPEED |
||
662 | Syntax: -sspeed |
||
663 | Description: This will ask the sound code to set the playback speed |
||
664 | within the constraints of the capabilities of the card. This is |
||
665 | 11025 Hz by default and usually from 8000 to 44100. Making this |
||
666 | faster requires more CPU horsepower, and has no actual benefits, |
||
667 | because the sounds only contain 11 KHz data. Making this slower |
||
668 | degrades sound quality, but improves performance and saves memory. |
||
669 | |||
670 | Commands |
||
671 | -------- |
||
672 | |||
673 | SOUNDINFO |
||
674 | Syntax: soundinfo |
||
675 | Description: This prints the "portable" information on your current |
||
676 | audio hardware setting in the game. It specifies whether there is |
||
677 | stereo output (0 or 1), the number of samples in the DMA buffer, the |
||
678 | current sample position (changes each time you run SOUNDINFO and |
||
679 | ranges from 0 to the number of samples), the number of sample bits, |
||
680 | the submission chunk (1 in DOS or Linux w/ mmaped sound, larger in |
||
681 | Linux w/o mmaped sound), playback speed in Hz, the DMA buffer address |
||
682 | in hexadecimal (usually 8 digits after the 0x, starting with 0xf00.. |
||
683 | in DOS, starting with 0x400.. in Linux, and less than 8 digits if the |
||
684 | hardware was not initialized successfully), and the number of |
||
685 | channels mixed in software (8 by default, changeable w/NUMCHANNELS |
||
686 | command). |
||
687 | |||
688 | STOPSOUNDS |
||
689 | Syntax: stopsounds |
||
690 | Description: Stops any current looping sounds. |
||
691 | |||
692 | |||
693 | Sound Blaster Sound Card Command-Line Options and Commands |
||
694 | ========================================================== |
||
695 | |||
696 | The following applies to Sound Blaster cards or compatibles under DOS |
||
697 | or a DOS box. |
||
698 | |||
699 | Commands |
||
700 | -------- |
||
701 | |||
702 | SBINFO |
||
703 | Syntax: sbinfo |
||
704 | Description: This will print information on the Sound Blaster card |
||
705 | in the system. If the version is 4 or greater, then it is some |
||
706 | kind of Sound Blaster 16 or compatible. Version 2 is an 8 bit mono |
||
707 | sound blaster, Version 3 is an 8 bit stereo sound blaster pro. |
||
708 | The port is the I/O port |
||
709 | sensed from the A variable in the BLASTER |
||
710 | environment variable. |
||
711 | The DMA is the DMA channel and is confirmed in |
||
712 | hardware if the |
||
713 | card is version 4 or higher. The mixer port can be |
||
714 | ignored. |
||
715 | |||
716 | |||
717 | ========================================== |
||
718 | == CD Audio Subsystem Documentation == |
||
719 | ========================================== |
||
720 | |||
721 | Overview |
||
722 | ======== |
||
723 | Quake is designed to play background music off of a CD-ROM. The Quake CD has |
||
724 | music tracks on it and each level has been assigned a track that will be |
||
725 | played. |
||
726 | |||
727 | Win95 Users: Putting a CD other than the Quake CD into the drive when Quake |
||
728 | is already running will sometimes cause another Windows application to start |
||
729 | and switch you back to Windows with Quake running in the background. You |
||
730 | will probably want to stop whatever was started and switch back to Quake as |
||
731 | quickly as possible... especially if you are playing deathmatch. |
||
732 | |||
733 | |||
734 | Command Line Parameters |
||
735 | ======================= |
||
736 | -nocdaudio |
||
737 | This will prevent the CD audio system from even attempting to initialize. |
||
738 | No CD commands or functions will be available. The game will just run |
||
739 | with no music. |
||
740 | |||
741 | -cdmediacheck |
||
742 | This causes the game to periodically check to see if the CD has been |
||
743 | removed and a new one placed in the player. It is off by default since |
||
744 | this operation is very slow on some CD players and is not needed under |
||
745 | Win95. There is normally no reason to enable this option; it would |
||
746 | only be useful if you were going to be changing the CD from within the |
||
747 | game on a regular basis. |
||
748 | |||
749 | Commands |
||
750 | ======== |
||
751 | There is normally no reason you would need to use any of these commands. If |
||
752 | you are playing Quake with the Quake CD in your CD-ROM drive, the appropriate |
||
753 | music track will be played automatically. |
||
754 | |||
755 | cd on |
||
756 | Re-enables the CD audio system after a "cd off" command. |
||
757 | |||
758 | cd off |
||
759 | Shuts down the CD audio system. No more music will be played unless it |
||
760 | is re-enabled. |
||
761 | |||
762 | cd reset |
||
763 | Causes the CD audio to re-initialize. This is useful if you change |
||
764 | CDs or insert the CD after you've already run Quake. |
||
765 | |||
766 | cd play |
||
767 | Plays the specified track one time. |
||
768 | |||
769 | cd loop |
||
770 | Plays the specified track. It will be repeated until either it is |
||
771 | manually stopped or another track is started. |
||
772 | |||
773 | cd stop |
||
774 | Stops the currently playing track. |
||
775 | |||
776 | cd resume |
||
777 | Will resume playback of a stopped track. |
||
778 | |||
779 | cd eject |
||
780 | This is for CD players that do not have a manual eject button. |
||
781 | |||
782 | cd remap |
||
783 | Allows you to switch what tracks are played. This is especially useful |
||
784 | if you want to play music other than that on the Quake CD. If the CD |
||
785 | audio system is told to play track 1, it will instead play the 1st |
||
786 | track you specified. For example: assuming a CD with 1 data track and |
||
787 | 8 music tracks, the command "cd remap 1 9 8 7 6 5 4 3 2" would leave |
||
788 | the data alone and play the audio tracks as if they had been placed on |
||
789 | the CD in the opposite order. |
||
790 | |||
791 | cd info |
||
792 | Reports information such as the number and types of tracks on the current |
||
793 | CD, what track (if any) is currently playing, and the playback volume. |
||
794 | |||
795 | |||
796 | Variables |
||
797 | ========= |
||
798 | bgmvolume |
||
799 | The background music volume. Valid values are 0.0 though 1.0. Changes |
||
800 | will normally be made using the options menu. |
||
801 | |||
802 | Not all CD-ROM players support variable volume. The 0.0 to 1.0 value |
||
803 | translated to a value from 0 to 255 before it is passed to MSCDEX. How |
||
804 | this value is interpreted varies from drive to drive. The only thing |
||
805 | required by the MSCDEX specification is that 0 is off and anything else |
||
806 | is on. Some CD-ROM drives only have on and off so change to bgmvolume |
||
807 | will have have no effect on volume once it is on. |
||
808 | |||
809 | |||
810 | Messages |
||
811 | ======== |
||
812 | CDAudio_Init: MSCDEX version 2.00 or later required. |
||
813 | MSCDEX was either not loaded, or is a version earlier than 2.00. |
||
814 | |||
815 | CDAudio_Init: First CD-ROM drive will be used |
||
816 | MSCDEX reported that the system has more than one CD-ROM drive. |
||
817 | Quake will always use the first drive in this case. |
||
818 | |||
819 | CDAudio_Init: Unable to allocate low memory. |
||
820 | We were unable to allocate the memory needed to communicate with MSCDEX. |
||
821 | Although the game can still run, this indicates a severe low memory |
||
822 | condition. |
||
823 | |||
824 | CD Audio Initialized |
||
825 | Indicates that the CD audio system has successfully initialized. |
||
826 | |||
827 | CDAudio_Play: Bad track number N. |
||
828 | We attempted to play a track number that that is outside the range of |
||
829 | tracks recorded on the CD currently in the CD-ROM drive. Probable causes |
||
830 | are that a CD other than Quake is in the player, or a custom level has |
||
831 | specified an invalid track number. |
||
832 | |||
833 | CDAudio_Play: Can not play data. |
||
834 | A valid track was requested to be played, but it was a not an audio track. |
||
835 | The probable causes are the same as for a bad track number. |
||
836 | |||
837 | CDAudio_Play: track N failed |
||
838 | A valid audio track was going to be played, but the play command to MSCDEX |
||
839 | returned an error. |
||
840 | |||
841 | CDAudio: media changed |
||
842 | This is simply a notification. It can only occur if the "-cdmediacheck" |
||
843 | option was specified on the command line. |
||
844 | |||
845 | CDAudio: Error - playback stopped N |
||
846 | An error occurred while the CD was playing audio. Playback has been |
||
847 | stopped and no further automatic play will be attempted; the game will |
||
848 | proceed without music. |
||
849 | |||
850 | CDAudio_Init: No CD in player. |
||
851 | MSCDEX reported an error while Quake was attempting to get information |
||
852 | about the current CD. There is either no CD in the player, or it was |
||
853 | unable to get the track information. No automatic CD play will be |
||
854 | attempted; the game will proceed without music. |
||
855 | |||
856 | |||
857 | ========================================== |
||
858 | == Network Subsystem Documentation == |
||
859 | ========================================== |
||
860 | |||
861 | Overview |
||
862 | ======== |
||
863 | |||
864 | Quake is a client/server game. You are always running over some type of |
||
865 | network. In a standalone game, you are using a loopback network; it just |
||
866 | passes messages back and forth in memory buffers. This readme is talking |
||
867 | about real networks and multiplayer deathmatches. There are three main |
||
868 | sections: commands, LANs, and Serial. |
||
869 | |||
870 | Most normal configuration can be done via the game menus. |
||
871 | |||
872 | There are two types of Quake servers: dedicated and listen. A listen server |
||
873 | is a machine that is used to play the game and also hosts the game for other |
||
874 | players. A dedicated server only hosts the game; it runs in text mode and |
||
875 | does not let anyone play on that machine. A single player game is really |
||
876 | just a 1 player listen server that doesn't listen for network connections. |
||
877 | |||
878 | Dedicated vs Listen. I'll try to make this simple: it is always better to |
||
879 | use a dedicated server. Why? Fairness and playability. With a listen |
||
880 | server, the person on the server always has advantages. They will always be |
||
881 | the first person into a level, they will always have zero latency, and they |
||
882 | will get a server update on each and every frame. On a dedicated server |
||
883 | everyone gets equal treatment. Getting into the server is a first come, |
||
884 | first served proposition; latency is determined by each player's connection; |
||
885 | and everyone is sent the same number of updates. It's about as fair as life |
||
886 | gets. By the way, a good 486 machine works nicely as dedicated server. |
||
887 | |||
888 | Another suggestion. Until there is a native Win95 version of Quake, IPX will |
||
889 | usually provide better gameplay on a local area network. This is due to the |
||
890 | delicate balancing act that is required to let a DOS program use the Win95 |
||
891 | TCP/IP stack. |
||
892 | |||
893 | To start a Dedicated Server, you invoke Quake with the "-dedicated" |
||
894 | command-line parameter. When the server starts, you can type any command |
||
895 | that you would normally type in the Quake Console, such as "map e1m1" to |
||
896 | start the server on a specific map. This can be done from the command- |
||
897 | line as well by typing "quake -dedicated +map e1m1". If a value is entered |
||
898 | after "-dedicated", that is the amount of players allowed to connect, up |
||
899 | to a maximum of 16 players. A dedicated server will quit to the OS whenever |
||
900 | a fraglimit or timelimit is reached. Example: "quake -dedicated 16" will |
||
901 | start a 16-player dedicated server. |
||
902 | |||
903 | To start a Listen Server, you invoke Quake with the "-listen" command- |
||
904 | line parameter, or use the Multiplayer menu in the game. Starting a listen |
||
905 | server from the command-line will allow you to handle more than 4 players, |
||
906 | as 4 is the limit when starting a game from the Multiplayer menu. If a |
||
907 | value is used after the "-listen", that is the maximum amount of players |
||
908 | allowed, up to 16 players. |
||
909 | |||
910 | Command Line Parameters, Commands, and Variables |
||
911 | ================================================ |
||
912 | |||
913 | Command line parameters |
||
914 | ----------------------- |
||
915 | -nolan |
||
916 | Disables IPX, TCP/IP, and serial support. |
||
917 | |||
918 | -noudp |
||
919 | Disables support for TCP/IP. |
||
920 | |||
921 | -udpport |
||
922 | Specifies a UDP port to be used other than the default of 26000. |
||
923 | |||
924 | -noipx |
||
925 | Disables support for IPX. |
||
926 | |||
927 | -ipxport |
||
928 | Specifies a IPX port to be used other than the default of 26000. |
||
929 | |||
930 | -noserial |
||
931 | Disable serial support. |
||
932 | |||
933 | -mpath |
||
934 | Enables support for code to use Win95's TCP/IP stack. Do NOT use this |
||
935 | under DOS! |
||
936 | |||
937 | -listen [n] |
||
938 | Starts Quake ready to be a non-dedicated server for up to |
||
939 | players. If you do not specify a number |
||
940 | default to 8. The maximum allowed value is 16. |
||
941 | |||
942 | -dedicated [n] |
||
943 | Starts Quake ready to be a dedicated server for up to |
||
944 | If you do not specify a number |
||
945 | The maximum allowed value is 16. A dedicated Quake server stays in |
||
946 | text mode. This is the Quake console with most commands still |
||
947 | available; those that make no sense (like vid_mode) are ommitted. |
||
948 | |||
949 | Console Variables |
||
950 | ----------------- |
||
951 | |||
952 | net_messagetimeout |
||
953 | Specifies how long Quake should wait for a message to arrive before |
||
954 | deciding the connection has died. The default is 3 minutes. For |
||
955 | reference, messages usually arrive at the rate of about 20 per second. |
||
956 | |||
957 | hostname |
||
958 | This is the name for your server that will show up on an slist |
||
959 | (see below). The default value is "unnamed". |
||
960 | |||
961 | sys_ticrate |
||
962 | Only used by dedicated servers. This determines the rate at which the |
||
963 | server will send out updates to the clients. The default value is 0.05 |
||
964 | (20 updatesper second). For servers where bandwidth is limited, using |
||
965 | modems or the internet for example, it is advisable to lower this value |
||
966 | to 0.1 (10 updates per second). This will have a very minor effect on |
||
967 | responsiveness, but will half to outbound bandwitdh required making the |
||
968 | modem players a lot happier. |
||
969 | |||
970 | |||
971 | Console commands |
||
972 | ---------------- |
||
973 | |||
974 | net_stats |
||
975 | This is for debugging. It displays various network statistics. |
||
976 | |||
977 | slist |
||
978 | Looks for Quake servers on a local LAN (or over a null modem |
||
979 | cable). This will NOT go outside the local LAN (will not cross |
||
980 | routers). |
||
981 | |||
982 | |||
983 | LANs |
||
984 | ==== |
||
985 | |||
986 | Here are the LANs that are supported by the Quake test |
||
987 | release. For each one, you'll be told how to connect to a server |
||
988 | *if it is not on your local network*. If it is, you can use the |
||
989 | "slist" command and connect by hostname. See the main readme for |
||
990 | a discussion of the connect command. |
||
991 | |||
992 | IPX |
||
993 | --- |
||
994 | |||
995 | Quake has been run with Novell's ODI IPX stack under DOS, PDIPX with packet |
||
996 | drivers under DOS, and the Microsoft IPX stack in a Win95 DOS box. When |
||
997 | connecting to a server using IPX, you specify its network:nodeaddress (like |
||
998 | 12345678:1234567890AB). If you are on the same network, you can just specify |
||
999 | the node address. If you are doing a connect command from the console, a |
||
1000 | full IPX address must be enclosed in quotes. |
||
1001 | |||
1002 | For example, the server's IPX address is "00FADE23:00aa00b9b5b2", you would |
||
1003 | enter: connect "00FADE23:00aa00b9b5b2" |
||
1004 | |||
1005 | Win95 TCP/IP |
||
1006 | ------------ |
||
1007 | |||
1008 | Please see the Win95 section of this file for details about playing using |
||
1009 | TCP/IP under Win95. |
||
1010 | |||
1011 | Kali |
||
1012 | ---- |
||
1013 | |||
1014 | To Quake, Kali appears to be IPX. Once you've got Kali up and running, run |
||
1015 | Quake as if it was on an IPX network. |
||
1016 | |||
1017 | Beame & Whiteside TCP/IP |
||
1018 | ------------------------ |
||
1019 | |||
1020 | This is the only DOS TCP/IP stack supported in the test release. |
||
1021 | It is not shareware...it's what we use on our network (in case you |
||
1022 | were wondering why this particular stack). This has been "tested" |
||
1023 | extensively over ethernet and you should encounter no problems |
||
1024 | with it. Their SLIP and PPP have not been tested. When connecting |
||
1025 | to a server using TCP/IP (UDP actually), you specifiy it's "dot notation" |
||
1026 | address (like 123.45.67.89). You only need to specify the unique portion |
||
1027 | of the adress. For example, if your IP address is 123.45.12.34 |
||
1028 | and the server's is 123.45.56.78, you could use "connect 56.78". |
||
1029 | |||
1030 | Playing over the Internet |
||
1031 | ------------------------- |
||
1032 | Yes, you can play Quake over the Internet. How many people can be in |
||
1033 | the game? That depends. How smooth will the game be? That depends. |
||
1034 | There are just too many variables (bandwidth, latency, current load, |
||
1035 | etc...) for us to make any kind of promises about Internet play. |
||
1036 | |||
1037 | |||
1038 | Serial/Modem |
||
1039 | ============ |
||
1040 | |||
1041 | The Quake serial driver supports two COM ports. Although they are referred |
||
1042 | to as COM1 and COM2, you can configure them to use any normal hardware |
||
1043 | COM port (1 thru 4 on most PCs). The com ports are used with interrupts, |
||
1044 | so their IRQ may not be used for another purpose (such as a LAN adapter |
||
1045 | or sound card). The IRQ may not be shared with another device either; |
||
1046 | not even another COM port. A client can only be connected to one server |
||
1047 | at a time, so multiple ports are really only useful on a server. |
||
1048 | When using modems, the client must originate the call and the server |
||
1049 | must answer. This holds true even for a two player, non-dedicated |
||
1050 | server configuration. |
||
1051 | |||
1052 | In the Multiplayer menu, the default modem string is "ATZ". If your modem |
||
1053 | games are too slow, you can change this string to the appropriate one for |
||
1054 | your modem as listed below in the "Modem Strings" section. |
||
1055 | |||
1056 | |||
1057 | The COMx commands |
||
1058 | ----------------- |
||
1059 | |||
1060 | Use the menus for serial play whenever possible. The console |
||
1061 | interface is only for unusual configurations. It is much more |
||
1062 | difficult to understand and use correctly. |
||
1063 | |||
1064 | Those of you who do use the console commands for serial play need to |
||
1065 | know that the menus always use the first Quake COM line (COM1); yes, |
||
1066 | even for COM2. The names COM1 and COM2 here mean the first and second |
||
1067 | serial ports, not necessarily the PC COM1 and COM2 ports (although those |
||
1068 | are the default configurations). |
||
1069 | |||
1070 | There are two commands to support serial/modem play for Quake. They |
||
1071 | are: COM1 and COM2. Entering one of these commands with no arguments |
||
1072 | will display the status of that serial port, similar to this: |
||
1073 | |||
1074 | Settings for COM1 |
||
1075 | enabled: true |
||
1076 | connected: false |
||
1077 | uart: 16550 |
||
1078 | port: 3f8 |
||
1079 | irq: 4 |
||
1080 | baud: 57600 |
||
1081 | CTS: ignored |
||
1082 | DSR: ignored |
||
1083 | CD: ignored |
||
1084 | clear: ATZ |
||
1085 | startup: |
||
1086 | shutdown: ATH |
||
1087 | |||
1088 | When used with arguments, these commands change the settings and |
||
1089 | status of the COM ports. The possible arguments are listed below; |
||
1090 | examples follow. |
||
1091 | |||
1092 | enable | disable |
||
1093 | "enable" means that your configuration is complete and you want to use |
||
1094 | the COM port. "disable" is used to turn off a COM port, usually to |
||
1095 | change its settings. The default (initial) state is disabled. |
||
1096 | |||
1097 | |||
1098 | modem | direct |
||
1099 | Use one of these two to let Quake know if you are using a modem or a |
||
1100 | direct connection (also called a null modem). Quake uses this to know |
||
1101 | if it needs to handles modem initialization strings, dialing sequences, |
||
1102 | and hangup procedures. |
||
1103 | |||
1104 | reset |
||
1105 | This will reset the COM port to its default settings and state. |
||
1106 | |||
1107 | |||
1108 | port |
||
1109 | irq |
||
1110 | These are used to set the I/O Port and IRQ that your serial port uses. |
||
1111 | The default values are: port=3f8 irq=4 for COM1 and port=2f8 irq=3 for |
||
1112 | COM2. Note that the port number is displayed in hexadecimal; to enter |
||
1113 | it you would use something like "COM2 port 0x2f8"; the "0x" preceding |
||
1114 | the "2f8" indicates that you are giving the value in hexadecimal |
||
1115 | otherwise decimal is assumed. |
||
1116 | |||
1117 | |||
1118 | baud |
||
1119 | Sets the baud rate. Valid values for |
||
1120 | 28800, 57600, and 115200. 57600 is the default. Please note that |
||
1121 | this is the baud rate used for the uart, not your modem. It is |
||
1122 | perfectly valid to use 57600 on a COM port that is connected to a |
||
1123 | 28.8 modem. |
||
1124 | |||
1125 | 8250 | 16550 |
||
1126 | Specifies the type of uart chip in your system. Normally this is |
||
1127 | automatically detected, one of these need only be used if your chip |
||
1128 | is incorrectly detected. |
||
1129 | |||
1130 | clear |
||
1131 | startup |
||
1132 | shutdown |
||
1133 | This allows you to specify the clear, startup, and shutdown strings |
||
1134 | needed for |
||
1135 | a modem for playing Quake. If you've found values that |
||
1136 | previously worked |
||
1137 | with Doom, use them here. If you are playing over |
||
1138 | a null modem cable, |
||
1139 | leave these blank. |
||
1140 | |||
1141 | -cts | +cts |
||
1142 | -dsr | +dsr |
||
1143 | -cd | +cd |
||
1144 | These determine if certain serial control lines should be honored or |
||
1145 | ignored. The "-" means you want that line ignored, the "+" means to honor |
||
1146 | it. "cts" is an abbreviation for "clear to send", "dsr" for |
||
1147 | "data set ready", and "cd" for "carrier detect". Do not |
||
1148 | change these |
||
1149 | values unless you are absolutely positive you need to. The default is to |
||
1150 | ignore all 3 lines. |
||
1151 | |||
1152 | Quake always uses no parity, 8 data bits, and 1 stop bit; these |
||
1153 | values can not be changed. The baud, port, irq, and uart type can |
||
1154 | not be changed on an enabled port, you must disable it first. |
||
1155 | |||
1156 | |||
1157 | Configuration examples |
||
1158 | ---------------------- |
||
1159 | Example1: You have a machine with two serial ports you are going |
||
1160 | to use as a Quake server. COM1 will be using a null modem cable and |
||
1161 | COM2 will be connected to a 14.4 modem. You would use commands similar |
||
1162 | (the startup string would almost certainly be different) to these: |
||
1163 | |||
1164 | COM1 baud 57600 enable |
||
1165 | COM2 baud 14400 modem startup AT\N0%C0B8 enable |
||
1166 | |||
1167 | |||
1168 | Example2: You are going to use your machine to connect to a dial-up |
||
1169 | Quake server with your 28.8 modem connected to COM2. You would |
||
1170 | use a command something like this: |
||
1171 | |||
1172 | COM2 baud 57600 modem startup AT\N0%C0B8 enable |
||
1173 | |||
1174 | Note the baud rate is not the same as the modem speed. This allows |
||
1175 | the modem-to-uart communications to occur at a higher rate than |
||
1176 | the modem-to-modem communications. |
||
1177 | |||
1178 | Connecting to a serial Quake server |
||
1179 | ----------------------------------- |
||
1180 | |||
1181 | Connecting to a Quake server over a serial/modem connection is done |
||
1182 | using the "connect" command. The command "connect 5551212" would try to |
||
1183 | connect to a Quake server at the phone number 555-1212. Note: your local |
||
1184 | phone company would probably appreciate it if you didn't try this number! |
||
1185 | |||
1186 | If you are using a null modem cable, you can type "connect #". |
||
1187 | Quake will then attempt to connect to the server. |
||
1188 | |||
1189 | |||
1190 | Known problems / workarounds |
||
1191 | ============================ |
||
1192 | Packet drivers with PDIPX - there is a bug that stops a server running on |
||
1193 | this combination from responding to the slist command. Use the patched |
||
1194 | version of PDIPX included with Quake to correct this problem. |
||
1195 | |||
1196 | SLIST sees no servers - Some PCMCIA ethernet cards and PPP drivers will |
||
1197 | not do the UDP broadcasts needed for the SLIST command (search for local |
||
1198 | games from the menu) to function correctly. In these cases you must |
||
1199 | connect to a Quake game using either its IP address or hostname |
||
1200 | (DNS resolvable hostname, not the hostname variable in Quake). |
||
1201 | |||
1202 | "BW_OpenSocket failed: 5" - This error is specific to the Beame and |
||
1203 | Whitesdie TCP/IP stack. This stack uses DOS file handles as it's |
||
1204 | socket handles. This error occurs when DOS runs out of file handles. |
||
1205 | You need to increase the number specified by "FILES=" in the DOS |
||
1206 | config.sys file. |
||
1207 | |||
1208 | Severe lag using TCP/IP under Win95: |
||
1209 | - Occasionaly when you first connect in to a Quake game using Win95 |
||
1210 | TCP/IP you will experience severe lag and not be able to control your |
||
1211 | player's actions. This usually clears up in 10 to 15 seconds. |
||
1212 | - There is apparently a strange limbo state for Microsoft's File and |
||
1213 | Print sharing. This has been seen when it was installed and then later |
||
1214 | removed, but it still appears on the menus. For some unknown reason |
||
1215 | this causes severe lag for a Quake game. You need to go back and make |
||
1216 | sure that it is either completely installed or removed. |
||
1217 | |||
1218 | |||
1219 | ========================================== |
||
1220 | == Modem Strings == |
||
1221 | ========================================== |
||
1222 | |||
1223 | Boca M1440i (internal): |
||
1224 | ATS48=0S37=9S46=136%C0%E0%M0&K0&Q0&R1&C1&D2\G0\N1N0 |
||
1225 | |||
1226 | Boca 14.4k (internal): |
||
1227 | AT&C0N0S37=9&K0W0&Q0S36=3S48=128%C0 |
||
1228 | |||
1229 | Boca 14.4 Fax/Modem |
||
1230 | AT S46=0 S37=9 N0 &Q0 &D2 &K4 |
||
1231 | |||
1232 | Boca 14.4k (external): |
||
1233 | AT &F S0=1 S36=0 &K0 &Q6N0S37=9 &D2 |
||
1234 | |||
1235 | Boca 14.4k: |
||
1236 | AT S46=0 S37=9 N0 &Q0 &D2 &K0 %C0 |
||
1237 | |||
1238 | Cardinal 14.4k v.32bis, v.42bis Fax/Modem: |
||
1239 | AT &F N0 S37=9 &Q0 &D2 \N1 |
||
1240 | |||
1241 | Digicom Systems (DSI) (softmodem): |
||
1242 | AT Z \N0 &D2 &K0 S48=48 |
||
1243 | |||
1244 | Digicom Systems Scout Plus: |
||
1245 | ATZ*E0*N3*M0*S0*F0&D2 |
||
1246 | |||
1247 | Gateway Telepath: |
||
1248 | AT &F S37=9 %C0 &K0 &Q6 \G0 |
||
1249 | |||
1250 | Gateway Telepath 14.4k: |
||
1251 | AT S46=0 S37=9 N0 &Q0 &D2 &K0 %C0 |
||
1252 | |||
1253 | Gateway Telepath I: |
||
1254 | AT S0=1 &N6 &K0 &M0 |
||
1255 | |||
1256 | Gateway Telepath II: |
||
1257 | AT S0=1 S37=9 %C0 &Q0 &K0 |
||
1258 | |||
1259 | Generic v.32bis 14.4k Fax/Modem: |
||
1260 | AT \N0 %C0 B8 |
||
1261 | |||
1262 | Generic 14.4k Fax/Modem: |
||
1263 | AT S46=0 S37=9 N0 &Q0 &D2 %C0 \G0 &K0 |
||
1264 | |||
1265 | GVC 14.4k (internal): |
||
1266 | AT &F B8 \Q0 |
||
1267 | |||
1268 | Hayes 28.8k V.FAST Modem: |
||
1269 | AT &Q6 &K S37=9 N %C0 \N0 |
||
1270 | |||
1271 | Infotel 144I: |
||
1272 | AT&Q0 S37=9 N0 &D2 |
||
1273 | |||
1274 | Infotel 14.4: |
||
1275 | &F0 \N1 &D2 S37=F8 |
||
1276 | |||
1277 | Intel 14.4k: |
||
1278 | AT \N0 %C0 \Q0 B8 |
||
1279 | |||
1280 | Intel 14.4k (internal): |
||
1281 | AT Z B8 Q1 \C0 \N1 %C0 \V "H |
||
1282 | |||
1283 | Linelink 144e: |
||
1284 | AT &F &D1 &K0 &Q6 S36=3 S46=136 %C0 |
||
1285 | 19200 |
||
1286 | |||
1287 | Microcom AX: |
||
1288 | &F \N1 \Q0 &D2 |
||
1289 | |||
1290 | Microcom QX/4232bis: |
||
1291 | AT %C0 \N0 |
||
1292 | |||
1293 | Netcomm M7F: |
||
1294 | AT &E &K0 B0 \V0 X4 &D2 \N1 \Q0 #J0 #Q9 %C0 |
||
1295 | |||
1296 | Nokia ECM 4896M Trellis V.32: |
||
1297 | AT Z %C0 /N0 |
||
1298 | |||
1299 | Nuvotel IFX 14.4 (internal): |
||
1300 | &F \N1 &D2 |
||
1301 | |||
1302 | Practical Peripherals 14400FX v.32bis: |
||
1303 | AT Z S46=0 &Q0 &D2 |
||
1304 | |||
1305 | Practical Peripherals 14400FX v.32bis: |
||
1306 | AT S46=0 &Q0 &K0 &D2 |
||
1307 | |||
1308 | Supra: |
||
1309 | AT &F0 S46=136 %C0 |
||
1310 | |||
1311 | Supra (external): |
||
1312 | AT &K &Q &D \N1 |
||
1313 | |||
1314 | Supra 14.4k v.32bis: |
||
1315 | AT &F S46=136 &Q0 &D2 |
||
1316 | |||
1317 | Supra 14.4k v.32bis: |
||
1318 | AT &K &Q &D \N1 |
||
1319 | |||
1320 | Supra Fax Modem 14.4K v.32 bis |
||
1321 | AT &F %C0 S48=7 Q0 V1 W1 |
||
1322 | |||
1323 | Telepath 14.4k: |
||
1324 | AT &F&M0&K0&N6&H0 S0=1 |
||
1325 | |||
1326 | Twincomm DFi 14.4: |
||
1327 | AT&F &Q0 %C0 S37=9 &D2 |
||
1328 | |||
1329 | UDS V.3223: |
||
1330 | &F \N1 \Q &D2 |
||
1331 | |||
1332 | UDS Fastalk 32BX: |
||
1333 | &F0 \N1 &D2 |
||
1334 | |||
1335 | USR Courier v.32bis: |
||
1336 | ATS0=1 S7=60 E1 Q0 V1 &C1 &D2 &H0 &K0 &M0 &N6 &A3 |
||
1337 | |||
1338 | USR Courier HST/DS 16.8k: |
||
1339 | First reset the modem in a communication program with AT&F&W |
||
1340 | AT X4 B0 &A0 &B0 &H2 &I0 &K0 &M0 &N6a |
||
1341 | |||
1342 | USR DS v.32bis v.42bis (external): |
||
1343 | AT&m0&n6&a0&r1&h0&k0&i0&s0&b1x1 |
||
1344 | |||
1345 | USR Sporster 9600: |
||
1346 | AT&M0&K0&N6 |
||
1347 | |||
1348 | USR Sportster V.34 28.8 (note: works best at 19200 baud): |
||
1349 | AT &F &M0 &I0 &K0 &B0 &N0 |
||
1350 | |||
1351 | USR Sportster 14.4k Fax/Modem USING ERROR CORRECTION: |
||
1352 | AT S0=1 S7=60 E1 QO V1 &C1 &D2 &K0 &N6 &A3 |
||
1353 | |||
1354 | USR Sportster 14.4k Fax/Modem (internal): |
||
1355 | AT &F&M0&K0&N6&H0 |
||
1356 | |||
1357 | USR Sportster 14.4k (internal): |
||
1358 | AT &F &B1 &H0 &I0 &K0 &M0 &N6 &R1 |
||
1359 | |||
1360 | USR Sportster 14.4k: |
||
1361 | ATS0=1S7=60E1Q0V1&C1&D2&K0&N6&A3 |
||
1362 | |||
1363 | USR Sportster 14.4k: |
||
1364 | AT &F0 &K0 &M0 &N6 &H0 &I0 &B1 &R1 |
||
1365 | |||
1366 | USR Sportster 14,000 Fax Modem: |
||
1367 | AT S0=2 &N6 &K0 &M0 &I0 &H0 &R1 &A0 V1 X4 |
||
1368 | |||
1369 | USR 14.4k: |
||
1370 | AT &F&A0&K0&M0 |
||
1371 | |||
1372 | USR 14.4k |
||
1373 | AT &K0 &H0 &D0 &I0 &R1 |
||
1374 | |||
1375 | USR 14.4k Dual Standard |
||
1376 | ATB0&R1&B1&N6Q0X4&A0&D2&H0&I0&K0&M0M1 |
||
1377 | |||
1378 | USR (model?): |
||
1379 | &F E1 V1 X4 &C1 &D2 &N0 |
||
1380 | |||
1381 | ViVa 14.4k: |
||
1382 | AT&F&Q6\N0%C0&D2N0S37=9 |
||
1383 | |||
1384 | ViVa modem (internal): |
||
1385 | &F&Q6\N0%C0&D2N0S37=9 |
||
1386 | |||
1387 | Zoltrix model 14/14 VE: |
||
1388 | AT S0=Q0 V1 &C1 &D2 W2 &Q0 |
||
1389 | |||
1390 | Zoom 14.4k VFX: |
||
1391 | AT&Q6S37=9N0%C\N0 |
||
1392 | |||
1393 | Zoom 14.4k VFX: |
||
1394 | AT&Q6S37=11N0%C&K0 |
||
1395 | |||
1396 | Zoom OEM Modem: |
||
1397 | AT&Q6S37=9N0&K0 |
||
1398 | |||
1399 | Zyxel U-1496E: |
||
1400 | AT Z &N4 &K0 |
||
1401 | |||
1402 | |||
1403 | ========================================== |
||
1404 | == Win95 Documentation == |
||
1405 | ========================================== |
||
1406 | |||
1407 | Quake is a DOS application. However, it runs fine from the MS-DOS prompt |
||
1408 | under Win95, so long as the Properties for the MS-DOS prompt are set up so |
||
1409 | that Quake can run. (See "Set the MS-DOS Prompt Properties", below, for |
||
1410 | information about setting MS-DOS Prompt Properties.) Quake will NOT run |
||
1411 | under Windows NT. Following are some steps that can help Quake run better |
||
1412 | under Win95. |
||
1413 | |||
1414 | |||
1415 | Have enough memory |
||
1416 | ------------------ |
||
1417 | |||
1418 | Quake requires at least 16 Mb of installed memory in order to run under |
||
1419 | Win95. |
||
1420 | |||
1421 | |||
1422 | Set the MS-DOS Prompt Properties |
||
1423 | -------------------------------- |
||
1424 | |||
1425 | If Quake won't run, the MS-DOS Prompt Properties may not be set correctly. |
||
1426 | To set the Properties for the MS-DOS prompt, bring up a DOS session, and |
||
1427 | either click on the MS-DOS icon in the upper left corner or press |
||
1428 | Alt-Spacebar, then select Properties from the menu that comes up, and make |
||
1429 | sure the following settings are correct. |
||
1430 | |||
1431 | In the Program sheet of MS-DOS Prompt Properties, make sure the "Suggest |
||
1432 | MS-DOS mode as necessary" is checked. |
||
1433 | |||
1434 | In the Memory sheet of MS-DOS Prompt Properties, make sure all five fields |
||
1435 | are "Auto". |
||
1436 | |||
1437 | In the Screen sheet of MS-DOS Prompt Properties, set "Usage" to Full-screen. |
||
1438 | |||
1439 | In the Misc sheet of MS-DOS Prompt Properties, uncheck the "Allow screen |
||
1440 | saver" box, and check the "Always suspend" box. |
||
1441 | |||
1442 | |||
1443 | Make sure there's enough free disk space |
||
1444 | ---------------------------------------- |
||
1445 | |||
1446 | If you get error messages like "can't lock memory" under Win 95, or if you |
||
1447 | get other weird, inexplicable errors, make sure you haven't run out of disk |
||
1448 | space; delete some files if necessary. You can see how much disk space is |
||
1449 | free by bringing up "My Computer" and clicking on the disk icon; the free |
||
1450 | disk space will be shown at the bottom of the window. |
||
1451 | |||
1452 | |||
1453 | Run fullscreen |
||
1454 | -------------- |
||
1455 | |||
1456 | Quake can run in a window under Win95--but it will run very slowly. You are |
||
1457 | unlikely to get satisfactory performance unless you run Quake fullscreen. |
||
1458 | Quake normally comes up fullscreen under Win95; if you have switched it back |
||
1459 | to windowed mode, you can get that window back to fullscreen by clicking on |
||
1460 | it and then pressing Alt-Enter. |
||
1461 | |||
1462 | |||
1463 | Shut down other applications |
||
1464 | ---------------------------- |
||
1465 | |||
1466 | Many Win95 apps and DOS apps run even when they're not the foreground |
||
1467 | application. Such applications contend for system resources such as memory, |
||
1468 | processor cycles, and sound hardware. If Quake seems to be running choppily, |
||
1469 | if sound is garbled, or if the disk is going all the time, try shutting down |
||
1470 | whatever other applications you have running. For example, some players |
||
1471 | have reported that Quake does not run as well when the Office shortcut bar |
||
1472 | is running. |
||
1473 | |||
1474 | |||
1475 | Restore the palette if it gets garbled |
||
1476 | -------------------------------------- |
||
1477 | |||
1478 | Under Win 95, the palette occasionally gets messed up when switching from |
||
1479 | Quake to the desktop and back again. You can restore the palette by |
||
1480 | bringing down the console (either press tilde ('~'), or press Esc to bring |
||
1481 | up the menu, select Options, and select Console... from the Options menu), |
||
1482 | and typing bf and pressing the enter key, to generate a background flash, |
||
1483 | which sets the palette. Press Esc to exit the console. Alternatively, |
||
1484 | setting the screen brightness, either from the Options menu or via the |
||
1485 | gamma console command, sets the palette. |
||
1486 | |||
1487 | |||
1488 | Avoid the system key |
||
1489 | -------------------- |
||
1490 | |||
1491 | Under Win 95, if the system key (the key with the Win 95 flag on it) is |
||
1492 | pressed while Quake is running fullscreen in a VESA mode, Win 95 may be |
||
1493 | unable to switch back from the desktop to Quake, in which case it will |
||
1494 | notify you of this, then terminate the Quake session. This is a quirk |
||
1495 | of Win 95, and there is no workaround other than not to press that key |
||
1496 | or not to use VESA modes. (Some people go so far as to remove the system |
||
1497 | key from their keyboard.) Switching away from Quake with Alt-Enter, |
||
1498 | Ctrl-Esc, Alt-Tab, or Alt-Spacebar all work fine. |
||
1499 | |||
1500 | |||
1501 | Give Quake more and/or locked memory |
||
1502 | ------------------------------------ |
||
1503 | |||
1504 | By default, Quake tries to allocate 8 Mb of unlocked memory for heap space |
||
1505 | under Win 95. More memory helps Quake run faster; you can allocate more |
||
1506 | memory for Quake under Win95 by setting the command-line switch |
||
1507 | |||
1508 | -winmem x |
||
1509 | |||
1510 | where x is the number of megabytes to allocate for Quake. If there's enough |
||
1511 | memory in the system, the larger the number, up to about 16, the better the |
||
1512 | performance. If, however, there isn't enough memory in the system, or many |
||
1513 | other applications are running, the larger number can just cause Quake to |
||
1514 | page to disk a lot, and can actually slow performance considerably. Also, |
||
1515 | higher numbers can also cause Win 95 to take longer to start Quake and take |
||
1516 | longer to return to the desktop afterward. If you have 32 Mb or more in your |
||
1517 | machine, -winmem 16 should provide the best performance for Quake. If you |
||
1518 | have less than 32 Mb, or a lot of applications running, then you will have |
||
1519 | to experiment to find the best amount of memory to allocate for Quake. |
||
1520 | |||
1521 | You may optionally instruct Quake to lock itself in memory by using the |
||
1522 | command-line switch |
||
1523 | |||
1524 | -winlock |
||
1525 | |||
1526 | so it won't get paged out by other applications. This can avoid hitches when |
||
1527 | parts of Quake get paged into and out of memory, and thus provide a smoother |
||
1528 | playing experience. On the other hand, it can cause Quake to take longer to |
||
1529 | start, and can make the return to the desktop take longer when Quake ends, |
||
1530 | because Quake has been hogging a lot of memory. It is even possible, if most |
||
1531 | of the memory in the system is locked by Quake, that it will take many |
||
1532 | minutes to switch back to the desktop while Quake is running, so the system |
||
1533 | will effectively be nearly frozen. Therefore, use -winlock with caution; |
||
1534 | Quake is not as well-behaved a Win95 citizen when -winlock is specified, and |
||
1535 | does not share resources particularly well. |
||
1536 | |||
1537 | -winmem can be used in conjunction with -winlock; if -winmem specifies more |
||
1538 | memory than is available to be locked, then Quake will lock as much memory |
||
1539 | as possible. Being too aggressive about how much memory is locked can |
||
1540 | actually slow Quake performance, because unlocked parts of the system like |
||
1541 | system CD and sound code and data can then be forced to page, so if you do |
||
1542 | lock memory, you will have to experiment to find the sweet spot, unless you |
||
1543 | have 32 Mb or more of memory. |
||
1544 | |||
1545 | -winlockunlock can be specified as an alternative to -winlock, to tell Quake |
||
1546 | to lock its memory when it starts, then immediately unlock it. The |
||
1547 | advantages of doing this are: 1) it forces all of Quake's pages into memory, |
||
1548 | so no pages should need to be brought in as Quake runs, making for smoother |
||
1549 | running at the start, and 2) it enables Quake to determine whether the |
||
1550 | specified amount of memory (if -winmem is also specified) is available in the |
||
1551 | machine, so you can be sure Quake won't try to allocate more heap space than |
||
1552 | the the amount of physical memory that's actually available. Like -winlock, |
||
1553 | -winlockunlock causes Quake to take quite a bit longer to start up, but it |
||
1554 | has the advantage of making Quake a good Win95 citizen if you need to switch |
||
1555 | back to the desktop, or have other apps running. |
||
1556 | |||
1557 | In general, Quake will run fine without any of the -winxxx switches, but you |
||
1558 | may find that one or more of them--particularly -winmem if you have more than |
||
1559 | 16 Mb--helps Quake performance on your machine. |
||
1560 | |||
1561 | None of this is an issue under DOS itself (as oppsed to a DOS box under |
||
1562 | Win95), because Quake just uses all the memory in the machine under DOS. |
||
1563 | |||
1564 | By default, Quake tries to allocate 8 Mb of unlocked memory for heap space |
||
1565 | |||
1566 | |||
1567 | Watch out for limbo subsystems |
||
1568 | ------------------------------ |
||
1569 | Microsoft's File and Print sharing and IPX protocol stack have both been |
||
1570 | known to cause strange problems when they are in a limbo state. The limbo |
||
1571 | state is seems to be an uninstall that did not complete succesfully. Both |
||
1572 | of these cause poor network play performance. If you are experiencing |
||
1573 | severe lag, check the File and Print services. If you the warning "IPX |
||
1574 | driver send failue: 04", check the IPX protocol stack. They need to be |
||
1575 | either completely installed or removed; the problems only occur when they |
||
1576 | get into this strange semi-installed state. |
||
1577 | |||
1578 | |||
1579 | ========================================== |
||
1580 | == Key Binding and Aliases == |
||
1581 | ========================================== |
||
1582 | |||
1583 | Pressing the tilde key ("~") will bring down the console (pressing the |
||
1584 | tilde key or ESC while in the console will close the console). From the |
||
1585 | console you can adjust your player controls, this is done by "binding" |
||
1586 | keys to commands. The format for binding keys is as follows: |
||
1587 | |||
1588 | bind |
||
1589 | |||
1590 | Where |
||
1591 | |||
1592 | Example: |
||
1593 | To bind the j key to the 'jump' command, you would type: |
||
1594 | bind j +jump |
||
1595 | and press enter. |
||
1596 | |||
1597 | Non-printable keys such as 'page up' and buttons from the mouse/joystick are |
||
1598 | bound in the same manner as printable characters. A list of bindable keys can |
||
1599 | be found at the end of this file. |
||
1600 | |||
1601 | Example: |
||
1602 | To bind the page up key to the 'jump' command, you would type: |
||
1603 | bind pageup +jump |
||
1604 | and press enter. |
||
1605 | |||
1606 | To bind the right mouse button to the attack command, you would type: |
||
1607 | bind mouse2 +attack |
||
1608 | and press enter. |
||
1609 | |||
1610 | The alias command is used to create a reference to a command or list of |
||
1611 | commands. When aliasing multiple commands, or commands that contain |
||
1612 | multiple words (such as "fraglimit 50"), you must enclose all the commands |
||
1613 | in quotation marks and separate each command with a semi-colon. |
||
1614 | |||
1615 | Example of an alias that changes some Deathmatch server parameters: |
||
1616 | |||
1617 | alias net_game "hostname my_server ; fraglimit 15 ; timelimit 15" |
||
1618 | bind INS net_game |
||
1619 | |||
1620 | Once the server is spawned (you must be the one running the -listen server), |
||
1621 | you just push the Insert key to set the hostname, frag limit and time limit |
||
1622 | of the server. So now the first person to 15 frags, or with the one with the |
||
1623 | most frags in 15 minutes, wins. |
||
1624 | |||
1625 | Another example would be to change to the Rocket Launcher, fire one rocket, |
||
1626 | and change back to the Double Barrel Shotgun, when you press the "," key: |
||
1627 | |||
1628 | alias rl_dbsg "impulse 7 ; +attack ; wait ; -attack ; impulse 3" |
||
1629 | bind , rl_dbsg |
||
1630 | |||
1631 | Aliasing is very powerful, allowing you great flexibility, so you should |
||
1632 | experiment by aliasing different commands in various ways. |
||
1633 | |||
1634 | A list of common commands can be found in the next section. |
||
1635 | |||
1636 | |||
1637 | ========================================== |
||
1638 | == Quake Keys and Common Commands == |
||
1639 | ========================================== |
||
1640 | |||
1641 | The following keys can be bound: |
||
1642 | |||
1643 | A-Z 0-9 |
||
1644 | *F1-F12 *TAB |
||
1645 | ENTER SPACE |
||
1646 | BACKSPACE UPARROW |
||
1647 | DOWNARROW LEFTARROW |
||
1648 | RIGHTARROW ALT |
||
1649 | CTRL SHIFT |
||
1650 | INS DEL |
||
1651 | PGDN PGUP |
||
1652 | HOME END |
||
1653 | PAUSE SEMICOLON |
||
1654 | |||
1655 | MOUSE1 (mouse button 1) |
||
1656 | MOUSE2 (mouse button 2) |
||
1657 | MOUSE3 (mouse button 3) |
||
1658 | |||
1659 | *~ (tilde) |
||
1660 | |||
1661 | * Can only be bound on the command line or in a .cfg file. |
||
1662 | |||
1663 | The ESC key cannot be bound. |
||
1664 | |||
1665 | |||
1666 | ========================================== |
||
1667 | == Making a Config File == |
||
1668 | ========================================== |
||
1669 | |||
1670 | The commands (bindings and aliases) discussed above can be included into a |
||
1671 | file containing all of your personal configurations, known as a "config" |
||
1672 | file. This file can then be loaded during game play to enable all your |
||
1673 | personal bindings and settings. |
||
1674 | |||
1675 | To do this, use your favorite editor to create a new file, such as |
||
1676 | "fragmstr.cfg". Your .cfg file MUST be located in the quake\id1 directory |
||
1677 | or quake won't find it. Then after launching Quake, you would type "exec |
||
1678 | fragmstr.cfg" and press enter, from the console. You can also exec you .cfg |
||
1679 | file from the DOS command prompt by typing "quake +exec fragmstr.cfg". |
||
1680 | When you exec a config file, it is the same as typing all the lines in your |
||
1681 | config file into the console, only Quake does it for you. Here is an |
||
1682 | example config file (c:\quake\id1\bear.cfg) and the meaning of all the |
||
1683 | bindings, aliases and settings: |
||
1684 | |||
1685 | -------------------------------cut here------------------------------------- |
||
1686 | name player1 // Sets player name to player1 (lets your opponent |
||
1687 | // know who fragged them) |
||
1688 | |||
1689 | sensitivity 4 // Sets the mouse sensitivity to 4 |
||
1690 | |||
1691 | scr_conspeed 5000 // Sets the console raise/lower speed |
||
1692 | |||
1693 | lookspring 0 // Sets Mouse Look Spring to 0 (0=keep looking, |
||
1694 | // 1=spring back, when mouse button is released) |
||
1695 | |||
1696 | vid_mode 10 // Sets Video Mode to mode 10 (360X480 resolution) |
||
1697 | |||
1698 | gamma .8 // Sets Gamma Correction to .8 (<1=Lighter, 1=normal |
||
1699 | // and >1=darker) |
||
1700 | |||
1701 | viewsize 70 // Sets the Screen View size to 70 degrees |
||
1702 | |||
1703 | bind mouse1 +forward // Binds the left mouse button to Move Forward |
||
1704 | |||
1705 | bind mouse3 +attack // Binds the middle mouse button to Fire |
||
1706 | |||
1707 | bind mouse2 +mlook // Binds the right mouse button to Mouse Look |
||
1708 | |||
1709 | bind HOME "save bear1" // Binds the Home Key to quick save, saves to |
||
1710 | // bear1.sav |
||
1711 | |||
1712 | bind ENTER +showscores // Binds the Enter key to show Deathmatch Scores |
||
1713 | |||
1714 | bind SHIFT +speed // Binds the Shift key to Run |
||
1715 | |||
1716 | bind CTRL +jump // Binds the Control key to Jump |
||
1717 | |||
1718 | bind ; +mlook // Binds the ; key to Mouse Look also |
||
1719 | |||
1720 | bind . +moveleft // Binds the . key to Strafe Left |
||
1721 | |||
1722 | bind / +moveright // Binds the / key to Strafe Right |
||
1723 | |||
1724 | color 3 4 // Makes Uniform Top green and Pants Red for Net play |
||
1725 | |||
1726 | alias rl_dbsg "impulse 7 ; +attack ; wait ; -attack ; impulse 3" |
||
1727 | |||
1728 | bind , rl_dbsg // Aliases single rocket attack command and binds |
||
1729 | // it to the ',' key. |
||
1730 | -------------------------------cut here------------------------------------- |
||
1731 | |||
1732 | |||
1733 | ========================================== |
||
1734 | == Demos == |
||
1735 | ========================================== |
||
1736 | |||
1737 | The standard Demos |
||
1738 | ------------------ |
||
1739 | |||
1740 | Quake has 3 standard demos that start playing when you first run the game. |
||
1741 | It will cycle through these demos until you start or join a game. |
||
1742 | |||
1743 | Recording a Demo |
||
1744 | ---------------- |
||
1745 | "record |
||
1746 | recording a demo into a file name |
||
1747 | optional |
||
1748 | default selection for that map will be played. |
||
1749 | |||
1750 | Playing a Demo |
||
1751 | -------------- |
||
1752 | "playdemo |
||
1753 | play the demo. |
||
1754 | |||
1755 | How to not play the standard demos at startup |
||
1756 | --------------------------------------------- |
||
1757 | |||
1758 | So you've seen the Necropolis demo 10 billion times now and really don't |
||
1759 | ever want to see it again? Here's how. |
||
1760 | |||
1761 | The easy way is to start Quake with a "+map" command. You could do |
||
1762 | "quake +map start" and you'll start on the single player start level. |
||
1763 | Or you could do "quake +map nonsense" and you'll wind up at the Quake |
||
1764 | console since there is no map named nonsense. You can accomplish the |
||
1765 | same thing with a "+connect" too. "+connect" by itself will look for |
||
1766 | Quake servers on the local network, "+connect 192.12.34.56" or |
||
1767 | "+connect host.timbuktu.edu" will try to connect the the specified |
||
1768 | Quake server. |
||
1769 | |||
1770 | There is another way to not show the demos; one that also keeps your |
||
1771 | customizations in a seperate directory from the data files in the |
||
1772 | Quake distribution. |
||
1773 | |||
1774 | Do this in the quake directory (the directory where you installed Quake; |
||
1775 | where you find "quake.exe" and "the id1" directory). Create a file named |
||
1776 | "quake.rc". Its contents should be: |
||
1777 | |||
1778 | exec default.cfg |
||
1779 | exec config.cfg |
||
1780 | exec autoexec.cfg |
||
1781 | stuffcmds |
||
1782 | menu_main |
||
1783 | |||
1784 | Create a batch file to run Quake in the quake directory. "Q.BAT" is a good |
||
1785 | name. It's contents should be: |
||
1786 | |||
1787 | quake -game . %1 %2 %3 %4 %5 %6 %7 %8 %9 |
||
1788 | |||
1789 | If you normally use the Q95 batch file, just add the "-game ." part to |
||
1790 | that file. |
||
1791 | |||
1792 | Now you can run "q" and quake will start off with the main menu displayed |
||
1793 | instead of running the demos. |
||
1794 | |||
1795 | You can also make a seperate subdirectory for this if you'd like. For |
||
1796 | example, make a directory named "mine" in the quake directory. Create |
||
1797 | the "quake.rc" file as specified above in this directory. Use |
||
1798 | "-game mine" instead of "-game ." in your batch file. |
||
1799 | |||
1800 | Important note: The directory specified by "-game" is where Quake will |
||
1801 | look for config.cfg, load and save games, and record and play |
||
1802 | demos. |
||
1803 | |||
1804 | |||
1805 | ========================================== |
||
1806 | == Reporting Quake Bugs == |
||
1807 | ========================================== |
||
1808 | |||
1809 | How to use the bug report: |
||
1810 | |||
1811 | Where to send bug reports: |
||
1812 | E-mail : support@idsoftware.com |
||
1813 | FAX : 214-686-9288 |
||
1814 | |||
1815 | There are two sections of information - primary and secondary. |
||
1816 | |||
1817 | Primary information contains information such as date, your name, e-mail |
||
1818 | address, etc. Secondary information is actual bug information. There are |
||
1819 | a few different sections depending on what type of bug you revieced |
||
1820 | (sound, video, etc). Only fill out and include information from the section |
||
1821 | related to the type of bug you received. |
||
1822 | |||
1823 | If possible, start Quake with the "-condebug" command line parameter |
||
1824 | and try to reproduce the bug. Attach the "qconsole.log" file found in the |
||
1825 | "id1" directory to the end of the bug report. If the bug is sound related, |
||
1826 | while in Quake, execute the SOUNDINFO and SBINFO (DOS only) commands from |
||
1827 | the console. |
||
1828 | |||
1829 | Please attach a copy of your CONFIG.SYS and AUTOEXEC.BAT file to the end of |
||
1830 | the report. |
||
1831 | |||
1832 | Bugs submitted properly with this form will get attention. |
||
1833 | Unformatted ones sent to personal accounts will be ignored. |
||
1834 | If you see problems, please take the time to do this. |
||
1835 | |||
1836 | If you do not have all of the information requested in the form, |
||
1837 | don't worry. Send what you do have. |
||
1838 | |||
1839 | Please include the version #. THe version # for Quake can be found in the |
||
1840 | lower right hand corner of the console. To bring up the console, press the |
||
1841 | tilde ('~') key. Press tilde ('~') again or ESC to exit. |
||
1842 | |||
1843 | -------------------------------cut here------------------------------------- |
||
1844 | |||
1845 | |||
1846 | ============================================================================ |
||
1847 | == Quake Bug Report - Primary information == |
||
1848 | ============================================================================ |
||
1849 | |||
1850 | Date: |
||
1851 | Name: |
||
1852 | Phone number: |
||
1853 | E-mail address: (please include this, we redirect tons of mail) |
||
1854 | Game Title: |
||
1855 | Version #: |
||
1856 | Operating system (i.e., DOS 6.0 or Windows 95): |
||
1857 | Computer type: |
||
1858 | BIOS date: |
||
1859 | BIOS version: |
||
1860 | Processor type: |
||
1861 | Processor speed: |
||
1862 | Do you program at school/work? |
||
1863 | Do you provide tech. support at school/work? |
||
1864 | Please state the problem you encountered: |
||
1865 | Please state how to reproduce the problem: |
||
1866 | |||
1867 | If program crashed with nasty undecipherable techno-garbage, please |
||
1868 | look for the eight-digit hex number which comes after "eip=" |
||
1869 | and write it down here: |
||
1870 | |||
1871 | |||
1872 | ============================================================================ |
||
1873 | == Quake Bug Report - Secondary information == |
||
1874 | ============================================================================ |
||
1875 | |||
1876 | ------------------------------ Video Related ------------------------------ |
||
1877 | |||
1878 | Video Card Manufacturer: |
||
1879 | Video Card Model: |
||
1880 | Chipset Used: |
||
1881 | BIOS Date: |
||
1882 | (If using UniVBE, The above information can be found by running uvconfig) |
||
1883 | |||
1884 | Did the problem occur while in a VESA mode? |
||
1885 | |||
1886 | If so, what is the VESA driver and version? (eg., UniVBE 5.1a, |
||
1887 | built into board BIOS, or manufacturer provided TSR) |
||
1888 | |||
1889 | ------------------------------ Sound Related ------------------------------ |
||
1890 | |||
1891 | Audio card brand and model: |
||
1892 | |||
1893 | If DOS or a DOS box, please run the command "set > set.txt" then |
||
1894 | attach "set.txt" to the end of the report. |
||
1895 | |||
1896 | ----------------------------- Network Related ----------------------------- |
||
1897 | |||
1898 | What type of network connection was established when the error occurred? |
||
1899 | (modem, nullmodem, or network) |
||
1900 | If modem, Modem brand and model: |
||
1901 | |||
1902 | If network, Network card brand and model: |
||
1903 | Network protocol/configuration: |
||
1904 | |||
1905 | ---------------------------------------------------------------------------1=Lighter,>1|0>1|0> |
||
1906 |