Yamagi Burmeister
09fc72fb60
Add preliminary support for Windows to the Makefile
...
This is incomplete but should be sufficent to build q2ded on Windows as
soon as the sourcefile are added.
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
cac409b116
Remove old setuid() magic
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
66c6122bbb
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-04 09:13:29 +02:00
Yamagi Burmeister
83e069feb2
Abort if the clipplane is NULL.
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
e11a15308b
Use Com_Error instead of Sys_Error
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
9823a23a91
Initialize sounds[] to avoid garbage branch conditions down below
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
1deb069085
Remove dead assignments
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
afd2f4538c
Return in case of possible overflow
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
41a704a13e
Do not turn stack address into a global variable
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
36a41f9746
Prevent a divion by zero
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
b1dfcb7aff
Convert random() to randk() and crandom() to crandk()
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
9f45bd38f2
Ensure that pseudo random numbers are always >0
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
35e5bbb48b
Convert rand(), crand() and frand() to randk(), crandk() and frandk()
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
99520d1331
Implemented the new random generator in shared.h instead of common.h
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
28c200a2e8
Implement crandk() and frandk() and remove old functions
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
253373dbda
Seed the new PRNG at startup
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
056f4d287b
Add rand.c, an implementation of G. Marsaglia KISS PRNG
2012-06-04 09:13:29 +02:00
Yamagi Burmeister
edae2b0473
Change atof() to strtod()
2012-06-04 09:13:28 +02:00
Yamagi Burmeister
e9c90e16a9
Change atoi() to strtol()
2012-06-04 09:13:28 +02:00
Yamagi Burmeister
0aa75f8704
Explicit cast
2012-06-04 09:13:28 +02:00
Yamagi Burmeister
9ec98a79d2
Fix a potential buffer overflow
2012-06-04 09:12:59 +02:00
Yamagi Burmeister
7bd814e31e
Ignore errors of AllocConsole()
...
This errors are harmless and thrown when the process is already attached
to a console. Since the dedicated server is a console application the
console is created by Windows at startup...
2012-06-03 22:32:05 +02:00
Yamagi Burmeister
fb528550e2
Stub Sys_Init() for Unix and call it while initializing
2012-06-03 22:26:55 +02:00
Yamagi Burmeister
6aae3e23b9
Stub NET_Init() for Unix and call it while initializing
2012-06-03 22:04:27 +02:00
Yamagi Burmeister
6c8799d0b8
Open binary files in mode "rb" instead of "r"
...
This subtile bug didn't show on unixoid platforms, but led to problems
on Windows.
2012-06-03 21:53:51 +02:00
Yamagi Burmeister
b5a033459f
We are now able to build q2ded.exe under windows
...
Of course this is completly untested. Without a game.dll the dedicated
server is useless.
2012-06-03 15:37:19 +02:00
Yamagi Burmeister
dc209c40f2
Implement Sys_GetCurrentDirectory()
2012-06-03 15:31:44 +02:00
Yamagi Burmeister
c5cdccb97f
Move glob.c and glob.h to common
...
We need glob_match() for Windows
2012-06-03 15:26:31 +02:00
Yamagi Burmeister
a8e402705a
Add linker flags for Windows
2012-06-03 15:20:59 +02:00
Yamagi Burmeister
43b10b0737
Comment Sys_AppActivate() since cl_hwnd will be ported later
2012-06-03 15:20:24 +02:00
Yamagi Burmeister
32fe9c7a4f
Update TODO
2012-06-03 15:08:51 +02:00
Yamagi Burmeister
5133dad7a2
Add Windows network functions in network.c
...
This file was taken from ioQuake2 and refactored to match Yamagi Quake
II. It would be nice to have IPv6 support and to remove the old IPX
cruft, but that happen now.
2012-06-03 15:07:36 +02:00
Yamagi Burmeister
eebb775a95
Include ctype.h and silence some warnings
2012-06-03 14:39:46 +02:00
Yamagi Burmeister
1d77f68c22
Implement system depended file handling
...
Those functions were taken from ioQuake2 and refactored to match Yamagi
Quake II.
2012-06-03 14:33:33 +02:00
Yamagi Burmeister
2205d54a41
Remove FS_DeletePath() and Sys_Rmdir()
...
Thise functions where added with the filesystem rewrite but never used.
Removing them saves us from implementing Sys_Rmdir() for Windows.
2012-06-03 14:30:44 +02:00
Yamagi Burmeister
42db4d0cd2
Implement Sys_Milliseconds
...
This function was taken from ioQuakeII and refactored to match Yamagi
Quake II
2012-06-03 14:19:30 +02:00
Yamagi Burmeister
1d9df63078
Add a TODO to ensure that all new headers have header guards
2012-06-03 14:19:05 +02:00
Yamagi Burmeister
6e2bbf2f44
Add memory handling functions in mem.c
...
This code was taken from ioQuake2, refactored into an own file and
altered for the inclusion in Yamagi Quake II.
2012-06-03 14:08:31 +02:00
Yamagi Burmeister
77350e8a16
Use correct types and remove unused variables
2012-06-03 13:26:17 +02:00
Yamagi Burmeister
723b1cad47
Hide calls to CL_Shutdown() behind !DEDICATED_ONLY
2012-06-03 13:13:13 +02:00
Yamagi Burmeister
9e6df10550
Do not set the FPU state
...
This is a workaround for a MinGW bug and should be resolved before the
first CFT is released. A TODO item was added in a preceding commit.
2012-06-03 13:09:27 +02:00
Yamagi Burmeister
3286b037a8
Remove DirectX variables
2012-06-03 13:08:59 +02:00
Yamagi Burmeister
d43e10b1b0
Alter the Makefile again to bootstrap Windows
...
This version of the Makefile adds a horrible workaround for Windows
broken "mkdir". It'll be resolved before the first CFT is released.
2012-06-03 13:06:48 +02:00
Yamagi Burmeister
ef5cc65664
Add mkdir.exe
...
Having mkdir.exe in the root directory is a horrible workaround to
bootstrap Yamagi Quake II on Windows without rewriting bigger parts
of the Makefile. This is a temporary solution and will be changed
before the first CFT is released
2012-06-03 13:04:19 +02:00
Yamagi Burmeister
bd102bf0b8
Add TODO
...
A list of thinks to be done befor the first CFT is released
2012-06-03 13:03:38 +02:00
Yamagi Burmeister
fdf87559f1
Add winquake.h
...
This header containts Windows specific stuff. It was taken from ioQuake2
and cleaned up for inclusion in Yamagi Quake II.
2012-06-03 12:26:24 +02:00
Yamagi Burmeister
0a128d0837
Add resource.h
...
This is the "Windows resource file", required by every Windows
application
2012-06-03 12:19:13 +02:00
Yamagi Burmeister
75425ce987
Add conproc.c and the coresponding header
...
conproc.c implements support functions for the console windows used by
the dedicated server. It was taken from ioQuake2 and cleaned up for the
inclusion in Yamagi Quake II.
2012-06-03 12:14:05 +02:00
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