Commit graph

390 commits

Author SHA1 Message Date
Bill Currie
4f2e22bfb8 merge and move quakefs.c into libQFutil where it belongs. at long last 2001-03-30 00:44:35 +00:00
Bill Currie
80ee9eb8d1 merge and move quakeio.c into libQFutil 2001-03-29 21:16:16 +00:00
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