readme.qwcl 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. README for Linux QWCL
  2. ---------------------
  3. Please refer to
  4. http://www.quakeworld.net/
  5. for documentation on the client that is not operating system specific.
  6. This README covers all versions of QWCL for Linux:
  7. Requirements for SVGALib qwcl:
  8. - SVGALib 1.20 or later (/lib/libvga.so.1.2.10)
  9. - libc 5.2.18 or later (5.0.9 will not work, /lib/libc.so.5.2.18)
  10. - CD-ROM for CDAudio
  11. - Soundcard capable of mmap'd buffers. USSLite 3.5.4 was used to build squake
  12. with. Works fine on SoundBlaster 16.
  13. - SVGALib supported mouse (usually if it works with X, it'll work with
  14. squake).
  15. - Kernel 2.0.24 or later
  16. - untested with 2.1 kernels, your mileage may vary
  17. Requirements for glqwcl:
  18. - 3DFX based card for the GLQuake version, VooDoo, VooDoo Rush or VooDoo2
  19. at this writing. In order to use 3DFX hardware, you must have 3DFX's
  20. GLIDE drivers installed. RPMs for these drivers are available at:
  21. http://glide.xxedgexx.com/3DfxRPMS.html
  22. - For the glX version, an OpenGL implementation that includes hardware
  23. glX support.
  24. - CD-ROM for CDAudio
  25. - Soundcard capable of mmap'd buffers. USSLite 3.5.4 was used to build squake
  26. with. Works fine on SoundBlaster 16 and Gravis Ultrasound MAX.
  27. - SVGALib compatible mouse for glquake or X11 for glquake.glx
  28. - Kernel 2.0.24 or later
  29. - untested with 2.1 kernels, your mileage may vary
  30. Requirements for X11 qwcl:
  31. - X11R5 later, only tested with XFree86, should work with most X Servers
  32. - libc 5.2.18 or later (5.0.9 will not work, /lib/libc.so.5.2.18)
  33. or glibc (libc6) for the glibc version
  34. - CD-ROM for CDAudio
  35. - Soundcard capable of mmap'd buffers. USSLite 3.5.4 was used to build squake
  36. with. Works fine on SoundBlaster 16 and Gravis Ultrasound MAX.
  37. - SVGALib supported mouse (usually if it works with X, it'll work with
  38. squake).
  39. - Kernel 2.0.24 or later
  40. - untested with 2.1 kernels, your mileage may vary
  41. Skins Note
  42. ----------
  43. After you get the skin files from ftp.idsoftware.com (currently,
  44. qw_skins.zip, qws_9652.zip and qws_9706.zip) and install them in
  45. qw/skins, you should run the shell script 'fixskins.sh' that you can find in
  46. the qw/skins directly distributed with this archive.
  47. Linux qwcl will always look for lowercase file names first.
  48. Additional notes for SVGALib QWCL
  49. ---------------------------------
  50. Linux qwcl supports 320x200x256, the various modeX modes (320x400, 360x400,
  51. etc) as well as high res modes if your card is supported by SVGALib. Use
  52. the Quake console command vid_describemodes to list supported modes and
  53. the command vid_mode <number> to change modes.
  54. Full sound support is included. The default sound rate is 16-bit stereo,
  55. 11KHz. You can change this in the options section below.
  56. Mouse works great, but SVGALib may not detect a 3-button mouse properly (it
  57. will only use two buttons). Check your /etc/libvga.config (or
  58. /etc/vga/libvga.config for SlackWare users).
  59. Additional notes for glqwcl
  60. ---------------------------
  61. There are three different ways to execute glqwcl:
  62. 1. The binary "glqwcl" requires Mesa 3-D 2.5 or later installed and compiled
  63. with 3DFX support (fxMesa..() function interface). It also requires
  64. svgalib 1.3.0 or later for keyboard/mouse input. This binary is a console
  65. application. Mesa 3-D requires GLIDE to be installed.
  66. 2. The shell script "glqwcl.3dfxgl" runs the "glqwcl" binary after
  67. preloading the lib3dfxgl.so library. This is a port of 3DFX's Win32
  68. OpenGL MCD (Mini Client Driver) to Linux. It is faster than Mesa 3-D
  69. since it was written specifically with supporting GLQuake in mind.
  70. lib3dfxgl.so requires that GLIDE be installed.
  71. 3. The binary "glqwcl.glx" is linked against standard OpenGL libraries.
  72. It should run on many different hardward OpenGL implementations under
  73. Linux and X11. This binary is an X11 application and must be run under
  74. X11. It will work with Mesa 3-D as a standard glX based OpenGL
  75. applications. If the Mesa 3-D library is compiled with 3DFX support,
  76. you can have Mesa 3-D support 3DFX hardware under X11 by setting the
  77. enviroment variable "MESA_GLX_FX" to "fullscreen" for fullscreen mode
  78. and "window" for windowed mode, eg. "export MESA_GLX_FX=fullscreen" for sh
  79. or "setenv MESA_GLX_FX fullscreen" for csh.
  80. For glqwcl, you must also have SVGALib or later installed (1.3.0 or later
  81. prefered). glqwcl uses SVGALib for mouse and keyboard handling.
  82. If you have gpm and/or selection running, you will have to terminate them
  83. before running glqwcl since they will not give up the mouse when glqwcl
  84. attempts to run. You can kill gpm by typing 'killall gpm' as root.
  85. You must run glqwcl as root or setuid root since it needs to access things
  86. such as sound, keyboard, mouse and the 3DFX video. Future versions may not
  87. require root permissions.
  88. Additional notes for X11 qwcl
  89. -----------------------------
  90. This is a windowed version that is generic for X11. It runs in a window
  91. and can be resized. You can specify a starting window size with:
  92. -width <width>
  93. -height <height>
  94. -winsize <width> <height>
  95. Default is 320x200. It works in 16bit modes, but it's slower (twice as many
  96. bytes to copy).
  97. No other video modes are supported (just runs windowed). Mouse is read, but
  98. not "grabbed" by default. Go to the Options menu and turn on Use Mouse to grab
  99. the mouse and use it in the game (or type "_windowed_mouse 1" at the console).
  100. New Command Line Options for Linux Quake
  101. ----------------------------------------
  102. -mem <mb>
  103. Specify memory in megabytes to allocate (default is 8MB, which should be fine
  104. for most needs).
  105. -nostdout
  106. Don't do any output to stdout
  107. -mdev <device>
  108. Mouse device, default is /dev/mouse
  109. -mrate <speed>
  110. Mouse baud rate, default is 1200
  111. -cddev <device>
  112. CD device, default is /dev/cdrom
  113. -mode <modenum>
  114. Use indicated video mode
  115. -nokdb
  116. Don't initialize keyboard
  117. -sndbits <8 or 16>
  118. Set sound bit sample size. Default is 16 if supported.
  119. -sndspeed <speed>
  120. Set sound speed. Usual values are 8000, 11025, 22051 and 44100.
  121. Default is 11025.
  122. -sndmono
  123. Set mono sound
  124. -sndstereo
  125. Set stereo sound (default if supported)
  126. Installation
  127. ------------
  128. Boot DOS (I know, but you need it to run the Quake install program) and
  129. install Quake from your Quake CD to a DOS parition.
  130. Boot Linux and make a directory for Quake. Copy everything from the DOS Quake
  131. directory into it. i.e.:
  132. (cd /dos/quake; tar cf - .) | (cd ~/quake; tar xf -)
  133. Place qwcl into your Quake directory. You must make it setuid root (since
  134. Quake access stuff like direct video writes, the raw keyboard mode, CD, etc).
  135. Quake will setuid back to the normal user as soon as it opens these files.
  136. Make Quake suid root as follows:
  137. chown root qwcl
  138. chmod 4755 qwcl
  139. Run qwcl. I don't recommend running it as root, since all the saved
  140. config.cfg files will be then owned as root. Use your normal account, unless
  141. you do everything as root, then your mileage will vary.
  142. qwcl may segfault if it tries to initialize your sound card and their isn't
  143. one. Same with the CDROM. If it dies, try it with -nosound and/or
  144. -nocdaudio. If you have a sound card it died on and you know it is
  145. supported by USSLite (the driver that comes with the Linux kernel), let me
  146. know and I'll take a look at it.
  147. It should work with SCSI CDROMs, but is untested.
  148. End Notes
  149. ---------
  150. Linux QuakeWorld is *NOT* an officially supported product. Mail about it
  151. will be deleted. Do not email id about this product. If you are having
  152. technical difficultly, you can email me, but make sure you have the correct
  153. kernel, libc, svgalib and other software versions before you email me.
  154. /// Dave 'Zoid' Kirsch
  155. zoid@idsoftware.com
  156. Official Quake Unix Port Administrator
  157. Acks
  158. ----
  159. Greg Alexander <galexand@sietch.bloomington.in.us> for initial work in SVGALib
  160. support.
  161. Dave Taylor <ddt@crack.com> for basic Linux support.
  162. id Software for Quake and making me port it. :)
  163. Lots of people on #linux, #quake for testing.