Commit graph

320 commits

Author SHA1 Message Date
Ozkan Sezer
b1585b3039 more fixes for deprecated conversion from string constant to char*:
handle the -safe command line switch using a new global safemode,
check for safemode in the related driver init functions and remove
the safeargvs & co from common.c and COM_InitArgv().


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@307 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-29 12:55:41 +00:00
Ozkan Sezer
cecbdc723c pr_edict.c: changed the type arguments of PR_ValueString() and PR_UglyValueString()
from etype_t to int for C++ compatibility. from uhexen2.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@306 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-29 12:36:03 +00:00
Ozkan Sezer
4e60e59d39 constified basedir member of quakeparms_t
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@305 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-29 12:33:33 +00:00
Ozkan Sezer
ef7e98cb02 pr_comp.h: fixed a harmless typo with DEF_SAVEGLOBAL
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@304 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-29 12:27:17 +00:00
Ozkan Sezer
db94e7f98c some more constifications and fixes for deprecated conversion
from string constant to char*


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@303 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-29 12:04:19 +00:00
Ozkan Sezer
f17e534519 added comment in Host_Name_f()
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@301 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-29 10:22:17 +00:00
Ozkan Sezer
906df3f650 const correctness changes.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@300 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-29 02:22:55 +00:00
Ozkan Sezer
66ec5d11dc gl_model.c (Mod_LoadAliasModel, Mod_LoadSpriteModel): add some enum casts
to make things more compatible with C++.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@299 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-24 10:41:41 +00:00
Ozkan Sezer
d9182f61a4 made the PollProcedure api compatible with C++.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@298 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-24 10:29:19 +00:00
Steven
5c57699095 Back out Oz's cd-sdl.c changes
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@297 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-24 10:06:16 +00:00
Ozkan Sezer
36d82d087d removed net_serial which was for dosquake only.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@296 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-24 09:55:43 +00:00
Ozkan Sezer
a7103e2d39 screen.h (canvastype): Added CANVAS_INVALID as a new enumerated value (-1).
gl_draw.c (GL_Set2D): Use CANVAS_INVALID instead of -1.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@295 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-24 09:20:19 +00:00
Ozkan Sezer
6829940b87 main_sdl.c: removed dedicated setup TODO notes. added a new TODO note about
setting up the dedicated server with less memory.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@294 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-24 09:11:57 +00:00
Ozkan Sezer
7957d214ba cd_sdl.c: cleaned up the latest mess a little. restricted track progressing
to the cd player facility only.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@293 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-24 09:04:16 +00:00
Steven
6beef00279 cd fix needed fo gameplay
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@292 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-24 01:28:40 +00:00
Steven
627ffd4f64 Make "cd play" progress tracks
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@291 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-24 00:35:22 +00:00
Ozkan Sezer
834e2cf868 * cd_sdl.c (export_cddev_arg): make putevn() actually work.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@290 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-23 23:46:16 +00:00
Ozkan Sezer
010a465de2 * cd_sdl.c (export_cddev_arg): fixed bad snprintf and the crash it was
causing.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@289 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-23 23:20:16 +00:00
Ozkan Sezer
dbd624bdf8 cd_sdl.c: no need for uhexen2's CVS version identifier to stay here.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@288 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-23 17:23:39 +00:00
Ozkan Sezer
dcf0cd11bf * cd_sdl.c (get_cddev_arg): fix stupid typo in uppercasing.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@287 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-23 15:55:54 +00:00
Ozkan Sezer
c6627995cc * cd_sdl.c (get_cddev_arg): check for null or empty arguments also
for non-windows platforms.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@286 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-23 14:32:34 +00:00
Ozkan Sezer
27fc06b792 * cd_sdl.c: Remove unnecessary SDL_getenv.h include.
(CDAudio_Init): Move the bad ugly hack about SDL_CDROM environment
variable into the new export_cddev_arg() helper. FOr the -cddev option,
call the new get_cddev_arg() helper.

(export_cddev_arg): SDL_CDROM environment variable hack moved from
CDAudio_Init() to here. Fixed bad strcat() usage orto the array. Made it
for non-windows platforms only.

(get_cddev_arg): Added for checking the argument to the -cddev option.
For non-windows platforms just return the argument itself. For windows,
arg should be like "D:\", make sure it is so, but tolerate args like "D"
or "D:", as well.

