Commit Graph

1580 Commits

Author SHA1 Message Date
Bill Currie b2ccb50b81 move qfpreqcc in with qfcc for relationship reasons 2004-01-28 05:34:23 +00:00
Bill Currie 518143bec3 move graph-timeframes and qfgl_gen.pl into misc. general tidy up 2004-01-28 05:31:03 +00:00
Bill Currie 77122c7802 move zpak in with pak since they're intimately related 2004-01-28 05:29:47 +00:00
Bill Currie d3018dd79b move qfprogs in with qfcc (it's going to need to share code) 2004-01-28 05:23:43 +00:00
Ragnvald Maartmann-Moe IV 0e6681a069 Add QFGL_WANT, and ability to handle non-required extensions. 2004-01-28 02:49:57 +00:00
Bill Currie 9abe3b29e0 start of my properties work. doesn't seem to have broken anything :) 2004-01-27 08:31:34 +00:00
Bill Currie 2ea155dc53 make "havoc" map to the correct attenuation type 2004-01-27 08:12:59 +00:00
Bill Currie 080f6779d4 correct a couple of falsehoods 2004-01-27 05:08:21 +00:00
Bill Currie ba901863d2 fix a missing ; 2004-01-27 04:41:20 +00:00
Ragnvald Maartmann-Moe IV 09bdd3487b Compile fixes, plus a couple of minor optimizations. 2004-01-26 20:07:04 +00:00
Bill Currie 5ee1b1d9ca bring in OpenQuartz's extentions (except -ikmap: got tired:)
go back to id's lighting model being default. LordHavoc's is selectable
via --attentuation havoc. Also selectable on a per-light basis.
2004-01-26 07:39:29 +00:00
Bill Currie 897b49140a initialized locals are a little trickier... 2004-01-25 22:08:08 +00:00
Bill Currie f8ed454547 warn on if (a = b) 2004-01-25 21:45:07 +00:00
Bill Currie 7423ee389d better timing for constant folding 2004-01-25 21:36:44 +00:00
Bill Currie 39c7ff1e90 disable debug output 2004-01-25 08:59:55 +00:00
Bill Currie 51b0a66ac7 better constant folding with auto-conversion between scalar types (might
make that optional for non-constants)
2004-01-25 08:55:03 +00:00
Bill Currie 3e5a103e55 proper error checking when openning progs.src 2004-01-22 04:16:19 +00:00
Bill Currie 8f440c7911 linker.c:
I think I found the real reason doxygen gets confused
expr.c:
	add a check for x & y == 2 (or similar) doesn't work for constant y at
	the moment.
2004-01-22 01:04:48 +00:00
Bill Currie 2f21926568 more constant folding 2004-01-21 21:58:34 +00:00
Bill Currie e63b205fd2 don't seg when in traditional mode and @ is seen 2004-01-21 21:43:31 +00:00
Bill Currie 7446967f97 don't need qfdefs any more since the servers now do its job themselves 2004-01-21 20:55:03 +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 0abe875ca0 refer to the correct program 2004-01-18 06:55:47 +00:00
Bill Currie 249aee2e9f move the OO runtime support code from libQFgamecode to libQFruamoko where
it really belongs :)
2004-01-16 08:02:31 +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 7135ff9139 update for latest mingw and flex 2004-01-15 04:04:55 +00:00
Bill Currie 74d8c3e379 use the wadfile support in libQFutil instead of a local version 2004-01-13 06:47:08 +00:00
Bill Currie 1ddd7da5ec remove redundant cast 2004-01-13 03:07:36 +00:00
Bill Currie c31c97a6d9 minor cleanup: LoadBSP really shouldn't be doing the bsp2prt stuff :) 2004-01-13 03:02:25 +00:00
Chris Ison 34f98e5a88 fix incompatable pointer type 2004-01-12 05:36:23 +00:00
Bill Currie d0a95aba9d t-juctions don't affect portals so don't mess with the loaded faces 2004-01-12 02:09:42 +00:00
Bill Currie dd3f9b2265 qfbsp --portal foo.bsp now works :) produces identical results for simple
maps.
2004-01-12 01:52:08 +00:00
Bill Currie 33e80fb595 whitespace 2004-01-12 01:49:27 +00:00
Bill Currie 440e03374e first stab at getting bsp to portal working. produces a portal file that
looks ok at first glance but the numbers are a tad bogus. More loading
errors, I guess.
2004-01-11 08:48:58 +00:00
Bill Currie 41106a1f01 hopefully shut doxygen up about a "const char" function 2004-01-11 05:52:19 +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 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 802aacfaf4 allow constant expressions to be used for builtin numbers 2004-01-07 00:03:05 +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
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 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 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
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 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 cd8035319d PR_GetString should have been returning const char *. now does 2003-11-21 21:34:53 +00:00
Bill Currie bb4e9de0db fix a real oopsie with if (const) 2003-11-16 07:17:18 +00:00
Bill Currie 834ab26be5 remove some buggy debug code :P 2003-10-27 21:48:13 +00:00
Bill Currie 63414ea836 more gccisms in the error reporting (In function ...) 2003-10-25 04:35:47 +00:00
Bill Currie 58d0f188f1 recover from errors in bool expressions (ie, don't segfault) 2003-10-24 22:23:56 +00:00
Bill Currie 8e030089a7 only one define/undefine/include per option 2003-10-24 21:23:03 +00:00
Bill Currie 2469c36302 yay, short circuit logic done :) 2003-10-23 06:21:07 +00:00
Bill Currie 7ef80d1da2 mske sure .self and .this are defined in progs.src mode (ie, @self and
@this)
2003-10-22 21:49:47 +00:00
Bill Currie c76282c668 fix bools in function calls 2003-10-22 16:49:57 +00:00
Bill Currie 5f97de56d1 fix a few bugs 2003-10-22 09:14:53 +00:00
Bill Currie 969dad87eb fix a secfault in return_expr 2003-10-22 08:30:54 +00:00
Bill Currie 72ae59f882 short circuit logic can now be controlled (see man page) 2003-10-22 08:27:38 +00:00
Bill Currie 945006494f short circuit logic for && and || (as per C). forces standard precedence
(ie, breaks --traditional) when enabled (no choice at the moment, next fix)
2003-10-22 08:05:17 +00:00
Brian Koropoff f4c174184d Add support for named arguments in GIB functions and methods, fix a few
bugs, allow subclasses of classes written in GIB to access the same set
of instance variables.
2003-10-19 00:51:47 +00:00
Bill Currie 99034fef27 initialized locals aren't constant 2003-09-25 02:05:43 +00:00
Bill Currie 39c0a0f08d make cluster recursion a warning rather than an error (see how this goes) 2003-09-24 00:59:53 +00:00
Bill Currie 4ce81b28d7 remove nested scopes for traditional mode 2003-09-23 17:59:46 +00:00
Bill Currie 91207c0180 make void functions actually return float in traditional mode (qcc allowed
things like foo = void_function)
2003-09-23 16:57:53 +00:00
Bill Currie 387464a27c mangle precedence of = relative to && and || for --traditional (bletch).
also make noise when assigning to bad lvalues (eg !x = y)
2003-09-23 16:42:03 +00:00
Bill Currie ba26628b80 --traditional now "fixes" (ie, breaks) operator precedence to match qcc
except for the relationship between "=" and "&&" and "||": not sure I want
to go that far towards bug compatability.
2003-09-22 22:15:31 +00:00
Bill Currie 52417dceb3 oops, forgot about this 2003-09-20 05:24:57 +00:00
Bill Currie 9027648721 kill -t for --traditional, add --advanced, default to --traditional for
progs.src mode and --advanced otherwise
2003-09-20 04:13:32 +00:00
Bill Currie 651fa8ca12 correct the operator precendece to match C. hopefully won't cause any
problems :)
2003-09-19 20:50:05 +00:00
Bill Currie 9e861128ec world is supposed to be portalized using the "detail" portals 2003-09-17 22:46:37 +00:00
Bill Currie 4f33663c8c brush.c:
quieten point off plane warning
qfbsp.c:
	allocate less memory for clipped winding
