Commit graph

1742 commits

Author SHA1 Message Date
Bill Currie
f753dd82ae put \n on some error messages 2002-08-15 19:06:21 +00:00
Bill Currie
141df55965 zap some FIXMEs 2002-08-14 20:01:23 +00:00
Bill Currie
8adad57941 Make the cbuf api use a supplied cbuf rather than allocating its own. Kills
a FIXME and (Closes: #32)
2002-08-14 18:45:09 +00:00
Bill Currie
1a0cf8d1f4 remove some redundant/incorrect code 2002-08-14 06:28:38 +00:00
Bill Currie
7ed7938b1c get colored lighting working reasonably well 2002-08-14 05:45:50 +00:00
Brian Koropoff
513b5737f9 Got indexing into variables working and cleaned up variables a bit.
Partially translated zoom.gib into the new language, but it isn't done yet.
2002-08-14 05:28:07 +00:00
Jeff Teunissen
87fd1adadb Enable compiling the null plugin by default. 2002-08-14 05:16:11 +00:00
Jeff Teunissen
2037db210c whitespace. 2002-08-14 05:12:57 +00:00
Bill Currie
2abaf27cdc attempt to fix the dark models at centers of dlights 2002-08-12 15:36:52 +00:00
Bill Currie
8e97d6279a first stab at colored alias model lighting 2002-08-12 06:14:55 +00:00
Bill Currie
1afd2d95b2 break out the 1 vs 3 lightmap components code into separate functions and
do preliminary support for colored alias model lighting
2002-08-12 04:42:29 +00:00
Bill Currie
7e4e294089 fix the unlit models in full light bug 2002-08-12 02:05:45 +00:00
Bill Currie
4123d74e5e don't segfault when a surface uses the `null' texture (r_notexture_mip) 2002-08-09 06:07:25 +00:00
Bill Currie
ff8ea15c09 solaris compile fixes 2002-08-09 04:06:17 +00:00
Brian Koropoff
0390fe22ce Added tree variables (blah.1, blah.2, blah.1.foobar, etc), global variables,
made var substitution more robust, and began adding proper comments to
the code.
2002-08-08 09:20:00 +00:00
Ragnvald Maartmann-Moe IV
30012cc753 Fix K_RCTRL handling. 2002-08-08 05:53:58 +00:00
Bill Currie
cbde41c669 damnit! 2002-08-08 04:41:41 +00:00
Bill Currie
3baec9e856 clean out the dead mtex code 2002-08-08 04:27:49 +00:00
Bill Currie
0963c2476d improved server logging. "logfile" is gone from qw-server to be replaced
with "sv_logfile" and thus giving nq-server logging as well.
2002-08-07 18:46:53 +00:00
Bill Currie
c05db51069 add Qputs 2002-08-07 18:43:35 +00:00
Bill Currie
ca92e5885f part of the macroizing 2002-08-07 18:21:36 +00:00
Bill Currie
e171146582 Make Sys_Error repeat it's message to stderr to increase the changes of the
error being seen. (Closes: #39)
2002-08-07 15:31:56 +00:00
Brian Koropoff
5c60be3a49 If and while now work, and embedded commands use backticks instead of <> now
to prevent conflicts with math expressions.  All clients and servers are set
to create buffers with the normal parser.  However, scripts ending in .gib
are now executed in a GIB buffer, and the export command can be used to
make specific GIB functions available to normal command buffers (i.e. the
console).
2002-08-07 06:17:50 +00:00
Brian Koropoff
666c3fce07 Embedded commands now work without any bugs I can detect. Next up are
loops, branching, and getting the tokenizer to give special treatment
to certain builtin functions.  But first I should get some sleep :)
2002-08-06 08:15:20 +00:00
Brian Koropoff
bdd0f69f17 Declared variable in the wrong spot. Don't know why gcc 3 accepted it. 2002-08-05 05:58:17 +00:00
Brian Koropoff
87f0f480e4 Local variables work, preparing to get embedded commands done. 2002-08-05 00:01:06 +00:00
Ragnvald Maartmann-Moe IV
f773e1fa36 Minor alias model rendering speedup. 2002-08-03 07:07:23 +00:00
Ragnvald Maartmann-Moe IV
10c3f91a24 Revert taniwha's broken-radeon workaround. 2002-08-03 07:07:00 +00:00
Bill Currie
9c08f5b169 fix a typo that caused weirdness with the lerping 2002-08-03 06:13:35 +00:00
Brian Koropoff
cf48363c6e More of GIB done: builtins, functions, various cleanups, math, etc. 2002-08-03 06:04:00 +00:00
Bill Currie
c5192540c8 remove an accidental commit 2002-08-03 01:29:26 +00:00
Chris Ison
c6217dc7a7 fix bug where -commands where executed and command buffer could be filled when key repeated 2002-08-03 00:19:41 +00:00
Ragnvald Maartmann-Moe IV
97d6f46f75 Speed up 16bit coord alias models a bit. (only one VectorScale per vertex now) 2002-08-02 18:07:53 +00:00
Brian Koropoff
3c3844d2ac Checked in the beginnings of GIB mark III and modified qw-server to use
it for its console.
2002-08-02 04:07:25 +00:00
Bill Currie
4bd940e619 d'oh 2002-08-02 03:26:55 +00:00
Bill Currie
5f4c21d796 casting from (signed) char to int does not one whit of good towards avoiding
the problems associated with signed chars being used to index arrays. must
cast to usigned char so the bit expansion is done on an unsigned value to
avoid the sign extension.
2002-08-02 03:22:32 +00:00
Bill Currie
2ce0f2ded2 we now require modern autoconf (2.52+), automake (1.6+) and libtool (1.4+).
This gives us a bunch more flexibility. plugins no longer have the "lib"
prefix or the version suffix, they're now installed in
$fs_sharepath/QFplugins,, builds should take much less time (in general,
only one of pic or non-pic versions are build), bins and libs can have
individual CFLAGS
2002-08-01 19:49:10 +00:00
Bill Currie
612f5c2a31 attempt to fix the win32 server input 2002-08-01 04:49:16 +00:00
Brian Koropoff
4e85063b52 Added support for execution stacks, misc. cleanups. 2002-08-01 02:42:19 +00:00
Brian Koropoff
439f9838d3 Whoops, missed some stuff that needed to be in idparse.h 2002-07-31 22:13:15 +00:00
Brian Koropoff
a93b221272 Split off the old console parser into idparse.[ch] and prepared the cbuf
struct and support functions for GIB mark III.

Oh yeah, I'm back.
2002-07-31 22:03:53 +00:00
Bill Currie
4b9382d4a8 nuke GGI_CFLAGS (never set) 2002-07-31 18:51:34 +00:00
Bill Currie
0bb6769204 fix the non-parsing of quakeforge.conf 2002-07-31 06:06:44 +00:00
Bill Currie
ad6e025a91 take cmd.[ch] back to basics. the gib code is temporarily gone pending
renovations. cmd_source handling is a little hacky in nq, but it's working.
2002-07-31 05:19:03 +00:00
Bill Currie
021decc7bd start on the cleanup of cmd.c. these aren't used yet, but the parsing is
working
2002-07-30 17:08:53 +00:00
Bill Currie
46ee46fdc6 dead code removal 2002-07-30 04:55:33 +00:00
Bill Currie
b9d364d7b7 whitespace clean up 2002-07-30 02:06:37 +00:00
Bill Currie
e0aa405e76 remove some dead code 2002-07-30 01:56:07 +00:00
Bill Currie
5fd916a0da looped oggs now work so long as they have a CUEPOINT= comment 2002-07-29 22:25:32 +00:00
Bill Currie
d00ed9619f give dstring_adjust a prototype and fix up some whitespace 2002-07-29 19:52:19 +00:00
Bill Currie
0514d37458 don't accept absurdly large vertex arrays 2002-07-27 16:46:58 +00:00
Bill Currie
d04eeb3ba2 get -wgl working again 2002-07-27 06:43:28 +00:00
Bill Currie
01228a8be0 set the file mode before seeking 2002-07-27 06:42:52 +00:00
Bill Currie
b3d6875e61 _vsnprintf doesn't like a null pointer in windows 2002-07-27 02:00:06 +00:00
Bill Currie
587ac5670b using R_FLOAT for setting individual fields of the return vector ain't so
good a thing to do.
2002-07-25 14:58:02 +00:00
Ragnvald Maartmann-Moe IV
587de27849 Another step towards QSG2 compliance. 2002-07-25 14:43:36 +00:00
Ragnvald Maartmann-Moe IV
3c7d65a798 Whitespace. 2002-07-25 14:42:41 +00:00
Ragnvald Maartmann-Moe IV
4ed68266ea Speedup when r_waterripple = 0, and small speedup to texture coordinate calculation. 2002-07-25 14:01:36 +00:00
Bill Currie
2f57f95783 don't show the single player menu line 2002-07-25 05:33:16 +00:00
Bill Currie
51e4cad3fe get Draw_SubImage doing transparencies 2002-07-25 05:04:22 +00:00
Bill Currie
51b189f56a make Draw_SubPic do transparent pics 2002-07-25 04:30:50 +00:00
Bill Currie
de22355371 use P_* for params and R_* for return values in builtins code 2002-07-24 21:42:33 +00:00
Bill Currie
defcedec49 give access to Draw_SubPic 2002-07-24 21:39:03 +00:00
Ragnvald Maartmann-Moe IV
d3fc8c5fb6 No need for function pointers on R_AddDynamicLights_*, they are never called from outside the R_BuildLightMaps_* function that matches them.
Nice spotting, taniwha!
2002-07-24 15:30:28 +00:00
Ragnvald Maartmann-Moe IV
85c7e43aef Split lightmaps off from surface drawing. 2002-07-23 19:57:47 +00:00
Ragnvald Maartmann-Moe IV
227da6afba Change pr_boundscheck default to 0. *grmbl* 2002-07-21 23:35:36 +00:00
Bill Currie
acf9ce392c move pakfile.[ch] into libQFutil and make quakefs.c use it instead of its
own code. This also removes the evil pak file count limit :)
2002-07-21 06:11:28 +00:00
Bill Currie
bff6291bfb don't need to force developer now 2002-07-16 22:06:52 +00:00
Bill Currie
ac1392eb74 object.r:
define __obj_exec_class, obj_msgSend and obj_msgSend_super for the way
	qfcc now handles these defs
