Commit Graph

2097 Commits

Author SHA1 Message Date
Bill Currie d699926e6f external conchars patch from DrSpliff 2003-09-19 06:22:02 +00:00
Bill Currie aa37db997c check for null function 2003-09-18 22:50:42 +00:00
Bill Currie fea382d1d9 fix an accounting error 2003-09-15 21:13:13 +00:00
Brian Koropoff 362d58fd95 Made reference counting of objects more sane. If a message is sent by an
object, the sending object is included in the message.  This is available
in GIB-scripted methods as the local variable "sender", which will be 0
if the sender was not an object.
2003-09-11 08:51:44 +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
Chris Ison 392902f5af added SND_NoResampleStereo so that streams that don't need resampling aren't forced to, also added midi support via libWildMidi, MIDI FILES RULE 2003-09-10 05:20:51 +00:00
Bill Currie 89833cb4d7 support streams that don't want any resampling 2003-09-09 22:20:10 +00:00
Bill Currie 0e6c56aa92 drop alsa 0.5 support and rename snd_alsa_0_9.c to snd_alsa.c. also rename
the alsa0_9 plugin to alsa.
2003-09-09 18:43:38 +00:00
Bill Currie 4ce44cf9eb PNG write support from DrSpliff 2003-09-09 16:18:13 +00:00
Bill Currie ba4ca3515d make the default pcm device "default" 2003-09-08 22:56:06 +00:00
Ragnvald Maartmann-Moe IV 387f6a6f64 Clean out silly typedef bloat, clean up whitespace. 2003-09-08 20:07:51 +00:00
Bill Currie 2ea7ca1efd windows has a LoadImage #define, so kill it :) 2003-09-08 15:49:21 +00:00
Bill Currie 61a2840870 autoconfiscate the png support 2003-09-08 14:32:54 +00:00
Bill Currie 89586e0181 don't flush garbage to the screen on the first render frame 2003-09-05 06:55:12 +00:00
Bill Currie 3a8cfb050e fix alpha blending in 2d mode when 3d has never been rendered 2003-09-05 06:48:03 +00:00
Bill Currie 92b6550fe3 correction pointed out by DrSpliff 2003-09-05 04:07:19 +00:00
Bill Currie 6b036d14ed in_mouse_accel patch from qize@gmx.net 2003-09-04 22:29:40 +00:00
Bill Currie a0875ea909 eliminate the global variables 2003-09-04 21:24:20 +00:00
Bill Currie 2b5a3753ca nuke QF/texture.h moving it's contents into QF/image.h (yay, finally, a
real home for tex_t:)
2003-09-04 18:59:39 +00:00
Bill Currie 39ed540979 LoadImage is now used for all external textures giving almost transparent
.png and .tga support.
2003-09-04 18:46:59 +00:00
Bill Currie 753dc02deb use dtrings to do the filename manipulation 2003-09-04 18:09:02 +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 d186f242b7 DrSpliff's LoadImage code (thanks:) 2003-09-04 16:32:39 +00:00
Bill Currie ff43d61f81 use the correct bytes per pixel count 2003-09-04 16:26:14 +00:00
Bill Currie d0aaa5263b since the tex data is rgba, /say/ it's rgba, not rgb :P 2003-09-04 15:14:09 +00:00
Bill Currie 30e0cba25d better formats for load* and store[bp]* 2003-09-04 05:30:55 +00:00
Bill Currie 3305c0f51f PNG reading support, much thanks to DrSpliff 2003-09-04 05:24:05 +00:00
Bill Currie 8db2660a4c make GL_LoadTexture support RGB textures (ie, 24 bit). I'm not happy with
the solution, but at least it works.
2003-09-04 05:22:23 +00:00
Bill Currie 0a8867fde9 replace all VectorSubtract (vec3_origin, ... and
VectorCopy (vec3_origin, ... with VectorNegate (... and VectorZero (...,
respectively. Should be a small speedup.
2003-09-03 22:17:04 +00:00
Bill Currie e0866a5e41 make the escape attempt notification a developer print 2003-09-02 04:57:44 +00:00
Bill Currie a1fa0b3feb make sure the pointed to def has a name before attempting to print it 2003-09-02 04:52:54 +00:00
Bill Currie 4d1313d0c1 don't seg when using 1 component lightmaps 2003-08-30 22:39:27 +00:00
Bill Currie f7b1196b8d fix the gl stack overflow (and make sure all skybrush surfaces get checked
and queued)
2003-08-28 19:50:28 +00:00
Bill Currie 2c30939891 remove some magic numbers (sloppy coder:P) 2003-08-28 02:24:08 +00:00
Bill Currie 93327cb618 try to fix segfault caused by VID_Shutdown getting called before VID_Init
(error conditions).
2003-08-27 22:50:39 +00:00
Ragnvald Maartmann-Moe IV c2053fbfb1 Prettier particles! Renderer is now informed of sv_gravity changes in qw. Not
supportable without protocol changes in nq.
2003-08-27 22:20:03 +00:00
Bill Currie da05864313 ports < 1024 are bad, period :) 2003-08-27 17:47:53 +00:00
Bill Currie 415fae8d6b make the two normals arrays consistent 2003-08-26 07:00:13 +00:00
Bill Currie cf93f5f65e oops, who let C++ into C? :) 2003-08-25 01:47:05 +00:00
Bill Currie 96202a5984 bah, forgot to -1 the instruction pointer for jumpb 2003-08-24 07:23:12 +00:00
Bill Currie afb42f5ed0 fix the unsigned comparison opcodes 2003-08-24 05:53:15 +00:00
Bill Currie 253d19876c no code to dump for a null function 2003-08-24 05:08:47 +00:00
Bill Currie 5d8bebfff8 implement class_get_class_method and (partially) class_pose_as 2003-08-24 03:44:12 +00:00
Bill Currie b50d283b28 make sel_get_uid and class_get_instance_method work 2003-08-23 22:16:42 +00:00
Bill Currie edb716ada0 oops, forgot to remove developer forcing 2003-08-23 06:21:35 +00:00
Bill Currie 385a90e8fb correct pr_symtab_t to include the pointer to the array of selectors used
in the module. Unfortunatly, this requires a version bump on both qfo and
progs files due to the changes structure layout.
2003-08-23 06:15:19 +00:00
Bill Currie 98beb38540 implement jumpb correctly 2003-08-22 19:48:36 +00:00
Bill Currie cb6eba87ca print the value even for unknown defs if the type is known 2003-08-22 17:32:55 +00:00
Bill Currie a2300387de fix a bunch of segfaults 2003-08-20 22:36:02 +00:00
Ragnvald Maartmann-Moe IV d8068de4fa Commit experimental particle optimization. Reduces random particles from using
6 15 bit rand() to 2 calls, with 5 bits for each of the 6.
This is up to a 1% speedup for qf particles, and up to 2.1% for id.

It may particularly affect explosions with r_particles_style 0.
Please report any anomolies in any particle effects.
2003-08-15 20:26:09 +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 33a57c5a14 win32 compile fixes 2003-08-13 18:17:30 +00:00
Bill Currie fe3b544528 handle "return 0" a bit better. assumes location is is always 0, but it
always has been (and always /should/ be anyway:)
2003-08-13 17:27:34 +00:00
Bill Currie 28e2679f0b while downward overlapped memcpys are safe, shut up valgrind 2003-08-13 17:07:42 +00:00
Bill Currie 6f519c7e0f don't bother doing the copy if the value to be returned is already in the
return slot
2003-08-13 17:07:05 +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
Ragnvald Maartmann-Moe IV 9ed8150b85 More particle optimizations. 2003-08-11 20:48:34 +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 b88d275994 fix some warnings 2003-08-11 05:16:04 +00:00
Ragnvald Maartmann-Moe IV f35b1db291 Fix a potential uninitialized variable segfault taniwha noticed, and optimize
particle effects a bit more.
2003-08-09 04:38:11 +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 184aa7beb0 should be a minor speedup to mono lightmaps 2003-08-07 21:05:58 +00:00
Bill Currie 732a9a80d1 gain about 3 fps (180 to 183) in null-renderer 2003-08-07 19:58:39 +00:00
Bill Currie cbc6c40d33 get some single source instruction formats right and handle empty paths
properly
2003-08-05 17:27:47 +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 59c26b5ce0 quick fix to handle .ent files starting with comments 2003-08-04 05:21:18 +00:00
Bill Currie 07d7f81e14 hopefully fix the alsa-lib assertion bug 2003-08-04 03:36:55 +00:00
Bill Currie 6f88e4e343 break out some duplicated code into a function and get the window coords
"properly" (for this mess I'm not sure I'm willing to call code:)
2003-08-04 01:28:30 +00:00
Bill Currie dd9ab1e050 get unsigned mostly working 2003-08-01 21:20:04 +00:00
Bill Currie 9210829573 PLUGIN_INFO decl cleanup 2003-08-01 19:53:46 +00:00
Jeff Teunissen f04d67f319 Nuke the old-style Object's dead built-in methods. 2003-08-01 16:42:02 +00:00
Bill Currie cbd5c70320 oops, %O should be in hex 2003-07-31 01:57:29 +00:00
Bill Currie 72eca6a956 get the default right :P 2003-07-30 22:24:44 +00:00
Bill Currie 0806fc33dd debugging improvements. opcodes now sport an optional format specifier for
printing their args (default is "%Ga, %Gb, %gc") and PR_ValueString will
try to print what a pointer points to
2003-07-30 22:24:16 +00:00
Bill Currie dcd143f197 missing/incorrect symbols fixed 2003-07-30 17:44:38 +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 556a6eae8f fix a misplaced _ 2003-07-27 20:47:36 +00:00
Ragnvald Maartmann-Moe IV 351033e8d8 Move vid_conwidth to con_width, and vid_conheight to con_height. 2003-07-27 20:20:20 +00:00
Bill Currie 3886723467 fix some builtin method names due to the selector name fixes in qfcc 2003-07-27 19:57:40 +00:00
Jeff Teunissen c9858f4f65 Preliminary "unsigned" support for qfcc and the gamecode engine. Should still
be compatible.
2003-07-26 21:07:51 +00:00
Bill Currie 6063fb75d9 make the console run at full speed no matter what demo_speed is at. what a
lot of work for such a simple concept :P
2003-07-25 22:21:47 +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 14a9ff2e6b make dx default 2003-07-23 16:43:25 +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 5481273639 start working on plist entity files 2003-07-17 18:27:00 +00:00
Bill Currie 043ec906c4 qnx patch from DrSpliff 2003-07-17 15:17:41 +00:00
Brian Koropoff 695fe40e29 Same changes, this time to HEAD. 2003-07-15 21:46:12 +00:00
Brian Koropoff b7d076feab Add support for run-time regex options (REG_NOTBOL and REG_NOTEOL),
and more text transformation functions.
2003-07-15 21:40:37 +00:00
Bill Currie 772ad66019 don't need that any more (yay:) 2003-07-15 17:41:31 +00:00
Bill Currie cb6bf2e2ae minor house-keeping 2003-07-15 16:34:43 +00:00
Bill Currie 6efa0ca736 if at first you don't succeed... 2003-07-10 22:20:29 +00:00
Bill Currie dfa16742e2 fix some silly bugs (sizeof (char*) :P) 2003-07-09 15:38:19 +00:00
Bill Currie 0cf0f710b7 remove some unneeded code 2003-07-09 15:34:58 +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 21f7365bcc make "win" the default for snd_output on windows 2003-07-08 20:09:23 +00:00
Bill Currie 011fe7babb make sure the trimmed info key value gets terminated properly 2003-07-08 17:26:50 +00:00
Ragnvald Maartmann-Moe IV 2630ed1adf More informative UDP setup failure messages. 2003-06-26 20:24:47 +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
Chris Ison 64f74731c5 added vid_fullscreen cvar as a CVAR_ROM. This will change once the renderer is setup to reload textures.
removed -window, -mode, and internal mode table and functions that strictly delt with them.

Rewrote the mode selection part of VID_Init
Altered VID_SetMode and associated functions to use data obtained from VID_Init instead of mode tables.

Also tidied up a little.
2003-06-21 00:17:32 +00:00
Chris Ison bff8a24d12 added -conheight checking 2003-06-21 00:07:59 +00:00
Bill Currie 862e9d89c5 mindhog's fix for 32bpp x11 2003-06-17 03:11:24 +00:00
Chris Ison d720efe1e6 fixed misplacement of menu 2003-06-16 12:31:52 +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 4cabc2db82 fix a non-curses build issue 2003-06-04 18:07:12 +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
Brian Koropoff 9e57425f4f Make the playcenter hack not screw up sound spatialization. 2003-05-28 04:49:09 +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 1f6acdb0cc Make file::delete and file::move use QFS functions. 2003-05-25 05:42:01 +00:00
Brian Koropoff 3aecdcf42c Added a temporary hack to make ~/.quakeforgerc work again. 2003-05-25 05:40:25 +00:00
Bill Currie 66e2ef1926 fix an uninitialized variable 2003-05-23 17:39:33 +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
Brian Koropoff 30c4da3c76 Change HUD::show and HUD::hide to HUD::enable and HUD::disable. The global
progs variable time is now updated before the HUD drawing function is run.
2003-05-23 02:50:15 +00:00
Brian Koropoff c3d18bd53a Make file::read and file::write use the new QFS functions. This allows
reading files out of paks from GIB. file::find still needs to be updated
(and renamed).
2003-05-22 02:32:38 +00:00
Bill Currie 6a8469df14 start working on VA support for borked GL libs 2003-05-21 21:53:21 +00:00
Bill Currie 3607fecafd copy was meant to be a permanent dstring 2003-05-20 15:56:23 +00:00
Brian Koropoff fad902f0bf Fixed a thinko that was causing events not to run under certain
circumstances.
2003-05-17 17:36:10 +00:00
Bill Currie ba3601685c wad pics don't have extensions (plugs a buffer underflow hole) 2003-05-16 19:44:25 +00:00
Bill Currie 7e657c49f1 fix a buffer overflow (order of ops) 2003-05-16 19:36:03 +00:00
Bill Currie 460c8f7f0f mindHog's qfpython patch. GIB info string event callbacks and a compile fix
for broken x11 headers.
2003-05-16 16:17:24 +00:00
Brian Koropoff ff5ad2ee1c Added text::white and text::brown builtins to produce text of specific
colors.
2003-05-16 07:24:58 +00:00
Brian Koropoff 124d90f84f Add the playcenter command to play a sound without 3d spatialization. 2003-05-15 22:39:34 +00:00
Brian Koropoff 6eaa5518a4 Nuke some dprintfs 2003-05-15 22:39:04 +00:00
Brian Koropoff 0ba2481632 Applied taniwha's mem leak fix. 2003-05-15 21:59:19 +00:00
Bill Currie dedb2fa6bf get [super ...] working correctly 2003-05-15 05:58:31 +00:00
Brian Koropoff dd0332632e Make gcc2 stfu. 2003-05-15 04:37:00 +00:00
Brian Koropoff e160ead563 Added the scriptable HUD interface between the engine, Rua, and GIB. 2003-05-14 21:17:32 +00:00
Brian Koropoff 72c21f60c9 Add support for GIB handles to the Rua interface. 2003-05-14 21:16:23 +00:00
Brian Koropoff bf675e793e Fixed a few GIB bugs, added the chomp builtin. 2003-05-14 21:13:41 +00:00
Brian Koropoff e2061095a6 Fixed .tga loading for GL targets. SW targets still need work in all
likelyhood.
2003-05-14 21:08:43 +00:00
Bill Currie 8ed5962b22 comment out an unused function 2003-05-14 16:29:27 +00:00
Bill Currie 054f4b7bd1 oopsie, that was an ill-advised change :P 2003-05-13 06:20:08 +00:00