Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
5131 clevermous 1
INSTALL for Linux Quake2
2
------------------------
3
 
4
Quake2 for Linux supports the following video subsystems:
5
 
6
- SVGALib Console Graphics (ref_soft.so)
7
	- Requires SVGALib 1.2.0 or later
8
- X11 Window Graphics (ref_softx.so)
9
	- X11R5 or later, XShm shared memory extension supported
10
- 3DFX fxMesa with Mesa 3-D or 3DFX Miniport (ref_gl.so)
11
	- Mesa 3-D 2.6 or later, specifically compiled for 3DFX support
12
	  Mesa 3-D 2.6 compiled with 3DFX support is provided with this archive.
13
- Generic glX (X11) based OpenGL (ref_glx.so)
14
	- Requires a glX based hardware accelerated OpenGL implementation.
15
	  Mesa 3-D 2.6 supports this on 3DFX hardware.
16
 
17
Also included is a specific 3DFX mini-OpenGL implementation for running Quake2
18
on 3DFX hardware.
19
 
20
Installation
21
------------
22
 
23
Mount the Quake2 CD as one would usually mount a CDROM, this can be
24
accomplished by using the command:
25
 
26
		mount /dev/cdrom /mnt
27
 
28
As root.  Once the CD is mounted, run the setup script on the CD as root.
29
 
30
		$ su
31
		Password:
32
		# mount /dev/cdrom /mnt
33
		# /bin/sh /mnt/setup
34
 
35
The script will ask some questions about what options you want to install
36
and automatically install the software into /usr/local/games/quake2.
37
 
38
Make sure you have the appropirate hardware, drivers and libraries installed
39
for the renderer you are going to play on.
40
 
41
Quake2 for Linux supports the following renderers:
42
 
43
- ref_soft
44
  Software rendering under SVGALib (console only).  SVGALib 1.2.10 or later
45
  is required.  Note that SVGALib 1.2.11 supports the ability to run a
46
  SVGALib application under X11 as it will automatically allocate a new
47
  console.  The default mode is 320x240 (ModeX) since that is the lowest
48
  resolution supported by Quake2.  If SVGALib supports your video card, higher
49
  resolution modes such as 640x480 and 800x600 are also supported.
50
 
51
  Please note that you may need to configure your mouse for SVGALib in
52
  /etc/vga/libvga.config (or /etc/libvga.config).
53
 
54
- ref_softx
55
  Software rendering under X11.  This uses the MITSHM Extension and should
56
  work will virtually all Linux X Servers.  **NOTE: Do not resize the window
57
  under X11.  You must use the Video menu to change resolution/window size.
58
 
59
  By default, the mouse will not be 'tied' to the Quake2 window.  To cause
60
  Quake2 to grab the mouse, select 'Windowed Mouse' from the video menu,
61
  or type '_windowed_mouse 0' at the console.  Do the reverse to release it.
62
  You can bind keys to grab and release the mouse in the console, like so:
63
    bind i "_windowed_mouse 1"
64
    bind o "_windowed_mouse 0"
65
  Then "i" will grab the mouse and "o" will release it.
66
 
67
- ref_gl
68
  This render can be run with two different OpenGL drivers:  Mesa 3-D
69
  ontop of Linux GLIDE, or 3DFX's mini-OpenGL Quake driver.
70
  For Mesa 3-D, the necessary libMesaGL.so.2.6 is included with this archive.
71
  You must copy it to /usr/lib or /usr/local/lib and run ldconfig (as root)
72
  in order to use it.  You can do this as follows:
73
    tar cf - lib*GL* | (cd /usr/lib; tar xf -)
74
  You should use tar to keep the symlinks intact. Once you copy them over
75
  run ldconfig.
76
  You must also download and install the Linux GLIDE drivers at
77
  http://www.3dfx.com/software/download_glidel.html
78
  And install them as instructed.
79
  RPMs for GLIDE are available at :
80
     http://glide.xxedgexx.com/3DfxRPMS.html
81
  With version 3.20, the GL library is entirely runtime loaded.  This means
82
  you can specify what shared object to load for GL display.
83
  To use Mesa 3-D GL (console), run quake with:
84
  	 ./quake2 +set vid_ref gl +set gl_driver libMesaGL.so.2
85
  To use the 3DFX OpenGL Miniport, run the included quake2.3dfxgl:
86
     ./quake2 +set vid_ref gl +set gl_driver lib3dfxgl.so
87
  The gl_driver cvar indicates the name of the library to load for GL
88
  functions.  It can be in any directory listed in /etc/ld.so.conf
89
  or in /etc/quake2.conf
90
 
91
  **NOTE:  There is a problem on libc5 systems where a vid_restart (causing
92
  a reload of the video system) will crash.  There doesn't seem to be a
93
  solution to this yet.  It looks to be some sort of ld.so dynamic loading
94
  interaction with SVGALib and ref_gl.so.  A work around is to start in
95
  software mode (./quake2 +set vid_ref soft), then use the menu to set your
