Commit graph

5778 commits

Author SHA1 Message Date
Bill Currie
8d42963c4d start documenting the progs engine. memory map initially 2004-01-07 02:52:52 +00:00
Bill Currie
7885d9ce25 make a local copy of the builtins table being register as it might need to
be modified
2004-01-07 02:48:11 +00:00
Bill Currie
187cef1d28 make dist fix 2004-01-07 00:14:39 +00:00
Bill Currie
380e397d5b set all of our static builtin extentions to 0x000fxxxx. fixes the invalid
builtin crash in menus
2004-01-07 00:04:07 +00:00
Bill Currie
802aacfaf4 allow constant expressions to be used for builtin numbers 2004-01-07 00:03:05 +00:00
Bill Currie
cca1558688 should have compile tested. oops 2004-01-06 23:23:38 +00:00
Bill Currie
89e6b8b2e6 ensure ucmd_unkown and sv_cbuf->unkown_command always point somewhere sane 2004-01-06 23:04:14 +00:00
Jeff Teunissen
d1b4c5df72 Change PL_D_AddObject() so that it replaces values instead of stacking them.
Add PL_D_AllKeys(), which returns a list of all keys in a dictionary.
Rename PL_FreeItem() to PL_Free() -- what was I smoking?
Document some of the property list system for doxygen.
2004-01-06 11:09:40 +00:00
Jeff Teunissen
91fdd90674 one-line whitespace, didn't look too hard at the rest though. :) 2004-01-06 11:05:34 +00:00
Bill Currie
462d726d14 better memory management for hash tables 2004-01-06 08:40:21 +00:00
Bill Currie
cbe006a2fb print an address if the def name is blank 2004-01-06 08:09:41 +00:00
Bill Currie
ea552ae68e expand ~ for fs_dirconf 2004-01-06 07:33:19 +00:00
Bill Currie
133879f8fa provide builtin mappings for id (none, really), qf and ktpro/qwe (qw only),
add qwe builtin extensions to qw-server. provide sv_progs_ext to control
the builtin mapping. valid values are "id", "qf" (our old static builtins),
"qwe"/"ktpro" (either works. for ktpro mod support) and "none" (no
mapping). any other value is equivalent to "none".
2004-01-06 07:00:39 +00:00
Bill Currie
d7592781d7 add builtin mapping support (not used yet) and fix an uninitialized
variable
2004-01-06 06:08:59 +00:00
Bill Currie
acd54afff7 move to using a hash table for builtin number -> builtin lookup so sparse
ranges can be used efficiently. move the auto-allocated builtins to
0x10000000-0x7fffffff. should be more than enough :)

use static builtin tables ("nul" terminated) instead of a series of
function calls to add builtins to a vm. should be more memory efficient.
2004-01-06 05:51:09 +00:00
Ragnvald Maartmann-Moe IV
a87fc16d12 Whitespace. 2004-01-06 03:38:48 +00:00
Ragnvald Maartmann-Moe IV
067080296c Futureproofing. 2004-01-06 03:38:16 +00:00
Ragnvald Maartmann-Moe IV
3d14b29b38 Whitespace 2004-01-06 03:24:46 +00:00
Bill Currie
fbe6c2f631 make the bad builtin number a warning and provide a suitable function in
case the function is called: allows progs with bad (but unused) builtins
to run anyway
2004-01-06 03:18:44 +00:00
Bill Currie
6f1dd54e99 quick and dirty fix to get menus loading again. libr.a really needs to be
cleaned up: most of the stuff in it should /not/ be in the standard library
2004-01-05 09:06:06 +00:00
Bill Currie
0ddb5eb822 report all bad builtins rather than just the first 2004-01-05 08:52:20 +00:00
Bill Currie
595280decb do the builtin function lookup at load time rather than runtime and store
the function address in the progs function descriptor. this will speed up
calls to builtin functions, especially when ranges get introduced.
2004-01-05 08:08:46 +00:00
Bill Currie
dfc83c1f5f add PR_PushFrame and PR_PopFrame so temp strings are easy to use for
parameters to progs functions.

double the progs stack sizes (call depth of 32? eek)

allow one extra call on the progs stack :)