(CDAudio_Next): Make static. Minor cleanups.

(CDAudio_Prev): Make static. Minor cleanups.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@285 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-23 14:05:32 +00:00
Steven
93dd4d8bb1 cd command tweaks
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@284 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-23 10:31:00 +00:00
Steven
fb745fe815 Add "cd next" and "cd prev" commands. Add a new "-cd" option , which in combination with "-dedicated", allows QS to be a stand-alone cd player... Useful\!
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@283 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-23 09:49:03 +00:00
Steven
38b8119eb7 Set SDL_CDROM environment variable when using -cddev. Some doco updates.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@282 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-23 04:12:19 +00:00
Ozkan Sezer
d8779f7d0d MS Visual Studio support:
* Quake/console.c, net_udp.c: replace snprintf by q_snprintf.
* Quake/common.h: Define q_snprintf as _snprintf for windows and as
snprintf for all others. Likewise for q_vsnprintf. Disable several
MSVC warnings. Define fmin and fmax as min and max macros for MSVC.
* Windows/quakespasm.vcproj, quakespasm.sln: Add Visual Studio 2005
project files.
* Windows/SDL_x64.zip: Add SDL x64 import libraries for MSVC.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@281 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-20 02:25:22 +00:00
Ozkan Sezer
88f32bdabf Makefile.w32, Makefile.w64: made them a little bit more flexible by adding
CROSS_COMPILE and TARGET variables.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@280 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-17 19:30:35 +00:00
Ozkan Sezer
14a4a5159e pr_cmds.c (PF_traceline): Added a FIXME note about the NaN issue with certain progs.dat
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@278 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-14 21:02:31 +00:00
Ozkan Sezer
3a6e17e627 added q_stdinc.h, adapted from uhexen2, to tidy up several includes and
macros in one place.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@277 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-14 20:55:39 +00:00
Ozkan Sezer
13491eb6a1 pr_cmds.c (PF_traceline): fix entity number printing.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@276 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-14 20:50:31 +00:00
Ozkan Sezer
2fc9631eff mathlib.h, mathlib.c: changed nanmask from being a global to being
a macro.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@275 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-14 20:10:20 +00:00
Ozkan Sezer
1b8482a1d8 * pr_cmd.c: replaced isnan() calls with quake's own ISNAN() macro.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@274 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-14 20:06:06 +00:00
Kristian Duske
542da2a2aa git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@272 af15c1b1-3010-417e-b628-4374ebc0bcbd 2010-08-14 19:41:09 +00:00
Steven
d4389ecb61 Miscellaneous doco updates
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@269 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-14 05:01:12 +00:00
Steven
f528bdb8a1 PF_traceline causes program to die badly if given non-numeric (isnan) vectors. So we must check to not allow this happening. Additionally, stop program execution is developer cvar is set. Note: Compiling program with gcc option \'-ffast-math\' (and more specifically, -funsafe-math-optimizations) is an alternative fix than this patch. It performs FPU opts that gloss over the issue
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@268 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-14 03:59:29 +00:00
Steven
2ec27d0df8 Swap left and right arrow keys in the videomode menu. (Right arrow now increases resolution, which is more standard)
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@267 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-14 03:42:52 +00:00
Ozkan Sezer
ef4fc53d27 net_sys.h: update comments and tidy up.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@262 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-09 14:03:07 +00:00
Ozkan Sezer
f89750857f struct sockaddr has unsigned char sa_len as the first member in BSD
in BSD variants and the family member is also an unsigned char instead
of (unsigned) short. So we define HAVE_SA_LEN for those BDS variants
and check for the offsetof for the sa_family member and also change
the struct qsockaddr to mirror that.  This should matter only when
PLATFORM_UNIX is defined.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@260 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-09 12:20:39 +00:00
Steven
fbe9360365 Add a "prev weapon" menu item (from Sander)
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@253 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-04 03:09:07 +00:00
Ozkan Sezer
d5e85a5e6c host_cmd.c, menu.c: sanitize whitespace/formatting.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@252 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-02 19:45:16 +00:00
Ozkan Sezer
4a1e01a976 menu.c: Added an options enum for the options menu. Added an options menu
entry for mouse look toggling.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@251 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-02 18:28:23 +00:00
Ozkan Sezer
c8273e039c revert incorrect changes to NUM_GAMEOPTIONS and gameoptions_cursor_table from rev. 246.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@250 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-02 17:33:03 +00:00
Ozkan Sezer
f493f3a17f gl_mesh.c (BuildTris): worked around a type-punned pointer. adapted from quakeforge.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@249 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-01 21:11:16 +00:00
Ozkan Sezer
a7d57b4b51 * renamed Length() to VectorLength() for consistency with its friends.
* mathlib.c: Removed the unnecessary sqrt() prototype.
(VectorLength): Made it to just return sqrt(DotProduct(arg,arg))
(VectorNormalize): Calculate the length as sqrt(DotProduct(arg,arg)).
* mathlib.h (CLAMP): Renamed the macro arguments from min and max to
_minval and _maxval.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@248 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-01 19:22:46 +00:00
Steven
19b960c889 Add a statusbar alpha slider, and change default scr_sbaralpha to 0.95
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@247 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-07-29 06:48:25 +00:00
Steven
b9d4ec244f Link the status bar size to the scale slider, though it's size only increases half as fast
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@246 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-07-29 01:52:04 +00:00
Steven
6a79b12f88 History fixed - Ozkan's newline fix seems ok.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@245 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-07-28 07:50:27 +00:00
Steven
f303df4d82 Make some fixes for command line history now that history is persistent
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@244 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-07-28 07:08:16 +00:00
Steven
66cafbd197 There seems bugs in the command-line code. Revert this "blank newline" fix first, then look for more
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@243 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-07-27 21:45:33 +00:00
Steven
7284633062 -bgvolume switch stays... Allows CD music/ambient music to play while minimized
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@242 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-07-26 08:47:11 +00:00
Ozkan Sezer
236d7a62ce Under windows, run the game (windowed), go into a saved game,
press Esc to get the menu, minimize using the mouse on the
window's minimize icon and then restore and you'll have sound
all the same.  HOWEVER: If you minimize by pressing the icon
on the start bar, sound will be lost upon restoring. Or, if
you use alt-tab to get away from the game window the same will
happen. Or, if you run the game fullscreen and use alt-tab to
go to the desktop (alt-tab is the only way I know) you will
lose the sound again.  Here, we are probably are hitting an
SDL_APPACTIVE or SDL_APPINPUTFOCUS event more than once and
since the block counter goes > 1 we are not restoring properly.
For now, making snd_blocked to act as a boolean and not as a
counter fixes the issue.  Hmmm...

