Commit graph

649 commits

Author SHA1 Message Date
Yamagi Burmeister
f0bcc60f78 Add windows/system.c
This files contains most support functions for windows and the main
loop. It was taken from Icculus Quake II and cleaned up. This early
version may still have bugs.
2012-06-03 12:01:38 +02:00
Yamagi Burmeister
07f73762aa Remove unused Sys_CopyProtect stup 2012-06-03 11:36:25 +02:00
Yamagi Burmeister
60dfaee439 Remove old setuid() magic 2012-06-02 16:46:25 +02:00
Yamagi Burmeister
f28e005e1e Back out if Quake II is run as root or if eUID != rUID
This is a sanity check to prevent stupid users from running Quake II as
root or as a setuid binary. Quake II is such a mess that running it as
root or setuid is just reckless.
2012-06-02 16:33:12 +02:00
Yamagi Burmeister
deaeac42b7 Abort if the clipplane is NULL. 2012-06-02 13:40:49 +02:00
Yamagi Burmeister
6cafb22a9c Use Com_Error instead of Sys_Error 2012-06-02 13:31:20 +02:00
Yamagi Burmeister
42da811355 Initialize sounds[] to avoid garbage branch conditions down below 2012-06-02 13:29:08 +02:00
Yamagi Burmeister
6befae2ffd Remove dead assignments 2012-06-02 13:21:22 +02:00
Yamagi Burmeister
bf02575b1e Return in case of possible overflow 2012-06-02 13:18:33 +02:00
Yamagi Burmeister
ef3c9bf620 Do not turn stack address into a global variable 2012-06-02 13:06:12 +02:00
Yamagi Burmeister
4ece3714aa Prevent a divion by zero 2012-06-02 12:56:07 +02:00
Yamagi Burmeister
12ce981d64 Convert random() to randk() and crandom() to crandk() 2012-06-02 12:30:20 +02:00
Yamagi Burmeister
fc2d67bac1 Ensure that pseudo random numbers are always >0 2012-06-02 12:11:14 +02:00
Yamagi Burmeister
40ff7a6b09 Convert rand(), crand() and frand() to randk(), crandk() and frandk() 2012-06-02 11:55:12 +02:00
Yamagi Burmeister
a0ccf86660 Implemented the new random generator in shared.h instead of common.h 2012-06-02 11:32:45 +02:00
Yamagi Burmeister
effc7b3c35 Implement crandk() and frandk() and remove old functions 2012-06-02 11:22:54 +02:00
Yamagi Burmeister
7bd1392a5a Seed the new PRNG at startup 2012-06-02 10:59:43 +02:00
Yamagi Burmeister
97f7ba0610 Add rand.c, an implementation of G. Marsaglia KISS PRNG 2012-06-02 10:56:40 +02:00
Yamagi Burmeister
881b935b65 Change atof() to strtod() 2012-06-02 10:33:28 +02:00
Yamagi Burmeister
67dbe816c9 Change atoi() to strtol() 2012-06-02 10:24:52 +02:00
Yamagi Burmeister
fc679896f5 Explicit cast 2012-06-02 09:07:20 +02:00
Yamagi Burmeister
32fe0ba21f Prevent a buffer overflow. 2012-06-01 18:13:30 +02:00
Yamagi Burmeister
f9837b9130 Initialize variables (they may be used uninitialzed further down below) 2012-06-01 17:59:00 +02:00
Yamagi Burmeister
0d8f990d14 Ensure that variables that point to data on the stack are cleared 2012-06-01 17:20:05 +02:00
Yamagi Burmeister
0e1520d29a Remove dead code and assignments 2012-06-01 17:05:40 +02:00
Yamagi Burmeister
e9605e8a8b Use AL_BUFFERS_QUEUED at stream shutdown. 2012-05-26 12:03:01 +02:00
Yamagi Burmeister
492b7c1a2b Convert whitespace indentation to tabs 2012-05-26 12:00:48 +02:00
Yamagi Burmeister
28c4edfd69 Clear buffers before deleting the sources
This fixes a very long lasting shutdown procedure which made it look
like Quake II freezed. Especially on slow machines it was a problem.
2012-05-26 11:37:47 +02:00
Yamagi Burmeister
37132d8ac9 Bump version number to 4.21 2012-05-26 09:45:57 +02:00
Daniel Gibson
cf41d61d72 Add OpenAL to printed Client build options 2012-05-17 15:06:45 +02:00
Daniel Gibson
62d76b3d40 Fix segfault when s_openal=0 but USE_OPENAL=1
If the game was compiled with openal support (USE_OPENAL is defined),
but it's disabled via cvar (set s_openal 0) there could be segfaults
when calls to openal where done anyway, because the check
if(sound_started == SS_OAL) was forgotten.
This is fixed now.
2012-05-17 14:47:05 +02:00
Yamagi Burmeister
5bf1ee670d Fix s_show when OpenAL is used 2012-05-12 15:11:17 +02:00
Yamagi Burmeister
aff51633d0 Add a sanity check against buffer overflows to S_BuildSoundList 2012-05-12 14:46:13 +02:00
Yamagi Burmeister
4a414b588e Fix a buffer overflow in AL_AddLoopSounds
This fixes a crash in mine4.bsp and most likely some other problems.
The bug was reported by "mxmvasilyev0 [at] gmail [dot] com" and tracked
as Github issue #1.
2012-05-12 14:42:15 +02:00
Yamagi Burmeister
b6325d7858 Remove unused variables and dead code (patch submitted by Christoph
Mallon)
2012-04-30 10:02:58 +02:00
Christoph Mallon
ab034114b4 Whitespace fixes. 2012-04-30 08:25:59 +02:00
Daniel Gibson
ebccfc63df Remove need to link against libopenal
libopenal is loaded with dlopen() and for all used alBla and alcBla functions
there are function pointers (just like thee qgl stuff for OpenGL).
Thus there's no need to link against libopenal on compile-time.

