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