Commit Graph

688 Commits

Author SHA1 Message Date
Bill Currie 95d116eac0 make makt.S pic friendly. The ELF abi is bent slightly as ebx was already used
and I didn't feel like subbing it for something else, so esi is the GOT access
register.
2001-03-29 09:10:35 +00:00
Jeff Teunissen 277c17cfd8 Shared library support. The util and gamecode libraries are now shared,
and this clears the way for an external API for utilities and
such. And yes, this means libtool is now used.
2001-03-29 09:07:44 +00:00
Bill Currie cb5c262ffc qtypes.h:
remove includes of qdefs.h and compat.h
pr_comp.h:
	merge pr_comp.h from quake and qfcc, removing the copy in qfcc
cmdlib.[ch]:
	nuke the endian code.
qendian.c:
	initialise the LittleLong etc pointers at compile time rather than run
	time
com.c (both nq and qw):
	nuke the LittleLong etc init code
everything else:
	fix up after the qtypes.h cleanup
2001-03-28 17:17:56 +00:00
Bill Currie 067db089a2 make edict pruning, field parsing and the builtins part of progs_t like they
should have been
2001-03-27 22:39:21 +00:00
Bill Currie 82b533e1ef forgot that .S files don't have dependency info :/ 2001-03-27 21:46:49 +00:00
Bill Currie f78b973978 move the api headers into include/QF and clean up (most of) the resulting mess.
target specific files that I don't build won't compile yet. just put QF/
infront of the offending headers.