There were a few occurences of "normal" openal functions (al* instead of qal*)
- they are fixed now.

This allows to use a yquake2 version compield with WITH_OPENAL=yes to be used
on systems that have no libopenal installed (the standard SDL sound backend
will be used then).
2012-04-29 15:24:14 +02:00
Yamagi Burmeister
4203bed129 Bump version number to 4.20 2012-04-29 08:08:21 +00:00
Daniel Gibson
965fedf9ae It's X11GAMMA with 2 "m". 2012-04-28 20:04:24 +00:00
Daniel Gibson
2b7ef996ed Fall back to "libGL.so.1" if gl_driver set in (default) config fails 2012-04-28 20:02:15 +00:00
Daniel Gibson
632bd0a776 Enforce "C" lokale, this time correctly
Now when some braindead alsa/ladspa plugin calls setlocale(LC_ALL, "") the 
locale is (still) set to "C" and not some other locale that may fsck up printf
and scanf formats
2012-04-28 19:39:36 +00:00
Daniel Gibson
669a78de12 Compiletime options in Makefile overwritable from console
And a small fix that shuts up a compiler warning
2012-04-28 19:38:07 +00:00
Daniel Gibson
53d54b1f23 Merge OpenAL branch 2012-04-28 15:58:50 +00:00
Daniel Gibson
31f9af817f Last fixes and cleanups for OpenAL support
* New license header in snd_al.c
* README fixes
* Fix printing of used OpenAL device
* Cleanup in snd_al.c
2012-04-28 15:44:14 +00:00
Yamagi Burmeister
c62e5ac85b - Implement AL_UnqueueRawSamples() and use it to stop the Vorbis playback
imediatly
- Increase Vorbis buffers to 64. 24 were to few
2012-04-27 14:06:08 +00:00
Yamagi Burmeister
2b6389a471 Filter sound samples (not the music) when under water 2012-04-27 13:55:45 +00:00
Yamagi Burmeister
1a0b4ebad5 Do not set / enable / show the s_openal CVAR if the binary is build
without OpenAL support. OpenAL is enabled in the default Makefile and if
it's disabled, it's shown at startup.
2012-04-27 12:00:22 +00:00
Yamagi Burmeister
905b31a918 Integrate OpenAL into the options system 2012-04-25 10:09:30 +00:00
Yamagi Burmeister
a388254252 Fix a missmerge 2012-04-25 10:09:16 +00:00
Yamagi Burmeister
2c3c203097 Merge out new options framework from the trunk 2012-04-25 09:57:17 +00:00