r523 - trunk

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Tue Jan 24 18:12:19 EST 2006


Author: tma
Date: 2006-01-24 18:12:18 -0500 (Tue, 24 Jan 2006)
New Revision: 523

Modified:
   trunk/ChangeLog
   trunk/README
Log:
* Updated the ChangeLog
* Reorganised the README


Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2006-01-24 04:35:19 UTC (rev 522)
+++ trunk/ChangeLog	2006-01-24 23:12:18 UTC (rev 523)
@@ -1,3 +1,23 @@
+2006-01-24 Various contributors
+	+ Persistent console history
+	+ Added code to sleep a bit when q3 has no focus and sleep a lot when it's
+		minimised (SDL only)
+	+ Cull excess speaker entities when using OpenAL
+	+ Fix the operation of the delete key in *nix
+	+ Only check the checksum on baseq3 pak0.pk3
+	+ Overhaul of console autocompletion
+		- No longer does weird stuff like move the cursor inappropriately
+		- Autocomplete works with compound commands
+		- Special autocomplete on some commands e.g. \map, \demo
+		- Removed various hacks used to counter the original autocomplete code
+	+ Fixed the ability to disable Ogg Vorbis
+	+ s/i686/i586/ - see bug #2578
+	+ Some sloppily coded mods call the Q3 sound API with NaNs -- sanitise this
+	+ Removed advertising clause from BSD license as per mailing list discussion
+	+ "make distclean" now does what you'd expect
+	+ "make clean toolsclean" now does what "make distclean" did before
+	+ GPL MD4 implementation
+
 2006-01-16 Various contributors
 	+ Move code/unix/Makefile to ./Makefile
 	+ x86 OS X support

