Bill Currie
c7031b20f3
move vid_fullcreen definition from *.c to vid.c and declaration from
...
context_x11.h to vid.h and remove all extern decls from *.c
2001-09-28 16:54:31 +00:00
Bill Currie
514a4a56cb
fix a win32 namespace issue
2001-09-28 16:29:34 +00:00
Jeff Teunissen
e892131af5
Rename gl_libgl to gl_driver, nuke the last of the HAVE_GLX references,
...
and default gl_driver to OPENGL32.DLL on Win32.
2001-09-28 07:41:38 +00:00
Ragnvald Maartmann-Moe IV
2941c07b0a
Add small cyan light to lightning impacts. And restore particle direction use in nq. Greatly improves blood effects.
2001-09-27 00:43:46 +00:00
Bill Currie
cb4f7eb808
various input line improvements
2001-09-26 16:31:36 +00:00
Bill Currie
06da30ac89
mingw build fixes again (including mostly working in sid: got some link issues)
2001-09-25 06:18:30 +00:00
Bill Currie
36de3c147e
move Sys_Quit and Sys_Error totally into libQFutil. They will call a list
...
of pre-registered (Sys_RegisterShutdown) function before actually exiting
the program. This should take care of the pain when an ncurses server
crashes.
2001-09-24 21:00:23 +00:00
Ragnvald Maartmann-Moe IV
e2f14519fb
Merge world.h. Also reduced smoke particle textures from 8 to 1, a considerable speedup through reduced texture thrash...
2001-09-24 17:52:13 +00:00
Ragnvald Maartmann-Moe IV
d247027954
Use a callback for gl_multitexture which sets gl_mtex_active (now a qboolean, rather than a macro). 0.6-1.0% speedup.
2001-09-23 03:24:23 +00:00
Adam Olsen
07b0d91900
- add a NUM_FOR_BAD_EDICT function, which doesn't care if it's a bad
...
value
- switch some prints over NUM_FOR_BAD_EDICT
- change NUM_FOR_EDICT to call PR_RunError on error, instead of
PR_Error. That was it prints out a backtrace.
(I did it in reverse order ;)
2001-09-23 01:29:52 +00:00
Bill Currie
49a85718f8
total nukage of Con_*Printf calls from libs (except for video). Sys_*Printf
...
(Sys_DPrintf is new) is now used exclusively for all lib printing. Con_Init
sets the sys printf recirection to Con_Print (which has been revamped
appropriatly) and the server sets it to SV_Print (which was SV_Printf and
the new SV_Printf calls /it/). This should fix the rcon print redirection
issues.
2001-09-21 04:22:46 +00:00
Bill Currie
bdf45386f0
some minor work getting the client side of libQFconsole working, but nowhere
...
near complete.
2001-09-19 03:39:04 +00:00
Bill Currie
dd98622859
x11 vid_fullscreen improvements from james (thanks)
2001-09-18 04:53:01 +00:00
Bill Currie
aade80a8d7
/finally/, libQFconsole is being used (qw-server only so far). Still has
...
some minor nits with ncurses and probably has some isues without ncurses
(quit didn't seem to work when I tried).
2001-09-16 05:41:28 +00:00
Ragnvald Maartmann-Moe IV
431ac4eedb
Convert particles to use byte colors instead of float. Roughly breaks even on Mesa on my machine. Should be a speedup under other drivers.
2001-09-14 12:11:54 +00:00
Bill Currie
def8bb3cd5
LordHavoc's VectorIsNull changes from 0.3 but as VectorIsZero (no such thing
...
as a `null' vector) plus a couple of other bits from his patch.
2001-09-11 05:18:15 +00:00
Bill Currie
a046592741
make dist fixes
2001-09-11 03:42:03 +00:00
Bill Currie
74e9f89e8c
forward port the client info string filtering from 0.3 and remove info.h from
...
a couple of c files that no longer need it.
2001-09-11 03:10:29 +00:00
Bill Currie
388513e005
several fullscreen toggling improvements including window location restoration
2001-09-10 16:53:33 +00:00
Ragnvald Maartmann-Moe IV
0d0e570676
Small particle trail speedup/legibility/flexibility improvement, at price of redundant code in sw/sw32. Tradeoffs. *sigh*
2001-09-07 05:37:11 +00:00
Bill Currie
3a9191760f
some minor improvements
2001-09-07 00:11:22 +00:00
Ragnvald Maartmann-Moe IV
419585b6f2
Obvious optimization missed by a certain tired coder. Thanks to LordHavoc for pointing it out.
2001-09-06 01:09:51 +00:00
Bill Currie
008d80df67
s/IMT_DEFAULT/IMT_0/g for the constant and move the name-enum entry for
...
IMT_DEFAULT to the bottom of the list so that IMT_0 gets written as such
rather than IMT_DEFAULT.
Also, clean up nq's EF_* dlight creation a bit (haven't touched
EF_MUZZLEFLASH: undecided on what to do).
2001-09-05 21:22:55 +00:00
Adam Olsen
9ab9764b7a
- Change QA_alloc to use variable-arguments, allowing for a much more
...
extensible interface.
2001-09-05 18:23:38 +00:00
Ragnvald Maartmann-Moe IV
55f0fed0b6
Replace lhrandom with qfrandom, a different convenience macro with better random number distribution (see man 3 rand).
2001-09-05 06:20:45 +00:00
Ragnvald Maartmann-Moe IV
d2c041cae6
Remove and ifdef out currently unused code.
2001-09-05 04:25:47 +00:00
Ragnvald Maartmann-Moe IV
75aaccf9f0
Prettier, but slower particle effects. Also skip particle physics when r_particles 0.
2001-09-05 02:04:02 +00:00
Ragnvald Maartmann-Moe IV
9f3bc7f36f
Remove a no-longer needed note.
2001-09-04 11:06:49 +00:00
Ragnvald Maartmann-Moe IV
65c526c057
Some minor cleanups, and lots of particle effects tweaks.
...
Less blinding rocket trails is probably the most noticable change, other than a nice speedup in nq timedemos. Little change for overkill, though. Aw...
2001-09-04 10:32:51 +00:00
Bill Currie
dc4cd343b5
id's sky code is back (gl_sky_clip 2 when no skybox is loaded). Not as fast
...
as the black polygons (duh:) and not as nice looking as the sky dome, but also
not as slow (fps when standing in the normal coridor looking at the sky in
start: 26 for skydome, 37 for id skys, 44 for black). Good for when you want
to see sky other than black but your card can't handle the fillrate
requirements of skydome. I'll clean up the sqrt in there soonish.
2001-09-03 06:12:10 +00:00
Adam Olsen
f1a016c8a5
- Refine the Cache_Get callback, to use a void * instead of a char *
...
- Switch alias models over to Cache_Get/Cache_Release
2001-08-31 12:22:45 +00:00
Adam Olsen
6cab8cf4e0
- change Cache_Get calls to Cache_TryGet (which I just added), so they
...
can tollerate failure.
- minor error message tweak (an emptry string is not NULL!)
2001-08-31 03:48:26 +00:00
Bill Currie
7aa5ab75de
header dep cleanup and IN_LL_Commands is /gone/
2001-08-30 20:32:27 +00:00
Bill Currie
822e637e11
s/_windowed_mouse/in_grab/ and in_grab and in_dga now use callbacks
2001-08-30 20:04:13 +00:00
Bill Currie
d81d7fd02c
glColor cleanup
2001-08-30 18:24:19 +00:00
Adam Olsen
e149094bd2
- rename Qalloc and friends to QA_alloc
...
- add a QA_strdup
- add Cache_{Add,Remove,Get,Release}, for the locking version of the
cache
- Convert libs/audio/* over to locking cache functions
2001-08-30 11:37:50 +00:00
Bill Currie
0d55476711
make VectorSubtract and VectorCompare macros and clean up the readability
...
of R_DrawParticles
2001-08-29 20:19:54 +00:00
Bill Currie
3656d6fd59
compile fixes for win32 and take the pruning shears to *sys*.c in qw and nq
...
(they're not done yet, though)
2001-08-29 17:45:53 +00:00
Adam Olsen
f423b8a8e0
Preliminary Qalloc implimentation. Not yet used.
2001-08-29 04:52:03 +00:00
Bill Currie
13ecebd6a0
make Z_Malloc and friends more useful by allowing multiple zones
2001-08-28 05:21:30 +00:00
Bill Currie
2f9fd74a31
zone.c gets its name back
2001-08-28 04:24:40 +00:00
Bill Currie
a9d6bc9a30
total nukage of #ifdef QUAKE2 (R_DarkFieldParticles is present, just unused)
2001-08-27 23:21:09 +00:00
Bill Currie
3edd4550d2
heh, nor do we need PROGHEADER_CRC
2001-08-27 21:13:00 +00:00
Adam Olsen
36786400ad
Doh, need this header change to compile.
2001-08-26 10:13:03 +00:00
Ragnvald Maartmann-Moe IV
06dd45bdb1
Merge common lighting code. Still some lightmap-related code in *_rsurf.c that might be mergable. This is the first step towards 3 component lighting for the sw32 renderer.
...
Note that gl_lightmap_components is now r_lightmap_components, and gl_dlight_lightmaps is now r_dlight_lightmaps.
2001-08-25 23:23:14 +00:00
Ragnvald Maartmann-Moe IV
c6266aba36
sw32. Flee in terror. This'll break compilation for everything until -sdl32 compiles. sw32 wont work for a while either, so don't get overly excited yet.
2001-08-25 02:47:11 +00:00
Adam Olsen
cad42cbc78
Put the sound renderer in it's proper place: as a full-fledged plugin.
...
Bugs expected. Please report them :)
2001-08-23 04:01:46 +00:00
Adam Olsen
17ba7ef92f
- move alot of the builtins to libQFgamecode_builtins
...
- move the init into qw and nq
2001-08-22 03:24:25 +00:00
Adam Olsen
1314c89b6c
- add libs/gamecode/builtins subdir, with libQFgamecode_builtins.la
...
- add .gitignore files
- fix building :)
2001-08-21 22:34:20 +00:00
Ragnvald Maartmann-Moe IV
36395e1681
Minor comment updates, Imt->IMT in a few function names, and accel->amp for input amplification (once known as sensitivity).
2001-08-17 07:26:01 +00:00
Zephaniah E. Hull
80696badc7
kgt->imt, and imt now displays the current IMT.
2001-08-17 07:06:01 +00:00
Adam Olsen
62813111a0
yet more IE stuff
2001-08-16 23:34:49 +00:00
Adam Olsen
92729ff6b2
More changes to input events
2001-08-16 22:27:22 +00:00
Adam Olsen
916b503f14
Some basic stuff for input events. Not yet used.
2001-08-16 21:08:17 +00:00
Bill Currie
1c12dd804c
ok, old configs /should/ work again, though I'm having problems with F10
...
not quitting (mind you, I'm not connected)
2001-08-16 20:42:57 +00:00
Bill Currie
b0cb351fba
bind and unbind wrappers for in_bind and in_unbind. old configs/mods are
...
still currently broken because I need to translate key names still.
2001-08-16 19:10:35 +00:00
Zephaniah E. Hull
20adccc9e4
A few things, first is that I removed the (rather broken) serial
...
networking support.
Second, I moves keys.c from qw and nq to libs/video/targets when I did
the next thing.
Existing user configs which do binds, sledge hammer. Sledge hammer,
existing user configs which do binds. *WHACK* *WHACK* *WHACK*
See, much nicer now.
Someone should document it, and fix all targets which don't use SDL for
input. (I honestly don't expect svgalib and the like to ever be fixed.)
2001-08-16 09:19:36 +00:00
Bill Currie
9ee3450265
extend the hash api to more easily support general cases
2001-08-16 02:51:53 +00:00
Zephaniah E. Hull
8f011f91ec
Length is now a #define, not a bloody function!
2001-08-15 23:01:56 +00:00
Jeff Teunissen
61bb65fa3f
Committing some old stuff I hadn't before. This one: removing a variable
...
name from a prototype.
2001-08-15 22:29:09 +00:00
Ragnvald Maartmann-Moe IV
cddaa521cc
Change loadas8bit to snd_loadas8bit.
2001-08-15 00:53:37 +00:00
Bill Currie
dd16a1c4d5
call the IE init ans shutdown functions. still need to rework the rest of the
...
intput system to use it.
2001-08-14 00:03:03 +00:00
Bill Currie
07a09e0812
statement printing now infers the type of a def from the instruction where
...
possible, thus allowing anonymous defs to print their contents.
2001-08-13 23:49:04 +00:00
Bill Currie
283b0e1a21
change the types of the statement operands to unsigned short to clean up
...
most of the uses
2001-08-13 21:09:00 +00:00
Bill Currie
2a6830d2d8
revised dynamic string handling. allows for `bounds checking'
2001-08-13 20:01:37 +00:00
Bill Currie
bbef4b0b6f
ugh, I hate the need for this, but it's needed. sv_old_entity_free is my
...
compromise :) set it to 1 to allow progs like MegaTF to work (reload crash).
2001-08-12 04:14:25 +00:00
Adam Olsen
6414897dae
got a few new operators for qc :)
...
<< >> % which all act like their C counterparts
+= -= *= /= &= ^= |= <<= >>= %= which just expand into the obvious,
also like the C versions.
2001-08-10 16:17:00 +00:00
Ragnvald Maartmann-Moe IV
b868a09661
Kill off gl_view.c and sw_view.c. Renderer merge is more or less complete now. Software and gl renderers now calculate color shifts the same way, and sw looks a bit different now. Powerups don't shift enough in sw right now, IMO.
2001-08-10 00:28:57 +00:00
Bill Currie
ac9dace768
add focus loss/gain events and fix a silly bug in IE_Set_Focus
2001-08-09 23:43:13 +00:00
Bill Currie
bc34529a80
code for the input event system
2001-08-09 23:16:54 +00:00
Bill Currie
c96a092f4e
header for an event based input system
2001-08-09 22:35:41 +00:00
Bill Currie
081d8f3c47
^ and ~ operators for qc (^ from Rhamphoryncus) and clean up the punctuation
...
line in qc-lex.l (why didn't I think to do that in the first place?!?)
2001-08-09 16:34:46 +00:00
Bill Currie
dcc6a76313
make SURF_LIGHTBOTHSIDES work and fix a bug in Mod_PointInLeaf that was
...
preventing grenades from lighting up surfaces when using the vis lighting
2001-08-05 05:59:15 +00:00
Bill Currie
8883bbb369
some lighting fixes. not quite there yet
2001-08-05 05:07:49 +00:00
Bill Currie
647d38fa40
Make R_MarkLights use the vis info to speed things up. Oddly, even though
...
R_MarkLights is now about 3% instead of about 15%, I've lost 8 fps on my
null GL speed test. However, R_AddDynamicLights has jumped up a bit, so I'm
wording if maybe more surfaces are being lit.
2001-08-05 04:01:45 +00:00
Adam Olsen
dc98a63098
Add a getfunction, which gives an error if it's not found
2001-08-04 23:44:50 +00:00
Bill Currie
f9e85cdf8a
split up mleaf_t's minmaxs into two arrays
2001-08-03 23:54:09 +00:00
Adam Olsen
ae133d0a90
Modify progs to add builtins at runtime. It should be trivial to
...
lookup functions by name, and make all our new QC builtins allocate
numbers automatically.
2001-08-03 06:40:28 +00:00
Ragnvald Maartmann-Moe IV
6e9b51edfc
(Optionally) Use glTexSubImage2D for lightmap updates. Doesn't give as large a boost as I'd hoped, but will matter far more as other optimizations happen. New cvars gl_lightmap_align does nothing yet, and gl_lightmap_subimage only works in mode 0 and 1. Mode 2 (should be fastest mode on most cards) will eventully get implemented...
2001-08-02 02:18:04 +00:00
Bill Currie
fe8738b042
make dist works again
2001-08-01 17:49:25 +00:00
Bill Currie
22878209d6
move the forward decl of hashtab_s out of the function prototype
2001-08-01 06:51:06 +00:00
Bill Currie
fb26d8b18a
make Info_Set* take flags indicating wether funchars should be stripped or not
2001-07-31 18:27:49 +00:00
Bill Currie
6cb2cb5bdc
start making the rotated bounding box (really dynamic clipping huls) more
...
generice, and also more in line with the rest of quake's clipping system
(ie, support the entity size selected hulls). I'm not /entirly happy with
what's here, but it's a start, and the force fields in customtf work /much/
better :)
2001-07-30 04:33:59 +00:00
Bill Currie
c248372e20
Initial integer type support. qfcc /is/ partially broken when it comes to
...
integer constants and float function args/return values.
pr_comp.h:
o add the integer opcodes to pr_opcode_e
pr_edict.c:
o add "quaternion" and "integer" to type_name[]
o support quatnernion and integers types when printing values
o support the integer opcodes when bounds checking
pr_exec.c
o enable the integer opcodes
pr_opcode:
o add the integer opcodes to the opcode table
o logical operators all result in an integer rather than a value
expr.h:
o rename int_val to integer_val
qfcc.h:
o kill another magic number
expr.c:
o move the opcode to string conversion out of type_mismatch and into
get_op_string
o rename int_val to integer_val
o general integer type support.
o generate an internal comipiler error for null opcodes rather than
segging.
pr_imm.c:
o rename int_val to integer_val
o support integer constants, converting to float when needed.
pr_lex.c:
o magic number death and support quaternions and integers in type_size[]
qc-lex.l
o rename int_val to integer_val
o support quaternion and integer type keywords
qc-parse.y:
o rename int_val to integer_val
o use binary_expr instead of new_binary_expr for local initialized
variables
builtins.c:
o rename int_val to integer_val
o fix most (all?) of the INT related FIXMEs
defs.qc:
o use integer instead of float where it makes sense
main.c:
o read_result is now integer rather than float
main.qc:
o float -> integer where appropriate
o new test for int const to float arg
2001-07-23 01:31:22 +00:00
Bill Currie
22c9716b56
rename int_var to integer_var
2001-07-22 20:20:46 +00:00
Bill Currie
d6f82b6370
make Qwrite's buffer pointer const.
2001-07-22 18:38:59 +00:00
Bill Currie
55ac55c7ac
rename ev_int and ex_int to ev_integer and ex_integer. create type_integer
...
and def_integer (do I need that?), clean up and or coment on XXX and FIXME
2001-07-22 06:59:12 +00:00
Bill Currie
7e8c75f7c9
forgot to commit this
2001-07-22 03:23:15 +00:00
Bill Currie
46176e1094
azerty kb patch from Filip Van Raemdonck <mechanix@digibel.org>. includes some
...
misc fixes, too
2001-07-19 21:46:34 +00:00
Bill Currie
edcc313501
debug info for local variables is now used. only works when tracing atm:/
2001-07-19 07:27:14 +00:00
Adam Olsen
a771b5bd6c
Make edicts command support a search string, so it only prints edicts
...
with matching classnames. Makes it easy to print out the type you want
for debugging :)
2001-07-19 03:18:11 +00:00
Bill Currie
e9ed59ec27
add an integer type. not yet properly supported
2001-07-18 15:40:32 +00:00
Bill Currie
02e021a958
get the progs /loader/ name and prototype sorted out properly
2001-07-18 02:21:57 +00:00
Bill Currie
159bc6147c
create an "input line" object for the console so Con_ProcessInput can be used
...
in verious contexts
2001-07-17 16:46:51 +00:00
Bill Currie
bab80a0648
move the special keys out of the way of ascii codes (unless they represent
...
ascii codes (eg, K_ENTER)) and remove the magic number for the number of keys.
2001-07-17 15:51:56 +00:00
Bill Currie
fcaa687d56
plugin.h:
...
enable the cd_data_t entry so func and data structures are consistent.
cd.h:
create cd_data_t (empty)
console.h:
better understanding of how these things work :)
2001-07-16 23:17:52 +00:00
Bill Currie
104701a8c5
the beginnings of the console lib (using plugins for the client/server type
...
consoles). Currently, doesn't affect anybody other than the need to
re-bootstrap.
2001-07-16 20:41:10 +00:00
Bill Currie
1c9e1b176f
fear the mighty const correct patch
2001-07-15 07:04:17 +00:00
Bill Currie
66c8f00dc7
print out source line numbers when available
2001-07-14 23:53:59 +00:00
Bill Currie
f4976e8133
more const correctness
2001-07-14 23:50:18 +00:00
Bill Currie
2818d720c2
move the full info opcocde table from qfcc to gamecode (<KURGON>There can be
...
only one!</KURGON>:) and use the table in PR_PrintStatement. This means that
qfcc now links against libQFgamecode as well as libQFutil
2001-07-14 02:34:16 +00:00
Bill Currie
eae97539c2
beginnings of debug info for progs
2001-07-13 06:08:50 +00:00
Bill Currie
7ca4383790
move a Key function out of console and into keys.
...
replace a Con_Print call with Con_Printf ("%s", ...) (I want to make Con_Print
private)
2001-07-11 19:17:58 +00:00
Bill Currie
f9f31ad4b3
ncurses console for the server. input handling is currently a nasty bit of
...
code duplication, but it seems to work nicely (except for cursor movement
keys) and even gives tab completion to the server :)
2001-07-10 22:36:22 +00:00
Bill Currie
ecff96258f
cmd.[ch]:
...
api change: Cmd_Args () now takes a parameter inidcating which arg to
start at for grabbing the un-parsed command line
qw/source/sv_ccmds.c:
implement kk's tell command and user name matching (though # is used for
the wildcard and it's still case sensitive)
everything else:
adjust for the new Cmd_Args protype
2001-07-10 18:25:54 +00:00
Bill Currie
9aeef3f3d6
rename qfont_table to sys_char_map and make it global (and constant)
2001-07-10 15:59:25 +00:00
Bill Currie
6cda415f06
slight api change: Hash_Del now returns a pointer to the element deleted, or
...
null if the element was not found, rather than 0 and -1 respectively.
2001-07-06 17:43:47 +00:00
Bill Currie
fc09d2b00f
port Bruce Momjian's patches from newtree with a less incestuous
...
implementation of his sound/focus patch. NOTE: only alsa 0.9 is tested
(Rhamph, can you test 0.5, please?) and only the alsa drivers stop the
hardware right ow.
WARNING!!! you /will/ have to re-install your plugins, or you will get
segfaults when the window gains/loses focus.
How do you tell if a window has focus on first mapping in X11?
2001-07-05 20:18:23 +00:00
Bill Currie
c38ca8e2f1
qfplist.h:
...
remove include of glob.h. not needed and causes win32 build to fail
plugin.c:
include compat.h and cast the return of GetProcAddress
gl_funcs.c:
fix parse error and type mismatch
qfgl_ext.c:
half re-write QFGL_ExtensionAddress to use QFGL_ProcAddress
vid_wgl.c:
fix for the new gl linking
2001-07-05 17:28:19 +00:00
Bill Currie
8f2f99fae6
forgot to add stamp-h.in to .gitignore
2001-07-05 15:18:36 +00:00
Bill Currie
715c74de7a
this never should have been in cvs in the first place: it is created by
...
bootstrap (I suspect autoheader)
2001-07-05 05:02:26 +00:00
Bill Currie
e5e289e994
this brings back knghtbrd's Sys_Printf redirection, but in such a way that
...
Sys_Printf still has the format attribute. To redirect Sys_Printf, declare the
redrecting function as void (const char *, va_list) and call Sys_SetPrintf
with this function as its parameter.
2001-07-05 04:59:43 +00:00
Bill Currie
e659c2a44f
revert kntbrds recent sys changes as they break sw static builds
2001-07-05 00:12:43 +00:00
Joseph Carter
eb71edb5d4
taniwha, please have a look at this to make sure I'm doing it the "right"
...
way.. Sys_Printf is now Sys_StdPrintf for now. Sys_Printf is a function
pointer and will end up replacing Con_Printf as well. Names will change
to something intelligent when I'm done. Win32 is not yet touched, but I
haven't forgotten it.
The reason for this is the assumption that Con_Printf and Sys_Printf do
not overlap. The new server console WILL change that, requiring that we
change how we handle both functions. The plan: Default to using stubs
and swap them for full-featured functions on Console init which do all
the things we expect. Will also do a stderr version later.
2001-07-02 18:11:34 +00:00
Joseph Carter
11257134c0
dos is dead, really. This has never worked, and would need a full rewrite
...
from scratch before it would anyway. That's not likely, so say goodbye!
2001-06-29 07:56:36 +00:00
Bill Currie
c350bb2b1b
a slight oopsie on the location of WriteFloat and friends :P plus nq is now
...
endian/size clean.
2001-06-29 06:50:29 +00:00
Bill Currie
f61ca0e321
fix the persistent fires. For sanity's sake, the non-renderer specific parts
...
of gl_dyn_fires.c have been moved to r_main.c (for now).
2001-06-29 02:43:04 +00:00
Bill Currie
443196e66b
very nice command line tab completeion from Shawn Walker
...
<eviltypeguy@qeradiant.com>
2001-06-28 04:05:14 +00:00
Bill Currie
66a524d7bf
correct the prototype for QFGL_ProcAddress
2001-06-27 17:55:41 +00:00
Bill Currie
3268fcbe02
add quaternion type (not yet supported in the code). Forgot to commit this
...
last night.
2001-06-26 14:14:47 +00:00
Zephaniah E. Hull
908d265212
Clean up and repair of the run time linking, does NOT work until deek
...
commits his gl_funcs.c.
2001-06-26 02:26:46 +00:00
Jeff Teunissen
59ae0114df
Whoops! Let's try commiting the headers this time. :)
2001-06-25 06:29:07 +00:00
Jeff Teunissen
3fbfa27fcd
Woohoo. The QFGL_* function prefixes are gone again from the tree. It
...
might even work under Windows now, but don't get your hopes too high. :)
2001-06-25 06:17:07 +00:00
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
2eefacd6f9
Rev for 0.5.1, disable -fbdev by default (use --with-fbdev to enable)
2001-06-20 19:52:13 +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
Joseph Carter
22e4ce887f
Include files for gib have been relocated out of include/
2001-06-08 18:46:26 +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
06064ec390
compat.h:
...
create a field_offset macro that takes a structure type and a field and
returns the offset of the field within the structure
everything else:
use field_offset to calculate the size of variable sized structs
2001-05-31 18:11:05 +00:00
Bill Currie
828019505e
/me mutters something about old installed headers and search paths
2001-05-31 05:40:25 +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
f988572c4d
lighthalf and gl_lightmode, meet Mr. Chainsaw, he will be your playmate today.
2001-05-29 21:59:02 +00:00
Bill Currie
78702c07e4
make gl_dyn_part.c and sw_rpart.c independent of client.h and host.h
2001-05-29 19:43:15 +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
Zephaniah E. Hull
2ab7077e0e
Minor clipping.
2001-05-27 18:35:08 +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
f21ad90ba4
total nukage of brighten, brightness and contrast.
2001-05-24 16:30:25 +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
92fe3791e2
Remove dead cvars.
2001-05-21 16:23:46 +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
2fa09aa68a
Restore hardware gamma on exit.
2001-05-20 00:56:09 +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
4cd29c2ff8
don't go fullscreen when already fullcreen
2001-05-17 20:57:29 +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
Ragnvald Maartmann-Moe IV
56f76e8192
More cleanups.
2001-05-14 01:22:58 +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
105d1ee7d9
well, that didn't last long, did it?
...
merge r_cvar.h
2001-05-11 19:33:17 +00:00
Ragnvald Maartmann-Moe IV
a5d3e614a0
More Merge Madness.
2001-05-10 17:45:05 +00:00
Ragnvald Maartmann-Moe IV
7aa70de483
*meld*
2001-05-10 17:26:03 +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
5cd8ddb1aa
*shuffle*
2001-05-10 04:16:39 +00:00
Ragnvald Maartmann-Moe IV
f5f3260dec
Taniwha apparently lost interest after doing the hard part, so I'll just merge this...
2001-05-10 03:36:31 +00:00
Ragnvald Maartmann-Moe IV
9529f12f5b
Mister Spock was here.
2001-05-10 02:37:55 +00:00
Ragnvald Maartmann-Moe IV
2fe98e9fa4
More merging. Become one with the shoggoth. Poor hungry shoggoth...
2001-05-10 02:29:38 +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
febf62ad9d
Ack, where did all the chairs go!
2001-05-09 18:45:38 +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
7fa4b01208
More header merges.
2001-05-09 18:28:08 +00:00
Ragnvald Maartmann-Moe IV
7567098bc0
More header merges.
2001-05-09 17:57:57 +00:00
Ragnvald Maartmann-Moe IV
85de55a05c
More header merging.
2001-05-09 17:29:07 +00:00
Ragnvald Maartmann-Moe IV
a454719fc7
Merge adivtab.h while I'm at it.
2001-05-09 17:24:41 +00:00
Ragnvald Maartmann-Moe IV
e0d43f4a7f
Merge anorms.h and anorm_dots.h.
2001-05-09 17:22:27 +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
Joseph Carter
ad042134b1
Let's get this into CVS, even if it's not used yet.
2001-04-17 23:04:54 +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
df386f31f9
compile fixes for older systems
2001-04-16 15:57:43 +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
6fcf8395ca
FBDEV GLX SVGAlib X11 all build, but nq-glx doesn't link yet due to some
...
changes between nq and qw (gl_mtexable, texture_mode and GL_CheckBrightness)
2001-04-15 21:11:41 +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
a3215e4dd0
at long last, nq-wgl builds. probably as broken as hell, though
2001-04-11 21:55:27 +00:00
Bill Currie
b025bb32e1
first steps
2001-04-11 19:56:01 +00:00
Bill Currie
ebb7b6310a
view.h:
...
it seems somebody forgot to commit this. just compied direct from qw
libs/video/targets/.gitignore:
better ignore rules
nq/source/Makefile.am:
libqfsys.a is dead :)
the rest:
gamma compile fixes
2001-04-11 16:19:08 +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
Ragnvald Maartmann-Moe IV
34c9239ebf
Add winquake.h to EXTRA_DIST.
2001-04-10 22:30:34 +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
e34342eced
Calm taniwha's nerves.
2001-04-10 21:01:29 +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
Bill Currie
dfbfd9463c
mingw cross compile fixes. qw-server (only, so far) compiles but does not
...
yet link due to Sys_Error :/
2001-04-10 20:07:11 +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
dd3d2a073d
make -fbdev build again AND make nq-fbdev a new target.
...
moved fbset.h from qw/include to include so it can be shared by nq. it's in
include instead of include/QF because I don't see any need to isntall it.
2001-03-29 17:31:15 +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
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