96
  mode and a vid_restart will work when going from software to GL.  Exit
97
  out then and save your video mode settings.
98
  This problem does not occur on libc6 (glibc) based systems; vid_restart
99
  works fine on there.
100
 
101
- ref_glx
102
  ref_glx should run on many different hardward OpenGL implementations under
103
  Linux and X11.  This binary is an X11 application and must be run under
104
  X11.  It will work with Mesa 3-D as a standard glX based OpenGL
105
  applications.  If the Mesa 3-D library is compiled with 3DFX support,
106
  you can have Mesa 3-D support 3DFX hardware under X11 by setting the
107
  enviroment variable "MESA_GLX_FX" to "fullscreen" for fullscreen mode
108
  and "window" for windowed mode, eg. "export MESA_GLX_FX=fullscreen" for sh
109
  or "setenv MESA_GLX_FX fullscreen" for csh.
110
 
111
  As with ref_gl, the "gl_driver" cvar indicates the shared library to load
112
  for OpenGL functions (the glX functions must provided in that library
113
  as well).
114
 
115
Permissions
116
-----------
117
 
118
Quake2 requires root permissions to use the software (SVGALib) and GL (MesaGL
119
w/3dfx) renders.  In order to make this secure, some special considerations
120
must be made.
121
 
122
Quake2 should get setuid root:
123
	chown root quake2
124
	chmod 4711 quake2
125
 
126
And the ref_soft.so and ref_gl.so files must owned by root.
127
 
128
The file /etc/quake2.conf must be installed.  This file contains a single
129
line with the path of where the ref shared libraries can be found.
130
A sample one is included that lists /usr/games/quake2 as the default
131
path.  The libraries are only loaded out of the directory listed in
132
/etc/quake2.conf for security considerations.
133
 
134
Special permissions are not required for the softx renderer, but quake2 may
135
still need to be setuid root to open the sound device (quake2 will give up
136
setuid root permissions before loading softx).
137
 
138
NOTE:  If you use a setuid quake2 binary and run it as a normal user, it
139
will NOT be able to switch renderers on the fly because root permissions
140
are given up after the renderer is loaded.  You can switch renderers on the
141
fly if you run quake2 as root (su or log in as root).
142
 
143
NOTE:  When the quake2 binary is run in dedicated server mode
144
(+set dedicated 1), no special permissions are required and
145
/etc/quake2.conf is not read since no renderer is loaded.
146
 
147
----
148
 
149
The first time you run Quake2, it will use ref_soft or ref_softx based
150
on whether a DISPLAY environment variable exists.
151
 
152
To force the loading of a specific renderer at load time, use the following
153
command lines:
154
 
155
	./quake2 +set vid_ref soft
156
	./quake2 +set vid_ref softx
157
	./quake2 +set vid_ref gl
158
	./quake2 +set vid_ref glx
159
 
160
Linux Specific Cvars
161
--------------------
162
 
163
To set this, use +set on the command line, i.e.:
164
	./quake2 +set cd_dev /dev/hdc +set sndmono 1
165
 
166
nocdaudio (defaults to 0)
167
  Do not enable cd audio if not zero
168
 
169
sndbits (defaults to 16)
170
  Set sound bit sample size.
171
 
172
sndspeed (defaults to 0)
173
  Set sound speed.  Usual values are 8000, 11025, 22051 and 44100.
174
  If set to zero, causes the sound driver to attempt speeds in the following
175
  order:  11025, 22051, 44100, 8000.
176
 
177
sndchannels (defaults to 2)
178
  Indicates stereo or mono sound.  Defaults to 2 (stereo). Use 1 for mono.
179
 
180
nostdout (defaults to 0)
181
  Whether to output console msgs to standard out.  Non-zero is cease output.
182
 
183
Dedicated server
184
----------------
185
 
186
To run Linux Quake2 as a dedicated server, just run it as follows:
187
 
188
  ./quake2 +set dedicated 1
189
 
190
You can also set dmflags, timelimit, etc. in a config file, like so:
191
  set timelimit 20
192
  set fraglimit 25
193
  set dmflags 532
194
  map fact3
195
 
196
Then exec that config file on load, like so:
197
 
198
  ./quake2 +set dedicated 1 +exec server.cfg
199
 
200
If you use a config file, you must put a 'map' command in it or the
201
server won't load a map.
202
 
203
To run a dedicated server in the background, use this;
204
 
205
	nohup ./quake2 +set dedicated 1 +exec server.cfg &
206
 
207
A better way is to run Quake2 on a tty via screen.  screen can be found
208
at ftp://prep.ai.mit.edu/pub/gnu/screen-3.7.4.tar.gz, but it comes with
209
most modern Linux installations now.
210
 
211
-----------------------------------------------------------------------------
212
 
213
Linux Quake2 is an unsupported product.  Usage of this product is bound by
214
the legal notice found on the distribution Quake2 CDROM.
215
 
216
/// Zoid
217
zoid@idsoftware.com
218