Commit graph

1191 commits

Author SHA1 Message Date
Zephaniah E. Hull
3715430479 This is changing more then I wanted to at once, however.
The major change is that we no longer require libGL to even exist on the
system at compile time for the GL targets, we dynamicly link to the
libGL of choice at run time. (This probably breaks most non-linux
systems, and all GL targets except -glx, some fixup will be needed.)
(This also kills glquake, dead dead DEAD! GONE FOREVER! WHEE!)

Some gl_draw cleanup.

Commented out equake alias model occlusion test stuff, very experimental.

Added the .lo and .la patterns to the .gitignore files.

Some minor sbar cleanup. (We don't use the disc in use symbol for
anything.)
2001-06-24 09:25:55 +00:00
Jeff Teunissen
118645fd51 Property list updates. Objects of type QFDictionary are now hash tables
(and thus have a new simpler PL_ObjectForKey() function to get a value for
a key). Also, you can now call PL_FreeItem() on a plitem_t to free a
property list item and all of its descendants (if it has any).

Binary plist values are still not supported.
2001-06-19 02:10:47 +00:00
Bill Currie
3a94567913 Make Hash_FlushTable loop safe and correct the copyright notices 2001-06-19 02:01:18 +00:00
Bill Currie
f4969d5d67 add some docs for the hash table api and move the include of stdlib.h to
hash.c (no longer needed in hash.h).
2001-06-11 19:37:25 +00:00
Bill Currie
75fbb80b96 make the hash table types opaque 2001-06-11 19:17:40 +00:00
Chris Ison
f600e7c9f9 raised console buffer size 2001-06-09 16:34:13 +00:00
Bill Currie
bbc97079e0 pr_comp.h:
define PROG_ID_VERSION as 6 and redefine PROG_VERSION as 0x00fff001
	(0.fff.001) for the new qc features.
pr_edict.c:
	support version 6 and version 0.fff.001 progs
qfcc.h:
	add version field to options_t
	add min_version field to opcode_t
pr_opcode.c:
	set the minumum version of each opcode (gee, that table is getting ugly)
	filter out opcodes with too high a min_version when initializing the opcode
	hash tables.
qfcc.c:
	update help output.
	accept --id to limit code generation to id compatable (ver 6) progs.
	default progs generation to 0.fff.001
2001-06-09 06:25:33 +00:00
Bill Currie
b9f35283f4 make dist fixes + a --disable-asmopt fix for mingw 2001-06-08 02:47:30 +00:00
Bill Currie
62c783f47a eval_t is no more: too many evil casts involved in using it (which can result
it bad code being generated by gcc).
2001-06-08 00:13:06 +00:00
Bill Currie
2bc94ea66f progs.h:
add no_exec_limit field. Set to 1 to disable the runaway loop check
	for unlimited runs (eg, in qwaq)
pr_exec.c:
	don't bother checking the profile counter if pr->no_exec_limit is set
pr_strings.c:
	free unreferenced dynamic strings rather than referenced.