Also move ver_check into libqfutils
2001-03-27 20:33:07 +00:00
Bill Currie f6073d756f better progs access error checking and cleanups resulting from it. Fixes
mega2k and nq.
2001-03-27 03:57:17 +00:00
Bill Currie 771648a5b4 forgot to remove the old prstring stuff 2001-03-06 16:10:28 +00:00
Bill Currie 97bf8d2c51 garbage collector implemented but untested. Also unsused because the issue is
WHEN to call it. I don't imagine it will be cheap :/
2001-03-06 05:29:46 +00:00
Bill Currie 4489319298 first step towards garbage collected dynamic strings in qc. All strings
external to the progs file are now malloced and then freed at progs reload.
All that needs to be implementd for gc to work is the scanner and deallocator.
2001-03-06 04:22:33 +00:00
Bill Currie c4616346a1 dx_hack_hash stolen from Daniel Phillips <phillips@innominate.de> in the lkml.
This might or might not give hash tables a better spread. We'll see :)
2001-03-05 16:19:10 +00:00
Bill Currie f40b361fb3 hash.[ch]:
slight api change: the getkey and free functions now take a user data
	parameter (which is an aditional parameter to Hash_New.
cmd.c, cvar.c, quakefs.c:
	clean up the resulting errors.
pr_edict.c:
	use hash tables for lookups of function, global and field definitions.
	should speed things up a bit, ESPECIALLY when type checking is enabled.
2001-03-05 05:11:26 +00:00
Bill Currie aad21e3c00 put the pointer comparison back in so dynamic strings don't cause blowouts 2001-03-05 04:15:59 +00:00
Bill Currie 234dcb4cc9 better(?) string sharing. e1m3 died a sad death in nq due to running out of
strings, but that was because only the address of the string was checked for
similarity. Now strequal is used.
2001-03-05 04:08:08 +00:00
Bill Currie 09b58f7e5f merge math code into utils 2001-03-05 02:06:05 +00:00
Bill Currie 021c1347ed remove the reliance on MAX_EDICTS 2001-03-04 05:42:26 +00:00
Bill Currie 8e52f7dc39 more nq fixes, not there yet 2001-03-03 09:09:39 +00:00
Bill Currie 26c387408c fix a silly edict print bug 2001-03-02 23:07:21 +00:00
Bill Currie 6c9de8061b fix the silly OP_STATE bug. also erradicate pr_offs.c and its contents (the
source of the bug)
2001-03-02 19:18:04 +00:00
Bill Currie ffc5838599 more debug changes. not there yet 2001-03-02 00:32:10 +00:00
Bill Currie be8f1cef7c just some temporary debug info 2001-03-01 23:30:55 +00:00
Bill Currie 6f590ff9d0 forgot to change ev_function to ev_func in pr_edict and pr_exec was using the
wrong time. weaponframe still not fixed, but static entities were fixed in the
previous checkin
2001-03-01 23:03:40 +00:00
Bill Currie ad18afaa3c really clean up global and function access. Unfortunatly, frames are still
borked, at least for the view entity.
2001-03-01 08:34:30 +00:00
Bill Currie cc43c91c89 fix classname field finding 2001-02-28 23:33:16 +00:00
Bill Currie 63b990cd30 qw-server builds, but dies a sad death. I REALLY REALLY NEED to clean up my
progs globals and edict fields accessors, but I'm not so sure that's the cause
of the run-time error:

SV_Error: SV_ModelIndex: model progs/player.mdl not precached
Fatal error: SV_Error: SV_ModelIndex: model progs/player.mdl not precached

I suspect I failed to find the spawn function.
2001-02-28 22:44:38 +00:00
Bill Currie dfaf767890 libqfgamecode now builds. Now for the fun part: getting qw and nq to work using
the new setup.
2001-02-28 09:12:01 +00:00
Bill Currie b5d86d522d pr_edict.c is closer to compiling and has been re-indented 2001-02-28 02:25:03 +00:00
Bill Currie 9f2dacd2e1 re-think edict_t. this is going to massivly break things for a while, but
tough, progs should never have known about entity_state_t in the first place.
Nor should it have been mod spefic.
2001-02-28 01:59:31 +00:00
Bill Currie e5543eb0a6 next step of the progs merge done. just need to sort out interdependencies,
fix PR_SetString, and a few other things.
2001-02-28 00:56:03 +00:00
Bill Currie 38e70e9fb2 the beginnings of merged progs code 2001-02-27 23:02:17 +00:00
Bill Currie 4b1f10d10d fix the problem with getting kicked from tf/megatf servers for changing teams.
Got the `changed' test backwards.
2001-02-24 04:25:27 +00:00
Bill Currie 2bfeed6820 looks like utils is more or less complete for now, except for some fixes in
nq for abyss etc (ie, the magical -<mod> args).
The interface to the message subsystem got a revamp and all the mods to the .c
files reflect this. currently a little ugly, but I plan on abstracting msg
further to clean it up and make it more oo.
2001-02-23 23:16:13 +00:00
Bill Currie 981d067000 merge qw's net_com.c and checksum.c (net_com.c was identitcle to nq's
checksum.c) and then move the resutlting checksum.c into libs/utils
ditching nq's. Due to net_com.c, qw's libqfnet.a will need to be deleted or
you will get duplicate symbol link errors. Also merge crc.[ch] and move
qfplits.[ch] to their final homes. Also, remove a slightly overzealous use
of "static" in qfplist.[ch].
2001-02-23 18:31:48 +00:00
Bill Currie 42e52a7093 %s/libutil.a/libqfutil.a/g due to name space clash found when linking SDL.
New naming convention, all libs will be libqf<subsys>.a (should we instead
use libQF<subsys>.a?). The .so libs, when we get to them, will have to be
sorted out then.
2001-02-22 16:53:15 +00:00
Bill Currie 7516666084 libutil.a is now used by both qw and nq 2001-02-22 08:12:13 +00:00
Bill Currie 9aa50a847c clean up the mess caused by attempting to merge cmd.[ch]. When taken further,
this might give us nice controlability of when cvars can be changed.
2001-02-22 04:46:59 +00:00
Ragnvald Maartmann-Moe IV c6da49206e More typos, spelling corrections, and case fixes fed to the nearest handy fiend. 2001-02-22 00:15:03 +00:00
Bill Currie 95f6db7775 start merging stuff into libs/util and fix the concequences in nq. nq doesn't
build yet though (keys.c, *screen.c and *view.c) due to console fun.
2001-02-21 19:35:06 +00:00