qwcl-readme.txt 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956
  1. --------------------------
  2. | qwcl-readme.txt |
  3. | QWCL documentation |
  4. | 5/11/98 |
  5. | |
  6. | Based on WinQuake |
  7. | 3/21/97 |
  8. --------------------------
  9. QWCL is a native Win32 version of Quake, optimized for internet
  10. play, and will run on either Win95 or Windows NT 4.0 or later. It is
  11. designed to take advantage of whatever enhanced video, sound, and input
  12. capabilities (such as DirectX or VESA VBE video modes) are present,
  13. but has fallback functionality so it can run on any Win95 or NT 4.0
  14. or later system, even if neither DirectX nor VESA VBE is available.
  15. You may experience problems running QWCL on some systems, because driver
  16. and operating-system support for game functionality are not yet mature
  17. under Win32, and many bugs and incompatibilities remain in those
  18. components. If you encounter what seems to be a bug, first please
  19. check through the list of known problems, below. For other info,
  20. check out http://www.quakeworld.net/
  21. The material accompanying Quake is the reference for all
  22. non-Windows-related matters concerning QuakeWorld; in terms of gameplay,
  23. QuakeWorld is the same as Quake. This file contains Windows-related
  24. information only.
  25. The rest of this document is organized as follows:
  26. Installing and running QWCL
  27. Common problems and workarounds
  28. A bit about how QWCL video works
  29. Video command-line switches
  30. A bit about how QWCL sound works
  31. Sound command-line switches
  32. Notes on networking
  33. Notes on the mouse
  34. Log of changes to documentation
  35. Special thanks
  36. -----------------------------------
  37. | Installing and running QWCL |
  38. -----------------------------------
  39. In order to run QWCL, you must first have Quake installed.
  40. Assuming Quake is installed in the standard directory, c:\quake,
  41. unzip the QWCL zip file into c:\quake. The following files
  42. from the zip file must be present in order for QWCL to run:
  43. qwcl.exe
  44. pmpro16.dll
  45. pmpro32.dll
  46. wdir16.dll
  47. wdir32.dll
  48. wdirnop.com
  49. wdirnop.pif
  50. Then you can run QWCL by making c:\quake the current directory,
  51. typing "qwcl" and pressing the Enter key. Alternatively, you can
  52. use qwc.bat to run QWCL. The qwc batch file requires one parameter
  53. describing how to configure QWCL for performance; just type "qwc" to get
  54. a list of the six options. The first of the six options is
  55. qwc fast
  56. This is the same as typing "qwcl"; this runs QWCL in an
  57. aggressive configuration that is likely to yield the best performance
  58. if it runs successfully on your system, but which has a risk of
  59. causing QWCL or even your system to crash if there are bugs or
  60. incompatibilities in your video or sound drivers. Alternatively, you
  61. can use
  62. qwc safe
  63. to run QWCL in a conservative configuration, likely to run
  64. on almost all machines with no problems, but possibly with slower
  65. graphics, fewer high-resolution modes, and delayed sound. Or you
  66. can run
  67. qwc verysafe
  68. to run QWCL in a very conservative configuration that is pretty
  69. much guaranteed to run, but will probably have slow performance, and
  70. will have no sound. Two other options are
  71. qwc fastvid
  72. which has maximum video performance, but greater sound latency (delay
  73. until the sound is heard), and
  74. qwc fastsnd
  75. which uses more conservative video modes, but low-latency sound.
  76. (One odd note is that DirectSound has much lower-latency sound than
  77. wave sound, but is currently quite a bit slower overall. Thus you
  78. may find that "qwc fastvid" is actually faster, by as much as 5-10%,
  79. than "qwc fast"; however, it may not feel faster, because the sound
  80. will lag.)
  81. Finally, you can use
  82. qwc max
  83. which is the same as qwc fast, but turns on DirectInput, which
  84. provides more responsive mouse control, but does not work properly
  85. on all systems.
  86. Note that DirectX is not required for QWCL to run, but QWCL will
  87. automatically take advantage of DirectSound and DirectDraw if they
  88. are present. If DirectSound is not present, there will generally be
  89. considerable sound latency (sound will become audible several hundred
  90. milliseconds after the event that caused it). Note also that there
  91. are currently no true DirectSound drivers for Windows NT, so QWCL will
  92. always run using wave output on NT, and will consequently have lagged
  93. sound. See below for information about obtaining DirectX if you do
  94. not have it.
  95. Note that VESA VBE modes aren't required for QWCL to run, but QWCL will
  96. automatically make VESA modes available if they're present. Your BIOS
  97. may already have VESA VBE 2.0 support built in, but most BIOSes
  98. don't. Worse, some BIOSes do have VESA VBE 2.0 built-in, but have
  99. buggy implementations, which may prevent you from being able to run
  100. the faster configurations of QWCL. An easy way to get reliable VESA 2.0
  101. support is by obtaining SciTech Display Doctor; see below for
  102. further information. QWCL can also use VBE/AF 1.0 and greater modes;
  103. again, SciTech Display Doctor is the commonest way to get VBE/AF
  104. support.
  105. QWCL normally uses half the physical memory in your system for its
  106. heap, but not less than 8.5 Mb and not more than 16 Mb. You can
  107. override this with "-heapsize n", where n is the amount of memory to
  108. allocate for the heap, in Kb.
  109. To use the joystick, you must bring down the console by pressing the
  110. tilde ('~') key, and type "joystick 1<enter>"; you can disable the
  111. joystick with "joystick 0<enter>" at any time. The joystick setting
  112. remains in effect for subsequent QWCL sessions until changed, so
  113. you only need to do joystick 1 once to enable the joystick. If the
  114. joystick somehow causes problems that keep you from being able to run
  115. QWCL at all, you can start QWCL -nojoy to complete disable the
  116. joystick for that session.
  117. -----------------------------------
  118. | Common problems and workarounds |
  119. -----------------------------------
  120. QWCL crashes or won't run
  121. -----------------------
  122. If QWCL refuses to run or crashes on your system, try running
  123. it using "qwc safe" or "qwc verysafe". Or you can use command-line
  124. switches:
  125. qwcl -nodirectdraw -nowindirect -wavonly
  126. This will almost certainly solve your problem; however, it may result
  127. in lagged sound (a long delay from action to hearing the sound), may
  128. result in fewer or slower high-res video modes, and the mouse may be
  129. somewhat less responsive. If this does work, you can try removing
  130. each of the command-line switches until you identify the one that
  131. fixes the problem, thereby sacrificing as little functionality as
  132. possible.
  133. If the above command line does not fix your problems, try:
  134. qwcl -dibonly -nosound
  135. which forces QWCL into silent operation with bare-bones video support
  136. and no use of DirectInput for mouse input (the normal Windows mouse
  137. APIs are used instead). Again, if this works, try removing switches
  138. until you identify the needed one.
  139. Both of the above command lines are quick fixes. Often, the problem
  140. is caused by outdated or buggy DirectX drivers or code, and can
  141. frequently be completely fixed simply by installing the latest
  142. Microsoft-supplied version of DirectX, which you may be able to find
  143. on http://www.microsoft.com/mediadev/download/directx.exe, although
  144. the availability and location of the DirectX file changes
  145. periodically; note that at last check, this is a 3.4 Mb file. (Be
  146. aware, though, that sometimes Microsoft's DirectX drivers don't
  147. support features that the manufacturers' drivers do support, such as
  148. display refresh rate control.)
  149. One known problem of this sort involves the current SB16 drivers from
  150. Creative Labs, which cause QWCL to crash on some machines. The
  151. DirectSound drivers from Microsoft, available via the above-mentioned
  152. URL, fix this problem.
  153. It can also sometimes help to get the latest Windows drivers for your
  154. video adapter or sound card (although as the SB16 example indicates,
  155. this is not always a good idea), and for video boards that have flash
  156. BIOSes, it can sometimes help to get the latest BIOS upgrade.
  157. How do I select fullscreen or windowed QWCL operation?
  158. ----------------------------------------------------
  159. Check out QWCL's new, spiffy Video menu, accessible from the Options
  160. menu. There are now two types of modes listed, windowed and
  161. fullscreen. You can make any of these modes the current and/or
  162. default mode, just as in DOS Quake. If you make a windowed mode the
  163. default, QWCL will still briefly start up in fullscreen mode, then
  164. switch to windowed; if this is a problem, use the -startwindowed
  165. command-line switch. More complete video control is available
  166. through the console, as described in the "A bit about how QWCL video
  167. works" section, below.
  168. Gee, I wish I could use a mouse to play QWCL with in a window
  169. -----------------------------------------------------------
  170. You can! While in a windowed mode, go to the Options menu. At the
  171. bottom, you'll find a new selection that lets you choose to have the
  172. mouse active when you're in a window. Of course, if you do this,
  173. you'll have to use the keyboard (Alt-Tab, the Windows key, Ctrl-Esc,
  174. Alt-Esc, or Shift-Alt-Tab) to switch away from QWCL.
  175. Serial/modem menu is missing
  176. ----------------------------
  177. QWCL currently does not support direct connect serial or modem play.
  178. DOS Quake reports unknown variables on startup after running QWCL
  179. ---------------------------------------------------------------
  180. QWCL uses some console variables that do not exist in DOS Quake, and
  181. some of these are automatically archived in config.cfg when you exit
  182. QWCL. If you then start DOS Quake, DOS Quake will complain that it
  183. doesn't recognize those variables. You will also lose the settings
  184. of these variables when you return to QWCL. Apart from losing the
  185. settings, this is harmless; ignore it.
  186. Problems running QWCL on NT 3.51
  187. ------------------------------
  188. NT 3.51 isn't supported by QWCL.
  189. QWCL crashes while switching modes or Alt-Tabbing
  190. -----------------------------------------------
  191. So far, all cases of this seem to be tied to Creative Lab's SB16 sound
  192. drivers, and have been fixed by getting the latest DirectX drivers, as
  193. described above. Alternatively, you should be able to fix this either
  194. by not switching modes or Alt-Tabbing, or by running -wavonly to
  195. disable DirectSound support.
  196. QWCL sometimes runs pretty slowly fullscreen
  197. ------------------------------------------
  198. There are several possible reasons for this, starting with "You have a
  199. slow computer." Assuming that's not the case, if you don't have
  200. either DirectDraw or SciTech Display Doctor installed (see the "A bit
  201. about how QWCL video works" section), it would probably be a good thing
  202. to install one or the other, because slow operation can be a result
  203. of slow copying or stretching of pixels to the screen by a Windows
  204. driver, something that's eliminated by both DirectDraw and Display
  205. Doctor. You can also sometimes get a faster 320x200 mode on Win95 by
  206. doing vid_describemodes, then using vid_mode to select a non-VGA
  207. 320x200 mode, as described in the "A bit about how QWCL video works"
  208. section.
  209. You can also try using a primary sound buffer on Win95 (this doesn't
  210. work on NT) by using the -primarysound command-line switch; this can
  211. improve performance by several percent, but does not work on all
  212. systems, and can result in odd sound effects on some systems when
  213. minimizing QWCL or switching the focus away from it. If you use this
  214. switch, please don't report sound bugs; it's in there purely for you
  215. to use if it helps you, and we know it has problems on many systems.
  216. Finally, you can use -wavonly to select wave sound; this will increase
  217. your sound latency (sounds will be heard later than they should), but
  218. allows QWCL to run 5-10% faster on some systems. That's about all you
  219. can do to speed up fullscreen QWCL on Win95, other than shrinking the
  220. active area of the screen with the screen size control in the Options
  221. menu.
  222. NT 4.0 comes with DirectX installed, but doesn't have any resolutions
  223. lower than 640x480. In order to support a lower-resolution 320x240
  224. mode, QWCL has NT double each pixel in both directions to get enough
  225. pixels for 640x480. The extra stretching costs some performance, the
  226. result being that NT can seem sluggish on all but high-end Pentiums
  227. and Pentium Pros. (In fact, depending on the quality of your driver's
  228. stretching code, it can sometimes be faster to run QWCL at 640x480 than
  229. 320x240-stretched on NT.) One thing that can help on NT is switching
  230. to 640x480, then using the Options menu to shrink the active area of
  231. the screen.
  232. A common cause of slowness running in a window is having the desktop
  233. run in 16- or 32-bpp mode. QWCL is an 8-bpp application, and it slows
  234. things down if pixels have to be translated from 8-bpp to 16- or
  235. 32-bpp. (Note that this is generally a problem only when running in a
  236. window; fullscreen apps rarely suffer from this.)
  237. Sound is sluggish on NT
  238. -----------------------
  239. NT doesn't have any real DirectSound drivers yet, so there's no way to
  240. do quick-response sound on NT. When DirectSound drivers for NT
  241. appear, QWCL's sound should automatically be snappier.
  242. Sound breaks up or gets choppy, especially in menus
  243. ---------------------------------------------------
  244. This is generally a sign that QWCL's frame rate is too low on your
  245. system. Try reducing resolution or shrinking the active area of the
  246. screen. In some circumstances, it may help to set the console
  247. variable _snd_mixahead to a larger value.
  248. The color black doesn't change with palette flashes sometimes
  249. -------------------------------------------------------------
  250. Normally, DirectDraw lets QWCL change all 256 colors, so when a palette
  251. flash happens, we can change all the colors, including black.
  252. However, on NT DirectDraw currently doesn't allow changing black;
  253. likewise, on both NT and Win95, black can't be changed in a window,
  254. either a normal window or fullscreen. Consequently, in some modes and
  255. in a window, some parts of the QWCL screen (such as the sigils on the
  256. status bar and the spray where a shotgun blast hits) stay black when
  257. the palette flashes. There is no workaround.
  258. Problems can result if Office shortcut bar is running
  259. -----------------------------------------------------
  260. Various odd behaviors, especially with sound, have been reported if
  261. the Office shortcut bar is running while QWCL is running. If you
  262. experience odd problems, you might try shutting down the Office
  263. shortcut bar and see if that fixes anything.
  264. Other apps fail to play sound while QWCL is running
  265. -------------------------------------------------------
  266. The sound hardware is currently not a fully shareable resource on
  267. Win32. Consequently, while QWCL is running, it always has the sound
  268. hardware allocated to itself, to make sure that sound is never lost to
  269. another app. This means that normally (when QWCL is using DirectSound),
  270. apps that use wave sound (most non-game apps) will not be able to play
  271. sound while QWCL is running, even if QWCL is minimized or not the active
  272. app, although other DirectSound apps will be able to play sound when
  273. QWCL is not the active app. If QWCL is using wave sound rather than
  274. DirectSound (either because -wavonly is used on the command line, or
  275. because there is no DirectSound driver, as is always the case on NT),
  276. then no other app will be able to play any sound while QWCL is running,
  277. period.
  278. QWCL doesn't have quite the right colors when it’s not the active app
  279. -------------------------------------------------------------------
  280. We're working on fixing this. But QWCL puts everything back again as
  281. soon as it is reactivated, and anyway, when it’s not active, you can’t
  282. actually do anything in QWCL, so it doesn’t really matter anyway, right?
  283. Desktop is weird colors when QWCL runs windowed
  284. ---------------------------------------------
  285. QWCL needs all 256 colors to look right and run fast, which causes it to
  286. have to change some of the 20 colors used to draw the desktop.
  287. Sometimes Permedia boards crash unless -nowindirect is used
  288. -----------------------------------------------------------
  289. It looks like this is probably a Permedia driver bug, so it might help
  290. if you get the most recent drivers.
  291. Right-click on QWCL button in task bar to close doesn’t work as expected
  292. ----------------------------------------------------------------------
  293. In some modes, right-clicking on the QWCL task bar button doesn't work
  294. the way you'd expect. We're trying to fix this, but if it's a
  295. problem, don't right-click.
  296. Screen saver never kicks in when running QWCL fullscreen
  297. ------------------------------------------------------
  298. It does work windowed, but when QWCL is fullscreen, it completely
  299. owns the screen and doesn't share it with anyone, even the
  300. screensaver. If you use Alt-Tab to minimize QWCL, the screensaver will
  301. then be enabled, so Alt-Tab away from QWCL if you're leaving your
  302. computer alone for a while and want the screensaver to be able to kick
  303. in.
  304. QWCL doesn't work in a window in 16-color mode
  305. --------------------------------------------
  306. That's 16 *colors*, not 16-bpp. If you're still running a 16-color
  307. desktop, run QWCL fullscreen.
  308. Can't minimize window while mouse active
  309. ----------------------------------------
  310. When running in a window with the mouse active as a QWCL input device,
  311. there is no easy way to minimize the window, because the system menu
  312. can't be brought up from the keyboard (because some of you use Alt
  313. and Spacebar for playing the game), and the mouse can't be used to
  314. manipulate the window because it's controlling QWCL. To minimize, you
  315. can disable the mouse for QWCL and use it to minimize the window. Or
  316. on Win95 you can Alt-Tab away from QWCL, then use the mouse to
  317. minimize (this doesn't work on NT, where clicking on the window
  318. controls just reactivates QWCL). Or you can bind a key to the
  319. vid_minimize command, as in
  320. bind m "vid_minimize"
  321. and press that key to minimize the window.
  322. Window controls don't work on NT when mouse enabled
  323. ---------------------------------------------------
  324. When running in a window on NT with the mouse enabled (so you can use
  325. the mouse to play QWCL), if you Alt-Tab away from QWCL, then use the mouse
  326. to click on the QWCL system menu control, or the minimize, maximize, or
  327. close controls, the controls are ignored and QWCL just reactivates.
  328. Mouse sometimes vanishes in system menu on Win95
  329. ------------------------------------------------
  330. On Win95, if QWCL is running in a window with the mouse enabled (so you
  331. can use the mouse to play QWCL), if you Alt-Tab away, then click on the
  332. system menu, the menu comes up, but the mouse vanishes. However, you
  333. can still use the keyboard to select system menu items, or to exit
  334. the system menu.
  335. QWCL behaves oddly if Scandisk starts defragmenting
  336. -------------------------------------------------
  337. If QWCL is running fullscreen on Win95 when Scandisk starts an automatic
  338. defragging, QWCL is forced to minimize, and when it is brought back up,
  339. may either be in a strange mode where it runs one frame for each
  340. keystroke (in which case Alt-Tab generally fixes things), or may hang
  341. the system. We don't know what the problem is right now, but you may
  342. want to make sure you don't leave QWCL sitting there fullscreen
  343. overnight if you have automatic defragging.
  344. Hang reported with zero sound volume
  345. ------------------------------------
  346. When sound is turned all the way down via the QWCL menus, hangs have
  347. been reported.
  348. Joystick worked fine with earlier versions of QWCL but not now
  349. ------------------------------------------------------------------
  350. The joystick was enabled by default in earlier versions of
  351. QWCL, but quite a few people reported serious problems that
  352. forced them to disable the joystick--even some people who didn't
  353. have a joystick attached. Since most people don't have joysticks,
  354. we've decided to disable the joystick by default, and let people
  355. who do want to use it set joystick 1 in the console (QWCL
  356. remembers this setting, so this only needs to be done once).
  357. QWCL runs very slowly when it has the focus under NT
  358. --------------------------------------------------
  359. In one case, QWCL ran very slowly when it had the focus, but fast when
  360. it didn't (obviously this is only visible in windowed modes). The
  361. problem turned out to be that NT had a Sidewinder 3D Pro joystick
  362. driver installed; when the driver was removed, things were fine.
  363. If you see a similar problem, check whether QWCL is detecting that
  364. your system has a joystick when you don't think it should; if so,
  365. try doing "joystick 0", or -nojoy on the command line, and see if
  366. that fixes it. If so, there's something flaky in your system
  367. joystick setup.
  368. Joystick doesn't seem calibrated properly
  369. -----------------------------------------
  370. QWCL relies on the information about your joystick stored in the
  371. system registry. If the joystick seems miscalibrated, run the
  372. joystick applet and recalibrate and see if that fixes things.
  373. Playdemo fails across multiple levels
  374. -------------------------------------
  375. If "record" is used to record a client-side demo, bad things will
  376. happen on playback via playdemo if a level change is recorded.
  377. (Timedemo works fine.) This is unfortunate, but QWCL
  378. internals make this not fixable without a good chance of
  379. breaking something more important, so it'll have to stay this way.
  380. Alt-Tab fullscreen only works sometimes
  381. ---------------------------------------
  382. I know it seems that way, but actually the trick is that on Win95
  383. it only works if you let go of Tab before you let go of Alt.
  384. This is due to a Windows quirk involving what key sequences are
  385. passed along, so you'll have to work around it by remembering to
  386. let go of Tab first.
  387. MS-DOS windows get scrunched on Alt-Tab
  388. ---------------------------------------
  389. This is a quirk of Windows; when you run QWCL in a low-res
  390. mode, sometimes when you exit QWCL or Alt-Tab back to the
  391. desktop, any open MS-DOS windows will be scrunched down to the
  392. size of the low-res mode. There is no known workaround.
  393. Dprint in progs doesn't work
  394. ----------------------------
  395. Dprint means "developer print," so it only works if the developer
  396. console variable is set to 1. It was a bug in earlier versions that
  397. it worked even when developer was set to 0.
  398. Some DirectDraw modes flicker badly and look wrong
  399. --------------------------------------------------
  400. Page flipping doesn't work properly in some modes on some
  401. systems, particularly when using some DirectDraw modes. You
  402. can work around this by setting the console variable
  403. vid_nopageflip to 1, then setting the desired mode (note
  404. that the vid_nopageflip setting does not take effect until
  405. the next mode set after the setting is changed). Bear in
  406. mind, though, that the vid_nopageflip setting is remembered
  407. until it is explicitly changed again, meaning that once you
  408. change it, it thereafter applies to all modes, even if you
  409. exit and restart QWCL.
  410. The Windows key doesn't do anything fullscreen on Win95
  411. -------------------------------------------------------
  412. True. This is a minor bug we haven't figured out how to fix yet.
  413. You'll have to use Ctrl-Esc, Alt-Tab, or Alt-Esc to switch away.
  414. My default mode is windowed, but QWCL goes fullscreen first
  415. ---------------------------------------------------------
  416. For internal reasons, QWCL has to pick a single mode to always
  417. initialize when it starts up, before it sets whatever default you've
  418. selected. We've chosen fullscreen mode, because that's the way most
  419. people will play. If this is a problem for you, however, you can
  420. run QWCL with the -startwindowed command-line parameter.
  421. Some high-resolution video modes flicker or fail to initialize
  422. --------------------------------------------------------------
  423. We think these problems are all fixed, but if not, they have to
  424. do with triple-buffering in some modes on some DirectDraw drivers.
  425. If you encounter this problem, either don't use the problem modes
  426. or try using the -notriplebuf command-line parameter to turn off
  427. triple buffering. Note, though, that turning off triple-buffering
  428. can reduce performance in some modes, so do this only if needed.
  429. Right-click doesn't work right on minimized QWCL
  430. ----------------------------------------------------
  431. If you right-click on minimized QWCL on the task bar, the
  432. Close selection in the right-click menu doesn't work; you have
  433. to restore QWCL before you can exit it. Also, the cursor vanishes
  434. over the right-click menu, although it still works.
  435. The screen briefly blanks when you exit QWCL
  436. ------------------------------------------
  437. We're trying to fix this, but it's not harmful, just a mite ugly.
  438. MWAVE sound loses focus
  439. -----------------------
  440. We've had a report that on a ThinkPad with MWAVE sound, QWCL loses
  441. sound focus (and thus sound) every few seconds.
  442. Desktop doesn't reset to proper resolution on QWCL exit
  443. -----------------------------------------------------
  444. We've had a report that on exiting QWCL, the desktop didn't reset
  445. to the proper dimensions. This may be a bug with the Matrox
  446. drivers, but we're not sure. If it's a problem and newer
  447. drivers don't fix it, you can run -dibonly, which solves the
  448. problem but can cost some performance.
  449. Palette goes bad periodically on #9 Imagine card
  450. ------------------------------------------------
  451. There's only one report of this, so maybe it's a flaky board,
  452. or maybe it's a driver bug. Newer drivers might help.
  453. System with Packard Bell sound card III crashes on CapsLock
  454. -----------------------------------------------------------
  455. This appears to be the result of buggy DirectSound drivers;
  456. -wavonly makes the problem go away.
  457. Dvorak keyboard mapping ignored
  458. -------------------------------
  459. QWCL is hardwired for QWERTY.
  460. Cursor messed up after running QWCL
  461. ---------------------------------
  462. This is a Windows driver bug; the driver isn't restoring the
  463. cursor properly on return from fullscreen QWCL to the desktop.
  464. Try newer drivers.
  465. Ctrl-Alt-Del on NT sometimes doesn't allow return to QWCL
  466. -------------------------------------------------------
  467. This happens on some machines while running QWCL fullscreen.
  468. If you experience this problem, the only workaround is not
  469. to press Ctrl-Alt-Del while fullscreen; Alt-Tab away first.
  470. Many fast Alt-Tabs on Win95 sometimes disable QWCL input
  471. ------------------------------------------------------
  472. If you Alt-Tab fast lots of times on Win95 with QWCL running
  473. fullscreen, sometimes you end up in fullscreen QWCL, with the
  474. game not accepting any keyboard input (so there's no way to
  475. exit). The only workaround is to not do lots of fast
  476. Alt-Tabs (why you'd want to, I'm not sure).
  477. ----------------------------------
  478. | A bit about how QWCL video works |
  479. ----------------------------------
  480. QWCL has the built-in ability to draw into windows (both normal, framed
  481. desktop windows and fullscreen, borderless windows). It also has
  482. built- in support for VGA 320x200 graphics, and supports DirectDraw,
  483. VESA VBE 2.0 and VESA VBE/AF (Accelerator Functions) graphics modes,
  484. if those are available.
  485. QWCL does not require DirectDraw, but in order for DirectDraw modes to
  486. be available, you must have DirectDraw installed; some systems come
  487. with it preinstalled, but if it's not on your system, you can download
  488. it from http://www.microsoft.com/mediadev/download/directx.exe (the
  489. exact URL may vary), and install it.
  490. QWCL does not require VESA VBE, but in order for VESA VBE modes to be
  491. available, your graphics card must be VESA VBE 2.0 or VBE/AF
  492. compliant; a VESA driver can either be built into the BIOS of your
  493. graphics card, or loadable via software. If you don't have a VESA VBE
  494. driver, Scitech Display Doctor, available from Scitech Software, will
  495. update most graphics cards to VESA VBE 2.0 and VBE/AF.
  496. SciTech Display Doctor
  497. ----------------------
  498. If you are having problems with your video drivers, or if you would
  499. like to take a shot at improving your video performance in QWCL, you may
  500. want to try out SciTech Display Doctor (SDD). SDD works on just about
  501. any graphics card and it can do several things that can make QWCL run
  502. better on your system:
  503. 1. It will update your graphics card to be compatible with VESA VBE
  504. 2.0 and VESA VBE/AF (Accelerator Functions). These modes will usually
  505. give you the best performance in QWCL (which is often but not always
  506. faster than your current performance).
  507. 2. It creates low-resolution modes on your graphics card.
  508. Low-resolution video modes (such as 320x240, 400x300 and 512x384)
  509. allow you to adjust the level of detail in QWCL so you can get the best
  510. balance between performance and image quality.
  511. The latest version of SciTech Display Doctor can be obtained from the
  512. following locations:
  513. www: http://www.scitechsoft.com
  514. ftp: ftp.scitechsoft.com
  515. CIS: GO SCITECH
  516. AOL: Keyword SciTech
  517. SciTech can be contacted at:
  518. email: info@scitechsoft.com
  519. SciTech Software, Inc.
  520. 505 Wall Street
  521. Chico, CA 95926-1989
  522. 916-894-8400
  523. 916-894-9069 FAX
  524. Video modes supported in Win95
  525. ------------------------------
  526. What all this means is that on Win95, QWCL will always be able to run in
  527. the following modes:
  528. 1) in a window
  529. 2) fullscreen 320x200 VGA mode 0x13
  530. 3) fullscreen high-resolution of some sort
  531. Category #3 can be any of several configurations. On Win95, if either
  532. DirectDraw or VESA VBE modes are available, then all the DirectDraw
  533. and VESA modes will be presented as high-res choices. (320x200 will
  534. always default to VGA mode 0x13.) In the case that a given resolution
  535. is supported by both DirectDraw and VESA, the VESA mode will be used.
  536. (However, the command-line switch -nowindirect can turn off VESA modes
  537. entirely.) If neither DirectDraw nor VESA modes are available, then
  538. high-resolution modes will be provided by using fullscreen, borderless
  539. windows in whatever resolutions the Windows driver supports, usually
  540. starting at 640x480 and going up.
  541. Video Modes Supported in Windows NT
  542. -----------------------------------
  543. NT is similar but not identical, because neither VESA VBE modes nor
  544. VGA mode 0x13 are available. On NT, QWCL will always be able to run in
  545. the following modes:
  546. 1) in a window
  547. 2) fullscreen high-resolution of some sort
  548. On NT, category #2 can be one of two configurations. If DirectDraw
  549. modes are available, then those will be the high-res choices;
  550. otherwise, fullscreen, borderless windows will be used in whatever
  551. resolutions the driver supports, usually starting at 640x480 and going
  552. up. Because there is normally no low-resolution mode such as 320x200
  553. or 320x240 on NT, a pseudo low-res mode is created by rendering at
  554. 320x240, then stretching the image by doubling it in each direction
  555. while copying it to a 640x480 screen. However, stretching performance
  556. depends on the driver, and can be slow, so sometimes 640x480 is
  557. actually faster than 320x240 on NT.
  558. The bottom line here is that you can generally just use the Video menu
  559. and pick one of the modes and be happy. In some cases, though, you
  560. may need to use command-line switches (described next) to get the
  561. types of modes you want. One useful tip is to go into the console and
  562. do vid_describemodes, which lists all the modes QWCL makes available on
  563. your machine given the command-line switches you've used. Each mode
  564. is followed by the name of the internal QWCL driver that supports it, so
  565. you can tell which modes are DirectDraw, VESA, and so on, as follows:
  566. WINDOWED: QWCL runs in a normal window
  567. FULLSCREEN DIB: fullscreen borderless window
  568. FULLSCREEN VGA8.DRV: VGA 320x200 mode
  569. FULLSCREEN DDRAW8.DRV: DirectDraw mode
  570. FULLSCREEN LINEAR8.DRV: VESA VBE 2.0+ mode
  571. FULLSCREEN ACCEL8.DRV: VESA VBE/AF (Accelerator Functions) mode
  572. (note that QWCL does not take advantage of
  573. VBE/AF acceleration; so far as QWCL is
  574. concerned VBE/AF is the same as normal VBE)
  575. You can use vid_mode from the console to set any of these modes. So,
  576. for example, if you see that there are two 320x200 modes (such as one
  577. VGA mode 0x13, normally mode 3, and one VESA mode, normally mode 4),
  578. you can choose the VESA mode, which will often be faster, with
  579. vid_mode 4. (You can make it the default by setting
  580. _vid_default_mode_win to the mode number.)
  581. There's more to the windowed modes than you might think. 320x240 is
  582. just what you’d expect, but 640x480 is actually rendered at 320x240
  583. and stretched up to 640x480, because most machines can’t handle the
  584. performance demands of real 640x480 rendering. Likewise, 800x600 is a
  585. stretched 400x300. Actually, though, vid_mode 2 (the 800x600 mode) is
  586. a user-configurable mode. By setting the following console variables,
  587. you can change the characteristics of vid_mode 2:
  588. vid_config_x: width of mode 2 window
  589. vid_config_y: height of mode 2 window
  590. vid_stretch_by_2: whether to render at half-resolution in each
  591. direction and stretch up to the specified size in mode 2, or render at
  592. full resolution.
  593. After setting these variables in the console, do a vid_forcemode 2,
  594. and you’ll have the window you specified. Note that after making
  595. these changes, the new resolution will show up as the third windowed
  596. mode in the Video menu.
  597. If you don't have QWCL mouse play enabled in windowed mode, you can also
  598. go from windowed to fullscreen mode simply by clicking on the maximize
  599. button. The mode switched to is controlled by the vid_fullscreen_mode
  600. console variable, and defaults to mode 3.
  601. Other video console commands include:
  602. vid_fullscreen: switch to the mode specified by the
  603. vid_fullscreen_mode console variable.
  604. vid_windowed: switch to the mode specified by the vid_windowed_mode
  605. console variable.
  606. Vid_fullscreen and vid_windowed can be bound to keys, so it's possible
  607. to flip between windowed and fullscreen with a single key press.
  608. Also, vid_minimize minimizes the QWCL window if and only if
  609. QWCL is running in a windowed mode. You can bind a key to
  610. the commands "vid_windowed; wait; vid_minimize" to minimize QWCL
  611. regardless of whether you're running in windowed or fullscreen mode.
  612. You can turn off page flipping by setting the console variable
  613. vid_nopageflip to 1, then setting a new mode. (Note that the
  614. vid_nopageflip setting does not take effect until the next mode set.)
  615. Some systems run faster with page flipping turned off; also, page
  616. flipping does not work properly on some adapters, and vid_nopageflip
  617. is a workaround for this. Note that vid_nopageflip is a persistent
  618. variable; it retains its setting until it is explicitly changed again,
  619. even across multiple QWCL sessions.
  620. The vid_forcemode console command sets the specified mode, even if
  621. it's the same as the current mode (normally the mode set only happens
  622. if the new mode differs from the current mode). This is generally
  623. useful only if you've modified the characteristics of video mode 2
  624. (the configurable window) while you're in mode 2, and want to force
  625. the new characteristics to take effect.
  626. Whenever you switch to running QWCL in a window, the window is
  627. placed at the same location it was in the last time QWCL ran
  628. in a window. You can reset the window position to the upper left
  629. by using the -resetwinpos command-line switch. The window position
  630. is stored in the vid_window_x and vid_window_y console variables.
  631. -------------------------------
  632. | Video command-line switches |
  633. -------------------------------
  634. The full list of video-related command-line switches is:
  635. -dibonly: QWCL will use only windows (both normal, framed windows on the
  636. desktop and fullscreen, borderless windows), not any direct hardware
  637. access modes such as DirectDraw or VESA modes, or even VGA 320x200
  638. mode. This is the closest thing to a guaranteed-to-run fullscreen
  639. mode QWCL has.
  640. -nowindirect: QWCL will not try to use VESA VBE 2.0 modes, or VBE/AF
  641. 1.0 or later modes. Note that if there are both DirectDraw and VESA
  642. modes for a given resolution, QWCL will normally use the VESA mode;
  643. -nowindirect allows DirectDraw modes to be the preferred choice for
  644. all resolutions except 320x200. This can be useful if QWCL is crashing
  645. because of a buggy VESA driver.
  646. -nodirectdraw: QWCL will not try to use DirectDraw modes. This can be
  647. useful if QWCL is crashing because of a buggy DirectDraw driver.
  648. -novbeaf: QWCL will not try to use VBE/AF 1.0 or later modes.
  649. -startwindowed: QWCL will come up in a windowed mode, without going
  650. fullscreen even during initialization.
  651. -noforcevga: normally, QWCL uses VGA mode 0x13 for the default 320x200
  652. mode, even if a DirectDraw or VESA 320x200 mode exists. However,
  653. DirectDraw and VESA modes can be considerably faster than mode 0x13,
  654. because they can set up a linear framebuffer with higher memory
  655. bandwidth. If you specify -noforcevga, the default 320x200 mode in
  656. the menu will be a DirectDraw or VESA mode if one exists. This has no
  657. effect on modes selected via the console variable vid_mode, and if
  658. 320x200 is already your video mode, -noforcevga doesn't do anything
  659. until you use the menu to select another mode, then select 320x200
  660. again. (So if your default mode is 320x200 and you then specify
  661. -noforcevga, switch away to some other mode and then back to 320x200
  662. to get the potentially faster 320x200 mode.) The downside to this
  663. switch is that DirectDraw and VESA modes can cause problems in some
  664. systems, due to driver bugs or hardware incompatibilities; if you
  665. experience problems with this switch, don't use it.
  666. -noautostretch: don't stretch windowed modes selected with
  667. -startwindowed to double resolution.
  668. -nofulldib: don't use fullscreen, borderless windows, even if there
  669. are no DirectDraw or VESA modes available.
  670. -allow360: allow listing of 360-wide modes in the video mode menu.
  671. These are normally filtered out to make sure the menu doesn't get too
  672. full, which could cause high-res modes not to be displayed.
  673. -notriplebuf: prevent triple-buffered page flipping (rather than double-
  674. buffered). This may result in slower performance, but is a workaround
  675. if you encounter problems with flicker or initialization failure, which
  676. could possibly happen in some modes with some DirectDraw drivers.
  677. ----------------------------------
  678. | A bit about how QWCL sound works |
  679. ----------------------------------
  680. QWCL can use either DirectSound or Windows wave output to generate
  681. sound. If DirectSound is available, it is used; if not, if wave sound
  682. is available it is used; and if neither is available, there is no
  683. sound. DirectSound results in the best sound quality, and also the
  684. lowest-latency sound; use it if you can, because you will be happier
  685. with the results. (Note, though, that no NT sound drivers yet support
  686. DirectSound.) Wave sound will often have high latency, lagging the
  687. events that generate sound by hundreds of milliseconds on some
  688. machines.
  689. You can tell what kind of sound QWCL uses on your system by looking at
  690. the startup portion of the console; you will see either "DirectSound
  691. initialized" or "Wave sound initialized" (neither message is printed
  692. if there's no sound). Any sound failure messages will also be printed
  693. in the startup portion of the console.
  694. Note that QWCL generates sound only when it is the active app, the one
  695. with the input focus.
  696. -------------------------------
  697. | Sound command-line switches |
  698. -------------------------------
  699. The full list of sound-related command-line switches is:
  700. -wavonly: don’t use DirectSound, but use wave sound if available.
  701. Note that wave sound is generally faster than DirectSound, but has
  702. considerably greater latency. This switch is redundant on NT, because
  703. all sound output on current NT drivers is wave sound.
  704. -nosound: don’t output any sound.
  705. -primarysound: use DirectSound primary buffer output. This is
  706. generally faster than normal secondary buffer output, but does not
  707. work in some systems, and produces odd sound glitches on minimization
  708. and focus switching in other systems. Use it at your own risk, and
  709. please do not report sound bugs if you're using this switch.
  710. -snoforceformat: QWCL will not try to force the sound hardware to 11
  711. KHz, 16 bits per sample. This may be useful if DirectSound is failing
  712. for no apparent reason, but generally QWCL will produce better sound and
  713. better performance if this switch is not used.
  714. -----------------------
  715. | Notes on networking |
  716. -----------------------
  717. The winsock TCP/IP driver will not cause a dial-up internet connection
  718. to automatically start up when Quake is started. If you start Quake
  719. with it inactive, the connection will be activated when you either try
  720. to connect to a server or search for local servers.
  721. The local IP address will not always be known at startup. If it is
  722. currently unknown the menu will display "INADDR_ANY". This will be
  723. replaced with the real address when it is known. The IP address will
  724. become known when you try to connect to a server, you search for local
  725. servers, or you start a server.
  726. For multi-homed machines (machines with more than one network adapter
  727. and IP adress), you can force QWCL to bind to a specific IP
  728. address. There is a command line option "-ip" that takes an IP
  729. address as its parameter.
  730. ----------------------
  731. | Notes on the mouse |
  732. ----------------------
  733. If DirectInput is installed and functioning, QWCL can use it for
  734. mouse input, but does not do so automatically because DirectInput does
  735. not work properly on all systems. DirectInput can be enabled via the
  736. command-line switch -dinput. If DirectInput is not available or is
  737. not enabled, QWCL uses the normal Windows mouse APIs instead.
  738. DirectInput provides slightly smoother motion; also, it tends to be
  739. more responsive to fast spinning motions, and we recommend that you use
  740. it if it works properly on your system. You can determine if QWCL uses
  741. DirectInput on your system when you use -dinput by checking for
  742. "DirectInput initialized" in the startup console text. If not, you
  743. might try installing DirectX 3 (note, though, that as I write this
  744. there is no released DirectInput support for Windows NT, only Win95).