misc minor cleanups
2004-01-05 07:10:32 +00:00
Bill Currie
211908e741 implement a couple more obj functions 2004-01-05 01:41:20 +00:00
Daniel Anderson
d9db1a0c04 Treat cs_server clients like non-client entities for GIB "frag" event 2004-01-05 00:48:41 +00:00
Daniel Anderson
85beae40f0 Added the missing null terminator for a reliable message send. 2004-01-05 00:25:58 +00:00
Bill Currie
dfe7f263c7 new internal printf engine for progs, mostly thanks to Deek.
also a few cleanup bits
2004-01-04 07:42:43 +00:00
Bill Currie
538d669887 micro-tidy while pondering how to rework this whole mess 2004-01-04 03:24:37 +00:00
Bill Currie
a533761770 Nuke PR_GarbageCollect as it's both redundant with the new temp strings
and wrong anyway (could free strings it wasn't supposed to).

Don't free the string pointed to by a strref since it's already been
implicity freed (whole memory space nuked). Fixes new map crash.
2004-01-04 02:03:30 +00:00
Ragnvald Maartmann-Moe IV
043c1ce466 Check for %s_luma as well as %s_glow. Also a bit of whitespace. 2004-01-04 01:20:20 +00:00
Bill Currie
bd561fafc3 o all progs strings are now stored in progs memory
o  temporary strings automaticly get freed when the function they're
    created in (results of str + str and most strings returned from
	builtins). a way to keep temp strings will be provided later
 o	fix up qwaq to test the temp strings
2004-01-03 08:43:57 +00:00
Bill Currie
40b8974c33 better external skin handling from Grievre 2003-12-28 05:25:06 +00:00
Ragnvald Maartmann-Moe IV
9dbb8335f6 Fix loading of some sky textures. 2003-12-23 22:24:48 +00:00
Ragnvald Maartmann-Moe IV
1be98dcf08 gl_external_textures -> gl_textures_external, plus whitespace & codingstyle. 2003-12-23 20:05:52 +00:00
Bill Currie
4b6b5135ac more texture tweeks from Griever: gl_external_textures 2003-12-23 08:38:33 +00:00
Bill Currie
9f76665963 luma tweak (redundant code removal) from Grievre 2003-12-23 07:22:04 +00:00
Bill Currie
c917233165 make sure outputbuf's mem gets initialized (oops:) 2003-12-22 23:40:20 +00:00
Bill Currie
5eff81b005 dstrings now have individual memory management functions 2003-12-22 23:35:22 +00:00
Bill Currie
e53967b346 --disable-static now works (thanks for the heads-up, raorn) 2003-12-22 20:51:08 +00:00
Bill Currie
069ee8657f fix a typo that prevented the asm lib getting the correct flags 2003-12-22 19:59:33 +00:00
Bill Currie
0307618b15 use the passed "size" parameter rather than qfs_filesize: no telling
/where/ the progs really came from :)
2003-12-22 19:58:46 +00:00
Ragnvald Maartmann-Moe IV
5f76017d2a Update ALSA sound target to support 1.0.
Breaks 0.9 support, but 1.0 is in 2.6.0. So either update, or revert to older
snd_alsa.c & alsa_funcs_list.h.
2003-12-22 01:07:49 +00:00
Ragnvald Maartmann-Moe IV
12d3a137a1 Luma texture support for brush models (From Fuh, by way of Grievre). 2003-12-21 08:02:03 +00:00
Bill Currie
35d690c701 give an error message instead of segging for the following code:
@class foo;
@interface bar : foo
@end
2003-12-19 04:59:34 +00:00
Bill Currie
fade4419f7 clients now need to link in the server console plugin when static 2003-12-19 04:50:42 +00:00
Bill Currie
9e3f33f318 don't need to see these :) 2003-12-19 04:25:07 +00:00
Bill Currie
7d82daa127 dedicated server needs/wants the text (server) console plugin, not the
console plugin (ie, when static)
2003-12-19 03:41:58 +00:00
Brian Koropoff
f8baa5be27 Added a finalize method to all Objects and modified the garbage
collector to deal with objects that might gain references during
finalization.
2003-12-09 06:57:35 +00:00
Bill Currie
e56e566bca eek, had the entity center-point calculation wrong. thanks, grievre 2003-12-09 04:29:12 +00:00
Brian Koropoff
991fc06360 Garbage collection:
Moved from reference counting over to a mark and sweep method.  Objects
are now required to implement an allRefs method which returns a pointer
to a list of all other referenced objects.  How the list is maintained
is up to each object.  The retain/release mechanism still works; objects
with any references will not be garbage collected, even if the collector
thinks they should be.
2003-12-09 02:01:05 +00:00