pr_edict.c:
	PR_ValueString now checks that the function is valid before trying to
	print its name.
class.c:
	__obj_exec_class is now extern
linker.c:
	fix more mangled relocs
method.c:
	obj_msgSend and obj_msgSend_super are now extern
qfcc.c:
	fixes so obj_module_t doesn't get zapped
type.c:
	fixes so obj_module_t doesn't get zapped
2002-07-16 19:03:56 +00:00
Bill Currie
35d224f1da a little more info and force developer on for now 2002-07-16 15:39:49 +00:00
Bill Currie
34fa421638 whitespace 2002-07-13 03:41:33 +00:00
Ragnvald Maartmann-Moe IV
1f8a1d613f Fix r_particles_nearclip being forced to max. 2002-07-08 00:05:33 +00:00
Ragnvald Maartmann-Moe IV
d297c2b3a3 Colormod & alpha for brushmodels, excluding skypoly emittors. 2002-07-07 06:15:36 +00:00
Ragnvald Maartmann-Moe IV
edc4e27124 Minor order fixup. 2002-07-07 02:34:48 +00:00
Bill Currie
1337b8bd3d be a little more verbose with the "Bad surface extents" error. 2002-07-03 21:03:49 +00:00
Jeff Teunissen
065ec7ff39 Clean up the "fxMesa" error message so it makes more sense, and so most people
will actually see it if they need it.
2002-07-03 06:31:03 +00:00
Ragnvald Maartmann-Moe IV
e1854315ac Clean out DDActive, except from -mgl, which isn't supported ATM. Clean up vid_mgl.c comments and dead code a bit. 2002-07-02 20:34:51 +00:00
Bill Currie
91dc5b20db nuke MSG_ReadChar. Other than the sign extention, it's redundant and nothing
a suitable typecast can't take care of.
2002-07-02 19:15:29 +00:00
Ragnvald Maartmann-Moe IV
5e5fdb7bc2 Kill MSG_WriteChar. 2002-07-02 19:13:53 +00:00
Bill Currie
e5d8781150 win32 compile fixes. still have problems with DDActive, but Despair's going
to look at that.
2002-07-02 18:45:50 +00:00
Ragnvald Maartmann-Moe IV
a49177c605 Merge a few more lines into queue_character, and prepare for optimizing gl Draw_nString. 2002-06-28 17:47:26 +00:00
Bill Currie
1828cbff5a get the type for getProcAddress right 2002-06-28 17:15:49 +00:00
Ragnvald Maartmann-Moe IV
a6d999dfa4 Speed up most of the MSG_Write* functions by reducing the number of times SZ_GetSpace gets called. 2002-06-28 04:48:07 +00:00
Ragnvald Maartmann-Moe IV
4e467ac8df Whitespace. 2002-06-27 18:50:26 +00:00
Bill Currie
e77d730054 windows really sucks 2002-06-27 16:37:16 +00:00
Ragnvald Maartmann-Moe IV
fd1ded5c4a Add r_nearclip and r_particles_nearclip. Also put some limits on r_farclip. And fix id's insane max and min float, and some minor improvements in frustum setup in GL. 2002-06-26 22:20:12 +00:00
Ragnvald Maartmann-Moe IV
e6e11af426 Move the contents of gl_funcs.c out of the renderer, and into targets where they belong. Also some cleanups. -sgl target is temporarily broken, all others should work. 2002-06-24 21:35:37 +00:00
Chris Ison
70d8026067 Removing -3dfx's dependancy on clide 2002-06-24 15:56:01 +00:00
Ragnvald Maartmann-Moe IV
c8bc5dfb4c QSG2 glows almost working. Plus lots of typos killed. 2002-06-18 21:41:24 +00:00
Ragnvald Maartmann-Moe IV
c25cfe6c9e A couple extra glFinishes a frame just aren't good for performance, even if they are a handy workaround for taniwha's text rendering bug... 2002-06-18 15:40:30 +00:00
Bill Currie
1486c97b8f move the vertex setup and va flushing code into inline functions, killing a
lot of duplicate code. Performance is not harmed :)
also some whitespace
2002-06-18 04:13:46 +00:00
Bill Currie
717127e0d8 don't print ! on uninitialized global defs that are the correct type for
the instruction
2002-06-17 05:31:08 +00:00
Bill Currie
59dba829f2 fix an out-by-one error caused by over-optimisation of floats. 2002-06-17 00:26:13 +00:00
Bill Currie
2264c28310 pr_strings:
remove a bogus 0x which caused confusion in an error message
def.c:
	vector fields still need an extra 3 globals for their component fields
