Bill Currie
986dae9ec9
as discussed with fuh, hide the endian dependency of the checksum calcs
...
(evil way of using md4, but oh well).
2004-05-16 23:17:51 +00:00
Bill Currie
d25f2c87ea
path is long dead. oops. thanks, Silh
2004-05-16 23:13:06 +00:00
Bill Currie
67f913289c
move wad_extract into the wad utility and make QFS_CreatePath more
...
generally usable
2004-05-09 22:58:37 +00:00
Bill Currie
2d671955fb
fix an oopsie that broke skyboxlist (early morning paper routes are bad for
...
coding:)
2004-04-23 22:53:39 +00:00
Bill Currie
616be68bdd
strip parameter to QFS_FilelistFill and add rua support
2004-04-20 22:52:09 +00:00
Bill Currie
e8f9761d33
move the filelist building code into quakefs
2004-04-20 22:25:52 +00:00
Bill Currie
31b867a08e
rework contains_updir to allow a specified number of ..s. QFS_FOpenFile now
...
allows one .. in the path (won't be able to find any files in a pak file
and is horribly inefficient, but oh well)
2004-04-14 02:15:14 +00:00
Bill Currie
1bf13a27b9
QFS_Open more secure and simplify contains_updir
2004-04-13 04:42:12 +00:00
Bill Currie
1fb50d2f08
don't create the path in QFS_Open if not writing
2004-04-13 03:38:16 +00:00
Bill Currie
4c4f40f137
fix a few bugs. basics seem to be working
2004-04-08 05:13:24 +00:00
Bill Currie
39685d0c63
more readability and add the quaternion functions
2004-04-07 18:01:45 +00:00
Bill Currie
49f8787450
fix up some accidental asm compilation when it's not wanted
2004-04-04 05:34:20 +00:00
Chris Ison
5dcdd2c194
fixed stalls and mis-placed rocket which was seen only in the cygwin->mingw32 builds, also removed redundant stdin_ready code and forcing of timeout setting for win32 build
2004-03-26 02:52:47 +00:00
Bill Currie
142127f89d
even better, use seta (new command) instead so config.cfg automaticly sets
...
the archive bit
2004-03-18 05:58:06 +00:00
Bill Currie
0c82006bd8
all archived cvars now get written to the config file prefixed with set
2004-03-18 05:45:45 +00:00
Bill Currie
7f3d5164e6
fix Qgets for when zlib isn't available
2004-02-29 07:12:05 +00:00
Bill Currie
e5ae0b4979
needed EXPORT in both ends if the #if/#else/#endif
2004-02-18 03:19:57 +00:00
Bill Currie
d1904fe7c4
hopefully fix nq segging on windows
2004-02-14 08:05:54 +00:00
Bill Currie
893d3ec290
hash.[ch]:
...
add Hash_NumElements to get the number of elements in the hash table
qfplist.[ch]:
add PL_A_NumObjects and PL_D_NumKeys, to get the number of objects or
number of keys in the array or dictionary, respectively
2004-02-07 07:47:23 +00:00
Bill Currie
9784ba5954
Grievre's gamedir callback patch to fix mangled sounds on gamedir change
...
plus a couple minor tweaks I notcied needed doing.
2004-02-03 03:01:06 +00:00
Timothy C. McGrath
74404b229d
Another patch from Grievre, this prevents a bad ogg tracklist.cfg from crashing
...
the game, since that event is already handled correctly.
Timothy C. McGrath
(Hikaru)
2004-01-28 10:25:49 +00:00
Chris Ison
47f16678ab
win32 server console now works
2004-01-22 03:43:09 +00:00
Bill Currie
db32c8394b
export BoxOnPlaneSide properly in windows so it doesn't cause a segfault
2004-01-22 02:26:08 +00:00
Bill Currie
19ef80c555
this should fix static win32 builds
2004-01-21 00:15:35 +00:00
Bill Currie
6d02004ca8
Mike Gorchak's <mike@malva.ua> second (final for now:) QNX patch. renames
...
msg_t to qmsg_t.
2004-01-20 06:11:00 +00:00
Bill Currie
283d49bd8e
first chunk of Mike Gorchak's <mike@malva.ua> QNX patches
2004-01-20 05:57:39 +00:00
Bill Currie
e154c9add5
be consistent with WIN32 and _WIN32 (now all _WIN32)
2004-01-20 03:47:27 +00:00
Bill Currie
77b2942982
several libs can now get built as dlls in windows: console, gamecode,
...
gamecode_builtins, gib, image, modules, object, ruamoko and util.
2004-01-19 07:47:41 +00:00
Bill Currie
629e22aa61
fix a buffer overflow and an underflow
2004-01-17 05:11:34 +00:00
Bill Currie
31d970aca0
can now dump a map's textures to a wad file (name currently based on bsp
...
file name (eg, foo.bsp -> foo.wad)
2004-01-15 07:16:44 +00:00
Bill Currie
2a399cc4b4
Sys_PathType has been unnecessary for a while so nuke it
2004-01-13 21:30:13 +00:00
Bill Currie
28082f30f5
support compressed wads (.wad.gz) and read the lump count correctly
2004-01-13 06:39:50 +00:00
Bill Currie
15870757e4
oops, forgot the ~. fixes wildcode's lockup and should fix rxr's
2004-01-12 06:38:59 +00:00
Chris Ison
0d755a0dd6
dirent.c and dirent.h brought in from cygwin for win32 builds
2004-01-12 02:23:36 +00:00
Bill Currie
44b38c5cb7
add a wad tool along the lines of pak. can't yet be used for wad creation
...
(that's a little more complicated), but it can be used for listing and
extracting the contents of a wad file. watch out for *foo :)
2004-01-10 08:05:25 +00:00
Bill Currie
4371c841ac
more consistency fixes
2004-01-10 06:11:41 +00:00
Bill Currie
03a24be4de
partial work on wad file access cleanup in preparation of making a wad
...
utility
2004-01-09 23:34:32 +00:00
Bill Currie
1e20043bf3
remove some debug prints
2004-01-09 22:28:02 +00:00
Bill Currie
16f0a54a84
fix some inconsistencies pointed out by doxygen
2004-01-07 20:06:15 +00:00
Bill Currie
6c447b4b75
fix more string ownership issues
2004-01-07 08:54:00 +00:00
Jeff Teunissen
be895da8da
oops. :)
2004-01-07 08:02:09 +00:00
Jeff Teunissen
eb6b179add
plist functions that add objects return qboolean, not int. Also doc fixes.
2004-01-07 07:01:31 +00:00
Bill Currie
efd6ccff02
close a nasty hole in the gamedir code
2004-01-07 06:40:10 +00:00
Bill Currie
9c92a916ff
change the dict and array add functions to return true/false and add some
...
more docs
2004-01-07 06:19:11 +00:00
Bill Currie
e8fb5ba83b
remove the FIXMEs. plist takes ownership of the item
2004-01-07 05:35:06 +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
ea552ae68e
expand ~ for fs_dirconf
2004-01-06 07:33:19 +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
40b8974c33
better external skin handling from Grievre
2003-12-28 05:25:06 +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
Brian Koropoff
7598ab35fb
Move the QF object system into it's own library, fix up the standard
...
classes.
2003-12-07 04:50:46 +00:00
Brian Koropoff
a0b8566337
Add the instanceOf() macro and supporting function, and try to fix
...
gcc 2.95 support again.
2003-11-29 23:09:50 +00:00
Brian Koropoff
55181621bd
First commit of an experimental low-level object system. At some point
...
GIB will be reworked to use it, and hopefully Rua will also so that the
two languages can share objects, events, etc.
Warning: This uses quite a few hacks and tortured macros, it might cause
breakage.
2003-11-29 04:40:25 +00:00
Bill Currie
cb7ecd9f26
make certain Cmd_ExecuteString calls the command system with an active cbuf
2003-11-25 02:47:05 +00:00
Bill Currie
cd8035319d
PR_GetString should have been returning const char *. now does
2003-11-21 21:34:53 +00:00
Bill Currie
b3c6e763cd
allow cbufs to have a callback for unknown commands. if the callback
...
returns non-zero the unknown command is assumed to have been handled and no
error is reported
2003-11-20 07:02:14 +00:00
Bill Currie
481c9c4e8d
add Sys_TimeOfDay from QWE (HighlandeR)
2003-11-20 07:00:07 +00:00
Brian Koropoff
687a0845b6
Introducing the GIB Object System (TM). This breaks scriptable HUD for now
...
and probably has enough bugs to leave the Orkin man scratching his head,
but it works and allows you to do neat things like write classes in GIB
(amazing!) and subclass builtin classes (which are Object and Thread at the
moment, Hash should be coming soon as a replacement for stem and leaf
variables).
2003-09-11 06:03:13 +00:00
Bill Currie
1ed772a933
convert \ to / while extracting and accecpt file names on the command line
...
to control extraction.
2003-09-10 20:48:59 +00:00
Bill Currie
9cd2d366ed
dstring.h:
...
document the functions (for doxygen)
dstring.c:
fix a bunch of potential buffer overflows
2003-09-04 17:17:38 +00:00
Bill Currie
e0866a5e41
make the escape attempt notification a developer print
2003-09-02 04:57:44 +00:00
Bill Currie
323a6182fd
move pcx.c and tga.c out of libQFutil and into libQFimage with the hopes
...
for more image formats :)
2003-08-15 16:19:10 +00:00
Bill Currie
0a0f8d0cfa
make a LoadBSPMem function so bsp files can be read from already loaded
...
images
2003-08-11 22:40:46 +00:00
Bill Currie
7fe0962bac
we /do/ want full precision from Sys_DoubleTime :P
2003-08-11 22:39:07 +00:00
Bill Currie
7ead5a91f8
don't let gcc automaticly inline functions but make gcc inline bigger
...
functions when told to. also make gcc warn if it can't inline a function.
Explicitly inline several functions (including moving VectorNormalize to
mathlib.h so it /can/ be) resulting in a 5.5% speedup for spam2 (88 to 92
fps)
2003-08-11 06:05:07 +00:00
Bill Currie
6a94607d9d
rename VectorMA to VectorMultAdd, add VectorMultSub and use it in a few
...
places. Not certain how much speed difference it makes :/
2003-08-08 15:25:53 +00:00
Bill Currie
ada828bdc9
remove a whole swath of potential buffer overflows by removing the buffer.
...
Also audit a few of the "FIXME: overflow" tags
2003-08-05 01:45:52 +00:00
Bill Currie
aa4d1f5c90
be sure to clear com_token when end of file is hit
2003-07-27 21:45:53 +00:00
Bill Currie
01594e239e
don't want that QF in the plugin dll name. doesn't get built that way (if
...
dlls got built in the first place:/) and way too much hassle to get it
there
2003-07-23 19:51:32 +00:00
Bill Currie
6ee38af0be
put in a comment about mprotect and getpagesize
2003-07-21 22:24:28 +00:00
Bill Currie
abedda69b6
if a system with mprotect doesn't have getpagesize, the assumption is that
...
mprotect doesn't care about page alignment (eg, QNX)
2003-07-21 20:55:13 +00:00
Bill Currie
ff6e0ab1b3
not all systems have _SC_PAGESIZE
2003-07-21 20:51:03 +00:00
Bill Currie
2d55162a05
implement memcpy version of VA_COPY correctly
2003-07-21 19:26:53 +00:00
Ragnvald Maartmann-Moe IV
810dfb29e6
Use sysconf() by default instead of getpagesize(). getpagesize() still used if
...
sysconf() not present. Since getpagesize is deprecated, it's only used as a
fallback.
2003-07-18 12:18:05 +00:00
Brian Koropoff
9b63402f12
Added llist.[ch], a set of general-purpose linked list routines. Added
...
cl_chat.[ch] to qw to hold advanced chat features, the first of which is
the ability to ignore chat messages from annoying players. Some polishing
in this area still remains, but the current implementation seems to work.
2003-07-18 06:27:26 +00:00
Bill Currie
1f948c4206
magic numbers evil
2003-07-17 21:45:01 +00:00
Bill Currie
b36bd6a98c
not all systems (eg, QNX) that have mprotect have getpagesize
2003-07-17 21:01:25 +00:00
Bill Currie
a06c4e1708
fix an improperly stringed file found by DrSpliff
2003-07-17 18:40:53 +00:00
Bill Currie
dfa16742e2
fix some silly bugs (sizeof (char*) :P)
2003-07-09 15:38:19 +00:00
Bill Currie
855fc53709
handle alloca properly
2003-07-09 06:28:09 +00:00
Bill Currie
84e071d235
fix an incorrect usage of HAVE_* that finally bit my bum
2003-07-09 04:21:45 +00:00
Bill Currie
4f66e1e9da
fix a bunch of the previous FIXMEs. needs a bit more work for win32
...
compiling
2003-07-08 22:39:45 +00:00
Bill Currie
dddf045221
put "FIXME: overflow" on all the char arrays I could find that weren't
...
obviously safe
2003-07-08 20:11:10 +00:00
Bill Currie
011fe7babb
make sure the trimmed info key value gets terminated properly
2003-07-08 17:26:50 +00:00
Bill Currie
1d32ff04e6
fix missing params for VA_COPY pointed out by Dalibor Topic
...
<robilad@yahoo.com>
2003-06-25 15:22:39 +00:00
Bill Currie
f22bdfc23f
d'oh, forgot to update the format
2003-06-06 15:47:12 +00:00
Bill Currie
8d470d2b49
don't use qfs_gamedir->* in QFS_NextFilename as it gets passed that in the
...
template (and shouldn't assume where to put the file anyway:). fixes the
all screenshots saves sas qf0000.tga bug.
2003-06-06 15:44:13 +00:00
Ragnvald Maartmann-Moe IV
c6b6c7926f
Fix one bug, but doesn't fix all screenshots being saved to qf0000.tga...
2003-06-06 12:35:52 +00:00
Bill Currie
191a7f61bc
win32 compile fixes
2003-06-05 17:56:09 +00:00
Bill Currie
ce9ddfd186
win32 fix
2003-06-05 17:51:49 +00:00
Bill Currie
58c9203adc
openbsd compile fix from nano
2003-06-05 16:08:10 +00:00
Bill Currie
f061c47242
make QFS_CreatePath work again and remove some old code from QFS_WriteFile
2003-05-30 01:44:39 +00:00
Bill Currie
00abd17dd4
dstring.[ch]:
...
add dstring_copysubstr and make all the substr functions use strnlen
for the incoming string. also fix the append string functions to append
the present string correctly.
cbuf.c:
use dstring_copystr instead of dstring_clearstr/dstring_appendstr
idparse.c:
use dstring_copysubstr instead of dstring_clearstr/dstring_insert
2003-05-26 19:14:18 +00:00
Brian Koropoff
9602d6c88d
Fixed an interesting crash that occured when a recycled idparse cbuf was
...
given to GIB when it pushed the cbuf stack.
2003-05-26 05:07:21 +00:00
Brian Koropoff
3aecdcf42c
Added a temporary hack to make ~/.quakeforgerc work again.
2003-05-25 05:40:25 +00:00
Bill Currie
c2c3a62956
nuke Qexpand_squiggle. instead, expand ~ to $HOME on qfs initialization and
...
cache the value.
don't call Qopen directly in the engine. instead call QFS_Open (generic) or
QFS_WOpen (write only, zip flag).
rework QFS_NextFilename to use a dstring (avoiding a potential buffer
overflow), support 10000 files and work from the top-level fs_userpath
directory. adjust QFS_WriteFile and QFS_WriteBuffers etc to suit.
make sw32 screenshots actually get written.
hopefully everything gets written to the right places :)
2003-05-23 17:17:01 +00:00
Bill Currie
b5a960c57b
fix nq's gamedir handling for the -hipnotic etc shortcuts
2003-05-09 21:10:59 +00:00
Bill Currie
5f3573143a
the beginnings of a jihad against buffer overflows
2003-05-08 23:24:02 +00:00
Bill Currie
be0b3867c7
add dstring_copy and dstring_copystr to make dstring init easier
2003-05-08 23:05:39 +00:00
Bill Currie
09f3f1ea26
mindHog's plugin global symbol handling patch so his python plugin can work
...
(reloads the plugin with RTLD_GLOBAL if the plugin requests it).
2003-04-30 02:14:44 +00:00
Bill Currie
3418e904a4
mindHog's fix for RemoveCommand being totally borked (oops:)
2003-04-25 03:06:34 +00:00
Bill Currie
b43651685a
fix a buffer overrun issue with -game
2003-04-21 04:49:02 +00:00
Bill Currie
a8d171ec40
replace a warped wheel with a strdup wheel ;)
2003-04-21 04:02:58 +00:00
Bill Currie
64d5e4e053
mindHog's (mindhog@mindhog.net) plugin command patch
2003-04-17 15:18:16 +00:00
Bill Currie
eb099ae0d3
make qf gcc 3.3 clean
2003-04-17 00:01:48 +00:00
Bill Currie
589c3e4e49
get nq-server working properly
2003-04-16 05:06:19 +00:00
Bill Currie
f55bac4c06
fix nq-servers non-curses console input so it actually works
2003-04-16 04:07:55 +00:00
Bill Currie
0421c33b85
make sure the cbuf is usable when text gets added
2003-04-15 19:40:46 +00:00
Brian Koropoff
63c3038ad8
Added the useful dstring_freeze function to convert a dstring to a
...
finalized, plain C string.
2003-04-13 05:48:28 +00:00
Bill Currie
5be73df678
temporary fix to handle wav files in a pak file
2003-04-11 18:28:26 +00:00
Brian Koropoff
f287e78030
Optimized the way resetting buffer states occurs and fixed thread::kill so
...
threads actually die as they are supposed to.
2003-04-11 05:58:58 +00:00
Bill Currie
e5a23c95dc
make riff.c portable
2003-04-10 22:52:58 +00:00
Bill Currie
722c55391e
read fmt chunks properly
2003-04-10 22:03:55 +00:00
Bill Currie
5e98c762ed
riff namespace cleanup (sorta, it's ugly:/)
2003-04-10 21:45:12 +00:00
Bill Currie
c58dac3ccf
don't actually read the main `data' chunks; only refer to them by location.
...
allows support for huge wav files (eg, cdda.wav)
2003-04-10 21:34:51 +00:00
Bill Currie
e1b779502a
but the third castle stood!
2003-04-10 21:18:53 +00:00
Bill Currie
0045ab7c09
implement Qungetc and nuke Qgetpos and Qsetpos
2003-04-10 21:11:40 +00:00
Bill Currie
e937fecdc1
move the riff reading code into libQFutil
2003-04-10 16:52:39 +00:00
Bill Currie
39886ebb18
handle short files more robustly
2003-04-10 16:11:09 +00:00
Bill Currie
b80357afda
change _FOpenFile to take a dstring for foundname plugging a potential
...
buffer overflow.
2003-04-09 05:55:41 +00:00
Bill Currie
d4a4cde83c
fix a buffer overflow (oops, not paying attention)
2003-04-08 02:56:36 +00:00
Bill Currie
d5003f363d
make plist arrays unlimited in size
2003-04-07 19:29:52 +00:00
Bill Currie
bd08b03791
don't assuming 32 bpp in setup_pixrow_span
2003-03-21 22:18:20 +00:00
Ragnvald Maartmann-Moe IV
91bebf1bfa
Don't need LA for greyscale textures, switch to luminance-only.
2003-03-21 22:08:46 +00:00
Bill Currie
16eac174e6
correct the scaling of the 5 bit color map types
2003-03-21 16:18:51 +00:00
Bill Currie
fa775c6e30
oops, missed a case
2003-03-21 06:08:57 +00:00
Bill Currie
7e0ce3d3df
skip over any present colormap for non-colormap types
2003-03-21 06:08:17 +00:00
Bill Currie
3e349ee52c
we now theoreticly support greyscale tga files too :)
2003-03-21 05:03:32 +00:00
Bill Currie
6c850c5528
seriously clean up LoadTGA by using a decoder table and implement colormap
...
support (8 bpp only)
2003-03-21 04:23:16 +00:00
Ragnvald Maartmann-Moe IV
bf18436ad5
Whitespace.
2003-03-21 00:51:57 +00:00
Bill Currie
c525bc4925
call the correct read functions for 32 bit rle expansion
2003-03-20 23:11:58 +00:00
Bill Currie
32257923a5
cleanup unused vars
2003-03-20 23:02:53 +00:00
Bill Currie
b2bc3f13ea
support RLE tga files for all 4 directions
2003-03-20 22:54:44 +00:00
Bill Currie
abdb21eadc
however, don't need read_rgb and read_rgba
2003-03-20 21:25:56 +00:00
Bill Currie
4222c501a0
darn, broke the reverse direction and fixing it produces horrid code
2003-03-20 21:24:04 +00:00
Bill Currie
1a18044b31
merge the forward and reverse blitters/readers using a direction flag which
...
gets optimized out
2003-03-20 21:08:47 +00:00
Bill Currie
a01456f851
allocate space for the texture correctly
2003-03-20 21:08:04 +00:00
Bill Currie
3423ed59d5
expand the plist api to make plist creation easier
2003-03-18 19:15:31 +00:00
Bill Currie
eeb2439eb6
need a specific entry for "qw:qw" since servers set the gamedir to "qw"
...
explicitly
2003-03-13 05:43:45 +00:00
Bill Currie
e105198f48
ensure the path passed to Sys_DebugLog is expanded
2003-03-13 05:41:55 +00:00
Bill Currie
72d1343735
add some comments about the coordinate systems used in AngleVectors
2003-03-10 20:44:50 +00:00
Bill Currie
beecb5580f
use %g instead of %f and the 0s hack
2003-03-03 17:52:11 +00:00
Brian Koropoff
ce80fffe69
Massive bug and memory leak fixing.
2003-02-26 07:44:34 +00:00
Bill Currie
32ed283122
don't need that FIXME
2003-02-25 18:13:56 +00:00
Brian Koropoff
c9fbb334f1
Cleaned up the GIB parser and GIB_Execute() a lot. Made aliases work in
...
GIB. Added some breakpoint GIB builtins for debugging script/intepreter
interactions. Made carne work properly again (local variables don't
disappear in interactive mode)
2003-02-25 06:52:27 +00:00
Ragnvald Maartmann-Moe IV
59c4290563
Fix handling of all non-RLE-compressed tga formats we supposedly support. Now
...
we work even if the first pixel isn't in lower left. ;)
Handling the RLE-compressed oddball cases would require a lot more code
duplication, will brute force that later if nobody beats me to it with a clean
solution.
2003-02-23 17:39:23 +00:00
Bill Currie
c026e61d22
make LittleLong and co defines rather than function pointers
2003-02-22 23:23:16 +00:00