* main_sdl.c: Revert revision 238 change, no longer necessary.
* snd_dma.c: Make snd_blocked act as a boolean and not as a
counter.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@241 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-07-25 12:20:17 +00:00
Ozkan Sezer
e69a106d3d made MAXCMDLINE definition public through keys.h.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@240 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-07-25 10:36:14 +00:00
Steven
70dc6cb641 (Some?) Win32/64 does not re-enable sound after app is minimized and restored, so (temporarily?) add a -bgsound switch to disable sound being muted
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@238 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-07-23 20:58:04 +00:00
Steven
e9192f232a Enable messages and says to be 256 chars long, with a scrolling input line across top of screen. Allow tab button in demos.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@237 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-07-23 20:55:11 +00:00
Ozkan Sezer
c6a63edca2 keys.c (History_Shutdown): Don't let it write an empty string to history.txt
if no console commands were used.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@235 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-26 10:50:40 +00:00
Ozkan Sezer
d65f8679a7 host.c (Host_Init): Do not exec quake.rc for dedicated servers. Instead,
exec autoexec.cfg and stuffcmds in that case. Also moved running the start
map for dedicated servers here.
host_cmd.c (Host_Startdemos_f): Moved running the start map for dedicated
servers to Host_Init().


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@234 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-26 08:45:40 +00:00
Ozkan Sezer
1496d179e5 host.c (Host_Init): Don't call V_Init, Chase_Init, Key_Init, Con_Init, M_Init,
ExtraMaps_Init and Modlist_Init for dedicated servers either.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@233 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-26 08:16:58 +00:00
Ozkan Sezer
8126ad58a8 * keys.c (HISTORY_FILE_NAME): define simply as history.txt without
prefixing with a game directory, so that the history file would be
written into the basedir and not affected by dynamic game directory
changes.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@232 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-26 07:56:28 +00:00
Ozkan Sezer
5fdce8c9ef host.c (Host_Shutdown): Write the console command history file only if
not a dedicated server. Same for shutting down the CDAudio and sound
subsystems.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@231 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-26 00:31:12 +00:00
Ozkan Sezer
d96f32d4b8 keys.c (History_Init): Made global again.
(History_Shutdown): Likewise.
keys.h: Added prototypes for History_Init and History_Shutdown.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@230 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-26 00:15:22 +00:00
Ozkan Sezer
ad8f2e7a7b * keys.c (History_Init): Make it static. Tidy-up its formatting.
(History_Shutdown): Likewise.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@229 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-25 23:55:41 +00:00
Steven
5a273f0a99 Add Bakers/Ezquakes persistent history feature
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@228 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-25 13:32:49 +00:00
Ozkan Sezer
42c47095a1 net_udp.c, net_wins.c, net_wipx.c: Add more informative debug messages.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@227 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-22 18:11:00 +00:00
Ozkan Sezer
bfe38b58b4 net_wins.c (WINS_GetLocalAddress): Make sure buff is null terminated.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@226 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-22 18:09:02 +00:00
Ozkan Sezer
506774e2ad net_wins.c (WINS_Init): Fix error return value as INVALID_SOCKET.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@225 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-22 18:05:43 +00:00
Ozkan Sezer
132f3a8542 * console.h (Con_DebugLog): Add prototype.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@224 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-22 11:02:13 +00:00
Ozkan Sezer
d098087606 Reorganize files for platform-specific code:
* sys_sdl_win.c: Copied from sys_sdl.c. Windows-only. Remove unix code.
(Sys_Init): New procedure. Call AllocConsole() and get input and output
handles for dedicated servers.
(Sys_ConsoleInput): Add a windows version.
(Sys_Error): Adjust for the allocated console and use windows api.
Adjust message output. Remove the console timeout, doesn't work somehow.
Just display the console for 3 seconds and then exit. Rely on SDL that
it redirects/logs the stdout/stderr to files.
* sys_sdl_unix.c: Rename from sys_sdl.c. Unix-only. Remove windows code.
(Sys_Init): New procedure.
(Sys_Error): Remove Windows-oriented dedicated server specific code.
Adjust message output.
* sys_sdl.c: Delete.
* sys.h (Sys_Init): Add prototype.
* main_sdl.c (main): Call Sys_Init().
* pl_linux.c (PL_ErrorDialog): Remove terminal printing which Sys_Error
already does.
* pl_osx.m (PL_ErrorDialog): Update from uhexen2.
* pl_win.c: Make icon handle static. whitespace and formatting tidy-up.
* Makefile, Makefile.darwin, Makefile.w32, Makefile.w64: Adjust for the
sys_sdl.c name change to sys_sdl_unix.c and sys_sdl_win.c.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@223 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-22 11:01:24 +00:00
Ozkan Sezer
79d6d5cf5a * net_udp.c (UDP_Read): Remove the get_qsockaddr() helper which came from the
old fitzsdl port, and use the struct qsockaddr *addr argument with typecasting
as in original quake.
(get_qsockaddr): Remove.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@222 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 16:23:06 +00:00
Ozkan Sezer
5a4f294463 * net_udp.c (UDP_Init): Fix Con_SafePrintf() call.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@221 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 16:17:17 +00:00
Ozkan Sezer
01d0107869 net_udp, net_wins, net_wipx network drivers update:
- do not try to set the quake hostname to the machine name if it isn't set.
- use the newly added unix/windows socket api compatibility macros from
net_sys.h: using just an int as the socketfd wasn't a problem without win64
support: the windows SOCKET type is not only unsigned but may actually be
wider (uintptr_t, which is 8 bytes on win64).


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@220 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 15:24:40 +00:00
Ozkan Sezer
9bf3296c08 net_sdlnet.c: reverted parts of rev. 197/198.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@219 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 13:27:30 +00:00
Ozkan Sezer
d1c4f8d602 net_main.c: more trivialities.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@218 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 12:27:30 +00:00
Ozkan Sezer
2bed6c79c9 net_bsd.c, net_dgrm.h, net_loop.c, net_loop.h, net_sdl.c, net_win.c: more trivialities.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@217 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 12:20:25 +00:00
Ozkan Sezer
dd05f2d23b * host_cmd.c, menu.c, sv_main.c: Include net_sys.h (for net_defs.h).
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@216 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 11:50:21 +00:00
Ozkan Sezer
92481933c5 * Makefile, Makefile.darwin, Makefile.w32, Makefile.w64: Build changes:
The SDL_net driver is now disabled by default and platform-specific network
drivers will be used. To compile for SDL_net, a command like "make SDLNET=1"
must be used, in which case a new preprocessor macro _USE_SDLNET will be
defined in the CFLAGS. For windows targets when not using SDL_net, WINSOCK2
is added as another option: A command line like "make WINSOCK2=1" will enable
WinSock2 api and a new preprocessor macro _USE_WINSOCK2 will be defined in
the CFLAGS. Or, a command line like "make WINSOCK2=0" will disable WinSock2
api and the old WinSock 1.1 api will be used instead. For Win64, WinSock2 is
enabled by default. For Win32, WinSock 1.1 is the default api.
* net_bsd.c, net_dgrm.c, net_loop.c, net_main.c, net_sdl.c, net_sdlnet.c,
net_udp.c, net_win.c, net_wins.c, net_wipx.c: Use the newly added net_sys.h
header. The sys_socket_t type is not in use, yet.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@215 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 11:10:38 +00:00
Ozkan Sezer
695de2626a * arch_def.h, net_sys.h, wsaerror.h: New headers, adapted from uhexen2.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@214 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 10:55:21 +00:00
Ozkan Sezer
269be1c938 net_defs.h (net_driver_t): Removed the controlSock member. It is not used
for any purpose in either of Loop, Datagram or Serial drivers. It used to
be assigned the value returned by the Init() procedure of the relevant
driver which is either 0 for success or -1 for failure, therefore there is
no purpose to it at all.
net_main.c (NET_Init): Removed the controlSocket var and adjusted for the
net_driver_t change.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@213 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 10:50:21 +00:00
Ozkan Sezer
2362229246 net_main.c: made static variables and functions static. formatting tidy-ups.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@212 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 10:41:34 +00:00
Ozkan Sezer
6f88083fd3 net_dgrm.c: made the statistic counter variables static. same for the
testPollProcedure and test2PollProcedure varibles and StrAddr, NET_Ban_f,
SendMessageNext, ReSendMessage, PrintStats and NET_Stats_f functions.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@211 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 10:16:58 +00:00
Ozkan Sezer
e0f77e3510 net_dgrm.c: made the packetBuffer struct static.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@210 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 10:03:10 +00:00
Ozkan Sezer
efde005b7f * common.c: Renamed the empty Test_f function of johnfitz to FitzTezt_f.
Renamed its associated console command to fitztest.
* net_dgrm.c: Renamed back Net_Test_f to Test_f. Added back the test,
test2 and ban console commands.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@209 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 09:58:12 +00:00
Ozkan Sezer
5475d36f5f * net_dgrm.c: changed the types of banAddr and banMask to struct in_addr.
changed the type of testAddr in _Datagram_CheckNewConnections() to in_addr_t.
a little formatting tidy-up.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@208 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 09:45:24 +00:00
Ozkan Sezer
ca7aa6c733 * net_defs.h, net_udp.c, net_wins.c, net_wipx.c, net_sdlnet.c: prefixed
the members of qsockaddr structure with a "q".


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@207 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 09:20:32 +00:00
Ozkan Sezer
56d6aa3899 * net_udp.c: Changed broadcastaddr type to struct sockaddr_in.
* net_wins.c: Likewise.
* net_wipx.c: Changed broadcastaddr type to struct sockaddr_ipx.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@206 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 09:00:56 +00:00
Ozkan Sezer
79154d12ca * net_win.c, net_wins.c, net_wipx.c: warning and compilation fixes.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@205 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-20 20:50:27 +00:00
Ozkan Sezer
febb164f0f * net.h: separated the functions and data exported through net.h into two:
net.h now holds all public exports and the new net_defs.h holds the exports
only required by the net layer. besides the net_* files, host_cmd.c and
sv_main.c are the only reasonable foreign importers of net_defs.h: they
require accessing the qsocket_s structure members. The only one that does
not fit is menu.c needing some net exports, but it may be properly handled,
later on.
* net_defs.h: New header.
* host_cmd.c: Include net_defs.h.
* menu.c: Likewise.
* net_bsd.c: Likewise.
* net_dgrm.c: Likewise.
* net_loop.c: Likewise.
* net_main.c: Likewise.
* net_sdl.c: Likewise.
* net_sdlnet.c: Likewise.
* net_udp.c: Likewise.
* net_win.c: Likewise.
* net_wins.c: Likewise.
* net_wipx.c: Likewise.
* sv_main.c: Likewise.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@204 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-20 17:21:10 +00:00
Ozkan Sezer
c418e8e05f from uhexen2:
* net_dgrm.c (Datagram_Init): Datagram_Init() must return -1 if it couldn't
initialize any drivers.
* net_main.c (): dedicated servers must error out if no network drivers are
available.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@203 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-20 15:33:45 +00:00
Ozkan Sezer
09c70daa38 * net_main.c: added commentary on the driver checks in the code.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@202 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-20 15:19:58 +00:00
Ozkan Sezer
0ea2624976 net_main.c (NET_SendToAll): Really change all occurances of state2 to msg_sent.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@201 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-20 15:06:26 +00:00
Ozkan Sezer
a32d9f11bc * net_main.c: Fix NET_SendToAll() so that it really skips non-connected
clients. While we're at it, change the type of the blocktime argument
to double (the comparison is against a double.) Rename the cryptic
state1 and state2 variables to something more indicative of thei
purpose, ie. msg_init and msg_sent. from uhexen2.
* net.h, host.c, sv_main.c: Adjust for the NET_SendToAll() argument type
change.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@200 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-20 15:00:57 +00:00
Ozkan Sezer
ccbabac1c5 * net_udp.c: Changed myAddr type to in_addr_t.
* net_wins.c: Changed myAddr type to u_long.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@199 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-20 13:10:52 +00:00
Ozkan Sezer
d5f8c1d7b6 * net_sdlnet.c: Pass "localhost" instead of NULL to SDLNet_ResolveHost().
added some remarks about missing functionality in SDL_net.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@198 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-20 12:50:51 +00:00
Ozkan Sezer
c026da1140 * net_sdlnet.c: Added ASSERT_SOCKETID for paranoid debugging purposes,
disabled by default. Made socket_id() to work in two passes, once for
looking for a match and the next for looking for an empty slot in the
net_sockets[] array. Made it to Sys_Error if there are no empty slots.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@197 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-20 11:05:28 +00:00
Ozkan Sezer
9940a1ef02 Some more tidy-up and minor fixing in net stuff. Largely trivial. Also
added winquake.h.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@196 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-20 10:03:05 +00:00
Ozkan Sezer
2740f44b92 * gl_vidsdl.c, in_sdl.c, main_sdl.c, net_sdlnet.c, pl_linux.c, pl_osx.m,
pl_win.c, sys_sdl.c: Explicitly include SDL.h in the SDL source files. At
present, quakedef.h already includes SDL.h you may never know what would
happen in the future.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@195 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-19 22:50:48 +00:00
Ozkan Sezer
58784476dc * input.h: Removed the SDL_MAJOR_VERSION guards around BuildKeyMaps() and
Key_Map() prototypes. Made Key_Map() to accept void* argument instead of
SDL_KeyboardEvent* so that the code can compile even without SDL.
* in_sdl.c (Key_Map): Adjusted for argument type change with proper cast
to SDL_KeyboardEvent*. The assembler output is the same as before.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@194 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-19 22:45:18 +00:00
Ozkan Sezer
ff422a8af3 Makefiles: Removed an obsoleted comment. Added objects for platform-specific
network drivers in commented out form.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@193 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-19 20:15:21 +00:00
Ozkan Sezer
9c8e8bfcfd * net_wipx.c, net_wipx.h: added from Fitzquake-0.85 source.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@192 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-19 20:07:04 +00:00
Ozkan Sezer
5b0a76cfd2 net_udp.h: Renamed all function argument names as socket to socketid.
net_udp.c: Renamed all function argument names as socket to socketid.
Replaced the inet_addr("127.0.0.1") call with htonl(INADDR_LOOPBACK).
Replaced qboolean _true with int _true.
net.h: Renamed the OpenSocket and CloseSocket function pointers to
Open_Socket and Close_Socket.
net_dgrm.c: Adjusted for Open_Socket and Close_Socket change.
net_sdlnet.c: Made some functions static.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@191 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-19 18:20:22 +00:00
Ozkan Sezer
ce25b2ce89 * net_udp.c: more minor fixes and tidy-ups.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@190 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-19 17:04:04 +00:00