2001-06-06 18:10:47 +00:00
Joseph Carter
4a0d453b48 The gfx.wad error is now idiotproof! 2001-06-05 08:39:27 +00:00
Bill Currie
8c92504fd1 add a sentinal `type' for type counting purposes 2001-06-04 17:51:39 +00:00
Bill Currie
e339e82c01 hash.h is now const correct as is a lot of qfcc 2001-06-04 04:52:14 +00:00
Bill Currie
275e74161b string comparison operators 2001-06-04 03:36:35 +00:00
Bill Currie
bd4abbab06 give the opcodes a type 2001-06-03 19:32:50 +00:00
Bill Currie
09118bc01e pr_comp.h:
add OP_ADD_S. WARNING!!! this /will/ move.
progs.h:
	add prototype for PR_PrintStatement
pr_edict.c:
	add OP_ADD_S support in the progs checker
pr_exec.c:
	implement OP_ADD_S
tools/qfcc/include/.gitignore:
	add config.h.in
qfcc.h:
	nuke PR_NameImmediate and change PR_ParseImmediate's prototype (see
	pr_imm.c)
pr_comp.c:
	add ADD_S, adjust for PR_ParseImmediate's prototype, make
	PR_ParseExpression work with non-sequential opcodes (slow, will work on
	that next). Fix up initialised global parsing.
pr_imm.c:
	nuke PR_NameImmediate. didn't work well and wasn't such a good idea anyway.
	PR_ParseImmediate now accepts a def_t * arg. if null, will allocate a
	new global def, otherwise it will initialize the def passed in.
qwaq/main.c:
	sports some debugging code (dumps info about the progs it's running)
qwaq/main.qc:
	better ADD_S testing
2001-06-03 17:36:49 +00:00
Ragnvald Maartmann-Moe IV
85333a9f96 Convert cd audio libs to plugins. Windows untested, dos and sgi not converted yet. 2001-06-01 22:55:33 +00:00
Bill Currie
323015b11a include/QF header cleanup. including config.h (or any file from include) is
a nono because headers in include/QF get installed, but include don't and thus
would break quakeforge-dev.
2001-05-31 05:33:13 +00:00
Bill Currie
6bf58ab1af no header includes cvar.h now 2001-05-31 03:41:35 +00:00
Bill Currie
940598f240 merge pcx.c, tga.c and wad.c. util seemed the most logical place, but LoadPCX
had to be modified to get away from vid.h (better designe now IMO anyway)
2001-05-30 20:56:53 +00:00
Joseph Carter
05adfd0e53 quakefs.h -> vfs.h
quakeio.h -> vfile.h

More diff reduction between trunk and my VFS code.  Also took the time to
put some headers in order and fix a few #include's pointed out by moving
things around a bit.
2001-05-30 04:34:06 +00:00
Joseph Carter
186d577818 s/QFile/VFile/g - makes my diffs much smaller and more manageable for the
VFS work.
2001-05-30 03:21:19 +00:00
Bill Currie
f0cfc46cb7 model.h:
add a crc field to aliashdr_t
model_alias.c:
	set it for all models
cl_parse.c:
	set the pmodel and emodel info keys to the crcs of the player and eye
	models
2001-05-29 17:37:48 +00:00
Bill Currie
04d4df1e19 fix nq's skin code so it doesn't upload skins every frame 2001-05-27 04:23:39 +00:00
Chris Ison
14fc2d0b6c added GPL comments and fixed missing include in gib_modules.c 2001-05-25 20:31:47 +00:00
Joseph Carter
c5735d2f19 A little sanity in gib's header deps. Not much granted, but it's there. 2001-05-25 16:09:14 +00:00
Joseph Carter
9788b579c5 Modify the hack used by qpic_t slightly. This is not over, but this will
do for now.  A full texture_t should eventually replace qpic_t/glpic_t..
2001-05-25 10:40:30 +00:00
Bill Currie
a87c4bbd93 vid.c:
Don't bother checking vid_gamma for CVAR_ROM becuase it is impossible to
	get to VID_UpdateGamma when it is set except for when the cvar is
	initially created, and we /want/ the code to execute in that case.
vid.h:
	add initialized to viddef_t
vid_common_gl.c:
	actually /use/ gammatable (it tends to help)
vid_*.c:
	clean up rendundant decls of gammatable, vid_initialized (now
	vid.initialized) and make sure vid.initialized gets set.
gl_view.c:
	remove gammatable decls
2001-05-25 04:03:47 +00:00
Bill Currie
f83b9be0ba remove redundant vid_gamma_avail decls 2001-05-24 23:49:28 +00:00
Bill Currie
1a25bc9349 gl_screen.c and screen.c are now client clean (and merged :) 2001-05-23 06:33:23 +00:00
Bill Currie
ec7335029d gl_draw.c is now client clean. 2001-05-23 04:05:10 +00:00
Bill Currie
c500fd7479 make dist fixups 2001-05-22 17:09:03 +00:00
Zephaniah E. Hull
f25cea4112 Actually compile, oops. 2001-05-22 12:03:44 +00:00
Zephaniah E. Hull
5245f56012 Validate userinfo strings on connect. (Part of a nasty DOS fix.) 2001-05-22 12:00:45 +00:00
Bill Currie
4a80639556 sw and gl rmisc are now client clean. the graphing functions ahve been pulled
out into r_graph.c (Time and Z graph), cl_ngraph.c (Net graph), and
{gl,sw}_graph.c (R_LineGraph). gl_ngraph.c is gone. Unfortunatly, something
is rather wrong with NetGraph in gl (probably R_LineGraph).
2001-05-22 06:00:38 +00:00
Bill Currie
0a4b53c817 gl_rsurf is now client clean 2001-05-21 23:09:46 +00:00
Bill Currie
da8715f27d sw_ralias.c and gl_rmain.c are now client clean. this involved a bit of a
revamp of skins. keep an eye out for broken skins (especially in nq)
2001-05-21 22:25:35 +00:00
Bill Currie
a79ab3faf8 abandon the oss write only attempts. 2001-05-21 17:40:12 +00:00
Ragnvald Maartmann-Moe IV
bee8473715 Added merge notes. 2001-05-21 16:22:31 +00:00
Ragnvald Maartmann-Moe IV
a9c9a46c37 client.h gone from gl_rlight.c and sw_rlight.c.
cl_lightstyle -> r_lightstyle
2001-05-21 03:08:07 +00:00
Bill Currie
ece576ed4b reduce gl_rmain's dependency on cl*.h 2001-05-21 00:22:35 +00:00
Bill Currie
337430a113 sw_rmain.c is now client and chase clean. 2001-05-20 20:38:51 +00:00
Bill Currie
44943e78de better fix for the dlights problem (will prevent similar problems in the
future)
2001-05-20 06:23:46 +00:00
Bill Currie
d360b01827 move dlight stuff out of cl_* into r_main.c. nq dlights seem to be broken,
but that seems to have been from before this work
2001-05-20 05:42:52 +00:00
Bill Currie
daca64ed04 more cl*.h dependency cleanups realtime and cl.time are no longer reffed 2001-05-20 03:54:55 +00:00
Bill Currie
d1c2b0ec52 r_efrag.c no longer relies on cl*.h 2001-05-20 02:39:56 +00:00
Bill Currie
e0512e4af3 r_efrag.c is almost client.h free 2001-05-20 01:58:59 +00:00
Jeff Teunissen
5a7b7571f3 Misc. API header cleanups. 2001-05-19 23:24:20 +00:00
Bill Currie
ec5daaa764 finally merge render.h. nq will NOT currently compile. I'll fix that when I
get back onto my computer at home
2001-05-19 00:23:21 +00:00
Adam Olsen
9cc30959e4 Sound now uses runtime plugins. Much thanks to Deek for doing all the
thinking :)
set fs_pluginpath to point to the right dir, and set snd_plugin to pick a sound
plugin.

Current issues:
- alsa 0.5 won't build properly, dunno why
- segfault on exit.  I think I know the cause of this, and how to fix it
- alsa 0.9, gus, sgi, sun, and win32 havn't been tested
2001-05-19 00:05:35 +00:00
Bill Currie
d16dc87dfa fix oss' device openning mode. defaults to write only, but read/write can be
selected by setting snd_oss_rw (need better name?) to non-zero
2001-05-16 18:59:31 +00:00
Bill Currie
72cc67e863 kill r_fullbright and r_draworder
`merge' skin handling
2001-05-16 06:01:34 +00:00
Bill Currie
559aa4485b split out the qw client specific skin code from skin.c 2001-05-11 22:47:15 +00:00
Bill Currie
74f734df67 clean up *_skin.c's header dependencies 2001-05-11 21:23:43 +00:00
Bill Currie
2c07108c65 model loading code merge. dragged in smoe merges and cleanups of d_iface.h,
r_local.h, r_shared.h, client.h and render.h at the same time (couldn't get
away from that:/) verly likely to be lots of breakage (eg, player and eye
models are NOT checksummed atm), but everything builds
2001-05-10 06:01:11 +00:00
Ragnvald Maartmann-Moe IV
37a93b3e91 Merge draw.h. 2001-05-09 22:40:51 +00:00
Bill Currie
a590700249 move gib_*.h to include (internal headers)
move gib.h to include/QF
fix up the refs to gib.h
2001-05-09 20:50:38 +00:00
Bill Currie
83af1368e1 remove pcx.c's dependence on cl_parse.h 2001-05-09 18:48:55 +00:00
Ragnvald Maartmann-Moe IV
910e76a900 More header musical chairs chaos. You there! No eating the chairs! 2001-05-09 18:42:37 +00:00
Ragnvald Maartmann-Moe IV
7567098bc0 More header merges. 2001-05-09 17:57:57 +00:00
Bill Currie
cc68e1a12e qf now links with NO optimisation (not even -O). R_CullBox has been moved from
glquake.h to mathlib.h (along with the declaration for frustum) and the
extern inline keyworws protected by an ifndef so that mathlib.c can cause
R_CullBox to be compiled publicly. The definition of frustrum has been moved
from its verious locations into mathlib.c.
2001-05-07 04:08:34 +00:00
Zephaniah E. Hull
4b3311983b cl_demo.c: Modified timedemo to give a little more precision with FPS.
gl_draw.c: Fixing gl_lightmode 1.
gl_dyn_part.c:
  Fixing gl_lightmode 1.
  Fixed word wrapping on comments.
  Switched to using the new vertex array setup.