2002-06-16 05:24:58 +00:00
Bill Currie
76704e9daf the other part of the rename 2002-06-16 04:22:51 +00:00
Ragnvald Maartmann-Moe IV
00f5d82a86 Make wizard spike hits visible, plus a couple minor cleanups. 2002-06-15 10:54:26 +00:00
Ragnvald Maartmann-Moe IV
2a4f2a77fb Whitespace. 2002-06-15 10:52:14 +00:00
Bill Currie
930ba48862 other than sounds that are ment to loop not looping (due to losing that info
when converting to ogg (I've got some ideas on that)), ogg/vorbis support is
working. Doesn't seem to be too much of a load-time hit.
2002-06-15 05:43:56 +00:00
Bill Currie
ddf4f257f4 *sigh*, sometimes I hate automake 2002-06-15 03:20:59 +00:00
Bill Currie
9f1e6f9c82 make the vorbis support mostly work. qf segs in Cache_TryAlloc when loading
a map, but I think that's related to some of our other sound resample bugs.
2002-06-14 22:55:57 +00:00
Bill Currie
f2f6041e05 at long last, vorbis support :) load time only, though, so not yet suitable
for huge samples.
Also, change the file search order so that .gz is checked before the
requested file.
2002-06-14 20:36:28 +00:00
Bill Currie
b65c96ad99 don't call draw_z_sky_polys for modes that don't need it 2002-06-14 19:25:32 +00:00
Ragnvald Maartmann-Moe IV
df55030fa8 Fix alias bounding box sizes, so that large critters don't disappear when at edge of view frustrum...
(Taken and debugged from tutorial on quakesrc.org)
2002-06-14 09:33:37 +00:00
Ragnvald Maartmann-Moe IV
eaf0f90c2f Undo thinko. 2002-06-14 06:23:11 +00:00
Ragnvald Maartmann-Moe IV
c7432caf2e Fixes to shadow rendering, plus get QSG scale working for alias models. Which breaks viewmodel rendering until we figure out how that is escaping getting scale set. 2002-06-14 06:08:45 +00:00
Ragnvald Maartmann-Moe IV
f12af8a3d4 Minor cleanup/optimization of sprite model rendering. 2002-06-14 06:06:38 +00:00
Ragnvald Maartmann-Moe IV
463ac44d9f Minor optimization for shadows, and make translucent objects have shadows matching their alpha. 2002-06-14 04:14:52 +00:00
Ragnvald Maartmann-Moe IV
942bf55c06 Flush console text before rendering menus, and a tiny optimization to fullscreen blend rendering in GL. 2002-06-13 22:51:43 +00:00
Bill Currie
e774943f24 va.[ch]:
new va function: nva which returns a strduped buffer
expr.c options.c:
	use nva instead of strdup (va (...
struct.c type.c:
	make type encoding work properly for structs
2002-06-13 16:39:33 +00:00
Brian Koropoff
0d2bd0ca77 Finally added a file_read command. 2002-06-13 05:58:48 +00:00
Ragnvald Maartmann-Moe IV
10d7d17fcc Use vertex arrays for text. Another 1-3% speedup. 2002-06-13 05:24:52 +00:00
Bill Currie
88fc0be127 arrays are /almost/ working again 2002-06-12 22:37:18 +00:00
Ragnvald Maartmann-Moe IV
87741d2b90 Tweak r_firecolor to reduce haloing on rocket dlights. 2002-06-12 04:37:33 +00:00
Bill Currie
0b1d1ade73 qfprogs can now read the debug data 2002-06-11 17:24:37 +00:00
Brian Koropoff
fe48995a0c Fixed some error messages and a small bug in list.gib 2002-06-11 06:08:31 +00:00
Bill Currie
74597018ec heh, forgot to ifdef the call to R_InitVars 2002-06-10 22:52:13 +00:00
Bill Currie
3551b82a50 compile fix for when vidmode isn't available 2002-06-10 22:30:30 +00:00
Brian Koropoff
b70ffbf871 Fixed a warning message. Changed writefile to file_write. Added file_find
which searches a directory for files matching a pattern and returns a \n-
separated list.
2002-06-10 22:03:51 +00:00
Bill Currie
a7f1e1185b Patch to get oss sound working in BSD thanks to Alexander Leidinger
<Alexander@Leidinger.net>
2002-06-10 15:36:33 +00:00
Bill Currie
a4b06b1074 blah, enums and switch... (at least gcc 3.1 is warning about that again:) 2002-06-09 16:31:08 +00:00
Ragnvald Maartmann-Moe IV
9bca381c41 Remove R_Init_Entity. Never used, and probably doesn't belong in the renderer. 2002-06-07 23:38:53 +00:00
Bill Currie
5c943d4ca9 this should speed up progs a little bit 2002-06-07 19:41:13 +00:00
Bill Currie
3de07df3d2 *sigh*, I'm having a real problem this morning :P 2002-06-07 15:11:59 +00:00
Bill Currie
c0888ae8e4 I really hate the way cvs won't let you undo a poorly thought out removal 2002-06-07 15:09:57 +00:00
Bill Currie
ebfdbd9285 the fpu manipulation stuff seems to be better off in the one place that
actually uses it...
2002-06-07 15:09:20 +00:00
Bill Currie
4e07810f0d a little cleanup of unneeded lines 2002-06-07 14:44:02 +00:00
Ragnvald Maartmann-Moe IV
ceb73449bb Order of operations cleanup, QSG2 alpha is now colormod[3] in entities. 2002-06-07 11:25:47 +00:00
Ragnvald Maartmann-Moe IV
46949068a2 Check return value on R_AllocDlight. Small optimization, people cutting r_dlight_max heavily should like it. 2002-06-05 22:07:38 +00:00
Ragnvald Maartmann-Moe IV
0552d31b0b Minor optimization. 2002-06-05 06:46:21 +00:00
Ragnvald Maartmann-Moe IV
0bce2d0f2e Add QSG2 colormod, alpha, and scale for sprites. Probably not used by anything, but there you go. 2002-06-05 05:56:13 +00:00
Bill Currie
0f9adc182d win32 compile fixes 2002-06-04 16:17:10 +00:00
Jeff Teunissen
1ba994fd13 This is a test hack, to see if chopping off some of the integer realtime's
data helps in lengthening the amount of time a server can be up without Weird
Stuff(tm) happening.
2002-06-03 23:29:34 +00:00
Bill Currie
4039452297 more sys cleanup. server consoles may be broken for non-curses. 2002-06-03 19:11:48 +00:00
Bill Currie
0f94fd64e7 blah, forgot to #ifdef them :P 2002-06-03 17:26:09 +00:00
Bill Currie
54b299a7e2 set the type and size of the fpu control word vars 2002-06-03 17:04:47 +00:00
Bill Currie
d7c7ac7891 don't add -version-info for static plugins 2002-06-03 16:34:46 +00:00
Bill Currie
b4e8e0750c well, that's one way to confuse anybody
fixes the floating point exception
2002-06-03 07:23:41 +00:00
Bill Currie
ad08ff7492 there, finally got it right. ugh 2002-06-03 06:01:19 +00:00
Bill Currie
3ffec9e8c1 d'oh, forgot to set up my GOT base register in all the functions :P 2002-06-03 04:58:42 +00:00
Bill Currie
07c7c05f64 finish making sys_ia32.S PIC friendly 2002-06-03 04:06:25 +00:00
Bill Currie
f00e892d4e mingw gcc 3.1 is freaking weird 2002-06-02 05:27:32 +00:00
Bill Currie
321dbc87d2 missed a couple of global accesses 2002-06-02 04:07:18 +00:00
Brian Koropoff
13d6898fe0 Changed aliases to be handled by the command registering system in
preparation of separating GIB into its own module.  Command-related
functions will stay in util, but the buffer handling code and interpreter
will be moved out of cmd.c.
2002-06-01 22:13:14 +00:00
Bill Currie
9630a23391 more Sys_* cleanup 2002-06-01 03:00:13 +00:00
Bill Currie
fc0bb7e175 move Sys_DebugLog 2002-05-31 22:50:43 +00:00
Bill Currie
55fcead77c look for the .this field but don't complain if not found 2002-05-31 17:21:38 +00:00
Bill Currie
a8e177652a initialize the meta class super class pointer correctly 2002-05-31 14:58:42 +00:00
Bill Currie
2ee3aec19b reverse the order of linking 2002-05-31 06:52:48 +00:00
Bill Currie
ea3c6995fd actually /use/ method_list.method_next and chain the class methods onto the
instance methods for root classes.
2002-05-31 06:01:47 +00:00
Brian Koropoff
d85a238af2 Modified cmd.c to prepare for more file access functions and changed
the bind system to keep a restricted flag on binds to prevent the
server from executing restricted commands by binding them to keys.
2002-05-31 05:38:06 +00:00
Bill Currie
381bdb2323 it seems some GL libs can return a null extension list (ie, null pointer) 2002-05-31 03:38:01 +00:00
Bill Currie
9134e05aec return lists of multiple matching elements 2002-05-30 21:56:57 +00:00
Bill Currie
8a762bdaaf hack to work around the gl lighting fix breaking sw 2002-05-30 21:39:21 +00:00
Bill Currie
4e67f8d155 remove an extern 2002-05-30 18:38:57 +00:00
Bill Currie
a7b5b56a2c implement Z_Realloc, PR_Zone_Realloc and pr_obj_realloc 2002-05-29 20:58:53 +00:00
Brian Koropoff
8025dfd2ce "runLength-- > 0" made runLength negative, even though the test failed.
Skins should work again.
2002-05-28 23:34:02 +00:00
Bill Currie
9b7b059d5c speed up LoadPCX a bit 2002-05-28 06:05:36 +00:00
Bill Currie
bebf3f9599 massive speedup to noise_diamondsquare (not that it /really/ matters:) 2002-05-28 05:34:06 +00:00
Bill Currie
7a3b63418b `adequate' temporary fix for r_lightmap_components 1 2002-05-28 04:11:40 +00:00
Bill Currie
f3132162ae speedup r_lightmap_components 3 by ~4.2% in null-render 2002-05-28 03:49:13 +00:00
Bill Currie
101d38bd0c two win32 fixes for gcc 3.1 2002-05-28 03:33:03 +00:00
Bill Currie
acdd37b381 this seems to give ~2.9% speed boost to overkill for null-render 2002-05-28 00:04:01 +00:00
Bill Currie
6fbf011073 rpm building fixes 2002-05-27 20:28:10 +00:00
Ragnvald Maartmann-Moe IV
802bcc2762 Another 0.657% speedup for greyscale lighting. Unfortunately, at a price of considerable code duplication. But this is necessary for other planned changes. 2002-05-26 08:56:48 +00:00
Ragnvald Maartmann-Moe IV
6c8e2c24aa *grumbles about old gcc* 2002-05-26 07:07:10 +00:00
Brian Koropoff
75ec7de2f5 This better actually fix the lightmap code. 2002-05-25 21:55:34 +00:00
Brian Koropoff
ddd96312b1 Removed useless dereferencing. With any luck I understand what despair's
code is supposed to do this time.
2002-05-25 20:04:42 +00:00
Ragnvald Maartmann-Moe IV
f1f942dfd1 Hacking my way towards working r_lightmap_components 1.
Users of r_lightmap_components 1, should set `int mod_lightmap_bytes = 1` at the start of `quakeforge/libs/models/brush/gl_model_brush.c`.
2002-05-25 15:29:22 +00:00
Ragnvald Maartmann-Moe IV
b7900a2c43 Undo snax's order of operation breakage, and fix the typo that broke lightmap merging for r_lightmap_components 1.
The real problem with greyscale lighting, is in brush model loading. It'll probably take me a while to sort it out, since taniwha didn't get to it before taking off for the weekend. Sorry...
2002-05-25 15:01:23 +00:00
Brian Koropoff
11a14c077e Small order-of-operations fix. 2002-05-24 23:32:34 +00:00
Ragnvald Maartmann-Moe IV
2fe76b39e7 Smarter lightmap handling code. Still considerable optimization possible, at expense of duplicate code. 2002-05-24 17:12:41 +00:00
Bill Currie
25ebab2e09 only call Cbuf_ExecuteStack when the buffer has anything to execute. this
gives an ~1.1% boost to overkill.
2002-05-23 05:42:51 +00:00
Bill Currie
33e055209e Semi-major (more than minor:) progs convenience macro cleanup. There will
be more to come.
2002-05-22 22:35:37 +00:00
Bill Currie
ea36fceec5 fix a few missed initializations 2002-05-22 21:45:15 +00:00
Bill Currie
34ec521198 vararg functions can now be imlemented in qc using @argc (number of params
passed through ...) and @argv (array of vectors, one for each ... param)
2002-05-22 20:43:29 +00:00
Bill Currie
018b3ae536 more runtime implementation 2002-05-22 19:02:26 +00:00
Bill Currie
43e609241c initial stab at supporting most of the obj runtime 2002-05-22 17:32:44 +00:00
Bill Currie
33daf1e724 provide temporary stubs for most of Object's methods 2002-05-21 23:39:21 +00:00
Bill Currie
3815d4be7e blah, unitialized variable 2002-05-21 22:27:41 +00:00
Bill Currie
05c8cad2d1 grr, really should make compat.h include string[s].h
also, partially implement the messaging functions
2002-05-21 22:13:05 +00:00
Bill Currie
9820c5d45a start working in the obj runtime. any and all functions named ".ctor" will
be run in the order found.
2002-05-21 21:29:49 +00:00
Bill Currie
a8c3fa8ffc correct the function names in PR_EnterFunction and PR_LeaveFunction 2002-05-21 21:14:32 +00:00
Bill Currie
1b550c80b1 finally get Sys_Error `right' 2002-05-21 21:03:46 +00:00
Brian Koropoff
25969dbad7 Added a temporary hack to make quake.rc, config.cfg, and default.cfg work
in some mods that would generate mismatched quotes otherwise.
2002-05-21 02:02:20 +00:00
Brian Koropoff
ee5d0b7a99 Added r_farclip to control the far clipping plane. 2002-05-20 05:11:12 +00:00
Brian Koropoff
347962cc33 Fixed a bug introduced by my optimizations. 2002-05-19 06:32:57 +00:00
Bill Currie
f78f921285 search for .self' before self' 2002-05-18 00:49:16 +00:00
Brian Koropoff
967d39541a Optimized GIB a bit. 2002-05-17 21:38:37 +00:00
Bill Currie
057aa61bd3 `document' the type sizes 2002-05-17 16:44:47 +00:00
Bill Currie
9d59915fdc it's a little hacky, but this might do better with keeping vid_gamma_avail
straight.
2002-05-17 03:17:33 +00:00
Brian Koropoff
4cb3a5087b Whoops. Fixed some GIB bugs. 2002-05-15 22:39:37 +00:00
Brian Koropoff
58e8a997f8 GIB: Added the writefile, legacy and eval commands and created the
beginnings of a GIB security model for console access by the server.
Fixed a bug in zoom.gib.
2002-05-15 22:14:17 +00:00
Bill Currie
8f0661f5be correct the copyright year 2002-05-14 23:07:38 +00:00
Bill Currie
6a5bbf6f0a memory allocation checking cleanup 2002-05-14 06:37:28 +00:00
Bill Currie
1e0611e156 Sys_Error now makes sure all messages are terminated with a \n 2002-05-14 06:14:53 +00:00
Bill Currie
44dcf74627 strip the \n from all(?) of the Sys_Error calls (Sys_Error itself will be
adding \n).
2002-05-14 06:12:29 +00:00
Bill Currie
91779b04f7 new tool: qfprogs. currently only disassembles progs, but the idea is for it
to become a progs oriented nm, objdump etc
2002-05-13 19:37:36 +00:00
Brian Koropoff
09366866f7 GIB segfault fix 2002-05-12 20:28:19 +00:00
Brian Koropoff
f6697e0ef0 Fixed an oversight in Cmd_FreeBuffer in GIB and made a few misc. fixes 2002-05-11 20:44:59 +00:00
Brian Koropoff
6d37a9e48a Fixed up zoom.rc, renamed it to zoom.gib. Made alias with only one
argument print the contents of that alias.  Added the sleep command,
which works like wait but pauses for a certain number of seconds.
2002-05-11 06:09:50 +00:00
Brian Koropoff
56d033efa4 Auditted cmd.h and cmd.c to fix a bug, a few bits of useless code, and to
add some preliminary comments about all the functions.  I also rearranged
a lot of the functions to be more logically grouped.
2002-05-11 03:00:14 +00:00
Brian Koropoff
3fffa26fb4 Added thread support to GIB and cleaned up escape characters yet again.
With any luck it should actually work this time.  Added the getimpulse
command so that GIB scripts can check if an impulse command is pending
before sending their own.  Fixed all the memory leaks I could find.
QuakeC and GIB seem to be clean except for maybe one or two sneaky leaks
I can't track down.
2002-05-11 00:36:12 +00:00
Bill Currie
73e6cf062c implement type encoding 2002-05-10 23:19:57 +00:00
Brian Koropoff
e4f740bf02 Buffers created for embedded commands are now marked with a special flag.
This allows Cmd_Return_f to decide which buffer it should return a value
to.  End result: you can put blocks of code with a return statement inside
an embedded command statement.  I hope nobody minded me using my
quakeforge.net account to code a bit :P
2002-05-09 20:12:12 +00:00
Brian Koropoff
4074999b9b Numerous enhancement and fixes to GIB, including index ranges, fixed
escape characters, and more.
2002-05-08 23:01:07 +00:00
Bill Currie
44f9700ed2 two spelling correctsions are remove a redundant VectorCopy 2002-04-30 16:37:11 +00:00
Bill Currie
93febb90c9 search for .gz first 2002-04-30 04:39:03 +00:00
Brian Koropoff
942b3c2744 Floating point value of fov is now used. 2002-04-29 22:03:33 +00:00
Bill Currie
08f12355c5 this /should/ fix CoolMoDee's autoconf 2.53 issues 2002-04-29 19:19:26 +00:00
Bill Currie
a1fef28b60 fix the sw32 fov caps so it maches sw and gl 2002-04-29 17:21:52 +00:00
Brian Koropoff
601736719d Fixed the use of double quotes in chat messages and removed single quotes
as an option to enclose tokens.
2002-04-29 01:04:29 +00:00
Jeff Teunissen
2711cbbe7c Don't restore gamma if it's never been initialized. :) 2002-04-28 09:03:50 +00:00
Brian Koropoff
ff901a312f Added argument-list functions to EXP with trig and inverse trig functions
to start.  More will follow.  Switched to doubles from floats and allowed
numbers with exponents to be parsed properly.  Also changed the number of
significant digits printed to 10.  Changed fov so it is now capped at 1,
not 10.  The float value of fov is now used instead of int, so more
precision can be attained at small values.
2002-04-28 08:30:54 +00:00
Bill Currie
a59e509033 Multi_key (K_COMPOSE) and Menu (K_MENU) are now supported 2002-04-27 00:25:40 +00:00
Bill Currie
a5dc496c38 support the printscr key in X 2002-04-27 00:07:47 +00:00
Brian Koropoff
7121891895 Fixed Cmd_If_f so that embedded commands work again. 2002-04-26 22:09:28 +00:00
Jeff Teunissen
411ade4ce2 Fix gamma again. Also some minor whitespace and slight code cleanup. 2002-04-26 20:25:01 +00:00
Bill Currie
ac73653741 XPutImage returns 0 for success, not error 2002-04-26 18:55:37 +00:00
Bill Currie
9399b35b02 alpha compile fix 2002-04-26 17:15:00 +00:00
Bill Currie
89f7604d40 VID_GetGamma neither compiles nor is needed :) 2002-04-25 21:54:07 +00:00
Chris Ison
54ed05e52b changed sig handling to allow for core dumps etc, like x11 and glx 2002-04-25 21:51:47 +00:00
Jeff Teunissen
b75d50d088 X11 gamma restoration now works properly for systems with a normal gamma that
uses all three components (red, green, blue).

Next up: three-component internal gamma.
2002-04-25 20:53:15 +00:00
Jeff Teunissen
c877ba7fbd System gamma is now restored properly in X11. 2002-04-25 20:28:15 +00:00
Bill Currie
45e98d80d9 redo the cvar vector reading code to produce more useful results 2002-04-25 20:08:18 +00:00
Bill Currie
ce1c2e0bd1 sort the sources list 2002-04-25 19:39:26 +00:00
Jeff Teunissen
7c134a6f95 Fix up the watervis stuff. Whoops! :) 2002-04-25 14:34:15 +00:00
Jeff Teunissen
5b069de40c Redo r_wateralpha so that it doesn't force its value based on the watervis
serverinfo. Instead, create a new cl_wateralpha float variable that is set to
r_wateralpha->value in Host_Frame, and use that float during rendering.
2002-04-25 12:51:04 +00:00
Bill Currie
da994c16e5 rewrite R_SplitEntityOnNode to be itterative rather than recursive (using
a static `stack') to avoid the function call overhead. this cuts about 40%
of the execution time from this function.

No matter what I tried, best results were obtained using __builtin_expect,
so make sure non-gcc compilers do the right thing when they encounter it.
2002-04-25 04:32:55 +00:00
Brian Koropoff
bf323c3f0a Cleaned up Cmd_Args. It is no longer uselessly built up in
Cmd_TokenizeString since I realized the code was just pulling it apart and
putting it back together.  Added Cmd_Argsu to access the unprocessed
command.  Added support for else following if in such a way that
if/else if/else structures work.  Added support for unary operators in
EXP and added the ! (not) operator.  The ifnot command will be kept
for variety.
2002-04-24 22:33:04 +00:00
Bill Currie
e4975cd675 very minor load-time optimisation 2002-04-23 17:23:18 +00:00
Brian Koropoff
7f295d61ee Added the getserverinfo command to return the value of a server info key
to GIB.  Fixed a bug in dstring_replace that was causing too much data to
be copied when the incoming string was larger than what was being replaced.
Very minor reorganization in cmd.c (1 function moved around I think).
cmd.c should probably get broken up into separate files soon.
2002-04-23 07:47:24 +00:00
Brian Koropoff
349fbf7150 Fixed a bug with escaped braces and quotes and added the strlen and streq
commands to GIB.
2002-04-22 04:23:36 +00:00
Bill Currie
4ccc9d6322 dstring.c dstring.h:
add dstring_replace. this replaces a string of lenth rlen at position
	pos with data of lenth len, growing, shrinking and shuffling data as
	appropriate. At this rate, the dstring `class' will get buffer gap
	editing capabilities :)
cmd.c:
	Cmd_TokenizeString builds cmd_active_buffer->line again.
	Cmd_Process bails out instantly if cmd_active_buffer is a legacy buffer
	and uses dstring_replace to modify the parameters in
	cmd_active_buffer->line. This last change results in drastic
	simplification (and accuracy) of the commandline reconstruction code,
	both in Cmd_TokenizeString and Cmd_Process.
2002-04-19 22:54:27 +00:00
Bill Currie
ef81af9245 the "two birds with one stone" commit
1) when /not/ building static plugins, the plugin info name is, once again,
   PluginInfo, but is still type_name_PluginInfo for static plugins. This
   allows plugins to be symlinked (highly desirable for the debian packages,
   and likely others). This also requires plugins to /not/ be loaded with
   RTLD_GLOBAL.
2) because of 1, snd_alsa_0_9 has to explicitly load libasound itself. This
   just happens to fix my segfault on shutdown in RedHat 6.2.
2002-04-19 20:08:54 +00:00
Bill Currie
e34ab5541c munmap the sound buffer when closing the device. This might help with some
hangs on shutdown.
2002-04-17 21:15:19 +00:00
Brian Koropoff
4cb89c69b2 Moved commands from bound keys into a separate buffer, changed the syntax
of for loops to be like that of C, changed math expressions to be
enclosed in #{} instead of #().
2002-04-17 07:05:43 +00:00
Brian Koropoff
fafb014bbe Oops. Fixed a stupid bug that broke having more than one embedded command
in a token.
2002-04-17 01:15:10 +00:00
Brian Koropoff
cb79de3584 Completely redid the way embedded functions are subroutines in general are
handled, meaning that execution can be paused at any time without a hitch.
Warning: This is a major change to the architecture (or lack thereof) of
GIB.  Please test for bugs!  Also, there are a few ugly bits of code that
need to be cleaned up, but that work for now.
2002-04-16 23:56:21 +00:00
Jeff Teunissen
a4f3973ef1 Add multitexture support for Alias models, and disable the multitexture
support for BSP models, until they can be fixed. gl_multitexture should now
actually be a speedup!

NOTE: Some OpenGL implementations have trouble with the texture function
used. 3Dfx Voodoo 1/2 are known to have this trouble. I don't know how to fix
this, or even if it can be fixed. :/
2002-04-16 16:51:35 +00:00
Bill Currie
55a5c39187 Turns out that on PPC, va_list is an array (effectivly typedef struct
__va_list_tag va_list[1];) which causes grief when attempting to reuse
va_list variables (eg, in vsnprintf retry loops). This is the reason for
MisterP's crashes as the pointers in va_list no longer point to valid data.

acinclude.m4:
	shamelessly steal the va_list, va_copy and __va_copy macros from
	cdda2wav but modified so AC_DEFINE includes the description (so
	acconfig.h can remain gone)
configure.ac:
	use AC_TYPE_VA_LIST, AC_FUNC_VA_COPY and AC_FUNC_VA__COPY
dstring.c:
	stash the incoming va_list args in a temp var before calling vsnprintf
	then restore them each time before retrying, but only if va_list is an
	array (hopefully this is ok for when va_list is a structure)
2002-04-15 22:17:02 +00:00
Chris Ison
347cdc5e33 some small performance optimizations with textures and animations 2002-04-15 03:26:08 +00:00
Bill Currie
49deaf2661 that wasn't meant to get checked in. it came from an aborted change to
how commands get register.
2002-04-14 22:52:52 +00:00
Brian Koropoff
c3da90fce0 You can now assign to local variables with var = value. You can also
index into variables in either substitution (i.e. $bob[25]) or assignment
(i.e. bob[25] = 'q') When using assignment into an index of a var, the
current character is removed and replace with the new value.  That means
that if the new value is longer than one character, the string will grow.
A feature that may be done in the future is indexing between two values
to get a substring, ie bob[25..30] = newstr.
2002-04-14 22:35:56 +00:00
Bill Currie
403af77038 give qc access to Cmd_Return 2002-04-14 01:25:24 +00:00
Brian Koropoff
503dab1aee The tokenizer will now not break tokens appart within quotes or braces.
This means things like echo ~{somefunc arg1 arg2} will get parsed properly
without having to enclose it in quotes.  Exported the Cmd_Return function
so that anything can return values to GIB (such as quakec).
2002-04-14 01:12:19 +00:00
Bill Currie
b4c8546169 add the keyhelp command. think xev 2002-04-13 04:56:00 +00:00
Bill Currie
8220ddd83d and the command api to csqc and use it to bind menu_load and menu_save. F2
and F3 now work in nq :)
2002-04-12 17:19:49 +00:00
Bill Currie
a974eb2333 move buildnum.c to util and make nq and qw init more similar 2002-04-11 18:42:55 +00:00
Bill Currie
ba9ad15ebd it he's if I understand that Draw_CachePic puts the pic into the cache... 2002-04-10 06:56:25 +00:00
Bill Currie
0855e018dd d'oh, bloody gcc 2.95 builtin prototypes 2002-04-10 01:38:21 +00:00
Bill Currie
15e17acc1c the draw api now uses a `real' qpic_t rather than loading the pic every time 2002-04-09 21:38:41 +00:00
Bill Currie
76d004f9cf fix confim_quit 2002-04-09 17:00:39 +00:00
Bill Currie
47a94ed6af clear out the string hash resources completely 2002-04-09 16:21:27 +00:00
Bill Currie
8588d2d1cd fix a silly braino in the resources code that was causing the resource
structs to not get linked into the chain
2002-04-09 16:06:05 +00:00
Bill Currie
9dd7deb798 better catching of invalid inputline pointers 2002-04-09 15:29:48 +00:00
Bill Currie
4f65a313fd oops :) 2002-04-07 04:57:42 +00:00
Bill Currie
197db0aca7 more signed char indeces 2002-04-07 04:54:19 +00:00
Bill Currie
ea9c1fc4ac setenv isn't as portable as one could wish... 2002-04-07 04:45:02 +00:00
Bill Currie
9885aa5916 fix some signed char index warnings 2002-04-07 03:41:10 +00:00
Bill Currie
db75da7733 this should fix compiling snd_sun on solaris 2002-04-07 03:24:29 +00:00
Bill Currie
b322835767 fix a missing \n 2002-04-03 18:50:36 +00:00
Brian Koropoff
93c9f96416 Added embedded commands with ~{} and the return command, created a token
structure to help tidy the command buffer struct up a bit, fixed a few
bugs and probably created 100 more.  A lot of things were changed to
allow embedded commands:
- Old buffers on the stack are left alone for Cbuf_ExecuteStack to
clean up.  This is so return values can be extracted from them.
- The imperative flag has been added.  An imperative buffer and all buffers
following it can not be paused with the wait command.
- The returning flag and retval dstring have been added.  If a buffer
returned something, the flag will be set.
- The return command was added so there was something to use in the
substitution.  Return nukes all loop buffers since they don't really count
as independent functions, sets the return value on the top buffer, and
clears it.
- Who knows what else.
2002-03-29 07:43:02 +00:00
Brian Koropoff
676bf39d9d Beautified GIB, improved looping and backtraces slightly. Old buffers are
now recycled, not freed.  Fixed some bugs in exp.c.  Ready to add embeded
functions (read: function calls with return values) and for loops.
Probably some other misc. fixes, I tend to go on debugging streaks.
2002-03-27 06:24:19 +00:00
Brian Koropoff
807e7de22e Fixed a bug with comments that don't have a newline after them. 2002-03-24 06:55:52 +00:00
Brian Koropoff
7c4cecd700 Fixed a stupid bug in Cmd_Exec_f that was causing map commands inside
executed files to crash the server.
2002-03-23 23:13:15 +00:00
Brian Koropoff
73f32465c5 Fixed a double free in exp.c, and made math error reports slightly more
useful.
2002-03-22 07:11:05 +00:00
Brian Koropoff
e1b61d2116 Changed how looping works, fixed echo to work with taniwha's Cmd_Args
changes, added the != operator for math evaluation, added break command
to break out of loops early, added ifnot command, and who knows what else.
2002-03-22 00:22:03 +00:00
Bill Currie
961a716942 minor oops 2002-03-21 21:56:59 +00:00
Bill Currie
5a30278e77 whitespace 2002-03-21 21:56:22 +00:00
Bill Currie
d00d6a539a add dstring_insertsubstr 2002-03-21 21:53:52 +00:00
Bill Currie
619a77b2f7 fix a couple of brainos that broke quotes entirely 2002-03-21 21:45:00 +00:00
Bill Currie
c1deee9955 rework cmd_buffer_t->line and cmd_buffer_t->args building so quotes are
preseved
2002-03-21 21:17:31 +00:00
Bill Currie
b7fc784718 add dstring_appendsubstr 2002-03-21 21:16:26 +00:00
Bill Currie
6f1b68aeb4 sys.h:
define SYS_CHECKMEM macro to ease memory allocation failure detection
cmd.c:
	loads of whitespace
2002-03-21 19:47:31 +00:00
Brian Koropoff
388ff7b597 Some bug fixes and memory leak fixes. Local variables break randomly,
probably due to my misuse of hash tables.  Anyone have any ideas?
2002-03-20 22:57:26 +00:00
Brian Koropoff
d5fad096c0 Added local variables and replaced %-substitution with local variables.
Made variable substitution recursive, so ${${foo}} will be the value of
the variable whose name is contained in foo.  Added setl command to
manipulate local variables.  The only other place they can be used is in
variable substitution.
2002-03-20 04:24:31 +00:00
Robin Redeker
18082533d5 Fixed some memory problems in my string-hashes. 2002-03-19 18:08:07 +00:00
Robin Redeker
489bc7291a Playermenu working now fine.
Added some api-functions to complete playermenu.
(Playermenu isn't still finished)
2002-03-19 17:07:56 +00:00
Bill Currie
504ee0014f and another one :/ 2002-03-19 17:03:52 +00:00
Bill Currie
7816644fc3 missed a place for enter_hook 2002-03-19 16:59:25 +00:00
Brian Koropoff
1683633042 Changed to an execution stack system for aliases and config files, and
added error backtraces.
2002-03-18 23:39:03 +00:00
Bill Currie
b01cda716f callback hooks for entering/leaving menus 2002-03-18 20:20:56 +00:00
Bill Currie
5f2dea43f6 break the dependency between cmd.h and dstring.h 2002-03-18 16:47:04 +00:00
Brian Koropoff
46cc4ac9dd Fixed some bugs and generalized the command buffer interface. Allowed for
buffers to be linked into execution stacks and changed aliases and script
files to be run in a new stack frame.  Cbuf_Execute executes the stack from
the top down, so wait commands are handled properly.
2002-03-18 04:12:09 +00:00
Brian Koropoff
f4180e7ad8 Added math evaluation, the ability for commands to span multiple lines
within braces, and put support for comments back in (oops).  To use math
evaluation, put a math expression inside $().  If you have spaces in your
expression, you'll need to enclose the entire thing in quotes so it doesn't
get split up into multiple tokens.
2002-03-17 06:57:03 +00:00
Brian Koropoff
aa00b7742c Changed the token finder to be recursive, added if and while commands, and
allow tokens within braces to continue across newlines.
2002-03-17 03:31:03 +00:00
Brian Koropoff
e9ca911e34 Added the ability to use curly braces to enclose tokens. Tokens in braces
won't be processed except for escape characters, so that escaped braces
can be used within.  If an uneven number of curly braces are within a
token, it will be misparsed, so escaped braces are important if you
don't want them to be considered in the parsing of the token.  Ideally,
braces within quotes within braces should not need to be escaped, but this
would require a redesign of the parser to be recursive.  Maybe I will do
this later.
2002-03-16 21:17:01 +00:00
Robin Redeker
adca50e52b Did further working on the menu code.
Added a _unfinished_ Player options-submenu, for setting
the name, top-/bottomcolor.
Added Draw_Fill and such to the progs api.
Added some comments.
2002-03-16 20:22:01 +00:00
Robin Redeker
757556022b 1. general menu code cleanup
2. added lots of comments to my menu code
3. wrote a string hash api (key -> value assignment list)
Hm, nothing else afaik. ;)
2002-03-16 15:52:17 +00:00
Bill Currie
51805ebd92 nothing much, just give wildcode a 30% speed boost. Basicly, stop binding
a texture for every single brush poly: due to texsort, they will come in
batches.
2002-03-16 09:25:06 +00:00
Brian Koropoff
2a3e1869ac Bug fixes! Fixed escape character detection, use of str = dstr->str
without considering that realloc could result in dstr->str being
changed.  Also made variable substitution of non-existant variables be
replaced with a null string rather than being left alone, to prevent
errors in scripts from causing weirdness as strings get passed through
the parser several times.
2002-03-16 06:31:59 +00:00
Brian Koropoff
0a90ddc51f Fixed an error in extract line that caused escaped quotes to be parsed as
normal quotes and made it so executed files are always inserted into the
console buffer so that class config files in TF can use the new parser
features, even though the exec command is run in the legacy buffer
2002-03-15 01:45:15 +00:00
Bill Currie
180c517771 signal handling improvements 2002-03-13 19:20:57 +00:00
Bill Currie
6cefb63e2e get back to work on creating a good command line pak file util. currently
only dumps the file names/sizes and segs if it's used incorrectly, but it's
a start.
2002-03-12 23:45:36 +00:00
Bill Currie
f0609f04f3 forgot about the need for the proto itself 2002-03-12 17:44:45 +00:00
Bill Currie
adbb59c5dd fix missing prototype for fnmatch on some systems 2002-03-12 17:36:17 +00:00
Bill Currie
1d420edcd0 start work on instrumenting GLstub.so 2002-03-11 23:55:50 +00:00
Bill Currie
d5fe4e3130 make file open a little more secure 2002-03-11 19:01:13 +00:00
Bill Currie
5a2538faaf dstring.[ch]:
create dsprintf and dvsprintf to do formated prints to dynamic strings.
rest
	Use the new functions :)
2002-03-08 23:11:42 +00:00
Bill Currie
538515bee6 forgot to nuke this 2002-03-06 04:17:50 +00:00
Bill Currie
8f7f646d19 white space 2002-03-05 22:36:04 +00:00
Brian Koropoff
e0e9084ad7 Merged in the new command parser. No major bugs or incompatibilities could
be found.
2002-03-05 21:51:12 +00:00
Bill Currie
544ca8118a "gib" never got all that useful, and with the new command parser coming in
and csqc, it's pretty obsolete, too.
2002-03-05 21:47:03 +00:00
Brian Koropoff
066c2c8a02 The final checkin before merging. Hopefully no showstopping bugs remain. 2002-03-05 21:26:37 +00:00
Brian Koropoff
669ca72e4f Added a bonus feature: %i evaluation in aliases. Just put %i in an alias
and it will get replaced with the ith argument to the alias, 0 being the
name of the alias itself.  %% will get replaced by %, out of range
numbers will simply be removed, and non-numbers will be ignored.
2002-03-04 02:37:40 +00:00
Brian Koropoff
7241d69036 Fixes to echo, correct use of cmd_source and src_command, and change nq to
use cmd_legacybuffer for stufftext.
2002-03-04 01:11:05 +00:00
Brian Koropoff
8d124f9c2b Implemented variable substitution and did various cleanups to the parser.
Changed Cmd_TokenizeString to accept a flag that controls the application
of filters (tags, variables, escape characters) to the tokens and modified
a few places in the source that called it.  Added a secondary command
buffer that is parsed without filters for legacy command support.
Currently, it is only used for commands stuffed into the console from the
server.  It is hacky, and I hope to eventually generalize the console
interface to support any number of buffers and audit the rest of the code
to recognize it.  For now, the legacy buffer at least keeps escape
character parsing from destroying info strings.
2002-03-03 23:28:57 +00:00
Brian Koropoff
f78ec56975 Added escape characters, the <i> tag to ignore tags enclosed within it, and
generally cleaned the parser up.  If a line begins with |, it will be
stripped off by the tokenizer and no tags or escape characters will be
processed.  Commands stuffed into the console from the server are prepended
with | to ensure backward compatibility.  This can also be used anywhere
backward compatibility is needed, such as where info strings are stuffed
into the console, or as an alternative to using escape characters in the
entire string.
2002-03-03 08:29:28 +00:00
Bill Currie
26d7463be7 the majority of raptor's sgi build patch. I'll look at the last two bits
(server.c and vid_sdl.c) later.
2002-03-03 06:03:51 +00:00
Brian Koropoff
4a7f3b3189 This commit fixes up cmd_args to rebuild a string from the processed
tokens and adds support for comments.
2002-03-03 06:00:44 +00:00
Bill Currie
119731e90e fix a buffer overflow snax found 2002-03-03 04:42:32 +00:00
Brian Koropoff
6936615fdf HTML-like tags are more or less done. Next up is variable substitution
and escape characters.
2002-03-03 04:26:37 +00:00
Brian Koropoff
557846b220 This is the first commit to the newcmd branch, which is a mostly-rewritten
console command parser.  It will eventually include html-like tags for
modifying text (gold numbers, brown characters, etc) and escaped characters.
The major differences so far are that dynamic strings are now used instead
of static buffers, and single quotes can be used to enclose tokens as
well as double quotes.
2002-03-03 03:36:27 +00:00
Bill Currie
a384870e4b cl_chatmode works again 2002-02-28 04:12:20 +00:00
Bill Currie
009e6346fe now, so long as ulimit allows it, we can always get a core dump. Looks a
little odd:

Received signal 11, exiting...
IN_Shutdown
IN_LL_Shutdown
VID_Shutdown
Segmentation fault (core dumped)

but the core file does accurately show the error
2002-02-27 06:55:21 +00:00
Bill Currie
2f62b744fa After an interesting discussion with Lordhavoc, make the GPU do more work in
the background. This is achieved by doing only a (qf)glFlush at the end of
the frame, doing the inter rendering-frame processing (ie, client frame
processing), glFinish, glXSwapBuffers, then starting the next frame. I've
changed the glFinish call in SCR_UpdateScreen to glFlush and the glFlush
call in GL_EndRendering to glFinish because there's no point in calling
glFinish followed by glFlush. Also, SwapBuffers should always be precedded
by glFinish rather than just glFlush (in Lordhavoc's experience). The
GL_EndRendering at the end of SCR_UpdateScreen got moved to the beginning.
2002-02-27 05:22:21 +00:00
Bill Currie
cfb6c1db0a first stab at hardware gamma support for windows. WILL screw up system gamma :) 2002-02-26 00:14:16 +00:00
Bill Currie
9ea013888b eliminate GetEdictFieldValue, mostly merge SV_AddGravity, and clean up
some whitespace in sv_phys.c
2002-02-25 07:44:17 +00:00
Bill Currie
9d0d8c49e7 win32 compile fix 2002-02-23 17:43:41 +00:00
Jeff Teunissen
ae2303c18d Hide the reason for a plugin load failure unless developer is set. 2002-02-22 11:17:20 +00:00
Bill Currie
29706477d4 gl_driver default is now configurable 2002-02-22 08:55:24 +00:00
Bill Currie
972bd8852b rewrite QFGL_ExtensionAddress to just use QFGL_ProcAddress and be done with
it. hopefully this will fix raorn's crash.
2002-02-21 07:56:27 +00:00
Bill Currie
8ee5acb208 redo Sys_Error so it's more usable throughout quake 2002-02-20 19:22:52 +00:00
Bill Currie
b6c331736a give nq host_mem_size so -mem can be a cvar (similar to sv_mem_size and
cl_mem_size in qw).
2002-02-19 20:47:45 +00:00
Chris Ison
dcd4ec19c5 fixed up positioning of say_team input, also fixed length of say and say_team, thanx taniwha 2002-02-16 04:21:03 +00:00
Bill Currie
af663488c8 print out the error string when failing to get shared memory 2002-02-13 08:35:46 +00:00
Bill Currie
814e2ddfe9 hopefully a more correct implementation 2002-02-13 00:57:00 +00:00
Bill Currie
42ba67eb4b *sigh*, getting this right is proving to be a pain :P 2002-02-12 21:34:28 +00:00
Bill Currie
01882919a2 get it right this time :/ 2002-02-12 21:26:34 +00:00
Bill Currie
befc4113b8 fix a braino for vsnprintf return code handling 2002-02-12 20:39:11 +00:00
Bill Currie
b4000200e3 move the getopt files from qfcc/source to libs/util, link qw-master against
libQFutil and enable the option parsting in qw-master for win32.
2002-02-12 17:44:41 +00:00
Bill Currie
799cfa58af fix the recent win32 crash bug
Q_vsnprintfz should return -1 when size is 0. also make client.c's C_Print
use vsnprintf correctly
2002-02-12 04:29:44 +00:00
Bill Currie
b5c2c0e14e clean up a fixme. this doesn't fix serplord's out-of-bounds problem, but
that's because his qc compiler is doing weird stuff.
2002-02-11 19:36:36 +00:00
Robin Redeker
67d53f4e56 Added some QC-API functions: String_Cut, String_Len, Key_CountBindings. 2002-02-02 09:38:19 +00:00
Robin Redeker
60e99d724b Fixed a bug with callback-calling in Menu_KeyEvent 2002-02-01 18:50:56 +00:00
Bill Currie
cf2f42ea6a make it so menu items can get called for any keypress. this is optionally
done by setting the allkeys param to 1. when this is the case, if the menu
item function returns 0, normal processing is done, otherwise processing
stops.
2002-02-01 17:32:40 +00:00
Robin Redeker
fa575a3475 Added a start for the QC-Keys-API 2002-01-31 21:08:45 +00:00
Bill Currie
72bd704d13 BSD compile fixes 2002-01-31 07:37:56 +00:00
Bill Currie
03ae513559 compile fixes. we've finally got a sun sound user 2002-01-31 06:50:18 +00:00
Bill Currie
681950cf26 print [val] for pointers 2002-01-30 22:14:13 +00:00
Bill Currie
40e987c071 provide InputLine_SetWidth so the drawn width can be set 2002-01-30 21:25:00 +00:00
Bill Currie
d1460f6166 rename the width parameter to lsize as it's the size of the input line, not
the drawn width
2002-01-30 21:23:46 +00:00
Bill Currie
6d63d1d55b implement comparisons and not for pointers 2002-01-30 21:20:12 +00:00
Bill Currie
e1abe4c44b finalize the crc of the progs file 2002-01-30 21:13:57 +00:00
Bill Currie
7ef4426775 inputline api `done'. now just to get it working 2002-01-30 08:41:18 +00:00
Bill Currie
ee3f51f13b "" to <> for system headers 2002-01-30 08:34:44 +00:00
Bill Currie
c76f7d88ce fix an API snafu (oops:) 2002-01-30 08:09:53 +00:00
Bill Currie
8561dfa93a basic resource management system for the VM 2002-01-30 06:21:20 +00:00
Bill Currie
9c6def5c7d fade the screen when drawing the menus (this is optional per menu) 2002-01-29 22:32:56 +00:00
Bill Currie
0ea713eda4 redo the progs loader to allocate all the memory needed for progs in one
shot, allowing for caller specified alloc and edicts and zone memory sizes.
(progs + edicts + zone).
2002-01-29 20:53:44 +00:00
Bill Currie
0906ac5694 get the positioning correct for Draw_CenterPic 2002-01-29 18:44:31 +00:00
Bill Currie
b64693a332 get the param order correct for the menu item callback 2002-01-29 18:16:49 +00:00
Bill Currie
6f29bcb238 break the loop from CRC_Block into CRC_ProcessBlock so that crcs can be
caclulated over multiple blocks.
2002-01-28 18:00:48 +00:00
Bill Currie
21b6e68a8c break out the non-edict code into sensible locations 2002-01-28 17:15:36 +00:00
Bill Currie
750100b3e3 obsolete declaration cleanup and const correctness for Key_GetBinding 2002-01-25 00:01:05 +00:00
Bill Currie
08210bc93f fix an accidental double byteswap that broke progs for big-endian machines 2002-01-24 04:43:47 +00:00
Bill Currie
316386b542 mod->textures can legitimatly have null textures, so be on the lookout for
them. This fixes the client crash on certain levels.
2002-01-24 02:44:19 +00:00
Bill Currie
85588c8fcb start implementing the api for input lines and clean up a couple csqc
prototype issues.
2002-01-23 22:37:44 +00:00
Bill Currie
68637eea9e start implementing dynamic memory for progs 2002-01-23 22:35:48 +00:00
Bill Currie
16cc0c22c9 forgot to implement store.p 2002-01-23 22:33:22 +00:00
Bill Currie
ed91b16f45 add Menu_GetIndex 2002-01-23 21:07:38 +00:00
Bill Currie
eb2c7824f8 don't bail out of Menu_Draw if the qc draw function returns 0. this allows
for combined C/QC drawing.
2002-01-23 00:48:03 +00:00
Bill Currie
5450fdb692 don't seg on menus with no items 2002-01-21 21:38:34 +00:00
Bill Currie
ec0b3d8940 make Menu_SelectMenu(NIL) do the right thing and handle qc code that clears
the current menu but forgets to return 1 in keyevent
2002-01-21 19:40:45 +00:00
Bill Currie
d5fb0f5a68 fix some .. path compression bugs 2002-01-21 17:36:22 +00:00
Bill Currie
9833b7009d oops, forgot to remove the debug code 2002-01-21 16:48:08 +00:00
Bill Currie
f3efed94e5 .0 isn't valid for integer formats 2002-01-21 16:47:50 +00:00
Bill Currie
5b0e6dc342 add file and string modules to csqc. the file nodule is rather parnoid
about the path it's handed (need to get even more paranoid, though). the
string module just has char replacement so far. Add Draw_CenterPic to
r_progs.c, but this will only last till qpic_t is supported in qc.
the load menu almost works: just need to add key handling and fix a bug in
PF_sprintf
2002-01-21 07:24:51 +00:00
Bill Currie
d59e7d3da4 you can now start a new single player game via the menus 2002-01-20 04:11:08 +00:00
Bill Currie
1168f1aa86 libQFcsqc (I'm not adverse to renaming it) is born. so far, only provides
Cbuf builtins.
2002-01-20 04:09:36 +00:00
Bill Currie
14ac3acc17 add a builtin (gametype) for detecting the, well, game type (ie, netquake
or quakeworld) which just returns the apprproate string. the single player
menu is now acessable in nq but not qw :)
2002-01-20 03:09:03 +00:00
Bill Currie
db7a2264c0 bring in the standard builtins and randomize the quit message 2002-01-20 01:39:06 +00:00
Bill Currie
9f67e81049 don't handle key presses if there's no callback and no items 2002-01-20 00:47:01 +00:00
Bill Currie
95e200a9e0 fix console command line quit 2002-01-20 00:32:14 +00:00
Bill Currie
35de51ee31 the quit menu works now. however, quit from the console doesn't 2002-01-20 00:06:08 +00:00
Bill Currie
bb82e48ab1 add Draw_String to csqc 2002-01-20 00:03:34 +00:00
Bill Currie
84636f20cb make sure r_progs gets linked in when using the .a lib 2002-01-19 22:53:00 +00:00
Bill Currie
6767d6bfa0 win32 compile fixes 2002-01-19 20:45:45 +00:00
Bill Currie
9181ddaa4c don't go to game when leaving menus when there's no game. doesn't actually
work properly, but I think that's a bug in the main client code.
2002-01-19 07:40:35 +00:00
Bill Currie
b73851d5aa the menu cursor can now be moved up and down using the mouse wheel 2002-01-19 07:19:39 +00:00
Bill Currie
29c19ca243 Menu_CenterPic now centers the pic (horizontally) as intended 2002-01-19 06:18:52 +00:00
Bill Currie
b1b848ae4a finally get the damn spinner working (not in the right place, though) 2002-01-19 05:56:25 +00:00
Bill Currie
a78ea1464b provide stubs for the client-only functions (they might prove useful in the
server later anyway). this fixes nq-server's segs
2002-01-19 04:37:47 +00:00
Bill Currie
6af9a5d8e6 make the builtins an array of pointers so the hash table doesn't get royally
screwed up
2002-01-19 03:31:51 +00:00
Bill Currie
6ab3329b94 bring back togglemenu 2002-01-19 03:28:52 +00:00
Bill Currie
15e7e35a57 make K_ESCAPE bindable 2002-01-19 02:29:29 +00:00
Bill Currie
7def88668a fix a goof with the progs loader for the server interface 2002-01-18 23:53:51 +00:00
Bill Currie
fcc9cbf3b7 the main menu page now displays and can be entered/left. K_ESCAPE is now
handled exclusively by the console.
2002-01-18 23:45:28 +00:00
Bill Currie
10acad1ee4 first tie-in for the renderer (Draw_Pic: the interface will likely change
to better match the real interface, but this will do for now)
2002-01-18 22:35:46 +00:00
Bill Currie
ac71d101d2 menu code now gets initialized (menu_init in the progs). 2002-01-18 22:02:59 +00:00
Bill Currie
bb96a5b736 first use of client side QuakeC :) (and having more than one progs instance
seems to work, too). The menu code gets loaded, but is currently otherwise
unused as of yet.
2002-01-18 19:19:33 +00:00
Chris Ison
e3b2bfb81a clear key states on game start 2002-01-17 22:04:58 +00:00
Bill Currie
c3b2533803 fix shifted key input 2002-01-17 21:49:47 +00:00
Bill Currie
7093c05587 console scrolling works again, and even better than before :) 2002-01-17 21:27:31 +00:00
Bill Currie
d69762facd integer() and float() casts seem to work 2002-01-17 19:32:04 +00:00
Seth Galbraith
31a98f0f80 only load tgas for texture names that end in backslash 2002-01-17 16:31:34 +00:00
Bill Currie
303581b798 oops? 2002-01-17 02:47:22 +00:00
Bill Currie
c998c63746 make all of the input lines use the same rendering code 2002-01-17 02:27:53 +00:00
Bill Currie
e090f8dc09 finally get the say scroller working 2002-01-17 02:10:36 +00:00
Bill Currie
6dbdfc0464 yeah, it's an icky global, but it's actually the right way to get at the
model header in the model loader.
2002-01-17 02:10:06 +00:00
Bill Currie
f67f021713 don't need those anymore 2002-01-17 02:06:49 +00:00
Bill Currie
9329d15218 more chat improvements 2002-01-17 00:05:30 +00:00
Bill Currie
9e5c7da8e6 move the chat code from keys.c to client.c.
oops, chat just got input history, dear me
2002-01-16 23:06:28 +00:00
Bill Currie
ceec1a87e2 fix some installing issues for dynamic plugins 2002-01-16 22:09:41 +00:00
Bill Currie
c86c5a78bf finally, the client console is merged 2002-01-16 21:53:42 +00:00
Seth Galbraith
778af4276e external tga skin loading, doesn't work for players (teamcolor stuff) 2002-01-16 20:32:39 +00:00
Bill Currie
9dedd21158 start getting the shared console code working 2002-01-16 16:27:56 +00:00
Seth Galbraith
0dcfc6dfb4 load tga versions of .lmp files if present 2002-01-16 01:59:05 +00:00
Seth Galbraith
93116bc827 external mip texture loading 2002-01-16 01:02:50 +00:00
Seth Galbraith
9c1969146c cleanup, implemented tga loading for gfx.wad files 2002-01-15 21:05:34 +00:00
Bill Currie
9d59d953bd more cleanups 2002-01-12 05:32:21 +00:00
Bill Currie
6637f3fba5 more FIXME and whitespace cleanups 2002-01-12 04:46:15 +00:00
Bill Currie
630aa80dc4 various cleanups including TODOs and FIXMEs and rewrite va to use a dynamic
buffer.
2002-01-12 04:34:53 +00:00
Seth Galbraith
3b6c2c8d0d pretty 32 bit color sprite tga loading - e.g progs/s_light.spr_0.tga 2002-01-11 04:20:41 +00:00
Seth Galbraith
5f4c7ee7bd implemented VP_PARALLEL_UPRIGHT - ask about my Mighty Oak 2002-01-11 03:00:32 +00:00
Seth Galbraith
7dc5b587f8 also try to load skies from gfx/env as darkplaces does 2002-01-11 01:26:21 +00:00
Ragnvald Maartmann-Moe IV
38acbd9c0b Whitespace. Grr. 2002-01-10 21:22:51 +00:00
Bill Currie
6132049bf4 gl_draw.c: whitespace
draw.c: (both sw and sw32) fix Draw_nString to be similar to gl_draw.c
2002-01-10 20:19:22 +00:00
Chris Ison
859c18dc07 tidy up Draw_String calls and switched to Draw_nString were needed 2002-01-10 03:54:00 +00:00
Chris Ison
6073ff8d58 added Draw_nString for displaying a non \0 terminated string 2002-01-09 21:20:22 +00:00
Bill Currie
96c7159f66 keep track of the times of the last event (for those events that report time)
and use that instead of CurrentTime in the X selection code (as recommended
by the ICCCM)
2002-01-08 20:07:19 +00:00
Bill Currie
6633ea0273 correct a typo in a comment 2002-01-08 19:38:36 +00:00
Bill Currie
c84e5b2ac0 re-write the X selections support to be more ICCCM compliant (selections in
xchat can now be pasted to qf)
2002-01-08 19:33:42 +00:00
Bill Currie
9ba80eb4d9 use Hunk_TempAlloc instead of realloc for the alias model verts 2002-01-07 16:43:47 +00:00
Bill Currie
c1c76f7058 whitespace 2002-01-07 06:50:41 +00:00
Bill Currie
72d6f34dc8 first step to using a saner internal represnetation for the high precietion
models.
2002-01-07 06:32:46 +00:00
Bill Currie
14fb289f2f duplicate GL_GetAliasFrameVerts so 16 bit alias models don't cost so much
even when they aren't being used.
2002-01-07 03:46:56 +00:00
Bill Currie
b582a02aff fix the broken lighting for unlerped verteces 2002-01-07 01:05:44 +00:00
Ragnvald Maartmann-Moe IV
f8daa09bcb Fix software scrag missile trails, and add a minor optimization to them and hell knight's fire wave trails. 2002-01-06 23:12:09 +00:00
Ragnvald Maartmann-Moe IV
097ff0006f Rearrange vertex order in quads. 2002-01-06 22:43:51 +00:00
Seth Galbraith
0a7ddae612 move high precision check out of loop to optimize sw model rendering 2002-01-05 20:00:50 +00:00
Ragnvald Maartmann-Moe IV
aa36ebf6e4 Little bit of whitespace cleanup. 2002-01-05 19:03:36 +00:00
Seth Galbraith
1e57bcdca2 no more hardcoded MAXALIASVERTS limit 2002-01-05 17:56:33 +00:00
Seth Galbraith
cb6ef3e225 putting if outside the for loop should speed things up 2002-01-05 16:53:43 +00:00
Seth Galbraith
ac5b6823c6 high precision model rendering in GL 2002-01-05 16:20:38 +00:00
Ragnvald Maartmann-Moe IV
a18fdbca68 Minor clarification in pt_fire ramp aging, plus reduce VectorScale use in fixed distance trails from once per particle to once per trail. 2002-01-05 07:23:23 +00:00
Seth Galbraith
42456845f0 high precision software mdl rendering 2002-01-05 03:21:02 +00:00
Seth Galbraith
6ec47e6be6 slaying hardcoded mdl vertex and triangle limit 2002-01-04 07:40:00 +00:00
Bill Currie
36bb62c3c5 rewrite CrossProduct so memory is accessed more linearly. should provide
a tiny speedup for servers and clipped skyboxes
2002-01-04 06:13:50 +00:00
Bill Currie
df947a8843 pt_color is now an int so don't convert it 2002-01-04 04:12:10 +00:00
Ragnvald Maartmann-Moe IV
b13efc3a83 Particle updates. Some cleanups, small speedups, and reimplement id's effects. r_particle_styles 0 to see id's effects. 2002-01-04 03:32:59 +00:00
Ragnvald Maartmann-Moe IV
07fb841a49 Whitespace, mark a 1 line function as inline. 2002-01-04 03:25:30 +00:00
Bill Currie
3c6f64b26b _snprintf and _vsnprintf are not guaranteed to write the trailing '\0' 2002-01-03 23:24:47 +00:00
Bill Currie
522f64bce1 remove an extra ; 2002-01-03 23:24:20 +00:00
Bill Currie
9312681182 some more const correctness (in gl_sky_clip.c) and make the sky poly debug
drawing avialable via the gl_sky_debug cvar.
2002-01-03 18:18:45 +00:00
Bill Currie
013f503738 start getting const-correct on vec3_t params 2002-01-03 05:29:38 +00:00
Bill Currie
c68da1f299 o split up GL_DrawAliasFrame so it's normal (ie, not fullbright) pass only
creating GL_DrawAliasFrame_fb to do the fullbright pass. This removes
    the if (fb) tests.
 o  move the DepthMask setting for modelalpha != 1.0 out of
    GL_DrawAliasFrame* into R_DrawAliasModel to reduce potential GL state
    changes.
 o  minor comment cleanup/corrections
2002-01-02 19:23:09 +00:00
Ragnvald Maartmann-Moe IV
29b48c594e More tweaks to joystick code. amp settings have a far greater effect now... 2001-12-30 06:08:24 +00:00
Bill Currie
3cfd2c0a8e make GL_DrawAliasShadow use the data calculated by GL_GetAliasFraveVerts so
shadows don't cost as much when lerping is enabled.
2001-12-30 04:16:25 +00:00
Seth Galbraith
d570f0905f high precision model loading 2001-12-30 02:30:26 +00:00