Modified: trunk/README
===================================================================
--- trunk/README	2006-01-24 04:35:19 UTC (rev 522)
+++ trunk/README	2006-01-24 23:12:18 UTC (rev 523)
@@ -1,143 +1,197 @@
-Name of this project: icculus.org/quake3
-URL: http://www.icculus.org/quake3
-Hello and welcome to the Quake 3 source repository on icculus.org
-I'll be your maintainer, zakk at icculus.org, please send all your patches to
-the bugzilla: https://bugzilla.icculus.org, or join the mailing list
-(quake3-subscribe at icculus.org) and submit your patch there.
-Best case scenario is you subscribe to the ml, submit your patch to
-bugzilla, and then post the url to the mailing list.
+,------------------------------------------------------------------------------.
+|     _            _                          __              _       ____     |
+|    (_)__ __ _  _| |_  _ ___  ___ _ _ __ _  / /_ _ _  _ __ _| |_____|__ /     |
+|    | / _/ _| || | | || (_-<_/ _ \ '_/ _` |/ / _` | || / _` | / / -_)|_ \     |
+|    |_\__\__|\_,_|_|\_,_/__(_)___/_| \__, /_/\__, |\_,_\__,_|_\_\___|___/     |
+|                                     |___/      |_|                           |
+|                                                                              |
+`------------------------------------------ http://icculus.org/quake3 ---------'
 
-If you're too lazy for either method, then I would rather
-you e-mailed your patches to me directly than not at all.
+The intent of this project is to provide a baseline Quake 3 which may be used
+for further development. Some of the major features currently implemented are:
 
-The intent of this is to give people a baseline Quake 3.
-Bug fixes, SDL port, OpenAL, security, etc.
-Extra graphics and sound will be accepted as long as they are entirely
-optional and off by default.
+  * SDL backend for unix-like operating systems
+  * OpenAL sound API support (multiple speaker support and better sound
+    quality)
+  * Full x86_64 support on Linux
+  * MinGW compilation support on Windows and cross compilation support on Linux
+  * AVI video capture of demos
+  * Much improved console autocompletion
+  * Persistent console history
+  * Colorized terminal output
+  * Optional Ogg Vorbis support
+  * Much improved QVM tools
+  * Support for various esoteric operating systems (see
+    http://icculus.org/quake3/?page=status)
+  * Many, many bug fixes
 
-The map editor isn't included, get a modern copy from here:
-http://www.qeradiant.com/
+The map editor and associated compiling tools are not included. We suggest you
+use a modern copy from http://www.qeradiant.com/.
 
-The id software readme has been renamed to id-readme.txt
-so as to prevent confusion.
+The original id software readme that accompanied the Q3 source release has been
+renamed to id-readme.txt so as to prevent confusion. Please refer to the
+web-site for updated status.
 
-Refer to the web-site for updated status, enjoy!
 
-Compiling (Under Windows)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Run Visual Studio, open the quake3.sln file in the win32/msvc
-directory. Build. Copy the resultant Quake3.exe to your quake 3
-directory, make a backup if you want to keep your original.
+--------------------------------------------- Compilation and installation -----
 
-Copy the resultant dlls to your baseq3 directory, backup etc.
+For *nix
+  1. Change to the directory containing this readme.
+  2. Run 'make'.
 
-Run, enjoy!
+For Windows, using MinGW
+  1. Download and install MinGW and MSys from http://www.mingw.org/.
+  2. Download http://www.libsdl.org/extras/win32/common/directx-devel.tar.gz
+     and untar in into your MinGW directory (usually C:\MinGW).
+  3. Open an MSys terminal, and follow the instructions for compiling on *nix.
 
+For Windows, using MSVC
+  1. Run Visual Studio and open the quake3.sln file in the code/win32/msvc
+     directory.
+  2. Build.
+  3. Copy the resultant Quake3.exe to your quake 3 directory, make a backup if
+     you want to keep your original. If you wish to use native libraries, copy
+     the resultant dlls to your baseq3 directory.
 
-Compiling (Under Linux)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-1. If not already there, change to the directory containing this readme
-2. Run 'make'
+Installation, for *nix
+  1. Set the COPYDIR variable in the shell to be where you installed Quake 3
+     to.  By default it will be /usr/local/games/quake3 if you haven't set it.
+     This is the path as used by the original Linux Q3 installer and subsequent
+     point releases.
+  2. Run 'make copyfiles'.
 
-For distribution maintainers, you can set some make variables:
- OPTIMIZE          - use this for custom CFLAGS
- DEFAULT_BASEDIR   - extra path to search for baseq3 and such
- BUILD_SERVER      - build the 'q3ded' server binary (1 = build it, default = 1)
- BUILD_CLIENT      - build the 'quake3' client binary (1 = build it, default = 1)
- USE_LOCAL_HEADERS - use system headers instead of ones local to ioq3
+It is also possible to cross compile for Windows under *nix using MinGW. A
+script is available to build a cross compilation environment from
+http://www.libsdl.org/extras/win32/cross/build-cross.sh. The gcc/binutils
+version numbers that the script downloads may need to be altered. After you
+have successfully run this script cross compiling is simply a case of using
+'./cross-make-mingw.sh' in place of 'make'.
 
-Installing under Linux
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Set the COPYDIR variable in the shell to be where you installed
-Quake 3 to. By default it will be /usr/local/games/quake3 if you
-haven't set it. Which is where the id patch installs by default.
+If the make based build system is being used (i.e. *nix or MinGW), the
+following variables may be set, either on the command line or in
+Makefile.local:
 
-Then run "make copyfiles", beware that this will overwrite any binaries
-installed previously, even official id ones.
+  OPTIMIZE          - use this for custom CFLAGS
+  DEFAULT_BASEDIR   - extra path to search for baseq3 and such
+  BUILD_SERVER      - build the 'ioq3ded' server binary
+  BUILD_CLIENT      - build the 'ioquake3' client binary
+  BUILD_CLIENT_SMP  - build the 'ioquake3-smp' client binary
+  BUILD_GAME_SO     - build the game shared libraries
+  BUILD_GAME_QVM    - build the game qvms
+  USE_SDL           - use the SDL backend where available
+  USE_OPENAL        - use OpenAL where available
+  USE_OPENAL_DLOPEN - link with OpenAL at runtime
+  USE_CODEC_VORBIS  - enable Ogg Vorbis support
+  USE_LOCAL_HEADERS - use headers local to ioq3 instead of system ones
+  USE_CCACHE        - use ccache compiler caching tool
+  COPYDIR           - the target installation directory
 
-Compiling under Windows using MinGW
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-It is possible to compile ioQ3 using the MinGW (Minimalist GNU for Windows)
-toolset. It's a little more involved than compiling for Linux; steps are as
-follows:
+The defaults for these variables differ depending on the target platform.
 
-1. Download and install MinGW and MSys from http://www.mingw.org/.
-2. Download http://www.libsdl.org/extras/win32/common/directx-devel.tar.gz
-   and untar in into your MinGW directory (usually C:\MinGW).
-3. Perform the usual precompilation sacrificial ritual.
-4. Open an MSys terminal, and follow the instructions for compiling on Linux.
-5. Steal underpants
-6. ?????
-7. Profit!
 
-It is also possible to cross compile for Windows using MinGW. A script is
-available to build a cross compilation environment from
-http://www.libsdl.org/extras/win32/cross/build-cross.sh. The gcc/binutils
-version numbers that the script downloads may need to be altered. After you
-have successfully run this script cross compiling is simply a case of using
-'./cross-make-mingw.sh' in place of 'make'.
+------------------------------------------------------------------ Console -----
 
+New cvars
+  cl_autoRecordDemo       - record a new demo on each map change
+  cl_aviFrameRate         - the framerate to use when capturing video
+  cl_aviMotionJpeg        - use the mjpeg codec when capturing video
+
+  s_useOpenAL             - use the OpenAL sound backend if available
+  s_alPrecache            - cache OpenAL sounds before use
+  s_alGain                - the value of AL_GAIN for each source
+  s_alSources             - the total number of sources (memory) to allocate
+  s_alDopplerFactor       - the value passed to alDopplerFactor
+  s_alDopplerSpeed        - the value passed to alDopplerVelocity
+  s_alMinDistance         - the value of AL_REFERENCE_DISTANCE for each source
+  s_alRolloff             - the value of AL_ROLLOFF_FACTOR for each source
+  s_alMaxSpeakerDistance  - ET_SPEAKERS beyond this distance are culled
+  s_alDriver              - which OpenAL library to use
+
+  s_sdlBits               - SDL bit resolution
+  s_sdlSpeed              - SDL sample rate
+  s_sdlChannels           - SDL number of channels
+  s_sdlDevSamps           - SDL DMA buffer size override
+  s_sdlMixSamps           - SDL mix buffer size override
+
+  ttycon_ansicolor        - enable use of ANSI escape codes in the tty
+  r_GLlibCoolDownMsec     - wait for some milliseconds to close GL library
+  com_altivec             - enable use of altivec on PowerPC systems
+  s_backend               - read only, indicates the current sound backend
+  cl_consoleHistory       - read only, stores the console history
+  cl_platformSensitivity  - read only, indicates the mouse input scaling
+
+New commands
+  video [filename]        - start video capture (use with demo command)
+  stopvideo               - stop video capture
+
+
+------------------------------------------------------------ Miscellaneous -----
+
 Using shared libraries instead of qvm
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-To make quake3 prefer shared libraries instead of qvm run it with
-the following parameters:
-+set sv_pure 0 +set vm_cgame 0 +set vm_game 0 +set vm_ui 0
+  To force Q3 to use shared libraries instead of qvms run it with the following
+  parameters: +set sv_pure 0 +set vm_cgame 0 +set vm_game 0 +set vm_ui 0
 
 Using Demo Data Files
-~~~~~~~~~~~~~~~~~~~~~
-You only need demoq3/pak0.pk3 from the demo installer. The qvm files inside
-pak0.pk3 will not work, you have to use the native shared libraries from this
-project. To do so copy or link ui*.so, qagame*.so, cgame*.so from baseq3 to
-demoq3 and run quake3 with the parameters described above.
+  Copy demoq3/pak0.pk3 from the demo installer to your baseq3 directory. The
+  qvm files in this pak0.pk3 will not work, so you have to use the native
+  shared libraries or qvms from this project. To use the new qvms, they must be
+  put into a pk3 file. A pk3 file is just a zip file, so any compression tool
+  that can create such files will work. The shared libraries should already be
+  in the correct place. Use the instructions above to use them.
 
+  Please bear in mind that you will not be able to play online using the demo
+  data, nor is it something that we like to spend much time maintaining or
+  supporting.
+
 64bit mods
-~~~~~~~~~~
-If you wish to compile external mods as shared libraries on a 64bit platform,
-and the mod source is derived from the id Q3 SDK, you will need to modify the
-interface code a little. Open the files ending in _syscalls.c and change every
-instance of int to long in the declaration of the syscall function pointer and
-the dllEntry function. Also find the vmMain function for each module (usually
-in cg_main.c g_main.c etc.) and similarly replace every instance of int in the
-prototype with long.
+  If you wish to compile external mods as shared libraries on a 64bit platform,
+  and the mod source is derived from the id Q3 SDK, you will need to modify the
+  interface code a little. Open the files ending in _syscalls.c and change
+  every instance of int to long in the declaration of the syscall function
+  pointer and the dllEntry function. Also find the vmMain function for each
+  module (usually in cg_main.c g_main.c etc.) and similarly replace every
+  instance of int in the prototype with long.
 
-Note if you simply wish to run mods on a 64bit platform you do not need to
-recompile anything since by default Q3 uses a virtual machine system.
+  Note if you simply wish to run mods on a 64bit platform you do not need to
+  recompile anything since by default Q3 uses a virtual machine system.
 
 Creating mods compatible with Q3 1.32b
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-If you're using this package to create mods for the last official release of
-Q3, it is necessary to pass the commandline option '-vq3' to your invocation
-of q3asm. This is because by default q3asm outputs an updated qvm format that
-is necessary to fix a bug involving the optimizing pass of the x86 vm JIT
-compiler. See http://www.quakesrc.org/forums/viewtopic.php?t=5665 (if it still
-exists when you read this) for more details.
+  If you're using this package to create mods for the last official release of
+  Q3, it is necessary to pass the commandline option '-vq3' to your invocation
+  of q3asm. This is because by default q3asm outputs an updated qvm format that
+  is necessary to fix a bug involving the optimizing pass of the x86 vm JIT
+  compiler. See http://www.quakesrc.org/forums/viewtopic.php?t=5665 (if it
+  still exists when you read this) for more details.
 
-New Cvars
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-cl_autoRecordDemo
- when enabled automatically records a new demo
- on each map change
 
-seta s_alDriver "libopenal.so.0"
- Describes which OpenAL library to use.
+------------------------------------------------------------- Contributing -----
 
-seta s_alRolloff "0.8"
+Please send all patches to bugzilla (https://bugzilla.icculus.org), or join the
+mailing list (quake3-subscribe at icculus.org) and submit your patch there.  The
+best case scenario is that you submit your patch to bugzilla, and then post the
+URL to the mailing list. If you're too lazy for either method, then it would be
+better if you emailed your patches to zakk at icculus.org directly than not at
+all.
 
-seta s_alMinDistance "120"
+The focus for ioq3 to develop a stable base suitable for further development.
+As such ioq3 does not have any significant graphical enhancements and none are
+planned at this time. However, improved graphics and sound patches will be
+accepted as long as they are entirely optional, do not require new media and
+off by default.
 
-seta s_alDopplerSpeed "2200"
 
-seta s_alDopplerFactor "1.0"
+------------------------------------------------------------------ Credits -----
 
-seta s_alSources "64"
+Maintainers
+  Aaron Gyes <floam at sh.nu>
+  Ludwig Nussel <ludwig.nussel at suse.de>
+  Ryan C. Gordon <icculus at icculus.org>
+  Tim Angus <tim at ngus.net>
+  Zachary J. Slater <zakk at timedoctor.org>
 
-seta s_alGain "0.4"
-
-seta s_alPrecache "0"
-
-seta s_useOpenAL "1"
- When set to true, enables OpenAL audio instead of SDL audio.
-
-seta sdlmixsamps "0"
-
-seta sdldevsamps "0" 
+Significant contributions from
+  Andreas Kohn <andreas at syndrom23.de>
+  Joerg Dietrich <Dietrich_Joerg at t-online.de>
+  Stuart Dalton <badcdev at gmail.com>
+  Vincent S. Cojot <vincent at cojot.name>
+  optical <alex at rigbo.se>




More information about the quake3-commits mailing list