gl_rmisc.c: New vertex array setup.
varrays.h: New vertex array setup.
2001-05-02 13:48:04 +00:00
Jeff Teunissen
c364e1c3cf The first version of the QF Plugin API. Version 1.0 supports input and
sound (digital audio, that is, not CD) plugins right now, more to come
later.
2001-04-24 22:19:42 +00:00
Bill Currie
4be4e5ccf6 clear not-yet allocated entities to 0xdeadbeef 2001-04-20 17:51:57 +00:00
Bill Currie
527471a7de *-wgl finally links (who knows if it works?:) and some more conceptual
cleanup
2001-04-17 15:55:33 +00:00
Bill Currie
3e484da3b8 -x11 now works (qw, anyway) 2001-04-16 19:25:55 +00:00
Bill Currie
065649e488 rework VID_InitBuffers to use callback to init the draw buffers.
Unfortunatly, this means that VID_InitBuffers needs to be called twice during
startup (once in VID_Init, and once in D_Init).
2001-04-16 09:12:21 +00:00
Bill Currie
36cbe70826 vid libs build but probably don't work yet (I KNOW x11 doesn't) lots of
build failures in the main source still
2001-04-15 08:04:15 +00:00
Bill Currie
a0ab26ff6b merge screen.h 2001-04-15 07:47:49 +00:00
Bill Currie
7e67fd56f3 getting closer to building the vid libs.
in_common.c is the main input interface. in_x11 has been modified suitably
2001-04-15 07:18:04 +00:00
Ragnvald Maartmann-Moe IV
66fafd3e0e First stage of video and input system merge. The city has collapsed, wreckage sifting ensues... 2001-04-15 04:18:22 +00:00
Bill Currie
5859b3dd1f merge glquake.h. Rather messily done, but it works and all clashes were
sorted out on the nq side assuming that qw did it right (which it does:)
2001-04-14 21:22:08 +00:00
Bill Currie
b025bb32e1 first steps 2001-04-11 19:56:01 +00:00
Ragnvald Maartmann-Moe IV
f789b61c56 Merged joystick code. Great deal of cleanup in input, reduced bizarre overuse of protocol.h...
Maimed joy_win.c, very likely to get odd behavior there, even if it compiles.
2001-04-11 07:57:08 +00:00
Jeff Teunissen
43fd681809 add types to a couple prototypes 2001-04-11 06:05:39 +00:00
Bill Currie
8e2d89c4c2 fix up a mis-understanding about api headers
*taniwha larts himself for not explaining things to Despair
2001-04-10 21:45:42 +00:00
Ragnvald Maartmann-Moe IV
cbb4af711c Remove duplicate sound.h, move some things down from include/QF to include.
Prepare for joystick merge...
2001-04-10 20:15:18 +00:00
Adam Olsen
69022c7ffb Move sound targets into a library. Still doesn't pick one at runtime though. 2001-04-10 09:40:09 +00:00
Bill Currie
a96536c896 nuke commdef.h and clean up the results by putting its contents where they
belong.
also, merge model.h and friends (MINUS render.h). this needed moving efrags_t
from render.h to model.h.
2001-04-10 06:55:28 +00:00
Bill Currie
e236ac4bb2 move mplane_t to qtypes.h so non-asm builds will build (so long as you're not
trying to build -svga)
2001-04-10 02:36:44 +00:00
Ragnvald Maartmann-Moe IV
d7eb585502 Merge cd. Doesn't dlopen different cd drivers or anything exciting... Yet. 2001-04-09 21:15:09 +00:00
Zephaniah E. Hull
a16b2c0070 Borrowed LH's VectorVectors.
Changed smoke trails a good bit.
2001-04-06 18:37:23 +00:00
Bill Currie
581d6bc721 ZERO_LENGTH_ARRAY causes problems for external progs, so just go to 1 2001-04-01 02:09:48 +00:00
Bill Currie
e939ccc40a cvars now sport a callback function that gets called whenever the cvar changes
or on initial get.
2001-03-31 01:02:52 +00:00
Bill Currie
99535102d7 bare bones sys stuff moved into libQFutil. unix stuff seems to work just fine,
but win32 is probably borked atm
2001-03-30 23:24:57 +00:00
Bill Currie
b432d0ea17 pull the game specific stuff out of quakefs.c in preparation for merging it 2001-03-30 00:30:38 +00:00
Bill Currie
f24a33ff05 install the headers 2001-03-29 20:42:08 +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
5a48f987a5 scripted fixups for the QF include move 2001-03-27 23:36:02 +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
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