2003-09-17 21:03:52 +00:00
Bill Currie 83ba424ffc force axis aligned planes to truely be axis aligned (fixes degenerate
polygons being generated by ClipWinding) and use LordHavoc's point off
plane correction code
2003-09-17 20:26:57 +00:00
Bill Currie 03d67f6177 ignore some more files 2003-09-15 16:33:16 +00:00
Bill Currie 0db01f41fb progress "meter" 2003-09-12 23:13:11 +00:00
Bill Currie 31112bfc42 it's gimp-paintbrush rather than gimp_paintbrush 2003-09-12 22:03:30 +00:00
Jeff Teunissen 0cd6fb397a Minor cleanups. 2003-09-12 20:52:23 +00:00
Bill Currie ccea0d5d5d seems printf isn't threadsafe 2003-09-12 20:40:14 +00:00
Jeff Teunissen 773eda1929 Okay, all. This is the TexturePaint 1.1 GIMP plugin, modified by me long ago
to work under GIMP 1.2.x -- at taniwha's urging, I am checking this into CVS.

You need libgtk+ v1.2, libgtkglarea v5, libgimp v1.2 (or thereabouts) to get
this to work.
2003-09-12 18:41:29 +00:00
Bill Currie c8d405dbcb oops, else in wrong spot 2003-09-12 18:35:10 +00:00
Bill Currie 9d8569584e fix a typo 2003-09-12 17:14:39 +00:00
Bill Currie deb6b2e3a7 all numeric args now check the validity of their arg (that it's a number) 2003-09-12 16:43:44 +00:00
Bill Currie bf89a486a8 error checking 2003-09-11 18:52:37 +00:00
Bill Currie 84f58bdd5d allow reading of gzipped bsps 2003-09-11 18:21:26 +00:00
Bill Currie 9297732f86 fix a typo pointed out by IrcMonkey 2003-09-11 18:11:20 +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 0c1655ac00 some serious speedups. that memset was fiendishly expensive (oops:) and
redundant anyway (d'oh, paranoia bit me in the bum).
2003-09-10 21:09:23 +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 6eef62cff8 LordHavoc's colored lighting support (not his relight stuff (yet?) though) 2003-09-10 15:48:46 +00:00
Bill Currie 9607b8f5f2 parse the vis data properly 2003-09-09 15:29:14 +00:00
Bill Currie 26f3839276 bring in lordhavoc's vis data optimisations (doesn't work properly yet) and
parsing of his extra fields.
2003-09-09 08:13:33 +00:00
Bill Currie 94f00bbefe it seems wine doesn't like %i in *scanf 2003-09-08 21:57:34 +00:00
Bill Currie f93cc0d5d5 make the reached entity warning display even without verbose 2003-09-08 19:50:19 +00:00
Bill Currie cb5f57fb51 oops, forgot to edit the checks for specified fields 2003-09-08 03:46:56 +00:00
Bill Currie cabe8d6c02 remove some arbitrary limits and add some of the fields from hlight 2003-09-08 03:39:44 +00:00
Bill Currie 50d83a7c56 same with MAX_POINTS_ON_WINDING 2003-09-08 03:25:01 +00:00
Bill Currie ca91f7b727 MAXEDGES? What MAXEDGES? :) 2003-09-08 03:00:53 +00:00
Bill Currie 1a250f0ef7 error checking in LoadLump and handle muptiple wad files better (ie,
properly:P)
2003-09-05 03:47:19 +00:00
Bill Currie 04a1ff51b1 D'OH!!! fixes totally borked vis data :) 2003-09-05 02:27:34 +00:00
Bill Currie 194ea081eb hopefully add watervis support 2003-09-03 23:04:30 +00:00
Bill Currie 4cb6c062ec use the right plane when calculating the texture normals 2003-09-03 22:54:14 +00:00
Bill Currie a30fbfc917 tighten up hl texture alignment parsing and don't print
"adding 0 texture frames".
2003-09-03 22:32:40 +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 231a1bfb56 bring in many of LordHavoc's changes to qbsp: HalfLife WorldCraft texture
alighnment, partial "point of plane" autocorrection (currently disabled: I
want to make it optional), large map support (not sure where that's
hiding), hipnotic entity rotation
2003-09-03 22:00:08 +00:00
Bill Currie 996de18cc6 good line number reporting for errors and treat ^Z and ^D as whitespace 2003-09-03 18:27:27 +00:00
Bill Currie 36f8dbf75a fix a buffer overflow (ouch) 2003-09-02 20:20:54 +00:00
Bill Currie 11538d4745 access arrays in structs more efficiently (especially when using constant
indeces)
2003-09-02 17:41:16 +00:00
Bill Currie f10829206a use a cast expression rather than and bind expression to do the unsigned
comparison for switches. clears the notice (bind seems to be correct in
general) and is more correct conceptually anyway.
2003-09-02 16:53:45 +00:00
Bill Currie 23b525059f cast between integer and unsigned just by changing access method
effectively deprecating conv.ui and conv.iu (they'll die eventually:)
2003-09-02 16:45:36 +00:00
Bill Currie 3a6c8b8b16 wrong place to decrement uses. now have a problem in switch :/ 2003-09-02 06:23:57 +00:00
Bill Currie ef4ca0c798 some doxygen tweaks 2003-08-31 05:24:24 +00:00
Bill Currie cc41875968 make the bbox output easier to read 2003-08-29 00:50:39 +00:00
Bill Currie 4c52975584 make FindPlane much pickier about matching planes 2003-08-27 01:12:03 +00:00
Bill Currie b01d4d4589 get the type for the destination from the right place (hope that wasn't
a bugfix for something else:)
2003-08-24 20:38:32 +00:00
Bill Currie 7cffeb27bf correct the temp def counting when casting 2003-08-24 08:17:31 +00:00
Bill Currie 6086aa2b99 allow casts between pointers and integers 2003-08-24 08:03:25 +00:00
Bill Currie a08efafb7a make sure __VERSION6__ is defined when it should be 2003-08-24 07:26:02 +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 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 b38486d405 make rel_def_op work properly 2003-08-22 19:48:14 +00:00
Bill Currie e9ca03416a create the temp def for bound defs properly 2003-08-22 18:16:30 +00:00
Bill Currie d20b8bf0c1 pass NIL though ... safely 2003-08-22 06:04:31 +00:00
Bill Currie 303287dc11 don't seg on undefined vars 2003-08-22 05:48:19 +00:00
Bill Currie 204243fe95 better message type checking 2003-08-22 05:26:47 +00:00
Bill Currie febc57e71b typecheck message params when possible 2003-08-22 04:08:33 +00:00
Bill Currie 7d09105740 remove debug code 2003-08-21 02:24:11 +00:00
Bill Currie 11c7c27f70 better relocations: pointers to structure members now work 2003-08-21 02:21:30 +00:00
Bill Currie a2300387de fix a bunch of segfaults 2003-08-20 22:36:02 +00:00
Bill Currie 93cafe878a convert NIL properly in function calls 2003-08-20 20:28:28 +00:00
Bill Currie 7d830ffc1f make @defs work properly and don't do uninitialized checks on structs 2003-08-20 19:58:41 +00:00
Bill Currie aa712c0169 make [super foo] work in category methods 2003-08-18 06:11:41 +00:00
Bill Currie aa4f81b6da class.c:
whitespace
switch.c:
	set up the relocations for the switch jump table properly
2003-08-18 02:57:21 +00:00
Bill Currie ff627bfb0d update for mingw 3.0 (thanks, Dabb:) 2003-08-15 21:26:44 +00:00
Bill Currie 53448a483e handle multiple files better and auto-scale 2003-08-13 22:42:52 +00:00
Bill Currie c9346e806c now sporting multiple runs (currently 3) and blending 2003-08-12 22:18:51 +00:00
Bill Currie 515dbaccc0 make qc-lex.c and qc-parse.[ch] part of the distribution (two less
requirements for the average user)
2003-08-12 18:22:11 +00:00
Bill Currie c73d57e9ee put the axes behind the graphs and don't skip the first couple frames 2003-08-12 16:24:50 +00:00
Bill Currie f7fd1d70a2 correct white and add axes with ms and 100 frame ticks 2003-08-12 16:04:00 +00:00
Bill Currie b3f99a70be rename cl_timeframes to demo_timeframes and make it /not/ archive.
move call to CL_TimeFrames_AddTimestamp from cl_main.c to cl_demo.c.

add a hacky little python script to create a pnm (portable anymap file
format) graph from timeframes.txt
2003-08-12 06:33:13 +00:00
Bill Currie 19cf019ed2 barf when given a bsp file instead of a map file (and don't zap the bsp file
in the process!!!)
2003-08-11 20:43:26 +00:00
Bill Currie fa31cb73b5 don't seg if files can't be opened 2003-08-11 17:11:44 +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 4a680bf981 grovel around for the source file and line of an undefined def to give
better diagnostics
2003-08-06 21:36:07 +00:00
Bill Currie 56e79e32b5 configure fixes from MrFixit (+ a buch of "x..." for test) and make
qwaq.dat depend on qfcc
2003-08-06 18:20:48 +00:00
Bill Currie 448b6f24be make the useless expression warning more interesting 2003-08-05 21:41:48 +00:00
Bill Currie 329c91fce4 expr.c:
qcc actually had the precedence of "!x && y" correct, so don't invert
	the logic for it in traditional code.
qfcc.c:
	allow the .debug_file def to be emitted in traditional mode.
2003-08-05 17:48:16 +00:00
Bill Currie 3e3b316891 blah, double ; 2003-08-01 21:26:36 +00:00
Bill Currie dd9ab1e050 get unsigned mostly working 2003-08-01 21:20:04 +00:00
Bill Currie 8e21ecd4d9 make private methods work properly and put overided methods into the
correct class
2003-08-01 16:24:44 +00:00
Bill Currie 1b5bf9d176 make methods showing up only in the implementation work when overiding an
inherited method
2003-08-01 05:08:15 +00:00
Bill Currie 24f4bcfebf initialize the new field properly 2003-08-01 02:43:51 +00:00
Bill Currie 0361cb261f fix an incorrect inherited attribute access caused by my "no ivars" fix
(part of the struct re-work)
2003-08-01 02:43:11 +00:00
Bill Currie ae8e7553ce fix struct parsing and printing 2003-07-31 06:17:49 +00:00
Bill Currie 9f0d4cc746 must use save_string when source of string is unknown :P 2003-07-31 06:14:26 +00:00
Bill Currie cc0d8b364d fix a couple "value computed is not used" not used warnings 2003-07-31 02:16:26 +00:00
Bill Currie ab94498503 heh, that was a symptom. forget &void :) 2003-07-30 21:55:32 +00:00
Bill Currie 8099f0d8f2 handle addresses of void defs 2003-07-30 20:57:50 +00:00
Bill Currie e957dc798f oops, initialize type_param properly (D'OH:) 2003-07-30 17:59:34 +00:00
Bill Currie 6ecb707257 revamp the struct system so "struct foo;" does the right thing (ala C) 2003-07-30 04:11:45 +00:00
Jeff Teunissen 5c1875ba28 Update the interface-check warning to be more descriptive. 2003-07-29 18:53:13 +00:00
Bill Currie 5e6b25c917 add interface-check warning option. defaults off 2003-07-29 18:31:12 +00:00
Bill Currie 5b9b11241b make method lookup work with id 2003-07-29 17:38:29 +00:00
Bill Currie be6a7ae715 d'oh 2003-07-27 21:33:05 +00:00
Bill Currie 8966b0a533 get -/+ into selector name for "does not respond to" warning. 2003-07-27 19:47:14 +00:00
Bill Currie f0c5a374d2 get selector naming (and method name mangline) right 2003-07-27 19:13:13 +00:00
Bill Currie 411bddb0d8 whitespace 2003-07-27 18:50:17 +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 1366ad4661 fix <protocol_list> 2003-07-25 20:34:24 +00:00
Bill Currie 34df024e34 make sure protocol_hash exists 2003-07-24 19:41:59 +00:00
Bill Currie 5962900e25 allow rel_def_op relocs to point just past the end of the code. needed for
jump tables.
2003-07-24 17:51:24 +00:00
Bill Currie 378c477b8e setup vector fields properly 2003-07-23 18:40:09 +00:00
Bill Currie 778cd78c35 fix some namespace issues with names both being a field and an ivar 2003-07-23 18:28:31 +00:00
Bill Currie 37f660801b QNX's printf doesn't like null pointers 2003-07-17 20:04:07 +00:00
Bill Currie 454aa5c603 more mailing list corrections 2003-07-12 21:50:22 +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 371e57e0a4 make the /* */ comment look right (and test lists:) 2003-06-03 14:46:10 +00:00
Bill Currie 07e9ee5bde make a little more useful 2003-05-23 20:21:43 +00:00
Bill Currie abe657ea12 handle file openning issues a little more gracefully 2003-05-21 15:00:23 +00:00
Bill Currie 19559fb679 fix misplaced bold 2003-05-16 00:19:24 +00:00
Bill Currie c79c4f816e alpha sort the options 2003-05-16 00:08:20 +00:00
Bill Currie 2c5933fb27 fix some errors pointed out by colin (thanks:) 2003-05-15 21:18:51 +00:00
Bill Currie 9bd839e309 correct a couple of typos 2003-05-15 18:55:57 +00:00
Bill Currie 7fb58c63d4 update the qfcc man page 2003-05-15 18:53:45 +00:00
Bill Currie a2243e8936 update the --help docs with all the options 2003-05-15 17:48:59 +00:00
Bill Currie dedb2fa6bf get [super ...] working correctly 2003-05-15 05:58:31 +00:00
Bill Currie bfaa07c726 better type mismatch error reporting 2003-05-15 05:19:05 +00:00
Bill Currie 5fac3e6f3a fix a buffer underflow 2003-05-15 05:10:28 +00:00
Bill Currie 094c9c5cdb make derefencing a pointer without an offset more efficient 2003-05-13 19:49:23 +00:00
Bill Currie f59f766af1 use the correct type when taking the address of a pointer derefernece 2003-05-13 19:42:14 +00:00
Bill Currie 1ea1a2f529 don't bother checking access restrictions in class_ivar_expr as
class_find_ivar will catch them when the generated self.ivar is `parsed'.
2003-05-13 01:30:01 +00:00
Bill Currie 5bd0280d1b more inlining of varargs function avoidance 2003-05-07 21:20:00 +00:00
Bill Currie 0ebf9d6afc more inline avoidance 2003-05-07 15:00:17 +00:00
Bill Currie 9cab099383 more inline stuff 2003-05-07 07:18:36 +00:00
Bill Currie 6fb5acc868 more auto-inline avoidance 2003-05-07 02:45:17 +00:00
Bill Currie 4dcc29a136 bloody gcc deciding #import isn't good enough :P 2003-05-06 21:52:58 +00:00
Bill Currie b6b5089ccc add a "nosave" flag to defs making it easier to make defs that don't get
saved automaticly
2003-04-25 17:00:22 +00:00
Bill Currie 2a127dd702 allow sorting defs by address 2003-04-23 20:10:51 +00:00
Bill Currie 19980964d7 don't create defs for the components of vector or quaternion defs 2003-04-23 19:50:16 +00:00
Bill Currie 8f4308c86a get .param_size and .debug_file linked in properly 2003-04-23 18:25:09 +00:00
Bill Currie 57254e5d33 fix a double ; 2003-04-23 06:17:36 +00:00
Bill Currie 8b24578547 print the operator for the precedence notice properly 2003-04-23 01:56:44 +00:00
Bill Currie f7d806e8d5 can now handle > vector sized parameters 2003-04-22 20:11:16 +00:00
Bill Currie e732cf591d remove all references to OFS_* from the C code. only the macros in progs.h
use them now
2003-04-22 18:20:15 +00:00
Bill Currie a21054fdfc handle def aliases properly in emit_move_expr 2003-04-22 17:26:49 +00:00
Bill Currie 6a0b74ca10 detect type mismatches in method declarations and definitions 2003-04-22 15:48:39 +00:00
Bill Currie 2f6fc5d80c general revamp so params and the return value use proper defs rather than
hardcoded locations. this will allow use of quaternions in the future.
2003-04-22 15:29:32 +00:00
Bill Currie 47d4fec5ec allow a named def with 0 offset to be printed 2003-04-22 05:39:12 +00:00
Bill Currie 9a40bf2956 get the fix right 2003-04-17 00:25:55 +00:00
Bill Currie 5cb8429f04 bah, cleanup for flex versions :P 2003-04-17 00:14:13 +00:00
Bill Currie eb099ae0d3 make qf gcc 3.3 clean 2003-04-17 00:01:48 +00:00
Bill Currie 7ca2aae6f0 fixes for latest flex 2003-04-16 19:41:52 +00:00
Brian Koropoff e707e9bb89 Moved gib_*.h into include/ and moved the necessary declarations and struct
definitions to QF/gib.h to interface with libQFgib.
2003-04-13 22:07:58 +00:00
Bill Currie 105ef11e0e return a version for GL_VERSION 2003-04-13 05:58:22 +00:00
Bill Currie dccff75f98 don't want to lose this 2003-04-11 23:30:26 +00:00
Brian Koropoff d8c0f50c11 The ultimate GIB bugfix commit, including reworked semantic processing,
a fix for arguments passed to a GIB function run via rcon, and various
other fixes.
2003-04-11 02:57:11 +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 8c13014ad9 kill the debug info 2003-04-10 21:33:43 +00:00
Bill Currie e937fecdc1 move the riff reading code into libQFutil 2003-04-10 16:52:39 +00:00
Bill Currie 7052a6f20b work toward making the riff reader more generally useful by pluggin all the
memory leaks. next step is to get it so the data chunk isn't actually read
but rather its location and size stored.
2003-04-10 05:20:59 +00:00
Bill Currie a9fb183d19 fix another struct type parsing bug 2003-04-07 22:24:15 +00:00
Bill Currie b7d7e7e87f allow assignment from void pointer to any pointer type 2003-04-07 21:57:26 +00:00
Bill Currie 55eb6c3ab1 plug a memory leak 2003-04-07 18:30:47 +00:00
Bill Currie 66ff0cfd4d fix some type parsing errors for structs and arrays 2003-04-07 18:17:43 +00:00
Bill Currie ee821705cc implement nested (and struct) block initializers 2003-04-07 17:44:18 +00:00
Bill Currie 3c58b712d9 don't subdivide hint or skip brushes 2003-04-04 21:48:47 +00:00
Bill Currie 87e73b6e26 portability fixes from freebsd (MrFixit? q@uni.de) 2003-03-31 16:30:23 +00:00
Bill Currie 87a31439e4 don't warn for ! precedence 2003-03-25 17:47:52 +00:00
Bill Currie 0550741fb9 catch ! == bogosity 2003-03-25 17:18:58 +00:00
Bill Currie 81cf1cc99d don't seg on hint and skip brushs. hint and clip brushes are now known to
work (what is a skip brush?)
2003-03-25 16:34:07 +00:00
Bill Currie eb5f2137b4 don't create temp files when only preprocessing 2003-03-24 17:40:27 +00:00
Bill Currie fc553cefbc don't seg if there's no texture data 2003-03-22 04:33:52 +00:00
Bill Currie 29ab911ad4 this might come in handy 2003-03-18 19:49:23 +00:00
Bill Currie 48a5ad0d36 my WIP on porting QuakeEd to GNUstep/QuakeForge 2003-03-18 19:48:24 +00:00
Bill Currie d7a3608943 can now convert v3 models to v6 2003-03-17 19:54:57 +00:00
Bill Currie 067405b461 finally have v3 mdl figured out 2003-03-17 18:41:07 +00:00
Bill Currie 27a02de1cc fix a double fclose 2003-03-17 04:36:06 +00:00
Bill Currie 3a85d98f83 fix an out-by-one error 2003-03-17 00:52:16 +00:00
Bill Currie dc74519205 no flags for mdl v3, but yes to skin type 2003-03-14 01:00:53 +00:00
Bill Currie f604a84363 attempting to reverse engineer mdl ver 3 2003-03-14 00:43:33 +00:00
Bill Currie 1e423b9645 make certain classes get referenced when inheriting from them 2003-03-13 19:16:45 +00:00
Bill Currie 5cb79f423c fix missing break 2003-03-13 17:31:01 +00:00
Bill Currie 6a79ee57c4 the correct fix for overzealous linking: preemptively turf unused externs 2003-03-13 03:18:34 +00:00
Bill Currie bb1b7c481c don't pull in a lib object file due to an /unused/ undefined def. 2003-03-13 01:50:49 +00:00
Bill Currie 71a60717d9 make pr_source_path a ; separated list of dirs and make it controllable in
qfprogs
2003-03-12 22:31:44 +00:00
Bill Currie 15781b2f19 make vector.x work in classes work and don't give an uninitialized warning
for vec.x = 0;
2003-03-12 21:58:24 +00:00
Bill Currie 664e121444 make the output a little more readable 2003-03-12 02:22:06 +00:00
Bill Currie 63edd414d6 use the command line for the file name rather than hardcoding it 2003-03-11 02:55:22 +00:00
Bill Currie 2d796e09f4 ignore dvi files 2003-03-10 21:26:57 +00:00
Bill Currie 627c6f70f5 allow casting between function types 2003-03-10 21:23:05 +00:00
Bill Currie e3ad60f142 add WildCode's error checking for win32 cpp handling 2003-03-10 21:00:48 +00:00
Bill Currie 6b20862865 disable some debug 2003-03-04 21:13:10 +00:00
Bill Currie 4de6a20856 fix a bug with \\ handling just before the end of a string constant 2003-03-04 17:03:49 +00:00
Bill Currie 1c774bc10c remove some debug code :P 2003-03-03 21:10:29 +00:00
Bill Currie 4c5c711ff5 fix a nasty bug where immediates would get aliased. (eg, 2 and 1073741824). 2003-03-03 21:09:41 +00:00
Bill Currie 90752b33fe make TYPE (void) NAME valid (no args) 2003-02-28 23:36:56 +00:00
Bill Currie a45223da6c d'oh, forgot about "default" 2003-02-28 05:18:49 +00:00
Bill Currie ef762e21eb allow initialized globals (since they're constant) to be used in most places
constants are required (switch, initializing globals, enums)
2003-02-28 04:54:07 +00:00
Brian Koropoff ce80fffe69 Massive bug and memory leak fixing. 2003-02-26 07:44:34 +00:00
Bill Currie 382f13f7ce fix a decl mismatch 2003-02-26 05:01:18 +00:00
Bill Currie 106fb77eb3 need AppKit/NSImage.h now 2003-02-25 20:54:24 +00:00
Bill Currie 05fb5fe08b make syntax errors a little easier to understand 2003-02-25 07:48:12 +00:00
Bill Currie 2ba8e871f3 convert \ to / in paths in windows 2003-02-24 21:51:08 +00:00
Bill Currie b928f94440 produce a warning if both @self and self are used in the same progs 2003-02-24 20:10:33 +00:00
Bill Currie 5a58c58e7a don't initialize external defs. this broke source line/file tracking for
@extern defs in headers.
2003-02-24 19:13:56 +00:00
Bill Currie c145fdb20f make the line number dump more useful 2003-02-24 18:51:12 +00:00
Bill Currie 5f75aa024a don't relocate a null function constant 2003-02-24 15:33:57 +00:00
Bill Currie 44285ba5de speed up qfo writing by about 12.5:1 (for large object files, anyway) by
making compression optional (compressed qfo files will still be handled
transparently)
2003-02-23 23:43:43 +00:00
Bill Currie 599ae15490 give the hash functions more unique names 2003-02-22 22:38:55 +00:00
Bill Currie af44b129d6 don't store pointers to defs in the hash table as the defs can move around
due to realloc. can now link large progs
2003-02-21 22:31:40 +00:00
Bill Currie 132bd4ac8d remove some incorrect comments 2003-02-21 22:30:49 +00:00
Jeff Teunissen 5b79b7512a Updates to the Ruamoko manual, still very much in progress. 2003-02-18 20:08:05 +00:00
Bill Currie 6a687f5e45 rename all the globals in quakefs.[ch] to be QFS_* or qfs_* 2003-02-14 19:46:07 +00:00
Brian Koropoff 3c522a83bc Various cleanups and bugfixes. Added proper line number reporting to
errors.  A few new builtin functions, such as slice::find and thread::list.
2003-02-14 08:06:01 +00:00
Bill Currie c46b58f4b5 fix an oopsie 2003-02-05 05:16:51 +00:00
Bill Currie c5f7138db8 emit clipnodes in the correct order 2003-02-05 05:06:14 +00:00
Bill Currie 7073afc0a4 port in OQ's detail, hint and skip brush/texture enhancements 2003-02-04 23:26:26 +00:00
Bill Currie 2dd8a6c39d grok quest's "map2" format (as well as the original) 2003-02-04 18:19:57 +00:00
Bill Currie ab2aa3ae92 start merging in "map2" (quest) support 2003-02-03 22:42:13 +00:00
Brian Koropoff 580ca17546 GIB: Added proper reference counting on parse trees, got threads working
again, added a few new builtins and renamed some others, made misc. fixes
and enhancements.
2003-01-30 23:26:43 +00:00
Bill Currie 2d766710b6 detect multiple initializations of globals 2003-01-29 22:29:37 +00:00
Bill Currie 8a9cd78072 fix up a couple of error cases (and catch them!) 2003-01-29 20:32:44 +00:00
Brian Koropoff 59fbd48a81 Overhauled GIB to parse scripts in advance, among other design and language
changes.  There still remains some bugs to be squashed, a feature or two to
add, and some polishing to be done.  However, it seems to be in a workable
state.
2003-01-28 21:16:21 +00:00
Bill Currie 26c06c09a2 s/__attribute/__attribute__/ 2003-01-27 23:14:07 +00:00
Bill Currie 761a7546dd re-arrange things so __attribute__ and __builtin_expect are properly
autoconfiscated so rcsid will continue to work with gcc 3.3
2003-01-15 15:31:36 +00:00
Bill Currie a4dfef63c3 make all files with rcsid include config.h 2003-01-14 20:18:29 +00:00
Bill Currie e32dc4cdb7 missed the new headers 2003-01-08 16:07:45 +00:00
Bill Currie 71196fedf6 make gcc more anal about prototypes, string constants and function
visibility (ie, global functions must have a prototype)
2003-01-06 18:28:13 +00:00
Bill Currie 122b0d81e7 values.h doesn't seem to be needed and doesn't exist on darwin anyway 2002-12-20 23:41:24 +00:00
Bill Currie 2a5ac8c42d returning value for void function now a warning for traditional 2002-12-13 23:21:09 +00:00
Bill Currie 64a9a8199c allow if (void expr) (with warning) in traditional mode 2002-12-13 23:16:42 +00:00
Bill Currie aec0c9eea1 make return type missmatch a warning for --traditional 2002-12-13 23:05:24 +00:00
Bill Currie 7c86ec2396 go to newer mingw setup 2002-12-13 17:58:51 +00:00
Bill Currie 8ee1461fff fix a changed url and make binutils compile with recent bison 2002-12-12 05:13:56 +00:00
Bill Currie e5400d4e3d remove some debug code 2002-12-10 18:25:11 +00:00
Bill Currie c158f0028b fix gl_stub so it works again and also get the gl functions being looked up
properly
2002-12-10 15:30:16 +00:00
Bill Currie ee30860cef fix a bunch of ;; typos 2002-11-20 21:44:04 +00:00
Bill Currie 599b51b542 hmm, hadn't noticed "stdint.h" 2002-11-19 05:03:42 +00:00
Bill Currie ac8acaacd7 need limits.h 2002-11-19 05:02:57 +00:00
Bill Currie 63dfd5e523 MAXINT isn't as portable as one would like 2002-11-19 05:01:39 +00:00
Bill Currie 0866f5d35f nuke a bunch of commented out code 2002-11-18 23:22:52 +00:00
Bill Currie b44d61e84b use bspfile for reading the map 2002-11-18 22:46:53 +00:00
Bill Currie b1184fc066 run through indent and do some cleanup 2002-11-18 22:14:31 +00:00
Bill Currie 2a1d8555d2 Import Matthew Wong's bsp2bmp utility using quakeio functions, creating an
image_t type for the line point drawing, ditching the raw and bmp formats
in favor of pcx (for now), and renaming to bsp2img. I plan on working on
getopt, bspfile and other image formats in the future as well as generally
cleaning up the code.
2002-11-18 20:48:29 +00:00
Bill Currie 447984226e remove a duplicate perror call 2002-11-18 15:01:02 +00:00
Brian Koropoff 78785a90f8 Added a primitive interactive mode to carne and modified the file::read
GIB builtin to use Qopen instead of COM_LoadHunkFile.  This makes it work
properly in carne.
2002-11-15 23:27:07 +00:00
Bill Currie cb81f17697 bah, bloody bison inconsistencies 2002-11-15 17:12:16 +00:00
Bill Currie 10e34e6d70 ignorage 2002-11-14 22:02:27 +00:00
Bill Currie bad252cb81 support category dumping 2002-11-14 18:44:01 +00:00
Bill Currie 04867e06bc fix a silly bug that caused object names to get mangled when they had a
super class
2002-11-14 18:29:21 +00:00
Bill Currie 3c215ce13f getting closer to working categories 2002-11-14 18:17:43 +00:00
Brian Koropoff 625e1e36d6 Added Sys_PathType, which reports whether a path is absolute, relative
below, or relative above (uses .. to ascend the filesystem). Changed
file functions in GIB to use this.  GIB can now be initialized in a
non-sandboxed mode, which at the moment means that GIB scripts run with
carne can access the entire filesystem.
2002-11-14 05:28:54 +00:00
Brian Koropoff 7b0c24a386 Added carne, the stand-alone GIB interpreter. Made a few changes to GIB
to accommodate it.  Added the strict flag to cbufs, which causes an error
to be generated when a command is not found instead of just warning the
user.  GIB buffers have the strict flag set by default.
2002-11-14 02:10:55 +00:00
Bill Currie 8cf5c9a430 don't die on invalid strings 2002-11-13 16:17:00 +00:00
Bill Currie da334413b8 re-write category handling so it has a better chance of working (category
using code now compiles)
2002-11-12 19:52:43 +00:00
Bill Currie 75c91e78c2 qwaq progs now take args :) 2002-11-12 02:56:10 +00:00
Bill Currie 13c5216373 do some cleanup 2002-11-12 02:30:08 +00:00
Bill Currie 498bdcc406 compile fixes for alpha linux 2002-11-10 02:50:42 +00:00
Bill Currie f94eeb55a2 fix some alpha warnings 2002-11-08 17:36:47 +00:00
Bill Currie 749b56aae7 forgot to fix these when I did the copyrights 2002-11-06 16:32:28 +00:00
Bill Currie ca4b3acd6c big protototype cleanup. Now, except for a few cases, all non-static
prototypes are in headers files.
2002-11-05 19:12:51 +00:00
Bill Currie 43fa6a4002 inherited attributes rock :) (thanks, aho, ulman and sethi:) 2002-11-04 17:54:31 +00:00
Bill Currie 1cba65f6ce fix a gcc 2.95 warning 2002-11-04 02:24:28 +00:00
Bill Currie 7f69f593d3 configure.ac:
define default include and lib paths for qfcc
ruamoko:
	{cl_menu,game}/Makefile.am:
		conform to the new qfcc library linking rules
	lib/Makefile.am:
		install the libs to ${prefix}/lib/ruamoko
qfcc:
	linker.[ch]:
		support path searching for -llib and make linker_add_lib search for
		libfoo.a for -lfoo in the paths, or just a single dir search for the
		libname otherwise.
	options.c:
		support -L libpath and setup the default include and lib paths
		also change most strdup calls to save_string
	qfcc.c:
		check for foo.a as well as -lfoo when deciding whether the file is
		an object file or lib file.
2002-11-01 18:05:12 +00:00
Bill Currie 7af99f422f expr.c:
fix a braino that caused only sizeof expr to work
linker.c:
	print an error message if unable to open the lib
qc-parse.y:
	revamp expression parsing so casting is done via (type)expr rather than
	type(expr)
	make it so pointers to pointers don't need ()s
2002-10-31 22:58:59 +00:00
Bill Currie b3671874bf make dist fix 2002-10-30 15:54:17 +00:00
Bill Currie 9a1223cae2 need 14, not 4 for precache_sound 2002-10-30 05:06:03 +00:00
Bill Currie 14ec35176a spelling corrections 2002-10-30 04:11:35 +00:00
Bill Currie 7a195bb910 revert my fs code subversion (2001/07/17 22:10:20 utc commit) as it's no
longer necessary with the new progs loading code
2002-10-30 03:35:20 +00:00
Bill Currie 912db0336e clean out the cmdlib crap from quakefs.c and nuke qfcc's last dependency
on cmdlib.h (and nuke qfcc's cmdlib.h itself:)
2002-10-30 02:31:29 +00:00
Bill Currie d2cedecfb0 make -t shortcut for --traditional work as pointed out by Dmitry Antipov
(dmitry.antipov@mail.ru)
2002-10-29 15:24:17 +00:00
Bill Currie 4ad8ed1fc2 *sigh* twice now forgot to remove that test code :P 2002-10-26 03:41:34 +00:00
Bill Currie 2679ade8cd forgot 0X0 was just as valid as 0x0 2002-10-26 03:41:10 +00:00
Bill Currie 99cdcc9bd7 support hex numbers 2002-10-26 03:23:19 +00:00
Bill Currie 3a3da6a1c4 nuke PR_InitEdicts as it's redundant and only used in the tools due to
forgetting to remove it
2002-10-23 15:55:38 +00:00
Bill Currie 567b905590 copyright block work 2002-10-22 14:53:18 +00:00
Bill Currie 8fc17d27a8 update 2002-10-21 03:08:54 +00:00
Bill Currie 4ee013c5ba don't seg on null strings 2002-10-20 03:43:14 +00:00
Bill Currie 9f8d7fbca7 re-write the hashing so pointers get merged only if they point to the same
def
2002-10-20 03:31:49 +00:00
Bill Currie 262baccd0e remove debug code :P 2002-10-20 03:31:08 +00:00
Bill Currie 7bb6dd7197 make chained structure assignments (mostly) work. found a bug in the
handling of pointer immediates which needs fixing before this will work in
general
2002-10-20 02:35:12 +00:00
Bill Currie 6ece3bc481 don't use move for non-structs. it wasn't an optimisation anyway. this
fixes the internal error when compiling the quake1 progs
2002-10-20 01:25:15 +00:00
Bill Currie 378931412d make the debug level controlable 2002-10-16 17:31:15 +00:00
Bill Currie 54564a4726 structure copies now seem to work 2002-10-16 17:07:01 +00:00
Bill Currie 0c0e4b23de d'oh, temps are never global 2002-10-16 06:39:49 +00:00
Bill Currie 5a182b7cd4 turns out that flags == 0 is quite valid (d'oh) 2002-10-16 06:33:14 +00:00
Bill Currie 5eeb8bbda2 bah, bison decided to re-arange my tokens! 2002-10-16 06:31:00 +00:00
Bill Currie 7542a2457f replace @argc and @argv with @args.count and @args.list. @args is of type
@va_list making it possible (though not yet: need to implement structure
copy) to pass ... params around.
2002-10-16 02:28:08 +00:00
Bill Currie 27effb5075 make struct_t and enum_t globally visible, re-do how enum info is stored
and make it possible to create a structure using a pre-existing type
2002-10-16 02:05:39 +00:00
Bill Currie 6af57049d5 make pointers work a bit better 2002-10-16 02:04:06 +00:00
Bill Currie 3b3b90ef4a fix for new bison 2002-10-16 01:53:56 +00:00