converted old changelog to "cvs log" format, so it can be manipulated with cvs2cl...
authorBradley Bell <btb@icculus.org>
Sat, 26 Feb 2005 03:29:41 +0000 (03:29 +0000)
committerBradley Bell <btb@icculus.org>
Sat, 26 Feb 2005 03:29:41 +0000 (03:29 +0000)
ChangeLog
ChangeLog-old

index 319e2c2..da01a66 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -5,6 +5,15 @@
 
        * ui/window.c: only disable the keyboard for MS DOS
 
+2005-02-25  Chris Taylor  <chris@icculus.org>
+
+       * arch/carbon/conf.h, D2X.make: no defining OGL in conf.h,
+       allowing Mac OS 9 and X to both use conf.h but one can build for
+       OpenGL while the other doesn't.
+
+       * main/editor/mine.c: use the Descent 2 definitions for maximum
+       segments and vertices
+
 2005-02-25  Bradley Bell  <btb@icculus.org>
 
        * arch/dos/digi.c, arch/dos/digiallg.c, arch/dos/digimm.c,
@@ -13,6 +22,9 @@
 
        * ChangeLog-old: clean up old changelog a little
 
+       * ChangeLog-old: converted old changelog to "cvs log" format, so
+       it can be manipulated with cvs2cl and other tools.
+
 2005-02-24  Tim Massey  <tmassey@obscorp.com>
 
        * main/inferno.c: allow -notitles to work in shareware [and
index e39f222..bc072ee 100644 (file)
-This file contains the per-file change logs written before CVS was used
+This file contains the per-file change logs from the Descent I for PC,
+Descent I for Mac, and Descent II source releases, converted to "cvs
+log" style.
 
-------------------------------------------------------------------------
-2d/2dsline.c:
-
- * Revision 1.6  1995/09/14  14:24:03  allender
- * fixed MW compile error
- *
- * Revision 1.5  1995/09/14  13:45:17  allender
- * quick optimization for scanline
- *
- * Revision 1.4  1995/04/27  07:36:05  allender
- * remove some memsets since all old is here now
- *
- * Revision 1.3  1995/04/19  14:35:33  allender
- * *** empty log message ***
- *
- * Revision 1.2  1995/04/18  12:03:40  allender
- * *** empty log message ***
- *
- * Revision 1.1  1995/03/09  09:24:06  allender
- * Initial revision
- *
- *
- * --- PC RCS information ---
- * Revision 1.7  1994/11/18  22:50:48  john
- * Changed a bunch of shorts to ints in calls.
- *
- * Revision 1.6  1994/09/02  11:40:32  john
- * fixed bug with urect scanline drakening still
- * only using 16 levels of fade.
- *
- * Revision 1.5  1994/04/08  16:59:12  john
- * Add fading poly's; Made palette fade 32 instead of 16.
- *
- * Revision 1.4  1994/03/22  18:36:27  john
- * Added darkening scanlines
- *
- * Revision 1.3  1993/10/15  16:22:52  john
- * y
- *
- * Revision 1.2  1993/09/08  11:56:29  john
- * neatened
- *
- * Revision 1.1  1993/09/08  11:44:27  john
- * Initial revision
- *
-
-------------------------------------------------------------------------
-2d/bitblt.c:
-
- * Revision 1.29  1995/03/14  12:14:28  john
- * Added code to double horz/vert bitblts.
- *
- * Revision 1.28  1995/03/13  09:01:48  john
- * Fixed bug with VFX1 screen not tall enough.
- *
- * Revision 1.27  1995/03/01  15:38:10  john
- * Better ModeX support.
- *
- * Revision 1.26  1994/12/15  12:19:00  john
- * Added gr_bm_bitblt (clipped!) function.
- *
- * Revision 1.25  1994/12/09  18:58:42  matt
- * Took out include of 3d.h
- *
- * Revision 1.24  1994/11/28  17:08:32  john
- * Took out some unused functions in linear.asm, moved
- * gr_linear_movsd from linear.asm to bitblt.c, made sure that
- * the code in ibiblt.c sets the direction flags before rep movsing.
- *
- * Revision 1.22  1994/11/23  16:04:00  john
- * Fixed generic rle'ing to use new bit method.
- *
- * Revision 1.21  1994/11/18  22:51:03  john
- * Changed a bunch of shorts to ints in calls.
- *
- * Revision 1.20  1994/11/10  15:59:48  john
- * Fixed bugs with canvas's being created with bogus bm_flags.
- *
- * Revision 1.19  1994/11/09  21:03:35  john
- * Added RLE for svga gr_ubitmap.
- *
- * Revision 1.18  1994/11/09  17:41:29  john
- * Made a slow version of rle bitblt to svga, modex.
- *
- * Revision 1.17  1994/11/09  16:35:15  john
- * First version with working RLE bitmaps.
- *
- * Revision 1.16  1994/11/04  10:06:58  john
- * Added fade table for fading fonts. Made font that partially clips
- * not print a warning message.
- *
- * Revision 1.15  1994/09/22  16:08:38  john
- * Fixed some palette stuff.
- *
- * Revision 1.14  1994/09/19  11:44:27  john
- * Changed call to allocate selector to the dpmi module.
- *
- * Revision 1.13  1994/08/08  13:03:00  john
- * Fixed bug in gr_bitmap in modex
- *
- * Revision 1.12  1994/07/13  19:47:23  john
- * Fixed bug with modex bitblt to page 2 not working.
- *
- * Revision 1.11  1994/05/31  11:10:52  john
- * *** empty log message ***
- *
- * Revision 1.10  1994/03/18  15:24:34  matt
- * Removed interlace stuff
- *
- * Revision 1.9  1994/02/18  15:32:20  john
- * *** empty log message ***
- *
- * Revision 1.8  1994/02/01  13:22:54  john
- * *** empty log message ***
- *
- * Revision 1.7  1994/01/13  08:28:25  mike
- * Modify rect copy to copy alternate scanlines when in interlaced mode.
- *
- * Revision 1.6  1993/12/28  12:09:46  john
- * added lbitblt.asm
- *
- * Revision 1.5  1993/10/26  13:18:09  john
- * *** empty log message ***
- *
- * Revision 1.4  1993/10/15  16:23:30  john
- * y
- *
- * Revision 1.3  1993/09/13  17:52:58  john
- * Fixed bug in BitBlt linear to SVGA
- *
- * Revision 1.2  1993/09/08  14:47:00  john
- * Made bitmap00 add rowsize instead of bitmap width.
- * Other routines might have this problem too.
- *
- * Revision 1.1  1993/09/08  11:43:01  john
- * Initial revision
-
-------------------------------------------------------------------------
-2d/bitmap.c:
-
- * Revision 1.11  1995/08/23  18:46:06  allender
- * fixed compiler warning
- *
- * Revision 1.10  1995/08/14  14:25:45  allender
- * changed transparency color to 0
- *
- * Revision 1.9  1995/07/05  16:04:51  allender
- * transparency/game kitchen changes
- *
- * Revision 1.8  1995/06/15  09:50:48  allender
- * new malloc to align bitmap on 8 byte bountry
- *
- * Revision 1.7  1995/05/12  11:52:19  allender
- * changed memory stuff again
- *
- * Revision 1.6  1995/05/11  12:48:34  allender
- * nge transparency color
- *
- * Revision 1.5  1995/05/04  19:59:21  allender
- * use NewPtr instead of malloc
- *
- * Revision 1.4  1995/04/27  07:33:04  allender
- * rearrange functions
- *
- * Revision 1.3  1995/04/19  14:37:17  allender
- * removed dead asm code
- *
- * Revision 1.2  1995/04/18  12:04:51  allender
- * *** empty log message ***
- *
- * Revision 1.1  1995/03/09  08:48:06  allender
- * Initial revision
- *
- *
- * -------  PC version RCS information
- * Revision 1.17  1994/11/18  22:50:25  john
- * Changed shorts to ints in parameters.
- *
- * Revision 1.16  1994/11/10  15:59:46  john
- * Fixed bugs with canvas's being created with bogus bm_flags.
- *
- * Revision 1.15  1994/10/26  23:55:53  john
- * Took out roller; Took out inverse table.
- *
- * Revision 1.14  1994/09/19  14:40:21  john
- * Changed dpmi stuff.
- *
- * Revision 1.13  1994/09/19  11:44:04  john
- * Changed call to allocate selector to the dpmi module.
- *
- * Revision 1.12  1994/06/09  13:14:57  john
- * Made selectors zero our
- * out, I meant.
- *
- * Revision 1.11  1994/05/06  12:50:07  john
- * Added supertransparency; neatend things up; took out warnings.
- *
- * Revision 1.10  1994/04/08  16:59:39  john
- * Add fading poly's; Made palette fade 32 instead of 16.
- *
- * Revision 1.9  1994/03/16  17:21:09  john
- * Added slow palette searching options.
- *
- * Revision 1.8  1994/03/14  17:59:35  john
- * Added function to check bitmap's transparency.
- *
- * Revision 1.7  1994/03/14  17:16:21  john
- * fixed bug with counting freq of pixels.
- *
- * Revision 1.6  1994/03/14  16:55:47  john
- * Changed grs_bitmap structure to include bm_flags.
- *
- * Revision 1.5  1994/02/18  15:32:22  john
- * *** empty log message ***
- *
- * Revision 1.4  1993/10/15  16:22:49  john
- * *** empty log message ***
- *
- * Revision 1.3  1993/09/08  17:37:11  john
- * Checking for errors with Yuan...
- *
- * Revision 1.2  1993/09/08  14:46:27  john
- * looking for possible bugs...
- *
- * Revision 1.1  1993/09/08  11:43:05  john
- * Initial revision
- *
-
-------------------------------------------------------------------------
-2d/clip.h:
-
- * Revision 1.3  1993/10/15  16:22:28  john
- * *** empty log message ***
- *
- * Revision 1.2  1993/09/29  16:14:31  john
- * made work with fix point
- *
- * Revision 1.1  1993/09/08  11:40:53  john
- * Initial revision
- *
- *
-
-------------------------------------------------------------------------
-2d/ibitblt.c:
-
- * Revision 1.3  1995/09/13  11:43:22  allender
- * start on optimizing cockpit copy code
- *
- * Revision 1.2  1995/09/07  10:16:57  allender
- * fixed up cockpit and rearview hole blitting
- *
- * Revision 1.1  1995/08/18  15:50:48  allender
- * Initial revision
- *
- * Revision 1.6  1994/11/28  17:07:29  john
- * Took out some unused functions in linear.asm, moved
- * gr_linear_movsd from linear.asm to bitblt.c, made sure that
- * the code in ibiblt.c sets the direction flags before rep movsing.
- *
- * Revision 1.5  1994/11/18  22:50:22  john
- * Changed shorts to ints in parameters.
- *
- * Revision 1.4  1994/11/09  16:35:16  john
- * First version with working RLE bitmaps.
- *
- * Revision 1.3  1994/10/03  17:18:05  john
- * Fixed bug with edi not getting intialized to zero
- * in create_mask.
- *
- * Revision 1.2  1994/05/31  11:10:55  john
- * *** empty log message ***
- *
- * Revision 1.1  1994/05/30  16:08:27  john
- * Initial revision
- *
-
-------------------------------------------------------------------------
-2d/linear.asm:
-
-; Revision 1.20  1994/11/28  17:08:30  john
-; Took out some unused functions in linear.asm, moved
-; gr_linear_movsd from linear.asm to bitblt.c, made sure that
-; the code in ibiblt.c sets the direction flags before rep movsing.
-; 
-; Revision 1.19  1994/11/27  22:57:56  john
-; Took out some code that was never called.
-; 
-; Revision 1.18  1994/09/12  14:40:16  john
-; Neatend.
-; 
-; Revision 1.17  1994/07/27  18:30:30  john
-; Took away the blending table.
-; 
-; Revision 1.16  1994/04/08  16:59:28  john
-; Add fading poly's; Made palette fade 32 instead of 16.
-; 
-; Revision 1.15  1993/12/21  20:10:03  john
-; *** empty log message ***
-; 
-; Revision 1.14  1993/12/21  19:58:31  john
-; added selector stuff
-; 
-; Revision 1.13  1993/12/21  11:40:51  john
-; *** empty log message ***
-; 
-; Revision 1.12  1993/12/09  15:01:52  john
-; Changed palette stuff majorly
-; 
-; Revision 1.11  1993/12/08  16:41:02  john
-; *** empty log message ***
-; 
-; Revision 1.10  1993/12/08  11:50:17  john
-; Fixed bug with gr_init
-; 
-; Revision 1.9  1993/12/07  12:32:12  john
-; moved bmd_palette to gr_palette
-; 
-; Revision 1.8  1993/12/03  12:11:25  john
-; *** empty log message ***
-; 
-; Revision 1.7  1993/11/16  11:29:08  john
-; *** empty log message ***
-; 
-; Revision 1.6  1993/10/15  16:22:13  john
-; *** empty log message ***
-; 
-; Revision 1.5  1993/09/29  16:15:28  john
-; added assembler linear_line
-; 
-; Revision 1.4  1993/09/26  18:59:27  john
-; fade stuff
-; 
-; Revision 1.3  1993/09/21  14:00:59  john
-; added code to save 43/50 line text modes.
-; 
-; Revision 1.2  1993/09/16  17:28:06  john
-; added code to save/restore video mode
-; 
-; Revision 1.1  1993/09/08  11:41:30  john
-; Initial revision
-
-------------------------------------------------------------------------
-2d/palette.c:
-
- * Revision 1.41  1995/02/02  14:26:31  john
- * Made palette fades work better with gamma thingy..
- *
- * Revision 1.40  1994/12/08  19:03:46  john
- * Made functions use cfile.
- *
- * Revision 1.39  1994/12/01  11:23:27  john
- * Limited Gamma from 0-8.
- *
- * Revision 1.38  1994/11/28  01:31:08  mike
- * optimize color lookup function, caching recently used colors.
- *
- * Revision 1.37  1994/11/18  22:50:18  john
- * Changed shorts to ints in parameters.
- *
- * Revision 1.36  1994/11/15  17:54:59  john
- * Made text palette fade in when game over.
- *
- * Revision 1.35  1994/11/10  19:53:14  matt
- * Fixed error handling is gr_use_palette_table()
- *
- * Revision 1.34  1994/11/07  13:53:48  john
- * Added better gamma stufff.
- *
- * Revision 1.33  1994/11/07  13:37:56  john
- * Added gamma correction stuff.
- *
- * Revision 1.32  1994/11/05  13:20:14  john
- * Fixed bug with find_closest_color_current not working.
- *
- * Revision 1.31  1994/11/05  13:08:09  john
- * MAde it return 0 when palette already faded out.
- *
- * Revision 1.30  1994/11/05  13:05:34  john
- * Added back in code to allow keys during fade.
- *
- * Revision 1.29  1994/11/05  12:49:50  john
- * Fixed bug with previous comment..
- *
- * Revision 1.28  1994/11/05  12:48:46  john
- * Made palette only fade in / out when its supposed to.
- *
- * Revision 1.27  1994/11/05  12:46:43  john
- * Changed palette stuff a bit.
- *
- * Revision 1.26  1994/11/01  12:59:35  john
- * Reduced palette.256 size.
- *
- * Revision 1.25  1994/10/26  23:55:35  john
- * Took out roller; Took out inverse table.
- *
- * Revision 1.24  1994/10/04  22:03:05  matt
- * Fixed bug: palette wasn't fading all the way out or in
- *
- * Revision 1.23  1994/09/22  16:08:40  john
- * Fixed some palette stuff.
- *
- * Revision 1.22  1994/09/19  11:44:31  john
- * Changed call to allocate selector to the dpmi module.
- *
- * Revision 1.21  1994/09/12  19:28:09  john
- * Fixed bug with unclipped fonts clipping.
- *
- * Revision 1.20  1994/09/12  18:18:39  john
- * Set 254 and 255 to fade to themselves in fadetable
- *
- * Revision 1.19  1994/09/12  14:40:10  john
- * Neatend.
- *
- * Revision 1.18  1994/09/09  09:31:55  john
- * Made find_closest_color not look at superx spot of 254
- *
- * Revision 1.17  1994/08/09  11:27:08  john
- * Add cthru stuff.
- *
- * Revision 1.16  1994/08/01  11:03:51  john
- * MAde it read in old/new palette.256
- *
- * Revision 1.15  1994/07/27  18:30:27  john
- * Took away the blending table.
- *
- * Revision 1.14  1994/06/09  10:39:52  john
- * In fade out.in functions, returned 1 if key was pressed...
- *
- * Revision 1.13  1994/05/31  19:04:16  john
- * Added key to stop fade if desired.
- *
- * Revision 1.12  1994/05/06  12:50:20  john
- * Added supertransparency; neatend things up; took out warnings.
- *
- * Revision 1.11  1994/05/03  19:39:02  john
- * *** empty log message ***
- *
- * Revision 1.10  1994/04/22  11:16:07  john
- * *** empty log message ***
- *
- * Revision 1.9  1994/04/08  16:59:40  john
- * Add fading poly's; Made palette fade 32 instead of 16.
- *
- * Revision 1.8  1994/03/16  17:21:17  john
- * Added slow palette searching options.
- *
- * Revision 1.7  1994/01/07  11:47:33  john
- * made use cflib
- *
- * Revision 1.6  1993/12/21  11:41:04  john
- * *** empty log message ***
- *
- * Revision 1.5  1993/12/09  15:02:47  john
- * Changed palette stuff majorly
- *
- * Revision 1.4  1993/12/07  12:31:41  john
- * moved bmd_palette to gr_palette
- *
- * Revision 1.3  1993/10/15  16:22:23  john
- * *** empty log message ***
- *
- * Revision 1.2  1993/09/26  18:59:46  john
- * fade stuff
- *
- * Revision 1.1  1993/09/08  11:44:03  john
- * Initial revision
- *
-
-------------------------------------------------------------------------
-2d/pcx.c:
-
- * Revision 1.6  1995/03/01  15:38:12  john
- * Better ModeX support.
- *
- * Revision 1.5  1995/01/21  17:54:17  john
- * Added pcx reader for modes other than modex.
- *
- * Revision 1.4  1994/12/08  19:03:56  john
- * Made functions use cfile.
- *
- * Revision 1.3  1994/11/29  02:53:24  john
- * Added error messages; made call be more similiar to iff.
- *
- * Revision 1.2  1994/11/28  20:03:50  john
- * Added PCX functions.
- *
- * Revision 1.1  1994/11/28  19:57:56  john
- * Initial revision
- *
-
-------------------------------------------------------------------------
-2d/rle.c:
-
- * Changed shorts to ints in parameters.
- *
- *
- * Old Log:
- * Revision 1.10  1995/08/14  14:26:34  allender
- * changed transparency color to 0
- *
- * Revision 1.9  1995/07/05  16:07:49  allender
- * transparency/kitchen chagnes
- *
- * Revision 1.8  1995/05/12  11:54:03  allender
- * changed memory stuff again
- *
- * Revision 1.7  1995/05/11  12:49:19  allender
- * change transparency color
- *
- * Revision 1.6  1995/05/04  20:00:30  allender
- * use NewPtr instead of malloc.  Fix gr_rle_scanline (which caused me
- * *many* hours of frustration!!!!)
- *
- * Revision 1.5  1995/05/01  08:40:32  allender
- * trying to find memory bug....this stuff works -- it's johns code
- *
- * Revision 1.4  1995/04/27  07:38:24  allender
- * new rle code ala John
- *
- * Revision 1.3  1995/04/19  14:36:06  allender
- * *** empty log message ***
- *
- * Revision 1.2  1995/04/18  12:08:30  allender
- * *** empty log message ***
- *
- * Revision 1.1  1995/03/09  09:23:04  allender
- * Initial revision
- *
- *
- * --- PC RCS information ---
- * Revision 1.19  1995/01/14  19:18:31  john
- * Added assert to check for paged out bitmap.
- *
- * Revision 1.18  1995/01/14  11:32:07  john
- * Added rle_cache_flush function.
- *
- * Revision 1.17  1994/12/13  10:58:27  john
- * Fixed bug with 2 consecutive calls to get_expanded_Texture
- * with 2 different bitmaps, returning the same rle texture,
- * causing doors to disapper.
- *
- * Revision 1.16  1994/11/30  00:55:03  mike
- * optimization
- *
- * Revision 1.15  1994/11/24  13:24:44  john
- * Made sure that some rep movs had the cld set first.
- * Took some unused functions out.
- *
- * Revision 1.14  1994/11/23  16:03:46  john
- * Fixed generic rle'ing to use new bit method.
- *
- * Revision 1.13  1994/11/23  15:45:51  john
- * Changed to a 3 bit rle scheme.
- *
- * Revision 1.12  1994/11/18  22:50:24  john
- * Changed shorts to ints in parameters.
- *
- * Revision 1.11  1994/11/14  17:06:13  john
- * Took out Key_f12.
- *
- * Revision 1.10  1994/11/14  15:54:09  john
- * Put code in for maybe checking bogus rle data.
- *
- * Revision 1.9  1994/11/14  15:51:58  john
- * Added rle_disable_caching variable to prove the stability of my rle
- * caching code to any non-believers.
- *
- * Revision 1.8  1994/11/10  10:31:20  john
- * Reduce cache buffers to 16.
- *
- * Revision 1.7  1994/11/09  19:53:43  john
- * Added texture rle caching.
- *
- * Revision 1.6  1994/11/09  17:41:44  john
- * Made a slow version of rle bitblt to svga, modex.
- *
- * Revision 1.5  1994/11/09  17:07:50  john
- * Fixed bug with bitmap that gets bigger with rle.
- *
- * Revision 1.4  1994/11/09  16:35:17  john
- * First version with working RLE bitmaps.
- *
- * Revision 1.3  1994/10/26  12:54:47  john
- * Fixed bug with decode that used rep movsd instead of
- * rep stosd.
- *
- * Revision 1.2  1994/10/06  17:05:25  john
- * First version of rle stuff.
- *
- * Revision 1.1  1994/10/06  16:53:34  john
- * Initial revision
-
-------------------------------------------------------------------------
-2d/scale.c:
-
- * Revision 1.12  1995/03/14  15:14:11  john
- * Increased max scanline length to 640.
- * ..
- * 
- * Revision 1.11  1994/11/27  12:56:39  matt
- * Took out unneeded include of 3d.h
- * 
- * Revision 1.10  1994/11/18  22:50:25  john
- * Changed shorts to ints in parameters.
- * 
- * Revision 1.9  1994/11/09  16:35:02  john
- * First version with working RLE bitmaps.
- * 
- * Revision 1.8  1994/06/09  13:15:17  john
- * *** empty log message ***
- * 
- * Revision 1.7  1994/06/07  11:47:02  john
- * Added back in the fast code for scaling up bitmaps.
- * 
- * Revision 1.6  1994/02/18  15:32:36  john
- * *** empty log message ***
- * 
- * Revision 1.5  1994/01/22  14:35:01  john
- * Added transparency as color index 255.
- * 
- * Revision 1.4  1994/01/17  16:59:12  john
- * once again...
- * 
- * Revision 1.3  1994/01/17  16:51:17  john
- * Added check so we don't draw outsibe
- * the source bitmap's v coordinate... kind
- * of a hack, but works.
- * 
- * Revision 1.2  1994/01/12  18:03:26  john
- * The first iteration of fast scaler..
- * 
- * Revision 1.1  1994/01/11  14:48:42  john
- * Initial revision
-
-------------------------------------------------------------------------
-2d/scalea.asm:
-
-; Revision 1.2  1994/01/12  18:02:52  john
-; Asm code for the scaler... first iteration here
-; has compiled code that works!!
-; 
-; Revision 1.1  1994/01/12  12:20:11  john
-; Initial revision
-
-------------------------------------------------------------------------
-3d/clipper.h:
-
- * Revision 1.1  1995/05/05  08:50:13  allender
- * Initial revision
- *
- * Revision 1.1  1995/04/17  19:56:58  matt
- * Initial revision
- * 
- * 
-
-------------------------------------------------------------------------
-3d/globvars.c:
-
- * Revision 1.2  1995/09/13  11:30:47  allender
- * added fCanv_w2 and vCanv_h2 for PPC implementation
- *
- * Revision 1.1  1995/05/05  08:50:48  allender
- * Initial revision
- *
- * Revision 1.1  1995/04/17  04:24:57  matt
- * Initial revision
-
-------------------------------------------------------------------------
-3d/globvars.h:
-
- * Revision 1.2  1995/09/13  11:31:19  allender
- * added fCanv_w2 and vCanv_h2 for PPC implementation
- *
- * Revision 1.1  1995/05/05  08:51:02  allender
- * Initial revision
- *
- * Revision 1.1  1995/04/17  04:07:58  matt
- * Initial revision
-
-------------------------------------------------------------------------
-3d/instance.c:
-
- * Revision 1.2  1995/06/12  12:36:57  allender
- * fixed bug where g3_start_instance_angles recursively called itself
- *
- * Revision 1.1  1995/05/05  08:51:27  allender
- * Initial revision
- *
- * Revision 1.1  1995/04/17  06:43:29  matt
- * Initial revision
-
-------------------------------------------------------------------------
-3d/interp.c:
-
- * Revision 1.4  1995/10/10  22:20:09  allender
- * new morphing code from Matt
- *
- * Revision 1.3  1995/08/31  15:40:24  allender
- * swap color data correctly
- *
- * Revision 1.2  1995/05/11  13:06:38  allender
- * fix int --> short problem
- *
- * Revision 1.1  1995/05/05  08:51:41  allender
- * Initial revision
- *
- * Revision 1.1  1995/04/17  06:44:33  matt
- * Initial revision
-
-------------------------------------------------------------------------
-3d/matrix.c:
-
- * Revision 1.1  1995/05/05  08:52:11  allender
- * Initial revision
- *
- * Revision 1.1  1995/04/17  04:14:34  matt
- * Initial revision
-
-------------------------------------------------------------------------
-3d/points.c:
-
- * Revision 1.3  1995/09/21  17:29:40  allender
- * changed project_point to overflow if z <= 0
- *
- * Revision 1.2  1995/09/13  11:31:28  allender
- * removed checkmuldiv from g3_project_point
- *
- * Revision 1.1  1995/05/05  08:52:35  allender
- * Initial revision
- *
- * Revision 1.1  1995/04/17  04:32:25  matt
- * Initial revision
-
-------------------------------------------------------------------------
-3d/rod.c:
-
- * Revision 1.2  1995/09/13  11:31:46  allender
- * removed checkmuldiv in PPC implemenation
- *
- * Revision 1.1  1995/05/05  08:52:45  allender
- * Initial revision
- *
- * Revision 1.1  1995/04/17  06:42:08  matt
- * Initial revision
-
-------------------------------------------------------------------------
-3d/setup.c:
-
- * Revision 1.4  1995/10/11  00:27:04  allender
- * bash free_num_points to 0
- *
- * Revision 1.3  1995/09/13  11:31:58  allender
- * calc for fCanv_w2 and fCanv_h2
- *
- * Revision 1.2  1995/06/25  21:57:57  allender
- * *** empty log message ***
- *
- * Revision 1.1  1995/05/05  08:52:54  allender
- * Initial revision
- *
- * Revision 1.1  1995/04/17  03:59:01  matt
- * Initial revision
-
-------------------------------------------------------------------------
-arch/dos/bak/ipx.c:
-
- * Revision 2.10  1995/03/29  17:27:55  john
- * Added code to not duplicate broadcasts.
- *
- * Revision 2.9  1995/03/29  15:32:07  john
- * NEatened.
- *
- * Revision 2.8  1995/03/29  15:07:31  john
- * Added network support.
- *
- * Revision 2.7  1995/03/29  11:22:27  john
- * Added broadcasting over a net.
- *
- * Revision 2.6  1995/03/28  20:05:03  john
- * Took away alternate server stuff.
- *
- * Revision 2.5  1995/03/23  19:14:29  john
- * Added better MAX_USERS message.
- *
- * Revision 2.4  1995/03/23  19:00:02  john
- * Added user list capabitly.
- *
- * Revision 2.3  1995/03/23  12:27:05  john
- * Move IPX into bios lib.
- *
- * Revision 2.2  1995/03/22  19:08:15  john
- * Added code to fix sending packets over router... now
- * we just need to make broadcasts go over router!!
- *
- * Revision 2.1  1995/03/21  08:40:16  john
- * Ifdef'd out the NETWORK code.
- *
- * Revision 2.0  1995/02/27  11:30:45  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.31  1995/02/16  17:35:03  john
- * Added code to allow dynamic socket changing.
- *
- * Revision 1.30  1995/02/01  21:03:45  john
- * Lintified.
- *
- * Revision 1.29  1995/01/22  14:31:05  john
- * Added key.h
- *
- * Revision 1.28  1995/01/22  14:29:26  john
- * Added code to bypass broadcast messages.
- *
- * Revision 1.27  1995/01/03  13:46:16  john
- * Added code that should make ipx work over different servers,
- * but ifdef'd it out with SHAREWARE in ipx.c.  I haven't tested
- * this, and I hope it doesn't introduce net bugs.
- *
- * Revision 1.26  1994/12/14  11:54:37  rob
- * Reduce # of ipx packets.
- *
- * Revision 1.25  1994/12/11  00:43:28  john
- * Locked down DOS ipx buffers... probably not necessary, tho.
- *
- * Revision 1.24  1994/12/08  15:49:58  rob
- * Bumped up the # of ipx packets.
- *
- * Revision 1.23  1994/12/04  15:23:54  rob
- * Reduced packet # constants.
- *
- * Revision 1.22  1994/11/27  23:12:39  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.21  1994/11/19  15:15:19  mike
- * remove unused code and data
- *
- * Revision 1.20  1994/11/10  11:06:07  rob
- * Raised number of ipx packets to 64 and buffers to 128 (for 8-way games)
- * Removed (commented out) all the spx support stuff.
- *
- * Revision 1.19  1994/11/07  17:50:12  rob
- * Bumped up max_packets and ipx_num_packets to double their previous
- * values.
- *
- * Revision 1.18  1994/11/07  15:39:01  rob
- * Removed temporary hacked ipx_send_object function.
- * Replaced with a more general thing.
- *
- * Revision 1.17  1994/11/05  16:08:40  rob
- * Made a change necessary for object syncing on rejoin.
- *
- * Revision 1.16  1994/11/01  15:57:12  rob
- * Added support for SPX sockets for critical messages.
- *
- * Revision 1.15  1994/10/31  19:21:01  rob
- * Added a routine for sending objects via ipx.  Its a hack and shoukld
- * be replaced by something more general time permitting.
- *
- * Revision 1.14  1994/10/20  14:57:42  john
- * Some test stuff.
- *
- * Revision 1.13  1994/10/20  11:22:45  john
- * Tweaked the number of waiting packets. Added code to print
- * total packets missed, and to limit the packet send rate to
- * 10 packets per second unless firing.
- *
- * Revision 1.12  1994/10/03  20:50:11  john
- * Started adding sound pause functions.
- *
- * Revision 1.11  1994/09/15  08:54:24  mike
- * comment out a mprintf.
- *
- * Revision 1.10  1994/09/12  19:38:20  john
- * Made some stuff that prints to the DOS screen go to the
- * mono instead, since it really is debugging info.
- *
- * Revision 1.9  1994/09/07  13:32:03  john
- * Made ipx_close explicitly close the socket we were using,
- * because it seems that VLM's don't automatically close them
- * like the older NETX stuff did (Going from Novell 3.11 driver
- * to 3.12 anyway).
- *
- * Revision 1.8  1994/09/06  19:29:20  john
- * Added trial version of rejoin function.
- *
- * Revision 1.7  1994/08/09  19:31:50  john
- * Networking changes.
- *
- * Revision 1.6  1994/08/05  16:11:41  john
- * Psuedo working version of networking.
- *
- * Revision 1.5  1994/08/04  19:17:21  john
- * Inbetween version of network stuff.
- *
- * Revision 1.4  1994/07/29  16:08:57  john
- * *** empty log message ***
- *
- * Revision 1.3  1994/07/25  12:33:31  john
- * Network "pinging" in.
- *
- * Revision 1.2  1994/07/20  15:58:28  john
- * First installment of ipx stuff.
- *
- * Revision 1.1  1994/07/19  15:42:00  john
- * Initial revision
-
-------------------------------------------------------------------------
-arch/dos/ipx.c:
-
- * Revision 2.10  1995/03/29  17:27:55  john
- * Added code to not duplicate broadcasts.
- *
- * Revision 2.9  1995/03/29  15:32:07  john
- * NEatened.
- *
- * Revision 2.8  1995/03/29  15:07:31  john
- * Added network support.
- *
- * Revision 2.7  1995/03/29  11:22:27  john
- * Added broadcasting over a net.
- *
- * Revision 2.6  1995/03/28  20:05:03  john
- * Took away alternate server stuff.
- *
- * Revision 2.5  1995/03/23  19:14:29  john
- * Added better MAX_USERS message.
- *
- * Revision 2.4  1995/03/23  19:00:02  john
- * Added user list capabitly.
- *
- * Revision 2.3  1995/03/23  12:27:05  john
- * Move IPX into bios lib.
- *
- * Revision 2.2  1995/03/22  19:08:15  john
- * Added code to fix sending packets over router... now
- * we just need to make broadcasts go over router!!
- *
- * Revision 2.1  1995/03/21  08:40:16  john
- * Ifdef'd out the NETWORK code.
- *
- * Revision 2.0  1995/02/27  11:30:45  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.31  1995/02/16  17:35:03  john
- * Added code to allow dynamic socket changing.
- *
- * Revision 1.30  1995/02/01  21:03:45  john
- * Lintified.
- *
- * Revision 1.29  1995/01/22  14:31:05  john
- * Added key.h
- *
- * Revision 1.28  1995/01/22  14:29:26  john
- * Added code to bypass broadcast messages.
- *
- * Revision 1.27  1995/01/03  13:46:16  john
- * Added code that should make ipx work over different servers,
- * but ifdef'd it out with SHAREWARE in ipx.c.  I haven't tested
- * this, and I hope it doesn't introduce net bugs.
- *
- * Revision 1.26  1994/12/14  11:54:37  rob
- * Reduce # of ipx packets.
- *
- * Revision 1.25  1994/12/11  00:43:28  john
- * Locked down DOS ipx buffers... probably not necessary, tho.
- *
- * Revision 1.24  1994/12/08  15:49:58  rob
- * Bumped up the # of ipx packets.
- *
- * Revision 1.23  1994/12/04  15:23:54  rob
- * Reduced packet # constants.
- *
- * Revision 1.22  1994/11/27  23:12:39  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.21  1994/11/19  15:15:19  mike
- * remove unused code and data
- *
- * Revision 1.20  1994/11/10  11:06:07  rob
- * Raised number of ipx packets to 64 and buffers to 128 (for 8-way games)
- * Removed (commented out) all the spx support stuff.
- *
- * Revision 1.19  1994/11/07  17:50:12  rob
- * Bumped up max_packets and ipx_num_packets to double their previous
- * values.
- *
- * Revision 1.18  1994/11/07  15:39:01  rob
- * Removed temporary hacked ipx_send_object function.
- * Replaced with a more general thing.
- *
- * Revision 1.17  1994/11/05  16:08:40  rob
- * Made a change necessary for object syncing on rejoin.
- *
- * Revision 1.16  1994/11/01  15:57:12  rob
- * Added support for SPX sockets for critical messages.
- *
- * Revision 1.15  1994/10/31  19:21:01  rob
- * Added a routine for sending objects via ipx.  Its a hack and shoukld
- * be replaced by something more general time permitting.
- *
- * Revision 1.14  1994/10/20  14:57:42  john
- * Some test stuff.
- *
- * Revision 1.13  1994/10/20  11:22:45  john
- * Tweaked the number of waiting packets. Added code to print
- * total packets missed, and to limit the packet send rate to
- * 10 packets per second unless firing.
- *
- * Revision 1.12  1994/10/03  20:50:11  john
- * Started adding sound pause functions.
- *
- * Revision 1.11  1994/09/15  08:54:24  mike
- * comment out a mprintf.
- *
- * Revision 1.10  1994/09/12  19:38:20  john
- * Made some stuff that prints to the DOS screen go to the
- * mono instead, since it really is debugging info.
- *
- * Revision 1.9  1994/09/07  13:32:03  john
- * Made ipx_close explicitly close the socket we were using,
- * because it seems that VLM's don't automatically close them
- * like the older NETX stuff did (Going from Novell 3.11 driver
- * to 3.12 anyway).
- *
- * Revision 1.8  1994/09/06  19:29:20  john
- * Added trial version of rejoin function.
- *
- * Revision 1.7  1994/08/09  19:31:50  john
- * Networking changes.
- *
- * Revision 1.6  1994/08/05  16:11:41  john
- * Psuedo working version of networking.
- *
- * Revision 1.5  1994/08/04  19:17:21  john
- * Inbetween version of network stuff.
- *
- * Revision 1.4  1994/07/29  16:08:57  john
- * *** empty log message ***
- *
- * Revision 1.3  1994/07/25  12:33:31  john
- * Network "pinging" in.
- *
- * Revision 1.2  1994/07/20  15:58:28  john
- * First installment of ipx stuff.
- *
- * Revision 1.1  1994/07/19  15:42:00  john
- * Initial revision
-
-------------------------------------------------------------------------
-arch/dos/ipx.h:
-
- * Revision 2.6  1995/03/29  11:19:32  john
- * Added broadcasting over a net.
- * 
- * Revision 2.5  1995/03/28  20:04:43  john
- * Took away alternate server stuff.
- * 
- * Revision 2.4  1995/03/23  19:00:10  john
- * Added user list capabitly.
- * 
- * Revision 2.3  1995/03/23  12:26:57  john
- * Move IPX into bios lib.
- * 
- * Revision 2.2  1995/03/22  19:08:14  john
- * Added code to fix sending packets over router... now
- * we just need to make broadcasts go over router!!
- * 
- * Revision 2.1  1995/03/21  08:39:56  john
- * Ifdef'd out the NETWORK code.
- * 
- * Revision 2.0  1995/02/27  11:30:16  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- * 
- * Revision 1.16  1995/02/16  17:34:52  john
- * Added code to allow dynamic socket changing.
- * 
- * Revision 1.15  1995/01/04  21:43:27  rob
- * Remove SPX size definition.
- * 
- * Revision 1.14  1995/01/03  13:46:18  john
- * Added code that should make ipx work over different servers,
- * but ifdef'd it out with SHAREWARE in ipx.c.  I haven't tested
- * this, and I hope it doesn't introduce net bugs.
- * 
- * Revision 1.13  1994/11/02  11:37:16  rob
- * Changed default socket number to a higher regions.
- * 
- * Revision 1.12  1994/11/01  15:56:51  rob
- * Added defines for SPX socketsx.
- * 
- * Revision 1.11  1994/10/31  19:23:31  rob
- * Added a prototype for the new object send function.
- * 
- * Revision 1.10  1994/09/07  13:37:25  john
- * Changed default socket to 0x4000, because 
- * the ipx/spx book says that we can only use
- * sockets 0x4000 - 0x7fff.
- * 
- * Revision 1.9  1994/08/25  18:14:45  matt
- * Changed socket because of packet change
- * 
- * Revision 1.8  1994/08/12  22:42:24  john
- * Took away Player_stats; added Players array.
- * 
- * Revision 1.7  1994/08/09  19:31:47  john
- * Networking changes.
- * 
- * Revision 1.6  1994/08/05  16:11:46  john
- * Psuedo working version of networking.
- * 
- * Revision 1.5  1994/08/04  19:17:20  john
- * Inbetween version of network stuff.
- * 
- * Revision 1.4  1994/07/29  16:08:59  john
- * *** empty log message ***
- * 
- * Revision 1.3  1994/07/25  12:33:22  john
- * Network "pinging" in.
- * 
- * Revision 1.2  1994/07/20  15:58:29  john
- * First installment of ipx stuff.
- * 
- * Revision 1.1  1994/07/19  15:43:05  john
- * Initial revision
-
-------------------------------------------------------------------------
-arch/dos/joy.c:
-
- * Revision 1.37  1995/10/07  13:22:31  john
- * Added new method of reading joystick that allows higher-priority
- * interrupts to go off.
- * 
- * Revision 1.36  1995/03/30  11:03:40  john
- * Made -JoyBios read buttons using BIOS.
- * 
- * Revision 1.35  1995/02/14  11:39:25  john
- * Added polled/bios joystick readers..
- * 
- * Revision 1.34  1995/02/10  17:06:12  john
- * Fixed bug with plugging in a joystick not getting detected.
- * 
- * Revision 1.33  1995/01/27  16:39:42  john
- * Made so that if no joystick detected, it wont't
- * read buttons.
- * 
- * Revision 1.32  1995/01/12  13:16:40  john
- * Made it so that joystick can't lose an axis
- * by 1 weird reading. Reading has to occurr during
- * calibration for this to happen.
- * 
- * Revision 1.31  1994/12/28  15:56:03  john
- * Fixed bug that refused to read joysticks whose 
- * min,cen,max were less than 100 apart.
- * 
- * Revision 1.30  1994/12/28  15:31:53  john
- * Added code to read joystick axis not all at one time.
- * 
- * Revision 1.29  1994/12/27  15:44:36  john
- * Made the joystick timeout be at 1/100th of a second, 
- * regardless of CPU speed.
- * 
- * Revision 1.28  1994/12/04  11:54:54  john
- * Made stick read at whatever rate the clock is at, not
- * at 18.2 times/second.
- * 
- * Revision 1.27  1994/11/29  02:25:40  john
- * Made it so that the scaled reading returns 0 
- * if the calibration factors look funny..
- * 
- * Revision 1.26  1994/11/22  11:08:07  john
- * Commented out the ARCADE joystick.
- * 
- * Revision 1.25  1994/11/14  19:40:26  john
- * Fixed bug with no joystick being detected.
- * 
- * Revision 1.24  1994/11/14  19:36:40  john
- * Took out initial cheapy calibration.
- * 
- * Revision 1.23  1994/11/14  19:13:27  john
- * Took out the calibration in joy_init
- * 
- * Revision 1.22  1994/10/17  10:09:57  john
- * Made the state look at last_State, so that a joy_flush
- * doesn't cause a new down state to be added next reading.
- * 
- * Revision 1.21  1994/10/13  11:36:23  john
- * Made joy_down_time be kept track of in fixed seconds,
- * not ticks.
- * 
- * Revision 1.20  1994/10/12  16:58:50  john
- * Fixed bug w/ previous comment.
- * 
- * Revision 1.19  1994/10/12  16:57:44  john
- * Added function to set a joystick button's state.
- * 
- * Revision 1.18  1994/10/11  10:20:13  john
- * Fixed Flightstick Pro/
- * ..
- * 
- * Revision 1.17  1994/09/29  18:29:20  john
- * *** empty log message ***
- * 
- * Revision 1.16  1994/09/27  19:17:23  john
- * Added code so that is joy_init is never called, joystick is not
- * used at all.
- * 
- * Revision 1.15  1994/09/22  16:09:23  john
- * Fixed some virtual memory lockdown problems with timer and
- * joystick.
- * 
- * Revision 1.14  1994/09/16  11:44:42  john
- * Fixed bug with slow joystick.
- * 
- * Revision 1.13  1994/09/16  11:36:15  john
- * Fixed bug with reading non-present channels.
- * 
- * Revision 1.12  1994/09/15  20:52:48  john
- * rme john
- * Added support for the Arcade style joystick.
- * 
- * Revision 1.11  1994/09/13  20:04:49  john
- * Fixed bug with joystick button down_time.
- * 
- * Revision 1.10  1994/09/10  13:48:07  john
- * Made all 20 buttons read.
- * 
- * Revision 1.9  1994/08/31  09:55:02  john
- * *** empty log message ***
- * 
- * Revision 1.8  1994/08/29  21:02:14  john
- * Added joy_set_cal_values...
- * 
- * Revision 1.7  1994/08/29  20:52:17  john
- * Added better cyberman support; also, joystick calibration
- * value return funcctiionn,
- * 
- * Revision 1.6  1994/08/24  18:53:12  john
- * Made Cyberman read like normal mouse; added dpmi module; moved
- * mouse from assembly to c. Made mouse buttons return time_down.
- * 
- * Revision 1.5  1994/07/14  22:12:23  john
- * Used intrinsic forms of outp to fix vmm error.
- * 
- * Revision 1.4  1994/07/07  19:52:59  matt
- * Made joy_init() return success/fail flag
- * Made joy_init() properly detect a stick if one is plugged in after joy_init()
- * was called the first time.
- * 
- * Revision 1.3  1994/07/01  10:55:55  john
- * Fixed some bugs... added support for 4 axis.
- * 
- * Revision 1.2  1994/06/30  20:36:55  john
- * Revamped joystick code.
- * 
- * Revision 1.1  1994/06/30  15:42:15  john
- * Initial revision
-
-------------------------------------------------------------------------
-arch/dos/joydefs.c:
-
- * Revision 2.2  1995/06/30  12:30:22  john
- * Added -Xname command line.
- * 
- * Revision 2.1  1995/04/06  12:13:20  john
- * Made so you can calibrate Gravis Gamepad.
- * 
- * Revision 2.0  1995/02/27  11:30:27  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- * 
- * Revision 1.71  1995/02/12  02:06:10  john
- * Fixed bug with joystick incorrectly asking for
- * calibration.
- * 
- * Revision 1.70  1995/01/28  15:58:07  john
- * Made joystick calibration be only when wrong detected in
- * menu or joystick axis changed.
- * 
- * Revision 1.69  1995/01/25  14:37:55  john
- * Made joystick only prompt for calibration once...
- * 
- * Revision 1.68  1995/01/24  16:34:29  john
- * Made so that if you reconfigure joystick and
- * add or subtract an axis, it asks for a recalibration
- * upon leaving.
- * 
- * Revision 1.67  1994/12/29  11:08:51  john
- * Fixed Thrustmaster and Logitech Wingman extreme
- * Hat by reading the y2 axis during the center stage
- * of the calibration, and using 75, 50, 27, and 3 %
- * as values for the 4 positions.
- * 
- * Revision 1.66  1994/12/15  18:17:39  john
- * Fixed warning with previous.
- * 
- * Revision 1.65  1994/12/15  18:15:48  john
- * Made the joy cal only write the .cfg file, not
- * the player file.
- * 
- * Revision 1.64  1994/12/13  14:43:35  john
- * Took out the code in kconfig to build direction array.
- * Called kc_set_controls after selecting a new control type.
- * 
- * Revision 1.63  1994/12/10  12:08:47  john
- * Changed some delays to use TICKER instead of timer_get_fixed_seconds.
- * 
- * Revision 1.62  1994/12/09  11:01:07  mike
- * force calibration of joystick on joystick selection from Controls... menu.
- * 
- * Revision 1.61  1994/12/07  21:50:27  john
- * Put stop/start time around joystick delay.
- * 
- * Revision 1.60  1994/12/07  19:34:39  john
- * Added delay.
- * 
- * Revision 1.59  1994/12/07  18:12:14  john
- * NEatened up joy cal.,
- * 
- * Revision 1.58  1994/12/07  17:07:51  john
- * Fixed up joy cal.
- * 
- * Revision 1.57  1994/12/07  16:48:53  yuan
- * localization
- * 
- * Revision 1.56  1994/12/07  16:05:55  john
- * Changed the way joystick calibration works.
- * 
- * Revision 1.55  1994/12/06  20:15:22  john
- * Took out code that unpauses songs that were never paused.
- * 
- * Revision 1.54  1994/12/06  15:14:09  yuan
- * Localization
- * 
- * Revision 1.53  1994/12/05  16:29:16  john
- * Took out music pause around the cheat menu.
- * 
- * Revision 1.52  1994/12/04  12:39:10  john
- * MAde so that FCS calibration doesn't ask for axis #2.
- * 
- * Revision 1.51  1994/12/03  15:14:59  john
- * Took out the delay mentioned previosuly cause it would
- * cause bigger problems than it helps, especially with netgames.
- * 
- * Revision 1.50  1994/12/03  14:16:14  john
- * Put a delay between screens in joy cal to keep Yuan from
- * double hitting.
- * 
- * Revision 1.49  1994/12/03  11:04:06  john
- * Changed newmenu code a bit to fix bug with bogus
- * backgrounds occcasionally.
- * 
- * Revision 1.48  1994/12/02  11:03:44  yuan
- * Localization.
- * 
- * Revision 1.47  1994/12/02  10:50:33  yuan
- * Localization
- * 
- * Revision 1.46  1994/12/01  12:21:59  john
- * Added code to calibrate 2 joysticks separately.
- * 
- * Revision 1.45  1994/12/01  11:52:31  john
- * Added message when you select FCS to say that if
- * you have WCS, see manuel.
- * 
- * Revision 1.44  1994/11/29  02:26:28  john
- * Made the prompts for upper-left, lower right for joy
- * calibration more obvious.
- * 
- * Revision 1.43  1994/11/26  13:13:59  matt
- * Changed "none" option to "keyboard only"
- * 
- * Revision 1.42  1994/11/21  19:35:13  john
- * Replaced calls to joy_init with if (joy_present)
- * 
- * Revision 1.41  1994/11/21  19:28:34  john
- * Changed warning for no joystick to use nm_messagebox..
- * 
- * Revision 1.40  1994/11/21  19:06:25  john
- * Made it so that it only stops sound when your in game mode. 
- * 
- * Revision 1.39  1994/11/21  11:47:18  john
- * Made sound pause during joystick calibration.
- * 
- * Revision 1.38  1994/11/10  20:34:18  rob
- * Removed menu-specific network mode support in favor in new stuff
- * in newmenu.c
- * 
- * Revision 1.37  1994/11/08  21:21:38  john
- * Made Esc exit joystick calibration.
- * 
- * Revision 1.36  1994/11/08  15:14:42  john
- * Added more calls so net doesn't die in net game.
- * 
- * Revision 1.35  1994/11/08  14:59:12  john
- * Added code to respond to network while in menus.
- * 
- * Revision 1.34  1994/10/24  19:56:32  john
- * Made the new user setup prompt for config options.
- * 
- * Revision 1.33  1994/10/22  14:11:52  mike
- * Suppress compiler warning message.
- * 
- * Revision 1.32  1994/10/19  12:44:24  john
- * Added hours field to player structure.
- * 
- * Revision 1.31  1994/10/17  13:07:13  john
- * Moved the descent.cfg info into the player config file.
- * 
- * Revision 1.30  1994/10/13  21:41:12  john
- * MAde Esc exit out of joystick calibration.
- * 
- * Revision 1.29  1994/10/13  19:22:27  john
- * Added separate config saves for different devices.
- * Made all the devices work together better, such as mice won't
- * get read when you're playing with the joystick.
- * 
- * Revision 1.28  1994/10/13  11:40:18  john
- * Took out warnings.
- * 
- * Revision 1.27  1994/10/13  11:35:23  john
- * Made Thrustmaster FCS Hat work.  Put a background behind the
- * keyboard configure.  Took out turn_sensitivity.  Changed sound/config
- * menu to new menu. Made F6 be calibrate joystick.
- * 
- * Revision 1.26  1994/10/11  21:29:03  matt
- * Made a bunch of menus have good initial selected values
- * 
- * Revision 1.25  1994/10/11  17:08:39  john
- * Added sliders for volume controls.
- * 
- * Revision 1.24  1994/10/10  17:59:21  john
- * Neatend previous.
- * 
- * Revision 1.23  1994/10/10  17:57:59  john
- * Neatend previous.
- * 
- * Revision 1.22  1994/10/10  17:56:11  john
- * Added messagebox that tells that config has been saved.
- * 
- * Revision 1.21  1994/09/30  12:37:26  john
- * Added midi,digi volume to configuration.
- * 
- * Revision 1.20  1994/09/22  16:14:14  john
- * Redid intro sequecing.
- * 
- * Revision 1.19  1994/09/19  18:50:15  john
- * Added switch to disable joystick.
- * 
- * Revision 1.18  1994/09/12  11:47:36  john
- * Made stupid cruise work better.  Make kconfig values get
- * read/written to disk.
- * 
- * Revision 1.17  1994/09/10  15:46:47  john
- * First version of new keyboard configuration.
- * 
- * Revision 1.16  1994/09/06  19:35:44  john
- * Fixed bug that didn';t load new size .cal file.
- * 
- * Revision 1.15  1994/09/06  14:51:58  john
- * Added sensitivity adjustment, fixed bug with joystick button not
- * staying down.
- * 
- * Revision 1.14  1994/09/02  16:13:47  john
- * Made keys fill in position.
- * 
- * Revision 1.13  1994/08/31  17:58:50  john
- * Made a bit simpler.
- * 
- * Revision 1.12  1994/08/31  14:17:54  john
- * *** empty log message ***
- * 
- * Revision 1.11  1994/08/31  14:10:56  john
- * Made keys not work when KEY_DELETE pressed.
- * 
- * Revision 1.10  1994/08/31  13:40:47  mike
- * Change constant
- * 
- * Revision 1.9  1994/08/31  12:56:27  john
- * *** empty log message ***
- * 
- * Revision 1.8  1994/08/30  20:38:29  john
- * Add more config stuff..
- * 
- * Revision 1.7  1994/08/30  16:37:25  john
- * Added menu options to set controls.
- * 
- * Revision 1.6  1994/08/30  09:27:18  john
- * *** empty log message ***
- * 
- * Revision 1.5  1994/08/30  09:12:01  john
- * *** empty log message ***
- * 
- * Revision 1.4  1994/08/29  21:18:32  john
- * First version of new keyboard/oystick remapping stuff.
- * 
- * Revision 1.3  1994/08/24  19:00:29  john
- * Changed key_down_time to return fixed seconds instead of
- * milliseconds.
- * 
- * Revision 1.2  1994/08/17  16:50:37  john
- * Added damaging fireballs, missiles.
- * 
- * Revision 1.1  1994/08/17  10:07:12  john
- * Initial revision
-
-------------------------------------------------------------------------
-arch/dos/key.c:
-
- * Revision 1.35  1995/01/25  20:13:30  john
- * Took out not passing keys to debugger if w10.
- * 
- * Revision 1.34  1995/01/14  19:19:31  john
- * Made so when you press Shift+Baskspace, it release keys autmatically.
- * 
- * Revision 1.33  1994/12/13  09:21:48  john
- * Took out keyd_editor_mode, and KEY_DEBUGGED stuff for NDEBUG versions.
- * 
- * Revision 1.32  1994/11/12  13:52:01  john
- * Fixed bug with code that cleared bios buffer.
- * 
- * Revision 1.31  1994/10/24  15:16:16  john
- * Added code to detect KEY_PAUSE.
- * 
- * Revision 1.30  1994/10/24  13:57:53  john
- * Hacked in support for pause key onto code 0x61.
- * 
- * Revision 1.29  1994/10/21  15:18:13  john
- * *** empty log message ***
- * 
- * Revision 1.28  1994/10/21  15:17:24  john
- * Made LSHIFT+BACKSPACE do what PrtScr used to.
- * 
- * Revision 1.27  1994/09/22  16:09:18  john
- * Fixed some virtual memory lockdown problems with timer and
- * joystick.
- * 
- * Revision 1.26  1994/09/15  21:32:47  john
- * Added bounds checking for down_count scancode
- * parameter.
- * 
- * Revision 1.25  1994/08/31  12:22:20  john
- * Added KEY_DEBUGGED
- * 
- * Revision 1.24  1994/08/24  18:53:48  john
- * Made Cyberman read like normal mouse; added dpmi module; moved
- * mouse from assembly to c. Made mouse buttons return time_down.
- * 
- * Revision 1.23  1994/08/18  15:17:51  john
- * *** empty log message ***
- * 
- * Revision 1.22  1994/08/18  15:16:38  john
- * fixed some bugs with clear_key_times and then
- * removed it because i fixed key_flush to do the
- * same.
- * 
- * Revision 1.21  1994/08/17  19:01:25  john
- * Attempted to fix a bug with a key being held down
- * key_flush called, then the key released having too 
- * long of a time.
- * 
- * Revision 1.20  1994/08/08  10:43:48  john
- * Recorded when a key was pressed for key_inkey_time.
- * 
- * Revision 1.19  1994/06/22  15:00:03  john
- * Made keyboard close automatically on exit.
- * 
- * Revision 1.18  1994/06/21  09:16:29  john
- * *** empty log message ***
- * 
- * Revision 1.17  1994/06/21  09:08:23  john
- * *** empty log message ***
- * 
- * Revision 1.16  1994/06/21  09:05:01  john
- * *** empty log message ***
- * 
- * Revision 1.15  1994/06/21  09:04:24  john
- * Made PrtScreen do an int5
- * 
- * Revision 1.14  1994/06/17  17:17:06  john
- * Added keyd_time_last_key_was_pressed or something like that.
- * 
- * Revision 1.13  1994/05/14  13:55:16  matt
- * Added #define to control key passing to bios
- * 
- * Revision 1.12  1994/05/05  18:09:39  john
- * Took out BIOS to prevent stuck keys.
- * 
- * Revision 1.11  1994/05/03  17:39:12  john
- * *** empty log message ***
- * 
- * Revision 1.10  1994/04/29  12:14:20  john
- * Locked all memory used during interrupts so that program
- * won't hang when using virtual memory.
- * 
- * Revision 1.9  1994/04/28  23:49:41  john
- * Made key_flush flush more keys and also did something else but i forget what.
- * 
- * Revision 1.8  1994/04/22  12:52:12  john
- * *** empty log message ***
- * 
- * Revision 1.7  1994/04/01  10:44:59  mike
- * Change key_getch() to call getch() if our interrupt hasn't been installed.
- * 
- * Revision 1.6  1994/03/09  10:45:48  john
- * Neatend code a bit.
- * 
- * Revision 1.5  1994/02/17  17:24:16  john
- * Neatened up a bit.
- * 
- * Revision 1.4  1994/02/17  16:30:29  john
- * Put in code to pass keys when in debugger.
- * 
- * Revision 1.3  1994/02/17  15:57:59  john
- * Made handler not chain to BIOS handler.
- * 
- * Revision 1.2  1994/02/17  15:56:06  john
- * Initial version.
- * 
- * Revision 1.1  1994/02/17  15:54:07  john
- * Initial revision
-
-------------------------------------------------------------------------
-arch/dos/mono.c:
-
- * Revision 1.12  1995/02/23  11:59:57  john
- * Made the windows smaller so they don't overwrite the debug file menus.
- * 
- * Revision 1.11  1994/11/27  23:07:50  matt
- * Made changes needed to be able to compile out monochrome debugging code
- * 
- * Revision 1.10  1994/10/26  22:23:43  john
- * Limited windows to 2.  Took away saving what was under
- * a window.
- * 
- * Revision 1.9  1994/07/14  23:25:44  matt
- * Allow window 0 to be opened; don't allow mono to be initialized twice
- * 
- * Revision 1.8  1994/03/09  10:45:38  john
- * Sped up scroll.
- * 
- * Revision 1.7  1994/01/26  08:56:55  mike
- * Comment out int3 in mputc.
- * 
- * Revision 1.6  1994/01/12  15:56:34  john
- * made backspace do an int3 during mono stuff.
- * .,
- * 
- * Revision 1.5  1993/12/07  12:33:23  john
- * *** empty log message ***
- * 
- * Revision 1.4  1993/10/15  10:10:25  john
- * *** empty log message ***
- * 
- * Revision 1.3  1993/09/14  20:55:13  matt
- * Made minit() and mopen() check for presence of mono card in machine.
- * 
- * Revision 1.2  1993/07/22  13:10:21  john
- * *** empty log message ***
- * 
- * Revision 1.1  1993/07/10  13:10:38  matt
- * Initial revision
-
-------------------------------------------------------------------------
-arch/dos/mono.h:
-
- * Revision 1.6  1994/12/03  17:07:37  matt
- * Made mono code turn off with either NDEBUG or NMONO
- * 
- * Revision 1.5  1994/11/27  23:07:28  matt
- * Made changes needed to be able to compile out monochrome debugging code
- * 
- * Revision 1.4  1993/12/07  12:33:28  john
- * *** empty log message ***
- * 
- * Revision 1.3  1993/09/14  20:54:50  matt
- * Made minit() check for mono card, return -1 if present, 0 if not
- * 
- * Revision 1.2  1993/07/22  13:05:40  john
- * added macros to print variables
- * 
- * Revision 1.1  1993/07/10  13:10:40  matt
- * Initial revision
-
-------------------------------------------------------------------------
-arch/dos/mouse.c:
-
- * Revision 1.11  1995/02/10  18:52:17  john
- * Fixed bug with mouse not getting closed.
- *
- * Revision 1.10  1995/02/02  11:10:33  john
- * Changed a bunch of mouse stuff around to maybe get
- * around PS/2 mouse hang.
- *
- * Revision 1.9  1995/01/14  19:19:52  john
- * Fixed signed short error cmp with -1 that caused mouse
- * to break under Watcom 10.0
- *
- * Revision 1.8  1994/12/27  12:38:23  john
- * Made mouse use temporary dos buffer instead of
- *
- * allocating its own.
- *
- *
- * Revision 1.7  1994/12/05  23:54:53  john
- * Fixed bug with mouse_get_delta only returning positive numbers..
- *
- * Revision 1.6  1994/11/18  23:18:18  john
- * Changed some shorts to ints.
- *
- * Revision 1.5  1994/09/13  12:34:02  john
- * Added functions to get down count and state.
- *
- * Revision 1.4  1994/08/29  20:52:19  john
- * Added better cyberman support; also, joystick calibration
- * value return funcctiionn,
- *
- * Revision 1.3  1994/08/24  18:54:32  john
- * *** empty log message ***
- *
- * Revision 1.2  1994/08/24  18:53:46  john
- * Made Cyberman read like normal mouse; added dpmi module; moved
- * mouse from assembly to c. Made mouse buttons return time_down.
- *
- * Revision 1.1  1994/08/24  13:56:37  john
- * Initial revision
-
-------------------------------------------------------------------------
-arch/include/joy.h:
-
- * Revision 1.17  1995/10/07  13:22:30  john
- * Added new method of reading joystick that allows higher-priority
- * interrupts to go off.
- *
- * Revision 1.16  1995/02/14  11:17:13  john
- * Added BIOS readings for stick.
- *
- * Revision 1.15  1995/02/14  10:09:58  john
- * Added OS2 switch.
- *
- * Revision 1.14  1994/12/28  13:49:20  john
- * Added function to set joystick for slow reading
- *
- * Revision 1.13  1994/10/13  11:36:06  john
- * Made joy_down_time be kept track of in fixed seconds,
- * not ticks.
- *
- * Revision 1.12  1994/10/12  17:03:16  john
- * Added prototype for joy_get_scaled_reading.
- *
- * Revision 1.11  1994/10/12  16:57:55  john
- * Added function to set a joystick button's state.
- *
- * Revision 1.10  1994/09/22  16:09:00  john
- * Fixed some virtual memory lockdown problems with timer and
- * joystick.
- *
- * Revision 1.9  1994/08/31  09:54:57  john
- * *** empty log message ***
- *
- * Revision 1.8  1994/08/29  21:02:24  john
- * Added joy_set_cal_values...
- *
- * Revision 1.7  1994/08/29  20:51:52  john
- * Added better cyberman support; also, joystick calibration
- * value return funcctiionn,
- *
- * Revision 1.6  1994/07/01  10:55:44  john
- * Fixed some bugs... added support for 4 axis.
- *
- * Revision 1.5  1994/06/30  20:36:51  john
- * Revamped joystick code.
- *
- * Revision 1.4  1994/04/22  12:52:10  john
- * *** empty log message ***
- *
- * Revision 1.3  1994/01/18  13:53:39  john
- * Made all joystick functions return int's instead of
- * shorts.  Also made the stick reading be CPU speed
- * independant by using the timer_get_Stamp_64
- * function.
- *
- * Revision 1.2  1994/01/18  10:58:42  john
- * *** empty log message ***
- *
- * Revision 1.1  1993/07/10  13:10:39  matt
- * Initial revision
-
-------------------------------------------------------------------------
-arch/win32/include/key.h:
-
- * Revision 1.19  1994/10/24  13:58:12  john
- * Hacked in support for pause key onto code 0x61.
- * 
- * Revision 1.18  1994/10/21  15:17:10  john
- * Added KEY_PRINT_SCREEN
- * 
- * Revision 1.17  1994/08/31  12:22:13  john
- * Added KEY_DEBUGGED
- * 
- * Revision 1.16  1994/08/24  18:53:50  john
- * Made Cyberman read like normal mouse; added dpmi module; moved
- * mouse from assembly to c. Made mouse buttons return time_down.
- * 
- * Revision 1.15  1994/08/18  14:56:16  john
- * *** empty log message ***
- * 
- * Revision 1.14  1994/08/08  10:43:24  john
- * Recorded when a key was pressed for key_inkey_time.
- * 
- * Revision 1.13  1994/06/17  17:17:28  john
- * Added keyd_time_last_key_was_pressed or something like that.
- * 
- * Revision 1.12  1994/04/29  12:14:19  john
- * Locked all memory used during interrupts so that program
- * won't hang when using virtual memory.
- * 
- * Revision 1.11  1994/02/17  15:57:14  john
- * Changed key libary to C.
- * 
- * Revision 1.10  1994/01/31  08:34:09  john
- * Fixed reversed lshift/rshift keys.
- * 
- * Revision 1.9  1994/01/18  10:58:17  john
- * *** empty log message ***
- * 
- * Revision 1.8  1993/10/16  19:24:43  matt
- * Added new function key_clear_times() & key_clear_counts()
- * 
- * Revision 1.7  1993/10/15  10:17:09  john
- * added keyd_last_key_pressed and released for use with recorder.
- * 
- * Revision 1.6  1993/10/06  16:20:37  john
- * fixed down arrow bug
- * 
- * Revision 1.5  1993/10/04  13:26:42  john
- * changed the #defines for scan codes.
- * 
- * Revision 1.4  1993/09/28  11:35:20  john
- * added key_peekkey
- * 
- * Revision 1.3  1993/09/20  18:36:43  john
- * *** empty log message ***
- * 
- * Revision 1.1  1993/07/10  13:10:39  matt
- * Initial revision
-
-------------------------------------------------------------------------
-arch/win32/include/mouse.h:
-
- * Revision 1.10  1995/02/02  10:22:29  john
- * Added cyberman init parameter.
- * 
- * Revision 1.9  1994/11/18  23:18:09  john
- * Changed some shorts to ints.
- * 
- * Revision 1.8  1994/09/13  12:33:49  john
- * Added functions to get down count and state.
- * 
- * Revision 1.7  1994/08/29  20:52:20  john
- * Added better cyberman support; also, joystick calibration
- * value return funcctiionn,
- * 
- * Revision 1.6  1994/08/24  17:54:35  john
- * *** empty log message ***
- * 
- * Revision 1.5  1994/08/24  17:51:43  john
- * Added transparent cyberman support
- * 
- * Revision 1.4  1993/07/27  09:32:22  john
- * *** empty log message ***
- * 
- * Revision 1.3  1993/07/26  10:46:44  john
- * added definition for mouse_set_pos
- * 
- * Revision 1.2  1993/07/22  13:07:59  john
- * added header for mousesetlimts
- * 
- * Revision 1.1  1993/07/10  13:10:40  matt
- * Initial revision
-
-------------------------------------------------------------------------
-arch/win32/mouse.c:
-
- * Revision 1.8  1996/02/21  13:57:36  allender
- * cursor device manager stuff added here so as not to
- * rely on InterfaceLib anymore
- *
- * Revision 1.7  1995/10/17  15:42:21  allender
- * new mouse function to determine single button press
- *
- * Revision 1.6  1995/10/03  11:27:31  allender
- * fixed up hotspot problems with the mouse on multiple monitors
- *
- * Revision 1.5  1995/07/13  11:27:08  allender
- * trap button checks at MAX_MOUSE_BUTTONS
- *
- * Revision 1.4  1995/06/25  21:56:53  allender
- * added events include
- *
- * Revision 1.3  1995/05/11  17:06:38  allender
- * fixed up mouse routines
- *
- * Revision 1.2  1995/05/11  13:05:53  allender
- * of mouse handler code
- *
- * Revision 1.1  1995/05/05  09:54:45  allender
- * Initial revision
- *
- * Revision 1.9  1995/01/14  19:19:52  john
- * Fixed signed short error cmp with -1 that caused mouse
- * to break under Watcom 10.0
- *
- * Revision 1.8  1994/12/27  12:38:23  john
- * Made mouse use temporary dos buffer instead of
- *
- * allocating its own.
- *
- * Revision 1.7  1994/12/05  23:54:53  john
- * Fixed bug with mouse_get_delta only returning positive numbers..
- *
- * Revision 1.6  1994/11/18  23:18:18  john
- * Changed some shorts to ints.
- *
- * Revision 1.5  1994/09/13  12:34:02  john
- * Added functions to get down count and state.
- *
- * Revision 1.4  1994/08/29  20:52:19  john
- * Added better cyberman support; also, joystick calibration
- * value return funcctiionn,
- *
- * Revision 1.3  1994/08/24  18:54:32  john
- * *** empty log message ***
- *
- * Revision 1.2  1994/08/24  18:53:46  john
- * Made Cyberman read like normal mouse; added dpmi module; moved
- * mouse from assembly to c. Made mouse buttons return time_down.
- *
- * Revision 1.1  1994/08/24  13:56:37  john
- * Initial revision
-
-------------------------------------------------------------------------
-cfile/cfile.c:
-
- * Revision 1.7  1995/10/27  15:18:20  allender
- * get back to descent directory before trying to read a hog file
- *
- * Revision 1.6  1995/10/21  23:48:24  allender
- * hogfile(s) are now in :Data: folder
- *
- * Revision 1.5  1995/08/14  09:27:31  allender
- * added byteswap header
- *
- * Revision 1.4  1995/05/12  11:54:33  allender
- * changed memory stuff again
- *
- * Revision 1.3  1995/05/04  20:03:38  allender
- * added code that was missing...use NewPtr instead of malloc
- *
- * Revision 1.2  1995/04/03  09:59:49  allender
- * *** empty log message ***
- *
- * Revision 1.1  1995/03/30  10:25:02  allender
- * Initial revision
- *
- *
- * --- PC RCS Information ---
- * Revision 1.24  1995/03/15  14:20:27  john
- * Added critical error checker.
- *
- * Revision 1.23  1995/03/13  15:16:53  john
- * Added alternate directory stuff.
- *
- * Revision 1.22  1995/02/09  23:08:47  matt
- * Increased the max number of files in hogfile to 250
- *
- * Revision 1.21  1995/02/01  20:56:47  john
- * Added cfexist function
- *
- * Revision 1.20  1995/01/21  17:53:48  john
- * Added alternate pig file thing.
- *
- * Revision 1.19  1994/12/29  15:10:02  john
- * Increased hogfile max files to 200.
- *
- * Revision 1.18  1994/12/12  13:20:57  john
- * Made cfile work with fiellentth.
- *
- * Revision 1.17  1994/12/12  13:14:25  john
- * Made cfiles prefer non-hog files.
- *
- * Revision 1.16  1994/12/09  18:53:26  john
- * *** empty log message ***
- *
- * Revision 1.15  1994/12/09  18:52:56  john
- * Took out mem, error checking.
- *
- * Revision 1.14  1994/12/09  18:10:31  john
- * Speed up cfgets, which was slowing down the reading of
- * bitmaps.tbl, which was making POF loading look slow.
- *
- * Revision 1.13  1994/12/09  17:53:51  john
- * Added error checking to number of hogfiles..
- *
- * Revision 1.12  1994/12/08  19:02:55  john
- * Added cfgets.
- *
- * Revision 1.11  1994/12/07  21:57:48  john
- * Took out data dir.
- *
- * Revision 1.10  1994/12/07  21:38:02  john
- * Made cfile not return error..
- *
- * Revision 1.9  1994/12/07  21:35:34  john
- * Made it read from data directory.
- *
- * Revision 1.8  1994/12/07  21:33:55  john
- * Stripped out compression stuff...
- *
- * Revision 1.7  1994/04/13  23:44:59  matt
- * When file cannot be opened, free up the buffer for that file.
- *
- * Revision 1.6  1994/02/18  12:38:20  john
- * Optimized a bit
- *
- * Revision 1.5  1994/02/15  18:13:20  john
- * Fixed more bugs.
- *
- * Revision 1.4  1994/02/15  13:27:58  john
- * Works ok...
- *
- * Revision 1.3  1994/02/15  12:51:57  john
- * Crappy inbetween version
- *
- * Revision 1.2  1994/02/14  20:12:29  john
- * First version working with new cfile stuff.
- *
- * Revision 1.1  1994/02/14  15:51:33  john
- * Initial revision
- *
- * Revision 1.1  1994/02/10  15:45:12  john
- * Initial revision
-
-------------------------------------------------------------------------
-iff/iff.c:
-
- * Revision 1.2  1995/05/12  11:54:43  allender
- * changed memory stuff again
- *
- * Revision 1.1  1995/05/05  08:59:41  allender
- * Initial revision
- *
- * Revision 1.43  1994/12/08  19:03:17  john
- * Added code to use cfile.
- *
- * Revision 1.42  1994/12/08  17:45:32  john
- * Put back in cfile stuff.
- *
- * Revision 1.41  1994/11/19  16:41:06  matt
- * Took out unused code
- *
- * Revision 1.40  1994/11/07  21:26:39  matt
- * Added new function iff_read_into_bitmap()
- *
- * Revision 1.39  1994/10/27  00:12:03  john
- * Used nocfile
- *
- * Revision 1.38  1994/08/10  19:49:58  matt
- * Fixed bitmaps in ILBM format with masking (stencil) on.
- *
- * Revision 1.37  1994/06/02  18:53:17  matt
- * Clear flags & selector in new bitmap structure
- *
- * Revision 1.36  1994/05/17  14:00:33  matt
- * Fixed bug with odd-width deltas & odd-length body chunks
- *
- * Revision 1.35  1994/05/16  20:38:55  matt
- * Made anim brushes work when odd width
- *
- * Revision 1.34  1994/05/06  19:37:26  matt
- * Improved error handling and checking
- *
- * Revision 1.33  1994/04/27  20:57:07  matt
- * Fixed problem with RLE decompression and odd-width bitmap
- * Added more error checking
- *
- * Revision 1.32  1994/04/16  21:44:19  matt
- * Fixed bug introduced last version
- *
- * Revision 1.31  1994/04/16  20:12:40  matt
- * Made masked (stenciled) bitmaps work
- *
- * Revision 1.30  1994/04/13  23:46:16  matt
- * Added function, iff_errormsg(), which returns ptr to error message.
- *
- * Revision 1.29  1994/04/13  23:27:25  matt
- * Put in support for anim brushes (.abm files)
- *
- * Revision 1.28  1994/04/13  16:33:31  matt
- * Cleaned up file read code, adding fake_file structure (FFILE), which
- * cleanly implements reading the entire file into a buffer and then reading
- * out of that buffer.
- *
- * Revision 1.27  1994/04/06  23:07:43  matt
- * Cleaned up code; added prototype (but no new code) for anim brush read
- *
- * Revision 1.26  1994/03/19  02:51:52  matt
- * Really did what I said I did last revision.
- *
- * Revision 1.25  1994/03/19  02:16:07  matt
- * Made work ILBMs which didn't have 8 planes
- *
- * Revision 1.24  1994/03/15  14:45:26  matt
- * When error, only free memory if has been allocated
- *
- * Revision 1.23  1994/02/18  12:39:05  john
- * Made code read from buffer.
- *
- * Revision 1.22  1994/02/15  18:15:26  john
- * Took out cfile attempt (too slow)
- *
- * Revision 1.21  1994/02/15  13:17:48  john
- * added assert to cfseek.
- *
- * Revision 1.20  1994/02/15  13:13:11  john
- * Made iff code work normally.
- *
- * Revision 1.19  1994/02/15  12:51:07  john
- * crappy inbetween version.
- *
- * Revision 1.18  1994/02/10  18:31:32  matt
- * Changed 'if DEBUG_ON' to 'ifndef NDEBUG'
- *
- * Revision 1.17  1994/01/24  11:51:26  john
- * Made write routine write transparency info.
- *
- * Revision 1.16  1994/01/22  14:41:11  john
- * Fixed bug with declareations.
- *
- * Revision 1.15  1994/01/22  14:23:00  john
- * Added global vars to check transparency
- *
- * Revision 1.14  1993/12/08  19:00:42  matt
- * Changed while loop to memset
- *
- * Revision 1.13  1993/12/08  17:23:51  mike
- * Speedup by converting while...getc to fread.
- *
- * Revision 1.12  1993/12/08  12:37:35  mike
- * Optimize parse_body.
- *
- * Revision 1.11  1993/12/05  17:30:14  matt
- * Made bitmaps with width <= 64 not compress
- *
- * Revision 1.10  1993/12/03  12:24:51  matt
- * Fixed TINY chunk when bitmap was part of a larger bitmap
- *
- * Revision 1.9  1993/11/22  17:26:43  matt
- * iff write now writes out a tiny chunk
- *
- * Revision 1.8  1993/11/21  22:04:13  matt
- * Fixed error with non-compressed bitmaps
- * Added Yuan's code to free raw data if we get an error parsing the body
- *
- * Revision 1.7  1993/11/11  12:12:12  yuan
- * Changed mallocs to MALLOCs.
- *
- * Revision 1.6  1993/11/01  19:02:23  matt
- * Fixed a couple bugs in rle compression
- *
- * Revision 1.5  1993/10/27  12:47:39  john
- * *** empty log message ***
- *
- * Revision 1.4  1993/10/27  12:37:31  yuan
- * Added mem.h
- *
- * Revision 1.3  1993/09/22  19:16:57  matt
- * Added new error type, IFF_CORRUPT, for internally bad IFF files.
- *
- * Revision 1.2  1993/09/08  19:24:16  matt
- * Fixed bug in RLE compression
- * Changed a bunch of unimportant values like aspect and page size when writing
- * Added new error condition, IFF_BAD_BM_TYPE
- * Make sub-bitmaps work correctly
- * Added compile flag to turn compression off (COMPRESS)
- *
- * Revision 1.1  1993/09/08  14:24:15  matt
- * Initial revision
-
-------------------------------------------------------------------------
-include/3d.h:
-
- * Revision 1.2  1995/09/14  14:08:58  allender
- * return value for g3_draw_sphere
- *
- * Revision 1.1  1995/05/05  08:48:41  allender
- * Initial revision
- *
- * Revision 1.34  1994/11/11  19:22:14  matt
- * Added new function, g3_calc_point_depth()
- *
- * Revision 1.33  1994/09/09  14:23:58  matt
- * Added support for glowing textures, to add engine glow to Descent.
- *
- * Revision 1.32  1994/09/01  10:42:27  matt
- * Blob routine, renamed g3_draw_bitmap(), now takes seperate 3d width & height.
- *
- * Revision 1.31  1994/07/29  18:16:14  matt
- * Added instance by angles, and corrected parms for g3_init()
- *
- * Revision 1.30  1994/07/25  00:00:00  matt
- * Made 3d no longer deal with point numbers, but only with pointers.
- *
- * Revision 1.29  1994/07/22  17:57:27  matt
- * Changed the name of the rod functions, and took out some debugging code
- *
- * Revision 1.28  1994/06/07  16:49:12  matt
- * Made interpreter take lighting value as parm, rather than in global var
- *
- * Revision 1.27  1994/05/31  18:35:28  matt
- * Added light value to g3_draw_facing_bitmap()
- *
- * Revision 1.26  1994/05/30  22:48:04  matt
- * Added support for morph effect
- *
- * Revision 1.25  1994/05/30  11:34:57  matt
- * Added g3_set_special_render() to allow a user to specify functions to
- * call for 2d draws.
- *
- * Revision 1.24  1994/05/19  21:46:31  matt
- * Moved texture lighting out of 3d and into the game
- *
- * Revision 1.23  1994/05/14  15:26:48  matt
- * Added extern for polyobj outline flag
- *
- * Revision 1.22  1994/04/19  18:26:33  matt
- * Added g3_draw_sphere() function.
- *
- * Revision 1.21  1994/03/25  18:22:28  matt
- * g3_draw_polygon_model() now takes ptr to list of angles
- *
- * Revision 1.20  1994/03/15  21:23:23  matt
- * Added interpreter functions
- *
- * Revision 1.19  1994/02/15  17:37:34  matt
- * New function, g3_draw_blob()
- *
- * Revision 1.18  1994/02/09  11:47:47  matt
- * Added rod & delta point functions
- *
- * Revision 1.17  1994/01/26  12:38:11  matt
- * Added function g3_compute_lighting_value()
- *
- * Revision 1.16  1994/01/25  18:00:02  yuan
- * Fixed variable beam_brightness...
- *
- * Revision 1.15  1994/01/24  14:08:34  matt
- * Added instancing functions
- *
- * Revision 1.14  1994/01/22  18:21:48  matt
- * New lighting stuff now done in 3d; g3_draw_tmap() takes lighting parm
- *
- * Revision 1.13  1994/01/20  17:21:24  matt
- * New function g3_compute_sky_polygon()
- *
- * Revision 1.12  1994/01/14  17:20:25  matt
- * Added prototype for new function g3_draw_horizon()
- *
- * Revision 1.10  1993/12/20  20:21:52  matt
- * Added g3_point_2_vec()
- *
- * Revision 1.9  1993/12/07  23:05:47  matt
- * Fixed mistyped function name.
- *
- * Revision 1.8  1993/12/05  23:47:03  matt
- * Added function g3_draw_line_ptrs()
- *
- * Revision 1.7  1993/12/05  23:13:22  matt
- * Added prototypes for g3_rotate_point() and g3_project_point()
- *
- * Revision 1.6  1993/12/05  23:03:28  matt
- * Changed uvl structs to g3s_uvl
- *
- * Revision 1.5  1993/11/22  10:51:09  matt
- * Moved uvl structure here from segment.h, made texture map functions use it
- *
- * Revision 1.4  1993/11/21  20:08:31  matt
- * Added function g3_draw_object()
- *
- * Revision 1.3  1993/11/04  18:49:19  matt
- * Added system to only rotate points once per frame
- *
- * Revision 1.2  1993/11/04  08:16:06  mike
- * Add light field (p3_l) to g3s_point.
- *
- * Revision 1.1  1993/10/29  22:20:56  matt
- * Initial revision
-
-------------------------------------------------------------------------
-include/args.h:
-
- * Revision 1.1  1995/05/16  15:54:24  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:33:09  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.4  1994/07/11  16:27:28  matt
- * Took out prototypes for netipx funcs
- *
- * Revision 1.3  1994/05/11  19:45:34  john
- * *** empty log message ***
- *
- * Revision 1.2  1994/05/09  17:02:55  john
- * Split command line parameters into arg.c and arg.h.
- * Also added /dma, /port, /irq to digi.c
- *
- * Revision 1.1  1994/05/09  16:47:49  john
- * Initial revision
-
-------------------------------------------------------------------------
-include/byteswap.h:
-
- * Revision 1.4  1995/08/23  21:28:15  allender
- * fix mcc compiler warning
- *
- * Revision 1.3  1995/08/18  15:51:42  allender
- * put back in old byteswapping code
- *
- * Revision 1.2  1995/05/04  20:10:18  allender
- * proper prototypes
- *
- * Revision 1.1  1995/03/30  15:02:11  allender
- * Initial revision
-
-------------------------------------------------------------------------
-include/cfile.h:
-
- * Revision 1.1  1995/03/30  10:25:08  allender
- * Initial revision
- *
- *
- * -- PC RCS Information ---
- * Revision 1.10  1995/03/13  15:16:47  john
- * Added alternate directory stuff.
- *
- * Revision 1.9  1995/02/01  20:56:40  john
- * Added cfexist function
- *
- * Revision 1.8  1995/01/21  17:53:41  john
- * Added alternate pig file thing.
- *
- * Revision 1.7  1994/12/12  13:19:47  john
- * Made cfile work with fiellentth.
- *
- * Revision 1.6  1994/12/08  19:02:52  john
- * Added cfgets.
- *
- * Revision 1.5  1994/12/07  21:34:07  john
- * Stripped out compression stuff...
- *
- * Revision 1.4  1994/07/13  00:16:53  matt
- * Added include
- *
- * Revision 1.3  1994/02/17  17:36:19  john
- * Added CF_READ_MODE and CF_WRITE_MODE constants.
- *
- * Revision 1.2  1994/02/15  12:52:08  john
- * Crappy inbetween version
- *
- * Revision 1.1  1994/02/15  10:54:23  john
- * Initial revision
- *
- * Revision 1.1  1994/02/10  15:50:54  john
- * Initial revision
-
-------------------------------------------------------------------------
-include/error.h:
-
- * Revision 1.12  1994/06/17  15:22:46  matt
- * Added pragma for Error() for when NDEBUG
- *
- * Revision 1.11  1994/03/07  13:22:14  matt
- * Since the Error() function has 'aborts' set in pragma, we do a jmp
- * to the function rather than call.
- *
- * Revision 1.10  1994/02/17  12:37:15  matt
- * Combined two pragma's for Error(), since second superseded the first
- *
- * Revision 1.9  1994/02/10  18:02:53  matt
- * Changed 'if DEBUG_ON' to 'ifndef NDEBUG'
- *
- * Revision 1.8  1994/02/09  15:18:29  matt
- * Added pragma saying that Error() never returns
- *
- * Revision 1.7  1993/10/19  12:57:53  matt
- * If DEBUG_ON not defined, define it to be 1
- *
- * Revision 1.6  1993/10/15  21:40:39  matt
- * Made error functions generate int3's if debugging on
- *
- * Revision 1.5  1993/10/14  15:29:22  matt
- * Added new function clear_warn_func()
- *
- * Revision 1.4  1993/10/08  16:16:47  matt
- * Made Assert() call function _Assert(), rather to do 'if...' inline.
- *
- * Revision 1.3  1993/09/29  11:39:07  matt
- * Added Assert() macro, like the system one, but calls Error()
- *
- * Revision 1.2  1993/09/27  11:47:03  matt
- * Added function set_warn_func()
- *
- * Revision 1.1  1993/09/23  20:17:46  matt
- * Initial revision
-
-------------------------------------------------------------------------
-include/gr.h:
-
- * Revision 1.7  1995/09/13  08:39:44  allender
- * added prototype for gr_bitblt_cockpit
- *
- * Revision 1.6  1995/08/23  18:47:01  allender
- * fixed compiler warnings on mcc
- *
- * Revision 1.5  1995/08/14  15:51:01  allender
- * added #define for transparency color
- *
- * Revision 1.4  1995/06/13  13:03:55  allender
- * added graphics mode
- *
- * Revision 1.3  1995/04/18  09:50:16  allender
- * *** empty log message ***
- *
- * Revision 1.2  1995/04/07  07:32:33  allender
- * *** empty log message ***
- *
- * Revision 1.1  1995/03/09  09:04:16  allender
- * Initial revision
- *
- *
- * --- PC RCS information ---
- * Revision 1.45  1994/11/18  22:50:21  john
- * Changed shorts to ints in parameters.
- *
- * Revision 1.44  1994/11/13  13:04:07  john
- * Added paged out bit in bitmap structure.  Commented out the
- * poly code that is never used.
- *
- * Revision 1.43  1994/11/09  23:04:56  mike
- * Add avg_color field.
- *
- * Revision 1.42  1994/10/27  00:53:35  john
- * Added RLE Flag to bitmap structere.
- *
- * Revision 1.41  1994/10/26  23:55:52  john
- * Took out roller; Took out inverse table.
- *
- * Revision 1.40  1994/08/11  17:59:12  mike
- * Assembler merge functions written for 3 rotations of bitmaps.
- *
- * Revision 1.39  1994/08/10  12:24:56  matt
- * Added support for colors fonts & kerned fonts
- * Made our own font file format
- *
- * Revision 1.38  1994/07/27  18:30:18  john
- * Took away the blending table.
- *
- * Revision 1.37  1994/06/16  15:25:06  mike
- * Add flag BM_FLAG_NO_LIGHTING.
- *
- * Revision 1.36  1994/05/31  10:01:22  john
- * *** empty log message ***
- *
- * Revision 1.35  1994/05/31  07:53:34  john
- * *** empty log message ***
- *
- * Revision 1.34  1994/05/14  17:19:41  matt
- * Added externs
- *
- * Revision 1.33  1994/05/12  17:33:09  john
- * Added circle code.
- *
- * Revision 1.32  1994/05/06  12:50:16  john
- * Added supertransparency; neatend things up; took out warnings.
- *
- * Revision 1.31  1994/05/04  10:06:06  john
- * Added flag for bitmap super-transparency.
- *
- * Revision 1.30  1994/05/03  19:38:56  john
- * *** empty log message ***
- *
- * Revision 1.29  1994/04/22  11:16:05  john
- * *** empty log message ***
- *
- * Revision 1.28  1994/04/08  16:59:32  john
- * Add fading poly's; Made palette fade 32 instead of 16.
- *
- * Revision 1.27  1994/03/16  17:29:52  john
- * *** empty log message ***
- *
- * Revision 1.26  1994/03/16  17:20:51  john
- * Added slow palette searching options.
- *
- * Revision 1.25  1994/03/14  17:59:20  john
- * Added function to check bitmap's transparency.
- *
- * Revision 1.24  1994/03/14  16:56:26  john
- * Changed grs_bitmap structure to include bm_flags.
- *
- * Revision 1.23  1994/02/18  15:32:30  john
- * *** empty log message ***
- *
- * Revision 1.22  1994/01/25  11:40:48  john
- * Added gr_check_mode function.
- *
- * Revision 1.21  1994/01/12  13:45:24  john
- * Added scaler.
- *
- * Revision 1.20  1993/12/21  19:58:24  john
- * added selector stuff
- *
- * Revision 1.19  1993/12/21  11:40:40  john
- * *** empty log message ***
- *
- * Revision 1.18  1993/12/09  15:02:08  john
- * Changed palette stuff majorly
- *
- * Revision 1.17  1993/12/07  12:32:05  john
- * moved bmd_palette to gr_palette
- *
- * Revision 1.16  1993/11/28  12:08:06  mike
- * Change prototype for rotate_bitmap.
- *
- * Revision 1.15  1993/11/18  14:22:51  mike
- * Add prototype for rotate_bitmap.
- *
- * Revision 1.14  1993/11/17  19:00:59  mike
- * Add prototype for test_rotate_bitmap
- *
- * Revision 1.13  1993/11/16  11:28:58  john
- * *** empty log message ***
- *
- * Revision 1.12  1993/10/26  13:17:43  john
- * *** empty log message ***
- *
- * Revision 1.11  1993/10/15  16:23:37  john
- * y
- *
- * Revision 1.10  1993/09/28  15:32:33  john
- * added def for save/restore vidmode
- *
- * Revision 1.9  1993/09/28  12:51:46  matt
- * Added aspect ratio to grs_screen structure
- *
- * Revision 1.8  1993/09/26  22:45:12  matt
- * Changed prototypes for line functions to take fixes, not ints.
- *
- * Revision 1.7  1993/09/26  18:58:16  john
- * fadein/out stuff
- *
- * Revision 1.6  1993/09/14  16:26:44  matt
- * Changed gr_change_mode() to be gr_set_mode()
- *
- * Revision 1.4  1993/09/14  13:08:45  john
- * added gr_change_mode
- *
- * Revision 1.3  1993/09/08  13:56:03  matt
- * Put 'if' block around body of file; added bitmap type BM_RGB15
- *
- * Revision 1.2  1993/09/08  13:02:14  john
- * Changed structure definitions a bit.
- *
- * Revision 1.1  1993/09/08  11:25:15  john
- * Initial revision
-
-------------------------------------------------------------------------
-include/grdef.h:
-
- * Revision 1.5  1995/09/14  15:36:33  allender
- * added stuff for 68k version
- *
- * Revision 1.4  1995/07/05  16:10:57  allender
- * gr_linear_movsd prototype changes
- *
- * Revision 1.3  1995/04/19  14:39:28  allender
- * changed function prototype
- *
- * Revision 1.2  1995/04/18  09:49:53  allender
- * *** empty log message ***
- *
- * Revision 1.1  1995/03/09  09:04:56  allender
- * Initial revision
- *
- *
- * --- PC RCS information ---
- * Revision 1.8  1994/05/06  12:50:09  john
- * Added supertransparency; neatend things up; took out warnings.
- *
- * Revision 1.7  1994/01/25  11:40:29  john
- * Added gr_check_mode function.
- *
- * Revision 1.6  1993/10/15  16:22:53  john
- * y
- *
- * Revision 1.5  1993/09/29  17:31:00  john
- * added gr_vesa_pixel
- *
- * Revision 1.4  1993/09/29  16:14:43  john
- * added global canvas descriptors.
- *
- * Revision 1.3  1993/09/08  17:38:02  john
- * Looking for errors
- *
- * Revision 1.2  1993/09/08  15:54:29  john
- * *** empty log message ***
- *
- * Revision 1.1  1993/09/08  11:37:57  john
- * Initial revision
-
-------------------------------------------------------------------------
-include/ibitblt.h:
-
- * Revision 1.1  1995/08/18  15:50:57  allender
- * Initial revision
- *
- * Revision 1.2  1994/05/31  11:10:56  john
- * *** empty log message ***
- *
- * Revision 1.1  1994/05/30  16:08:46  john
- * Initial revision
-
-------------------------------------------------------------------------
-include/iff.h:
-
- * Revision 1.2  1995/05/05  16:33:22  allender
- * changed types.h to dtypes.h
- *
- * Revision 1.1  1995/05/05  08:59:45  allender
- * Initial revision
- *
- * Revision 1.12  1994/11/07  21:26:53  matt
- * Added new function iff_read_into_bitmap()
- *
- * Revision 1.11  1994/05/06  19:37:38  matt
- * Improved error handling and checking
- *
- * Revision 1.10  1994/04/16  20:12:54  matt
- * Made masked (stenciled) bitmaps work
- *
- * Revision 1.9  1994/04/13  23:46:00  matt
- * Added function, iff_errormsg(), which returns ptr to error message.
- *
- * Revision 1.8  1994/04/13  23:27:10  matt
- * Put in support for anim brushes (.abm files)
- *
- * Revision 1.7  1994/04/06  23:08:02  matt
- * Cleaned up code; added prototype (but no new code) for anim brush read
- *
- * Revision 1.6  1994/01/22  14:40:59  john
- * Fixed bug with declareations.
- *
- * Revision 1.5  1994/01/22  14:23:13  john
- * Added global vars to check transparency
- *
- * Revision 1.4  1993/10/27  12:47:42  john
- * Extended the comments
- *
- * Revision 1.3  1993/09/22  19:17:20  matt
- * Fixed handling of pad byte in ILBM/PPB body - was writing pad byte to
- * destination buffer.
- *
- * Revision 1.2  1993/09/08  19:23:25  matt
- * Added additional return code, IFF_BAD_BM_TYPE
- *
- * Revision 1.1  1993/09/08  14:24:21  matt
- * Initial revision
-
-------------------------------------------------------------------------
-include/ipx.h:
-
- * Revision 2.6  1995/03/29  11:19:32  john
- * Added broadcasting over a net.
- *
- * Revision 2.5  1995/03/28  20:04:43  john
- * Took away alternate server stuff.
- *
- * Revision 2.4  1995/03/23  19:00:10  john
- * Added user list capabitly.
- *
- * Revision 2.3  1995/03/23  12:26:57  john
- * Move IPX into bios lib.
- *
- * Revision 2.2  1995/03/22  19:08:14  john
- * Added code to fix sending packets over router... now
- * we just need to make broadcasts go over router!!
- *
- * Revision 2.1  1995/03/21  08:39:56  john
- * Ifdef'd out the NETWORK code.
- *
- * Revision 2.0  1995/02/27  11:30:16  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.16  1995/02/16  17:34:52  john
- * Added code to allow dynamic socket changing.
- *
- * Revision 1.15  1995/01/04  21:43:27  rob
- * Remove SPX size definition.
- *
- * Revision 1.14  1995/01/03  13:46:18  john
- * Added code that should make ipx work over different servers,
- * but ifdef'd it out with SHAREWARE in ipx.c.  I haven't tested
- * this, and I hope it doesn't introduce net bugs.
- *
- * Revision 1.13  1994/11/02  11:37:16  rob
- * Changed default socket number to a higher regions.
- *
- * Revision 1.12  1994/11/01  15:56:51  rob
- * Added defines for SPX socketsx.
- *
- * Revision 1.11  1994/10/31  19:23:31  rob
- * Added a prototype for the new object send function.
- *
- * Revision 1.10  1994/09/07  13:37:25  john
- * Changed default socket to 0x4000, because
- * the ipx/spx book says that we can only use
- * sockets 0x4000 - 0x7fff.
- *
- * Revision 1.9  1994/08/25  18:14:45  matt
- * Changed socket because of packet change
- *
- * Revision 1.8  1994/08/12  22:42:24  john
- * Took away Player_stats; added Players array.
- *
- * Revision 1.7  1994/08/09  19:31:47  john
- * Networking changes.
- *
- * Revision 1.6  1994/08/05  16:11:46  john
- * Psuedo working version of networking.
- *
- * Revision 1.5  1994/08/04  19:17:20  john
- * Inbetween version of network stuff.
- *
- * Revision 1.4  1994/07/29  16:08:59  john
- * *** empty log message ***
- *
- * Revision 1.3  1994/07/25  12:33:22  john
- * Network "pinging" in.
- *
- * Revision 1.2  1994/07/20  15:58:29  john
- * First installment of ipx stuff.
- *
- * Revision 1.1  1994/07/19  15:43:05  john
- * Initial revision
-
-------------------------------------------------------------------------
-include/palette.h:
-
- * Revision 1.11  1994/11/15  17:55:10  john
- * Made text palette fade in when game over.
- *
- * Revision 1.10  1994/11/07  13:53:42  john
- * Added better gamma stufff.
- *
- * Revision 1.9  1994/11/07  13:38:03  john
- * Added gamma correction stuff.
- *
- * Revision 1.8  1994/11/05  13:05:59  john
- * Added back in code to allow keys during fade.
- *
- * Revision 1.7  1994/11/05  12:46:37  john
- * Changed palette stuff a bit.
- *
- * Revision 1.6  1994/09/22  16:08:37  john
- * Fixed some palette stuff.
- *
- * Revision 1.5  1994/08/09  11:27:04  john
- * Add cthru stuff.
- *
- * Revision 1.4  1994/06/09  10:39:33  john
- * In fade out.in functions, returned 1 if key was pressed...
- *
- * Revision 1.3  1994/05/31  19:04:24  john
- * Added key to stop fade if desired.
- *
- * Revision 1.2  1994/05/06  12:50:42  john
- * Added supertransparency; neatend things up; took out warnings.
- *
- * Revision 1.1  1994/05/04  14:59:57  john
- * Initial revision
-
-------------------------------------------------------------------------
-include/pcx.h:
-
- * Revision 1.4  1995/01/21  17:07:34  john
- * Added out of memory error.
- *
- * Revision 1.3  1994/11/29  02:53:10  john
- * Added error messages; made call be more similiar to iff.
- *
- * Revision 1.2  1994/11/28  20:03:48  john
- * Added PCX functions.
- *
- * Revision 1.1  1994/11/28  19:57:45  john
- * Initial revision
-
-------------------------------------------------------------------------
-include/pstypes.h:
-
- * Revision 1.2  1993/09/14  12:12:30  matt
- * Added #define for NULL
- *
- * Revision 1.1  1993/08/24  12:50:40  matt
- * Initial revision
-
-------------------------------------------------------------------------
-include/rle.h:
-
- * Revision 1.5  1995/01/14  11:32:20  john
- * Added rle_cache_flush function.
- *
- * Revision 1.4  1994/11/10  13:16:01  matt
- * Added includes
- *
- * Revision 1.3  1994/11/09  19:53:51  john
- * Added texture rle caching.
- *
- * Revision 1.2  1994/11/09  16:35:18  john
- * First version with working RLE bitmaps.
- *
- * Revision 1.1  1994/11/09  12:40:17  john
- * Initial revision
-
-------------------------------------------------------------------------
-include/texmap.h:
-
- * Revision 1.2  1995/09/04  14:22:10  allender
- * #defines for fixed point limits on render buffer
- *
- * Revision 1.1  1995/05/04  20:14:50  allender
- * Initial revision
- *
- * Revision 1.17  1994/11/10  11:09:16  mike
- * detail level stuff.
- * 
- * Revision 1.16  1994/11/09  22:55:32  matt
- * Added variable Current_seg_depth for detail level optimization
- * 
- * Revision 1.15  1994/06/09  16:10:04  mike
- * Add prototype for SC2000
- * 
- * Revision 1.14  1994/05/25  18:46:16  matt
- * Added gr_upoly_tmap_ylr(), which generates ylr's for a polygon
- * 
- * Revision 1.13  1994/05/25  09:47:12  mike
- * Added interface support for linear texture mapper (Mike change, Matt commnet)
- * 
- * Revision 1.12  1994/05/24  17:30:43  mike
- * Prototype a bunch of linear, vertical scanning functions.
- * 
- * Revision 1.11  1994/05/19  23:26:14  mike
- * Add constants NUM_LIGHTING_VALUES, MAX_LIGHTING_VALUE, MIN_LIGHTING_VALUE,
- * all part of new lighting_values_in_0_to_1 system.
- * 
- * Revision 1.10  1994/05/14  17:19:21  matt
- * Added externs
- * 
- * Revision 1.9  1994/04/13  23:55:44  matt
- * Increased max_tmap_verts from 16 to 25
- * 
- * Revision 1.8  1994/03/31  08:35:43  mike
- * Prototype for gr_upoly_tmap.
- * 
- * Revision 1.7  1994/02/08  15:17:54  mike
- * define label for MAX_TMAP_VERTS
- * 
- * Revision 1.6  1994/01/31  15:41:51  mike
- * Add texture_map_lin_lin_sky_v
- * 
- * Revision 1.5  1994/01/18  10:49:40  mike
- * prototype for texture_map_lin_lin_sky
- * 
- * Revision 1.4  1993/11/30  17:09:46  mike
- * prototype for compute_lighting_value.
- * 
- * Revision 1.3  1993/11/22  10:50:38  matt
- * Add ifndef around body of file
- * 
- * Revision 1.2  1993/10/06  12:41:25  mike
- * Change prototype for draw_tmap.
- * 
- * Revision 1.1  1993/09/08  17:29:11  mike
- * Initial revision
-
-------------------------------------------------------------------------
-include/timer.h:
-
- * Revision 1.8  1994/12/10  12:27:23  john
- * Added timer_get_approx_seconds.
- *
- * Revision 1.7  1994/12/10  12:10:25  john
- * Added types.h.
- *
- * Revision 1.6  1994/12/10  12:07:06  john
- * Added tick counter variable.
- *
- * Revision 1.5  1994/11/15  12:04:15  john
- * Cleaned up timer code a bit... took out unused functions
- * like timer_get_milliseconds, etc.
- *
- * Revision 1.4  1994/04/28  23:50:08  john
- * Changed calling for init_timer.  Made the function that the
- * timer calls be a far function. All of this was done to make
- * our timer system compatible with the HMI sound stuff.
- *
- * Revision 1.3  1994/02/17  15:57:12  john
- * Changed key libary to C.
- *
- * Revision 1.2  1994/01/18  10:58:34  john
- * Added timer_get_fixed_seconds
- *
- * Revision 1.1  1993/07/10  13:10:41  matt
- * Initial revision
-
-------------------------------------------------------------------------
-include/u_dpmi.h:
-
- * Revision 1.9  1995/01/14  19:20:14  john
- * Added function to set a selector's base address.
- *
- * Revision 1.8  1994/11/28  20:22:03  john
- * Added some variables that return the amount of available
- * memory.
- *
- * Revision 1.7  1994/11/15  18:26:38  john
- * Added verbose flag.
- *
- * Revision 1.6  1994/11/07  11:35:05  john
- * Added prototype for real_free
- *
- * Revision 1.5  1994/10/27  19:54:48  john
- * Added unlock region function,.
- *
- * Revision 1.4  1994/09/27  18:27:56  john
- * Added pragma to make inp,outp,enable,disable intrinsic
- *
- * Revision 1.3  1994/09/27  11:54:45  john
- * Added DPMI init function.
- *
- * Revision 1.2  1994/08/24  18:53:51  john
- * Made Cyberman read like normal mouse; added dpmi module; moved
- * mouse from assembly to c. Made mouse buttons return time_down.
- *
- * Revision 1.1  1994/08/24  10:22:48  john
- * Initial revision
-
-------------------------------------------------------------------------
-include/vecmat.h:
-
- * Revision 1.1  1995/04/17  16:18:05  allender
- * Initial revision
- *
- *
- * --- PC RCS Information ---
- * Revision 1.37  1995/02/22  13:23:22  john
- * Added the vms_vector_array structure, to access a vms_vector
- * with an array.
- *
- * Revision 1.36  1995/02/22  12:34:33  john
- * Took out anonymous unions.
- *
- * Revision 1.35  1994/12/13  14:44:20  matt
- * Added vm_vector_2_matrix_norm()
- *
- * Revision 1.34  1994/09/11  19:22:55  matt
- * Added vm_vec_normalized_dir_quick()
- *
- * Revision 1.33  1994/08/04  19:45:38  matt
- * Added option to make a bunch of functions (add, sub, dotprod) inline
- *
- * Revision 1.32  1994/07/19  18:52:36  matt
- * Added vm_vec_normalize_quick() and vm_vec_copy_normalize_quick()
- *
- * Revision 1.31  1994/06/16  18:24:30  matt
- * Added vm_vec_mag_quick()
- *
- * Revision 1.30  1994/06/10  23:19:00  matt
- * New register usage for vm_vec_ang_2_matrix()
- *
- * Revision 1.29  1994/06/01  17:32:06  matt
- * Fixed modify list for vm_vec_normalized_dir()
- *
- * Revision 1.28  1994/05/19  12:07:20  matt
- * Fixed globals and macros and added a constant
- *
- * Revision 1.27  1994/05/19  09:19:15  matt
- * Made vm_vec_normalized_dir() return mag of vector
- *
- * Revision 1.26  1994/05/18  22:28:57  matt
- * Added function vm_vec_normalized_dir()
- * Added C macros IS_ZERO_VEC(), vm_vec_zero(), and vm_set_identity()
- * Added C global static vars vmd_zero_vector & vmd_identity_matrix
- *
- * Revision 1.25  1994/05/18  21:45:06  matt
- * Added functions:
- *   vm_extract_angles_vector()
- *   vm_extract_angles_vector_normalized()
- *   vm_vec_copy_normalize()
- *
- * Revision 1.24  1994/05/13  12:42:16  matt
- * Added new function, vm_vec_dist_quick(), which does an approximation.
- *
- * Revision 1.23  1994/03/30  13:37:34  matt
- * Added prototype for vm_vec_scale_add(), and fixed typos
- *
- * Revision 1.22  1994/03/30  13:29:42  matt
- * Header for vm_vec_scale_add2()
- *
- * Revision 1.21  1994/01/31  19:45:13  matt
- * Added function vm_extract_angles_matrix()
- *
- * Revision 1.20  1993/12/21  19:46:14  matt
- * Added function vm_dist_to_plane()
- *
- * Revision 1.19  1993/12/13  17:26:41  matt
- * Added vm_vec_dist()
- *
- * Revision 1.18  1993/12/02  12:45:11  matt
- * New functions: vm_vec_copy_scale(), vm_vec_scale2()
- * Aliases: vm_transpose(), vm_vec_dot(), vm_vec_cross(), vm_copy_transpose()
- *
- * Revision 1.17  1993/10/29  22:38:36  matt
- * Changed matrix order, making direction vectors the rows
- *
- * Revision 1.16  1993/10/25  11:49:57  matt
- * Made vm_vec_delta_ang() take optional forward vector to return signed delta
- *
- * Revision 1.15  1993/10/20  01:10:05  matt
- * Added vm_vec_delta_ang(), vm_vec_delta_ang_norm(), and vm_vec_ang_2_matrix()
- *
- * Revision 1.14  1993/10/17  17:02:52  matt
- * vm_vector_2_matrix() now takes optional right vector
- *
- * Revision 1.13  1993/10/12  19:31:39  matt
- * Added IDENTITY_MATRIX constant
- *
- * Revision 1.12  1993/10/08  18:10:16  matt
- * Changed vm_vec_make() and vm_angvec_make() to be inline assembly
- * functions, to get rid of compiler warnings.  Did not change vm_mat_make(),
- * which could still get warnings if the return value is unused.
- *
- * Revision 1.11  1993/09/29  12:10:07  matt
- * Changed modified regs in pragmas to include return register
- *
- * Revision 1.10  1993/09/28  12:15:41  matt
- * Added func vm_vector_2_matrix()
- *
- * Revision 1.9  1993/09/24  21:18:38  matt
- * Added vm_vec_avg(), vm_vec_avg4(), and vm_angvec_make().
- * Documented which functions could have dest==source
- *
- * Revision 1.8  1993/09/20  14:56:11  matt
- * Added new function, vm_vec_perp()
- *
- * Revision 1.7  1993/09/20  14:27:42  mike
- * unfix last fix which introduced a bug
- *
- * Revision 1.6  1993/09/20  10:11:53  mike
- * no changes
- *
- * Revision 1.5  1993/09/20  09:58:58  mike
- * Re-fix vm_vec_make
- *
- * Revision 1.4  1993/09/20  09:41:21  mike
- * Correct vm_vec_make and vm_mat_make macros to return the destination
- * as the value of the macro.
- *
- * Revision 1.3  1993/09/17  11:23:47  matt
- * Added row access (via xrow,yrow,zrow) to vms_matrix
- * Added macro vm_mat_make(), like vm_vec_make()
- *
- * Revision 1.2  1993/09/17  11:10:32  matt
- * Added vm_vec_add2() and vm_vec_sub2(), which take 2 args (dest==src0)
- *
- * Revision 1.1  1993/09/16  20:10:01  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/ai.c:
-
- * Revision 1.1  1995/12/05  14:15:37  allender
- * Initial revision
- *
- * Revision 1.10  1995/11/09  09:36:12  allender
- * cheats not active during demo playback
- *
- * Revision 1.9  1995/11/03  12:51:55  allender
- * shareware changes
- *
- * Revision 1.8  1995/10/31  10:25:07  allender
- * shareware stuff
- *
- * Revision 1.7  1995/10/26  14:01:38  allender
- * optimization for doing robot stuff only if anim angles done last frame
- *
- * Revision 1.6  1995/10/25  09:35:43  allender
- * prototype some functions causing mcc problems
- *
- * Revision 1.5  1995/10/17  13:11:40  allender
- * fix in ai code that makes bots only look for you every so often
- *
- * Revision 1.4  1995/10/10  11:48:10  allender
- * PC ai code
- *
- * Revision 2.11  1995/07/09  11:15:48  john
- * Put in Mike's code to fix bug where bosses don't gate in bots after
- * 32767 seconds of playing.
- *
- * Revision 2.10  1995/06/15  12:31:08  john
- * Fixed bug with cheats getting enabled when you type
- * the whole alphabet.
- *
- * Revision 2.9  1995/05/26  16:16:18  john
- * Split SATURN into define's for requiring cd, using cd, etc.
- * Also started adding all the Rockwell stuff.
- *
- * Revision 2.8  1995/04/06  15:12:27  john
- * Fixed bug with insane not working.
- *
- * Revision 2.7  1995/03/30  16:36:44  mike
- * text localization.
- *
- * Revision 2.6  1995/03/28  11:22:24  john
- * Added cheats to save file. Changed lunacy text.
- *
- * Revision 2.5  1995/03/27  16:45:07  john
- * Fixed some cheat bugs.  Added astral cheat.
- *
- * Revision 2.4  1995/03/24  15:29:17  mike
- * add new cheats.
- *
- * Revision 2.3  1995/03/21  14:39:45  john
- * Ifdef'd out the NETWORK code.
- *
- * Revision 2.2  1995/03/14  18:24:39  john
- * Force Destination Saturn to use CD-ROM drive.
- *
- * Revision 2.1  1995/03/06  16:47:14  mike
- * destination saturn
- *
- * Revision 2.0  1995/02/27  11:30:01  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.295  1995/02/22  13:23:04  allender
- * remove anonymous unions from object structure
- *
- * Revision 1.294  1995/02/13  11:00:43  rob
- * Make brain guys high enough to get an open slot.
- *
- * Revision 1.293  1995/02/13  10:31:55  mike
- * Make brains understand they can't open locked doors.
- *
- * Revision 1.292  1995/02/13  10:18:01  rob
- * Reduced brain guy's level of awareness to keep him from hogging slots.
- *
- * Revision 1.291  1995/02/11  12:27:12  mike
- * fix path-to-exit cheat.
- *
- * Revision 1.290  1995/02/11  01:56:30  mike
- * robots don't fire cheat.
- *
- * Revision 1.289  1995/02/10  17:15:09  rob
- * Fixed some stuff with 64 awareness stuff.
- *
- * Revision 1.288  1995/02/10  16:31:32  mike
- * oops.
- *
- * Revision 1.287  1995/02/10  16:24:45  mike
- * fix the network follow path fix.
- *
- * Revision 1.286  1995/02/10  16:11:40  mike
- * in serial or modem games, follow path guys don't move if far away and
- * can't see player.
- *
- * Revision 1.285  1995/02/09  13:11:35  mike
- * comment out a bunch of mprintfs.
- * add toaster (drops prox bombs, runs away) to boss gate list.
- *
- * Revision 1.284  1995/02/08  22:44:53  rob
- * Lowerd anger level for follow path of any sort.
- *
- * Revision 1.283  1995/02/08  22:30:43  mike
- * lower awareness on station guys if they are returning home (multiplayer).
- *
- * Revision 1.282  1995/02/08  17:01:06  rob
- * Fixed problem with toasters dropping of proximity bombs.
- *
- * Revision 1.281  1995/02/08  11:49:35  rob
- * Reduce Green-guy attack awareness level so we don't let him attack us too.
- *
- * Revision 1.280  1995/02/08  11:37:52  mike
- * Check for failures in call to obj_create.
- *
- * Revision 1.279  1995/02/07  20:38:46  mike
- * fix toasters in multiplayer
- *
- *
- * Revision 1.278  1995/02/07  16:51:07  mike
- * fix sound time play bug.
- *
- * Revision 1.277  1995/02/06  22:33:04  mike
- * make robots follow path better in cooperative/roboarchy.
- *
- * Revision 1.276  1995/02/06  18:15:42  rob
- * Added forced sends for evasion movemnet.
- *
- * Revision 1.275  1995/02/06  16:41:22  rob
- * Change some positioning calls.
- *
- * Revision 1.274  1995/02/06  11:40:33  mike
- * replace some lint-related hacks with clean, proper code.
- *
- * Revision 1.273  1995/02/04  17:28:19  mike
- * make station guys return better.
- *
- * Revision 1.272  1995/02/03  17:40:55  mike
- * fix problem with robots falling asleep if you sit in game overnight, not in pause...bah.
- *
- * Revision 1.271  1995/02/02  21:11:25  rob
- * Tweaking stuff for multiplayer ai.
- *
- * Revision 1.270  1995/02/02  17:32:06  john
- * Added Hack for Assert that Mike put in after using Lint to find
- * uninitialized variables.
- *
- * Revision 1.269  1995/02/02  16:46:31  mike
- * fix boss gating.
- *
- * Revision 1.268  1995/02/02  16:27:29  mike
- * make boss not put out infinite robots.
- *
- * Revision 1.267  1995/02/01  21:10:02  mike
- * lint found bug! player_visibility not initialized!
- *
- * Revision 1.266  1995/02/01  20:51:27  john
- * Lintized
- *
- * Revision 1.265  1995/02/01  17:14:05  mike
- * fix robot sounds.
- *
- * Revision 1.264  1995/01/31  16:16:40  mike
- * Comment out "Darn you, John" Int3().
- *
- * Revision 1.263  1995/01/30  20:55:04  mike
- * fix nonsense in robot firing when a player is cloaked.
- *
- * Revision 1.262  1995/01/30  17:15:10  rob
- * Fixed problems with bigboss eclip messages.
- * Tweaked robot position sending for modem purposes.
- *
- * Revision 1.261  1995/01/30  15:30:31  rob
- * Prevent non-master players from gating in robots.
- *
- * Revision 1.260  1995/01/30  13:30:55  mike
- * new cases for firing at other players were bogus, could send position
- * without permission.
- *
- * Revision 1.259  1995/01/30  13:01:17  mike
- * Make robots fire at player other than one they are controlled by sometimes.
- *
- * Revision 1.258  1995/01/29  16:09:17  rob
- * Trying to get robots to shoot at non-controlling players.
- *
- * Revision 1.257  1995/01/29  13:47:05  mike
- * Make boss have more fireballs on death, have until end (though silent at end).
- * Fix bug which was preventing him from teleporting until hit, so he'd always
- * be in the same place when the player enters the room.
- *
- * Revision 1.256  1995/01/28  17:40:18  mike
- * make boss teleport & gate before you see him.
- *
- * Revision 1.255  1995/01/27  17:02:08  mike
- * move code around, was sending one frame (or worse!) old robot information.
- *
- * Revision 1.254  1995/01/26  17:02:43  mike
- * make fusion cannon have more chrome, make fusion, mega rock you!
- *
- * Revision 1.253  1995/01/26  15:11:17  rob
- * Shutup!  I fixed it!
- *
- * Revision 1.252  1995/01/26  15:08:55  rob
- * Changed robot gating to accomodate multiplayer.
- *
- * Revision 1.251  1995/01/26  14:49:04  rob
- * Increase awareness level for firing to 94.
- *
- * Revision 1.250  1995/01/26  12:41:20  mike
- * fix bogus multiplayer code, would send permission without getting permission.
- *
- * Revision 1.249  1995/01/26  12:23:23  rob
- * Removed defines that were moved to ai.h
- *
- * Revision 1.248  1995/01/25  23:38:48  mike
- * modify list of robots gated in by super boss.
- *
- * Revision 1.247  1995/01/25  21:21:13  rob
- * Trying to let robots fire at a player even if they're not in control.
- *
- * Revision 1.246  1995/01/25  13:50:37  mike
- * Robots make angry sounds.
- *
- * Revision 1.245  1995/01/25  10:53:47  mike
- * better handling of robots which poke out of mine and try to recover.
- *
- * Revision 1.244  1995/01/24  22:03:02  mike
- * Tricky code to move a robot to a legal position if he is poking out of
- * the mine, even if it means moving him to another segment.
- *
- * Revision 1.243  1995/01/24  20:12:06  rob
- * Changed robot fire awareness level from 74 to 94.
- *
- * Revision 1.242  1995/01/24  13:22:32  mike
- * make robots accelerate faster, and Difficulty_level dependent.
- *
- * Revision 1.241  1995/01/24  12:09:39  mike
- * make robots animate in multiplayer.
- *
- * Revision 1.240  1995/01/21  21:21:10  mike
- * Make boss only gate robots into specified segments.
- *
- * Revision 1.239  1995/01/20  20:21:26  mike
- * prevent unnecessary boss cloaking.
-
-------------------------------------------------------------------------
-main/ai.h:
-
- * Revision 1.3  1995/10/15  16:28:07  allender
- * added flag to player_is_visible function
- *
- * Revision 1.2  1995/10/10  11:48:32  allender
- * PC ai header
- *
- * Revision 1.1  1995/05/16  15:54:00  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:33:07  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.57  1995/02/04  17:28:31  mike
- * make station guys return better.
- *
- * Revision 1.56  1995/02/04  10:03:23  mike
- * Fly to exit cheat.
- *
- * Revision 1.55  1995/02/01  19:23:52  rob
- * Externed a boss var.
- *
- * Revision 1.54  1995/01/30  13:00:58  mike
- * Make robots fire at player other than one they are controlled by sometimes.
- *
- * Revision 1.53  1995/01/26  15:09:16  rob
- * Changed robot gating to accomodate multiplayer.
- *
- * Revision 1.52  1995/01/26  12:23:12  rob
- * Added new externs needed for multiplayer.
- *
- * Revision 1.51  1995/01/21  21:22:14  mike
- * Kill prototype of init_boss_segments, which didn't need to be public
- * and had changed.
- *
- * Revision 1.50  1995/01/16  19:24:29  mike
- * Publicize BOSS_GATE_MATCEN_NUM and Boss_been_hit.
- *
- * Revision 1.49  1995/01/02  16:17:35  mike
- * prototype some super boss function for gameseq.
- *
- * Revision 1.48  1994/12/19  17:08:06  mike
- * deal with new ai_multiplayer_awareness which returns a value saying whether this object can be moved by this player.
- *
- * Revision 1.47  1994/12/12  17:18:04  mike
- * make boss cloak/teleport when get hit, make quad laser 3/4 as powerful.
- *
- * Revision 1.46  1994/12/08  15:46:16  mike
- * better robot behavior.
- *
- * Revision 1.45  1994/11/27  23:16:08  matt
- * Made debug code go away when debugging turned off
- *
- * Revision 1.44  1994/11/16  23:38:41  mike
- * new improved boss teleportation behavior.
- *
- * Revision 1.43  1994/11/10  17:45:11  mike
- * debugging.
- *
- * Revision 1.42  1994/11/07  10:37:42  mike
- * hooks for rob's network code.
- *
- * Revision 1.41  1994/11/06  15:10:50  mike
- * prototype a debug function for dumping ai info.
- *
- * Revision 1.40  1994/11/02  17:57:30  rob
- * Added extern of Believe_player_pos needed to get control centers
- * locating people.
- *
- * Revision 1.39  1994/10/28  19:43:39  mike
- * Prototype Boss_cloak_start_time, Boss_cloak_end_time.
- *
- * Revision 1.38  1994/10/22  14:14:42  mike
- * Prototype ai_reset_all_paths.
- *
- * Revision 1.37  1994/10/21  20:42:01  mike
- * Define MAX_PATH_LENGTH: maximum allowed length of a path.
- *
- * Revision 1.36  1994/10/20  09:49:18  mike
- * Prototype something.
- *
- *
- * Revision 1.35  1994/10/18  15:37:52  mike
- * Define ROBOT_BOSS1.
- *
- * Revision 1.34  1994/10/13  11:12:25  mike
- * Prototype some door functions.
- *
- * Revision 1.33  1994/10/12  21:28:51  mike
- * Prototype create_n_segment_path_to_door
- * Prototype ai_open_doors_in_segment
- * Prototype ai_door_is_openable.
- *
- * Revision 1.32  1994/10/11  15:59:41  mike
- * Prototype Robot_firing_enabled.
- *
- * Revision 1.31  1994/10/09  22:02:48  mike
- * Adapt create_path_points and create_n_segment_path prototypes to use avoid_seg for player evasion.
- *
- * Revision 1.30  1994/09/18  18:07:44  mike
- * Update prototypes for create_path_points and create_path_to_player.
- *
- * Revision 1.29  1994/09/15  16:34:08  mike
- * Prototype do_ai_robot_hit_attack.
- *
- * Revision 1.28  1994/09/12  19:12:35  mike
- * Prototype attempt_to_resume_path.
- *
- * Revision 1.27  1994/08/25  21:55:32  mike
- * Add some prototypes.
- *
- * Revision 1.26  1994/08/10  19:53:24  mike
- * Prototype create_path_to_player and init_robots_for_level.
- *
- * Revision 1.25  1994/08/04  16:32:58  mike
- * prototype create_path_to_player.
- *
- * Revision 1.24  1994/08/03  15:17:20  mike
- * Prototype make_random_vector.
- *
- * Revision 1.23  1994/07/31  18:10:34  mike
- * Update prototype for create_path_points.
- *
- * Revision 1.22  1994/07/28  12:36:14  matt
- * Cleaned up object bumping code
-
-------------------------------------------------------------------------
-main/ai2.c:
-
- * Revision 1.1  1995/05/25  12:00:31  mike
- * Initial revision
-
-------------------------------------------------------------------------
-main/aipath.c:
-
- * Revision 1.5  1995/10/26  14:12:03  allender
- * prototype functions for mcc compiler
- *
- * Revision 1.4  1995/10/25  09:38:22  allender
- * prototype some functions causing mcc grief
- *
- * Revision 1.3  1995/10/10  11:48:43  allender
- * PC ai code
- *
- * Revision 2.0  1995/02/27  11:30:48  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.101  1995/02/22  13:42:44  allender
- * remove anonymous unions for object structure
- *
- * Revision 1.100  1995/02/10  16:20:04  mike
- * fix bogosity in create_path_points, assumed all objects were robots.
- *
- * Revision 1.99  1995/02/07  21:09:30  mike
- * make run_from guys have diff level based speed.
- *
- * Revision 1.98  1995/02/04  17:28:29  mike
- * make station guys return better.
- *
- * Revision 1.97  1995/02/04  10:28:39  mike
- * fix compile error!
- *
- * Revision 1.96  1995/02/04  10:03:37  mike
- * Fly to exit cheat.
- *
- * Revision 1.95  1995/02/01  21:10:36  mike
- * Array name was dereferenced.  Not a bug, but unclean.
- *
- * Revision 1.94  1995/02/01  17:14:12  mike
- * comment out some common mprintfs which didn't matter.
- *
- * Revision 1.93  1995/01/30  13:01:23  mike
- * Make robots fire at player other than one they are controlled by sometimes.
- *
- * Revision 1.92  1995/01/29  22:29:32  mike
- * add more debug info for guys that get lost.
- *
- * Revision 1.91  1995/01/20  16:56:05  mike
- * station stuff.
- *
- * Revision 1.90  1995/01/18  10:59:45  mike
- * comment out some mprintfs.
- *
- * Revision 1.89  1995/01/17  16:58:34  mike
- * make path following work for multiplayer.
- *
- * Revision 1.88  1995/01/17  14:21:44  mike
- * make run_from guys run better.
- *
- * Revision 1.87  1995/01/14  17:09:04  mike
- * playing with crazy josh, he's kinda slow and dumb now.
- *
- * Revision 1.86  1995/01/13  18:52:28  mike
- * comment out int3.
- *
- * Revision 1.85  1995/01/05  09:42:11  mike
- * compile out code based on SHAREWARE.
- *
- * Revision 1.84  1995/01/02  12:38:32  mike
- * make crazy josh turn faster, therefore evade player better.
- *
- * Revision 1.83  1994/12/27  15:59:40  mike
- * tweak ai_multiplayer_awareness constants.
- *
- * Revision 1.82  1994/12/19  17:07:10  mike
- * deal with new ai_multiplayer_awareness which returns a value saying whether this object can be moved by this player.
- *
- * Revision 1.81  1994/12/15  13:04:30  mike
- * Replace Players[Player_num].time_total references with GameTime.
- *
- * Revision 1.80  1994/12/09  16:13:23  mike
- * remove debug code.
- *
- * Revision 1.79  1994/12/07  00:36:54  mike
- * make robots get out of matcens better and be aware of player.
- *
- * Revision 1.78  1994/11/30  00:59:05  mike
- * optimizations.
- *
- * Revision 1.77  1994/11/27  23:13:39  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.76  1994/11/23  21:59:34  mike
- * comment out some mprintfs.
- *
- * Revision 1.75  1994/11/21  16:07:14  mike
- * flip PARALLAX flag, prevent annoying debug information.
- *
- * Revision 1.74  1994/11/19  15:13:28  mike
- * remove unused code and data.
- *
- * Revision 1.73  1994/11/17  14:53:15  mike
- * segment validation functions moved from editor to main.
- *
- * Revision 1.72  1994/11/16  23:38:42  mike
- * new improved boss teleportation behavior.
- *
- * Revision 1.71  1994/11/13  17:18:30  mike
- * debug code, then comment it out.
- *
- * Revision 1.70  1994/11/11  16:41:43  mike
- * flip the PARALLAX flag.
- *
- * Revision 1.69  1994/11/11  16:33:45  mike
- * twiddle the PARALLAX flag.
- *
- *
- * Revision 1.68  1994/11/10  21:32:29  mike
- * debug code.
- *
- * Revision 1.67  1994/11/10  20:15:07  mike
- * fix stupid bug: uninitialized pointer.
- *
- * Revision 1.66  1994/11/10  17:45:15  mike
- * debugging.
- *
- * Revision 1.65  1994/11/10  17:28:10  mike
- * debugging.
-
-------------------------------------------------------------------------
-main/aistruct.h:
-
- * Revision 1.2  1995/10/10  11:49:04  allender
- * PC ai code
- *
- * Revision 1.1  1995/05/16  15:54:08  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:30:19  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.34  1995/01/25  13:50:46  mike
- * Robots make angry sounds.
- *
- * Revision 1.33  1994/12/29  12:44:56  rob
- * Added new coop robot flag.
- *
- * Revision 1.32  1994/12/20  20:41:54  rob
- * Added new ai flag for multiplayer robots.
- *
- * Revision 1.31  1994/12/19  16:37:39  rob
- * Added a new flag for remote controlled objects.
- *
- * Revision 1.30  1994/12/07  00:36:07  mike
- * fix phys_apply_rot for robots -- ai was bashing effect in next frame.
- *
- * Revision 1.29  1994/12/02  22:06:28  mike
- * add fields to allow robots to make awareness sounds every so often, not every damn blasted frame
- *
- * Revision 1.28  1994/11/04  17:18:35  yuan
- * Increased MAX_SEG_POINTS to 2500.
- *
- * Revision 1.27  1994/10/17  21:19:22  mike
- * robot cloaking.
- *
- * Revision 1.26  1994/10/12  21:28:38  mike
- * Add new ai mode: AIM_OPEN_DOOR.
- * Add GOALSIDE to aip.
- *
- * Revision 1.25  1994/09/25  23:41:08  matt
- * Changed the object load & save code to read/write the structure fields one
- * at a time (rather than the whole structure at once).  This mean that the
- * object structure can be changed without breaking the load/save functions.
- * As a result of this change, the local_object data can be and has been
- * incorporated into the object array.  Also, timeleft is now a property
- * of all objects, and the object structure has been otherwise cleaned up.
- *
- * Revision 1.24  1994/09/21  12:28:11  mike
- * Change AI behavior for when player cloaked
- *
- * Revision 1.23  1994/09/19  21:43:00  mike
- * Add follow_path_start_seg and follow_path_end_seg to aistruct.h.
- *
- * Revision 1.22  1994/09/18  18:06:14  mike
- * Add Last_uncloaked_time and Last_uncloaked_position variables.
- *
- * Revision 1.21  1994/09/15  16:31:38  mike
- * Define GREEN_GUY
- * Add previous_visibility to ai_local struct.
- *
- * Revision 1.20  1994/09/12  19:12:45  mike
- * Change some bytes to ints in ai_local so I could set watchpoints.
- *
- * Revision 1.19  1994/08/25  21:53:31  mike
- * Add behavior, taking place of what used to be mode.
- *
- * Revision 1.18  1994/08/23  16:38:09  mike
- * rapidfire_count in ai_local.
- *
- * Revision 1.17  1994/08/19  17:38:23  mike
- * *** empty log message ***
- *
- * Revision 1.16  1994/08/17  22:18:58  mike
- * add time_since_processed to ai_local.
- *
- * Revision 1.15  1994/08/10  19:52:25  mike
- * Add Overall_agitation.
- *
- * Revision 1.14  1994/08/04  16:32:32  mike
- * Add time_player_seen.
- *
- * Revision 1.13  1994/07/28  16:58:11  mike
- * Move constants from ai.c
- *
- * Revision 1.12  1994/07/19  15:26:24  mike
- * New ai_static and ai_local structures.
- *
- * Revision 1.11  1994/07/15  15:17:19  matt
- * Changes MAX_AI_FLAGS for better alignment
-
-------------------------------------------------------------------------
-main/automap.c:
-
- * Revision 1.8  1995/10/31  10:24:54  allender
- * shareware stuff
- *
- * Revision 1.7  1995/10/21  16:18:20  allender
- * blit pcx background directly to Page canvas instead of creating
- * seperate bitmap for it -- hope to solve VM bug on some macs
- *
- * Revision 1.6  1995/10/20  00:49:16  allender
- * added redbook check during automap
- *
- * Revision 1.5  1995/09/13  08:44:07  allender
- * Dave Denhart's changes to speed up the automap
- *
- * Revision 1.4  1995/08/18  15:46:00  allender
- * put text all on upper bar -- and fixed background since
- * changing xparency color
- *
- * Revision 1.3  1995/08/03  15:15:18  allender
- * fixed edge hashing problem causing automap to crash
- *
- * Revision 1.2  1995/07/12  12:49:27  allender
- * works in 640x480 mode
- *
- * Revision 1.1  1995/05/16  15:22:59  allender
- * Initial revision
- *
- * Revision 2.2  1995/03/21  14:41:26  john
- * Ifdef'd out the NETWORK code.
- *
- * Revision 2.1  1995/03/20  18:16:06  john
- * Added code to not store the normals in the segment structure.
- *
- * Revision 2.0  1995/02/27  11:32:55  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.117  1995/02/22  14:11:31  allender
- * remove anonymous unions from object structure
- *
- * Revision 1.116  1995/02/22  13:24:39  john
- * Removed the vecmat anonymous unions.
- *
- * Revision 1.115  1995/02/09  14:57:02  john
- * Reduced mem usage. Made automap slide farther.
- *
- * Revision 1.114  1995/02/07  20:40:44  rob
- * Allow for anarchy automap of player pos by option.
- *
- * Revision 1.113  1995/02/07  15:45:33  john
- * Made automap memory be static.
- *
- * Revision 1.112  1995/02/02  12:24:00  adam
- * played with automap labels
- *
- * Revision 1.111  1995/02/02  01:52:52  john
- * Made the automap use small font.
- *
- * Revision 1.110  1995/02/02  01:34:34  john
- * Made Reset in automap not change segmentlimit.
- *
- * Revision 1.109  1995/02/02  01:23:11  john
- * Finalized the new automap partial viewer.
- *
- * Revision 1.108  1995/02/02  00:49:45  mike
- * new automap segment-depth functionality.
- *
- * Revision 1.107  1995/02/02  00:23:04  john
- * Half of the code for new connected distance stuff in automap.
- *
- * Revision 1.106  1995/02/01  22:54:00  john
- * Made colored doors not fade in automap. Made default
- * viewing area be maxxed.
- *
- * Revision 1.105  1995/02/01  13:16:13  john
- * Added great grates.
- *
- * Revision 1.104  1995/01/31  12:47:06  john
- * Made Alt+F only work with cheats enabled.
- *
- * Revision 1.103  1995/01/31  12:41:23  john
- * Working with new controls.
- *
- * Revision 1.102  1995/01/31  12:04:19  john
- * Version 2 of new key control.
- *
- * Revision 1.101  1995/01/31  11:32:00  john
- * First version of new automap system.
- *
- * Revision 1.100  1995/01/28  16:55:48  john
- * Made keys draw in automap in the segments that you have
- * visited.
- *
- * Revision 1.99  1995/01/28  14:44:51  john
- * Made hostage doors show up on automap.
- *
- * Revision 1.98  1995/01/22  17:03:49  rob
- * Fixed problem drawing playerships in automap coop/team mode
- *
- * Revision 1.97  1995/01/21  17:23:11  john
- * Limited S movement in map. Made map bitmap load from disk
- * and then freed it.
- *
- * Revision 1.96  1995/01/19  18:55:38  john
- * Don't draw players in automap if not obj_player.
- *
- * Revision 1.95  1995/01/19  18:48:13  john
- * Made player colors better in automap.
- *
- * Revision 1.94  1995/01/19  17:34:52  rob
- * Added team colorizations in automap.
- *
- * Revision 1.93  1995/01/19  17:15:36  rob
- * Trying to add player ships into map for coop and team mode.
- *
- * Revision 1.92  1995/01/19  17:11:09  john
- * Added code for Rob to draw Multiplayer ships in automap.
- *
- * Revision 1.91  1995/01/12  13:35:20  john
- * Fixed bug with Segment 0 not getting displayed
- * in automap if you have EDITOR compiled in.
- *
- * Revision 1.90  1995/01/08  16:17:14  john
- * Added code to draw player's up vector while in automap.
- *
- * Revision 1.89  1995/01/08  16:09:41  john
- * Fixed problems with grate.
- *
- * Revision 1.88  1994/12/14  22:54:17  john
- * Fixed bug that didn't show hostages in automap.
- *
- * Revision 1.87  1994/12/09  00:41:03  mike
- * fix hang in automap print screen
- *
- * Revision 1.86  1994/12/05  23:37:15  matt
- * Took out calls to warning() function
- *
- * Revision 1.85  1994/12/03  22:35:28  yuan
- * Localization 412
- *
- * Revision 1.84  1994/12/02  15:05:45  matt
- * Added new "official" cheats
- *
- * Revision 1.83  1994/11/30  12:10:49  adam
- * added support for PCX titles/brief screens
- *
- * Revision 1.82  1994/11/27  23:15:12  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.81  1994/11/27  15:35:52  matt
- * Enable screen shots even when debugging is turned off
- *
- * Revision 1.80  1994/11/26  22:51:43  matt
- * Removed editor-only fields from segment structure when editor is compiled
- * out, and padded segment structure to even multiple of 4 bytes.
- *
- * Revision 1.79  1994/11/26  16:22:48  matt
- * Reduced leave_time
- *
- * Revision 1.78  1994/11/23  22:00:10  mike
- * show level number.
- *
- * Revision 1.77  1994/11/21  11:40:33  rob
- * Tweaked the game-loop for automap in multiplayer games.
- *
- * Revision 1.76  1994/11/18  16:42:06  adam
- * removed a font
- *
- * Revision 1.75  1994/11/17  13:06:48  adam
- * changed font
- *
- * Revision 1.74  1994/11/14  20:47:17  john
- * Attempted to strip out all the code in the game
- * directory that uses any ui code.
-
-------------------------------------------------------------------------
-main/automap.h:
-
- * Revision 1.2  1995/07/12  12:48:33  allender
- * moved edge_list structure into here for mallocing in mglobal
- *
- * Revision 1.1  1995/05/16  15:54:31  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:29:35  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.5  1994/12/09  00:41:21  mike
- * fix hang in automap print screen
- *
- * Revision 1.4  1994/07/14  11:25:29  john
- * Made control centers destroy better; made automap use Tab key.
- *
- * Revision 1.3  1994/07/12  15:45:51  john
- * Made paritial map.
- *
- * Revision 1.2  1994/07/07  18:35:05  john
- * First version of automap
- *
- * Revision 1.1  1994/07/07  15:12:13  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/bm.c:
-
- * Revision 1.1  1995/05/16  15:23:08  allender
- * Initial revision
- *
- * Revision 2.3  1995/03/14  16:22:04  john
- * Added cdrom alternate directory stuff.
- *
- * Revision 2.2  1995/03/07  16:51:48  john
- * Fixed robots not moving without edtiro bug.
- *
- * Revision 2.1  1995/03/06  15:23:06  john
- * New screen techniques.
- *
- * Revision 2.0  1995/02/27  11:27:05  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
-
-------------------------------------------------------------------------
-main/bm.h:
-
- * Revision 1.1  1995/05/16  15:54:39  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:32:59  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.60  1994/12/06  13:24:58  matt
- * Made exit model come out of bitmaps.tbl
- *
- * Revision 1.59  1994/11/10  14:02:48  matt
- * Hacked in support for player ships with different textures
- *
- * Revision 1.58  1994/10/27  13:32:17  john
- * Made TmapList only be in if editor
- *
- * Revision 1.57  1994/10/11  12:25:20  matt
- * Added "hot rocks" that create badass explosion when hit by weapons
- *
- * Revision 1.56  1994/09/29  12:38:13  matt
- * Took out include of digi.h, saving hours of unneeded compiles
- *
- * Revision 1.55  1994/09/25  00:39:51  matt
- * Added the ability to make eclips (monitors, fans) which can be blown up
- *
- * Revision 1.54  1994/09/17  01:40:59  matt
- * Added status bar/sizable window mode, and in the process revamped the
- * whole cockpit mode system.
- *
- * Revision 1.53  1994/09/08  16:20:48  matt
- * Gave textures the ability to cause damage when scraped
- *
- * Revision 1.52  1994/08/30  22:23:43  matt
- * Added cabability for player ship to have alternate model to use to
- * create debris.
- *
- * Revision 1.51  1994/08/26  15:35:57  matt
- * Made eclips usable on more than one object at a time
- *
- * Revision 1.50  1994/08/23  16:59:51  john
- * Added 3 cockpuits
- *
- * Revision 1.49  1994/08/19  20:09:43  matt
- * Added end-of-level cut scene with external scene
- *
- * Revision 1.48  1994/08/12  22:20:45  matt
- * Generalized polygon objects (such as control center)
- *
- * Revision 1.47  1994/08/09  16:04:21  john
- * Added network players to editor.
- *
- * Revision 1.46  1994/08/09  09:01:31  john
- * Increase MAX_TEXTURES
- *
- * Revision 1.45  1994/07/13  00:14:57  matt
- * Moved all (or nearly all) of the values that affect player movement to
- * bitmaps.tbl
- *
- * Revision 1.44  1994/06/20  21:33:15  matt
- * Made bm.h not include sounds.h, to reduce dependencies
- *
- * Revision 1.43  1994/06/15  11:55:58  matt
- * Added 3d model for player
- *
- * Revision 1.42  1994/06/13  16:09:11  adam
- * increased max textures to 600
- *
- * Revision 1.41  1994/06/06  15:38:58  john
- * Made fullscreen view be just another cockpit, but the "hole"
- * in the cockpit is just bigger.
- *
- * Revision 1.40  1994/05/26  21:08:59  matt
- * Moved robot stuff out of polygon model and into robot_info struct
- * Made new file, robot.c, to deal with robots
- *
- * Revision 1.39  1994/05/18  11:00:05  mike
- * Add robot_info stuff.
- *
- * Revision 1.38  1994/05/17  14:44:56  mike
- * Get object type and id from ObjType and ObjId.
- *
- * Revision 1.37  1994/05/17  12:04:45  mike
- * Deal with little known fact that polygon object != robot.
- *
- * Revision 1.36  1994/05/16  16:17:35  john
- * Bunch of stuff on my Inferno Task list May16-23
- *
- * Revision 1.35  1994/04/27  11:43:42  john
- * First version of sound! Yay!
- *
- * Revision 1.34  1994/04/22  10:53:48  john
- * Increased MAX_TEXTURES to 500.
- *
- * Revision 1.33  1994/04/01  11:15:05  yuan
- * Added multiple bitmap functionality to all objects...
- * (hostages, powerups, lasers, etc.)
- * Hostages and powerups are implemented in the object system,
- * just need to finish function call to "affect" player.
- *
- * Revision 1.32  1994/03/25  17:30:37  yuan
- * Checking in hostage stuff.
- *
- * Revision 1.31  1994/03/17  18:07:28  yuan
- * Removed switch code... Now we just have Walls, Triggers, and Links...
- *
- * Revision 1.30  1994/03/15  17:03:51  yuan
- * Added Robot/object bitmap capability
- *
- * Revision 1.29  1994/03/15  16:32:58  yuan
- * Cleaned up bm-loading code.
- * (Fixed structures too)
- *
- * Revision 1.28  1994/03/04  17:09:13  yuan
- * New door stuff.
- *
- * Revision 1.27  1994/01/31  14:50:09  yuan
- * Added Robotex
- *
- * Revision 1.26  1994/01/31  12:27:14  yuan
- * Added demo stuff (menu, etc.)
- *
- * Revision 1.25  1994/01/25  17:11:43  john
- * New texmaped lasers.
- *
- * Revision 1.24  1994/01/24  11:48:06  yuan
- * Lighting stuff
- *
- * Revision 1.23  1994/01/22  13:40:15  yuan
- * Modified the bmd_bitmap structure a bit.
- * (Saves some memory, and added reflection)
- *
- * Revision 1.22  1994/01/11  10:58:38  yuan
- * Added effects system
- *
- * Revision 1.21  1994/01/06  17:13:12  john
- * Added Video clip functionality
- *
- * Revision 1.20  1993/12/21  20:00:15  john
- * moved selector stuff to grs_bitmap
- *
- * Revision 1.19  1993/12/21  19:33:58  john
- * Added selector to bmd_bitmap.
- *
- * Revision 1.18  1993/12/07  12:28:48  john
- * moved bmd_palette to gr_palette
- *
- * Revision 1.17  1993/12/06  18:40:37  matt
- * Changed object loading & handling
- *
- * Revision 1.16  1993/12/05  23:05:03  matt
- * Added include of gr.h
- *
- * Revision 1.15  1993/12/03  17:38:04  yuan
- * Ooops. meant to say:
- * Moved MAX variables to bm.c, Arrays left open.
- *
- * Revision 1.14  1993/12/03  17:37:26  yuan
- * Added Asserts.
- *
- * Revision 1.13  1993/12/02  17:22:54  yuan
- * New global var. Num_object_types
- *
- * Revision 1.12  1993/12/02  16:34:39  yuan
- * Added fireball hack stuff.
- *
- * Revision 1.11  1993/12/02  15:45:14  yuan
- * Added a buncha constants, variables, and function prototypes
- * for the new bitmaps.tbl format.
- *
- * Revision 1.10  1993/12/01  11:25:11  yuan
- * Changed MALLOC'd buffers for filename and type in
- * the bmd_bitmap structure into arrays... Saves time
- * at load up.
- *
- * Revision 1.9  1993/12/01  00:28:09  yuan
- * New bitmap system structure.
- *
- * Revision 1.8  1993/11/03  11:34:08  john
- * made it use bitmaps.tbl
- *
- * Revision 1.7  1993/10/26  18:11:03  john
- * made all palette data be statically allocated
- *
- * Revision 1.6  1993/10/19  12:17:51  john
- * *** empty log message ***
- *
- * Revision 1.5  1993/10/16  20:02:41  matt
- * Changed name of backdrop bitmap file
- *
- * Revision 1.4  1993/10/12  15:08:52  matt
- * Added a bunch of new textures
- *
- * Revision 1.3  1993/10/12  12:30:41  john
- * *** empty log message ***
- *
- * Revision 1.2  1993/10/12  11:27:58  john
- * added more bitmaps
- *
- * Revision 1.1  1993/09/23  13:09:10  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/bmread.c:
-
- * Revision 2.4  1995/03/28  18:05:29  john
- * Fixed it so you don't have to delete pig after changing bitmaps.tbl
- *
- * Revision 2.3  1995/03/07  16:52:03  john
- * Fixed robots not moving without edtiro bug.
- *
- * Revision 2.2  1995/03/06  16:10:20  mike
- * Fix compile errors if building without editor.
- *
- * Revision 2.1  1995/03/02  14:55:40  john
- * Fixed bug with EDITOR never defined.
- *
- * Revision 2.0  1995/02/27  11:33:10  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.1  1995/02/25  14:02:36  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/ctrlcen.c:
-
- * Revision 1.2  1995/10/17  13:12:13  allender
- * added param to ai call
- *
- * Revision 1.1  1995/05/16  15:23:27  allender
- * Initial revision
- *
- * Revision 2.1  1995/03/21  14:40:25  john
- * Ifdef'd out the NETWORK code.
- *
- * Revision 2.0  1995/02/27  11:31:25  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.22  1995/02/11  01:56:14  mike
- * robots don't fire cheat.
- *
- * Revision 1.21  1995/02/05  13:39:39  mike
- * fix stupid bug in control center firing timing.
- *
- * Revision 1.20  1995/02/03  17:41:21  mike
- * fix control cen next fire time in multiplayer.
- *
- * Revision 1.19  1995/01/29  13:46:41  mike
- * adapt to new create_small_fireball_on_object prototype.
- *
- * Revision 1.18  1995/01/18  16:12:13  mike
- * Make control center aware of a cloaked playerr when he fires.
- *
- * Revision 1.17  1995/01/12  12:53:44  rob
- * Trying to fix a bug with having cntrlcen in robotarchy games.
- *
- * Revision 1.16  1994/12/11  12:37:22  mike
- * make control center smarter about firing at cloaked player, don't fire through self, though
- * it still looks that way due to prioritization problems.
- *
- * Revision 1.15  1994/12/01  11:34:33  mike
- * fix control center shield strength in multiplayer team games.
- *
- * Revision 1.14  1994/11/30  15:44:29  mike
- * make cntrlcen harder at higher levels.
- *
- * Revision 1.13  1994/11/29  22:26:23  yuan
- * Fixed boss bug.
- *
- * Revision 1.12  1994/11/27  23:12:31  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.11  1994/11/23  17:29:38  mike
- * deal with peculiarities going between net and regular game on boss level.
- *
- * Revision 1.10  1994/11/18  18:27:15  rob
- * Fixed some bugs with the last version.
- *
- * Revision 1.9  1994/11/18  17:13:59  mike
- * special case handling for level 8.
- *
- * Revision 1.8  1994/11/15  12:45:28  mike
- * don't let cntrlcen know where a cloaked player is.
- *
- * Revision 1.7  1994/11/08  12:18:37  mike
- * small explosions on control center.
- *
- * Revision 1.6  1994/11/02  17:59:18  rob
- * Changed control centers so they can find people in network games.
- * Side effect of this is that control centers can find cloaked players.
- * (see in-code comments for explanation).
- * Also added network hooks so control center shots 'sync up'.
- *
- * Revision 1.5  1994/10/22  14:13:21  mike
- * Make control center stop firing shortly after player dies.
- * Fix bug: If play from editor and die, tries to initialize non-control center object.
- *
- * Revision 1.4  1994/10/20  15:17:30  mike
- * Hack for control center inside boss robot.
- *
- * Revision 1.3  1994/10/20  09:47:46  mike
- * lots stuff.
- *
- * Revision 1.2  1994/10/17  21:35:09  matt
- * Added support for new Control Center/Main Reactor
- *
- * Revision 1.1  1994/10/17  20:24:01  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/ctrlcen.h:
-
- * Revision 2.0  1995/02/27  11:30:40  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.7  1995/02/01  16:34:14  john
- * Linted.
- *
- * Revision 1.6  1995/01/03  20:19:14  john
- * Pretty good working version of game save.
- *
- * Revision 1.5  1994/11/08  12:18:28  mike
- * small explosions on control center.
- *
- * Revision 1.4  1994/11/02  18:00:12  rob
- * Added extern for Gun_pos array for network hooks.
- *
- * Revision 1.3  1994/10/20  09:47:37  mike
- * *** empty log message ***
- *
- * Revision 1.2  1994/10/17  21:35:10  matt
- * Added support for new Control Center/Main Reactor
- *
- * Revision 1.1  1994/10/17  20:24:28  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/collide.c:
-
- * Revision 1.3  1995/11/08  17:15:21  allender
- * make collide_player_and_weapon play player_hit_sound if
- * shareware and not my playernum
- *
- * Revision 1.2  1995/10/31  10:24:37  allender
- * shareware stuff
- *
- * Revision 1.1  1995/05/16  15:23:34  allender
- * Initial revision
- *
- * Revision 2.5  1995/07/26  12:07:46  john
- * Made code that pages in weapon_info->robot_hit_vclip not
- * page in unless it is a badass weapon.  Took out old functionallity
- * of using this if no robot exp1_vclip, since all robots have these.
- *
- * Revision 2.4  1995/03/30  16:36:09  mike
- * text localization.
- *
- * Revision 2.3  1995/03/24  15:11:13  john
- * Added ugly robot cheat.
- *
- * Revision 2.2  1995/03/21  14:41:04  john
- * Ifdef'd out the NETWORK code.
- *
- * Revision 2.1  1995/03/20  18:16:02  john
- * Added code to not store the normals in the segment structure.
- *
- * Revision 2.0  1995/02/27  11:32:20  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.289  1995/02/22  13:56:06  allender
- * remove anonymous unions from object structure
- *
- * Revision 1.288  1995/02/11  15:52:45  rob
- * Included text.h.
- *
- * Revision 1.287  1995/02/11  15:04:11  rob
- * Localized a string.
- *
- * Revision 1.286  1995/02/11  14:25:41  rob
- * Added invul. controlcen option.
- *
- * Revision 1.285  1995/02/06  15:53:00  mike
- * create awareness event for player:wall collision.
- *
- * Revision 1.284  1995/02/05  23:18:17  matt
- * Deal with objects (such as fusion blobs) that get created already
- * poking through a wall
- *
- * Revision 1.283  1995/02/01  17:51:33  mike
- * fusion bolt can now toast multiple proximity bombs.
- *
- * Revision 1.282  1995/02/01  17:29:20  john
- * Lintized
- *
- * Revision 1.281  1995/02/01  15:04:00  rob
- * Changed sound of weapons hitting invulnerable players.
- *
- * Revision 1.280  1995/01/31  16:16:35  mike
- * Separate smart blobs for robot and player.
- *
- * Revision 1.279  1995/01/29  15:57:10  rob
- * Fixed another bug with robot_request_change calls.
- *
- * Revision 1.278  1995/01/28  18:15:06  rob
- * Fixed a bug in multi_request_robot_change.
- *
- * Revision 1.277  1995/01/27  15:15:44  rob
- * Fixing problems with controlcen damage.
- *
- * Revision 1.276  1995/01/27  15:13:10  mike
- * comment out mprintf.
- *
- * Revision 1.275  1995/01/26  22:11:51  mike
- * Purple chromo-blaster (ie, fusion cannon) spruce up (chromification)
- *
- * Revision 1.274  1995/01/26  18:57:55  rob
- * Changed two uses of digi_play_sample to digi_link_sound_to_pos which
- * made more sense.
- *
- * Revision 1.273  1995/01/25  23:37:58  mike
- * make persistent objects not hit player more than once.
- * Also, make them hit player before degrading them, else they often did 0 damage.
- *
- * Revision 1.272  1995/01/25  18:23:54  rob
- * Don't let players pick up powerups in exit tunnel.
- *
- * Revision 1.271  1995/01/25  13:43:18  rob
- * Added robot transfer for player collisions.
- * Removed mprintf from collide.c on Mike's request.
- *
- * Revision 1.270  1995/01/25  10:24:01  mike
- * Make sizzle and rock happen in lava even if you're invulnerable.
- *
- * Revision 1.269  1995/01/22  17:05:33  mike
- * Call multi_robot_request_change when a robot gets whacked by a player or
- * player weapon, if player_num != Player_num
- *
- * Revision 1.268  1995/01/21  21:20:28  matt
- * Fixed stupid bug
- *
- * Revision 1.267  1995/01/21  18:47:47  rob
- * Fixed a really dumb bug with player keys.
- *
- * Revision 1.266  1995/01/21  17:39:30  matt
- * Cleaned up laser/player hit wall confusions
- *
- * Revision 1.265  1995/01/19  17:44:42  mike
- * damage_force removed, that information coming from strength field.
- *
- * Revision 1.264  1995/01/18  17:12:56  rob
- * Fixed control stuff for multiplayer.
- *
- * Revision 1.263  1995/01/18  16:12:33  mike
- * Make control center aware of a cloaked playerr when he fires.
- *
- * Revision 1.262  1995/01/17  17:48:42  rob
- * Added key syncing for coop players.
- *
- * Revision 1.261  1995/01/16  19:30:28  rob
- * Fixed an assert error in fireball.c
- *
- * Revision 1.260  1995/01/16  19:23:51  mike
- * Say Boss_been_hit if he been hit so he gates appropriately.
- *
- * Revision 1.259  1995/01/16  11:55:16  mike
- * make enemies become aware of player if he damages control center.
- *
- * Revision 1.258  1995/01/15  16:42:00  rob
- * Fixed problem with robot bumping damage.
- *
- * Revision 1.257  1995/01/14  19:16:36  john
- * First version of new bitmap paging code.
- *
- * Revision 1.256  1995/01/03  17:58:37  rob
- * Fixed scoring problems.
- *
- * Revision 1.255  1994/12/29  12:41:11  rob
- * Tweaking robot exploding in coop.
- *
- * Revision 1.254  1994/12/28  10:37:59  rob
- * Fixed ifdef of multibot stuff.
- *
- * Revision 1.253  1994/12/21  19:03:14  rob
- * Fixing score accounting for multiplayer robots
- *
- * Revision 1.252  1994/12/21  17:36:31  rob
- * Fix hostage pickup problem in network.
- * tweaking robot powerup drops.
- *
- * Revision 1.251  1994/12/19  20:32:34  rob
- * Remove awareness events from player collisions and lasers that are not the console player.
- *
- * Revision 1.250  1994/12/19  20:01:22  rob
- * Added multibot.h include.
- *
- * Revision 1.249  1994/12/19  16:36:41  rob
- * Patches damaging of multiplayer robots.
- *
- * Revision 1.248  1994/12/14  21:15:18  rob
- * play lava hiss across network.
- *
- * Revision 1.247  1994/12/14  17:09:09  matt
- * Fixed problem with no sound when lasers hit closed walls, like grates.
- *
- * Revision 1.246  1994/12/14  09:51:49  mike
- * make any weapon cause proximity bomb detonation.
- *
- * Revision 1.245  1994/12/13  12:55:25  mike
- * change number of proximity bomb powerups which get dropped.
- *
- * Revision 1.244  1994/12/12  17:17:53  mike
- * make boss cloak/teleport when get hit, make quad laser 3/4 as powerful.
- *
- * Revision 1.243  1994/12/12  12:07:51  rob
- * Don't take damage if we're in endlevel sequence.
- *
- * Revision 1.242  1994/12/11  23:44:52  mike
- * less phys_apply_rot() at higher skill levels.
- *
- * Revision 1.241  1994/12/11  12:37:02  mike
- * remove stupid robot spinning code.  it was really stupid.  (actually, call here, code in ai.c).
- *
- * Revision 1.240  1994/12/10  16:44:51  matt
- * Added debugging code to track down door that turns into rock
- *
- * Revision 1.239  1994/12/09  14:59:19  matt
- * Added system to attach a fireball to another object for rendering purposes,
- * so the fireball always renders on top of (after) the object.
- *
- * Revision 1.238  1994/12/09  09:57:02  mike
- * Don't allow robots or their weapons to pass through control center.
- *
- * Revision 1.237  1994/12/08  15:46:03  mike
- * better robot behavior.
- *
- * Revision 1.236  1994/12/08  12:32:56  mike
- * make boss dying more interesting.
- *
- * Revision 1.235  1994/12/07  22:49:15  mike
- * tweak rotation due to collision.
- *
- * Revision 1.234  1994/12/07  16:44:50  mike
- * make bump sound if supposed to, even if not taking damage.
- *
- * Revision 1.233  1994/12/07  12:55:08  mike
- * tweak rotvel applied from collisions.
- *
- * Revision 1.232  1994/12/05  19:30:48  matt
- * Fixed horrible segment over-dereferencing
- *
- * Revision 1.231  1994/12/05  00:32:15  mike
- * do rotvel on badass and bump collisions.
- *
- * Revision 1.230  1994/12/03  12:49:22  mike
- * don't play bonk sound when you collide with a volatile wall (like lava).
- *
- * Revision 1.229  1994/12/02  16:51:09  mike
- * make lava sound only happen at 4 Hz.
- *
- * Revision 1.228  1994/11/30  23:55:27  rob
- * Fixed a bug where a laser hitting a wall was making 2 sounds.
- *
- * Revision 1.227  1994/11/30  20:11:00  rob
- * Fixed # of dropped laser powerups.
- *
- * Revision 1.226  1994/11/30  19:19:03  rob
- * Transmit collission sounds for net games.
- *
- * Revision 1.225  1994/11/30  16:33:01  mike
- * new boss behavior.
- *
- * Revision 1.224  1994/11/30  15:44:17  mike
- * /2 on boss smart children damage.
- *
- * Revision 1.223  1994/11/30  14:03:03  mike
- * hook for claw sounds
- *
- * Revision 1.222  1994/11/29  20:41:09  matt
- * Deleted a bunch of commented-out lines
- *
- * Revision 1.221  1994/11/27  23:15:08  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.220  1994/11/19  16:11:28  rob
- * Collision damage with walls or lava is counted as suicides in net games
- *
- * Revision 1.219  1994/11/19  15:20:41  mike
- * rip out unused code and data
- *
- * Revision 1.218  1994/11/17  18:44:27  rob
- * Added OBJ_GHOST to list of valid player types to create eggs.
- *
- * Revision 1.217  1994/11/17  14:57:59  mike
- * moved segment validation functions from editor to main.
- *
- * Revision 1.216  1994/11/16  23:38:36  mike
- * new improved boss teleportation behavior.
- *
- * Revision 1.215  1994/11/16  12:16:29  mike
- * Enable collisions between robots.  A hack in fvi.c only does this for robots which lunge to attack (eg, green guy)
- *
- * Revision 1.214  1994/11/15  16:51:50  mike
- * bump player when he hits a volatile wall.
- *
- * Revision 1.213  1994/11/12  16:38:44  mike
- * allow flares to open doors.
- *
- * Revision 1.212  1994/11/10  13:09:19  matt
- * Added support for new run-length-encoded bitmaps
- *
- * Revision 1.211  1994/11/09  17:05:43  matt
- * Fixed problem with volatile walls
- *
- * Revision 1.210  1994/11/09  12:11:46  mike
- * only award points if ConsoleObject killed robot.
- *
- * Revision 1.209  1994/11/09  11:11:03  yuan
- * Made wall volatile if either tmap_num1 or tmap_num2 is a volatile wall.
- *
- * Revision 1.208  1994/11/08  12:20:15  mike
- * moved do_controlcen_destroyed_stuff from here to cntrlcen.c
- *
- * Revision 1.207  1994/11/02  23:22:08  mike
- * Make ` (backquote, KEY_LAPOSTRO) tell what wall was hit by laser.
- *
- * Revision 1.206  1994/11/02  18:03:00  rob
- * Fix control_center_been_hit logic so it only cares about the local player.
- * Other players take care of their own control center 'ai'.
- *
- * Revision 1.205  1994/11/01  19:37:33  rob
- * Changed the max # of consussion missiles to 4.
- * (cause they're lame and clutter things up)
- *
- * Revision 1.204  1994/11/01  18:06:35  john
- * Tweaked wall banging sound constant.
- *
- * Revision 1.203  1994/11/01  18:01:40  john
- * Made wall bang less obnoxious, but volume based.
- *
- * Revision 1.202  1994/11/01  17:11:05  rob
- * Changed some stuff in drop_player_eggs.
- *
- * Revision 1.201  1994/11/01  12:18:23  john
- * Added sound volume support. Made wall collisions be louder/softer.
- *
- * Revision 1.200  1994/10/31  13:48:44  rob
- * Fixed bug in opening doors over network/modem.  Added a new message
- * type to multi.c that communicates door openings across the net.
- * Changed includes in multi.c and wall.c to accomplish this.
- *
- * Revision 1.199  1994/10/28  14:42:52  john
- * Added sound volumes to all sound calls.
- *
- * Revision 1.198  1994/10/27  16:58:37  allender
- * added demo recording of monitors blowing up
- *
- * Revision 1.197  1994/10/26  23:20:52  matt
- * Tone down flash even more
- *
- * Revision 1.196  1994/10/26  23:01:50  matt
- * Toned down red flash when damaged
- *
- * Revision 1.195  1994/10/26  15:56:29  yuan
- * Tweaked some palette flashes.
- *
- * Revision 1.194  1994/10/25  11:32:26  matt
- * Fixed bugs with vulcan powerups in mutliplayer
- *
- * Revision 1.193  1994/10/25  10:51:18  matt
- * Vulcan cannon powerups now contain ammo count
- *
- * Revision 1.192  1994/10/24  14:14:05  matt
- * Fixed bug in bump_two_objects()
- *
- * Revision 1.191  1994/10/23  19:17:04  matt
- * Fixed bug with "no key" messages
- *
- * Revision 1.190  1994/10/22  00:08:46  matt
- * Fixed up problems with bonus & game sequencing
- * Player doesn't get credit for hostages unless he gets them out alive
- *
- * Revision 1.189  1994/10/21  20:42:34  mike
- * Clear number of hostages on board between levels.
- *
- * Revision 1.188  1994/10/20  15:17:43  mike
- * control center in boss handling.
- *
- * Revision 1.187  1994/10/20  10:09:47  mike
- * Only ever drop 1 shield powerup in multiplayer (as an egg).
- *
- * Revision 1.186  1994/10/20  09:47:11  mike
- * Fix bug in dropping vulcan ammo in multiplayer.
- * Also control center stuff.
- *
- * Revision 1.185  1994/10/19  15:14:32  john
- * Took % hits out of player structure, made %kills work properly.
- *
- * Revision 1.184  1994/10/19  11:33:16  john
- * Fixed hostage rescued percent.
- *
- * Revision 1.183  1994/10/19  11:16:49  mike
- * Don't allow crazy josh to open locked doors.
- * Don't allow weapons to harm parent.
- *
- * Revision 1.182  1994/10/18  18:37:01  mike
- * No more hostage killing.  Too much stuff to do to integrate into game.
- *
- * Revision 1.181  1994/10/18  16:37:35  mike
- * Debug function for Yuan: Show seg:side when hit by puny laser if Show_seg_and_side != 0.
- *
- * Revision 1.180  1994/10/18  10:53:17  mike
- * Support attack type as a property of a robot, not of being == GREEN_GUY.
- *
- * Revision 1.179  1994/10/17  21:18:36  mike
- * diminish damage player does to robot due to collision, only took 2-3 hits to kill a josh.
- *
- * Revision 1.178  1994/10/17  20:30:40  john
- * Made player_hostages_rescued or whatever count properly.
- *
- * Revision 1.177  1994/10/16  12:42:56  mike
- * Trap bogus amount of vulcan ammo dropping.
- *
- * Revision 1.176  1994/10/15  19:06:51  mike
- * Drop vulcan ammo if player has it, but no vulcan cannon (when he dies).
- *
- * Revision 1.175  1994/10/13  15:42:06  mike
- * Remove afterburner.
- *
- * Revision 1.174  1994/10/13  11:12:57  mike
- * Apply damage to robots.  I hosed it a couple weeks ago when I made the green guy special.
-
-------------------------------------------------------------------------
-main/collide.h:
-
- * Revision 1.1  1995/05/16  15:55:09  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:28:59  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.23  1995/01/26  22:11:47  mike
- * Purple chromo-blaster (ie, fusion cannon) spruce up (chromification)
- *
- * Revision 1.22  1994/12/21  19:03:24  rob
- * Fixing score accounting for multiplayer robots
- *
- * Revision 1.21  1994/12/21  11:34:56  mike
- * make control center take badass damage.
- *
- * Revision 1.20  1994/10/29  16:53:16  allender
- * added check_effect_blowup for demo recording to record monitor explosions
- *
- * Revision 1.19  1994/10/09  13:46:48  mike
- * Make public collide_player_and_powerup.
- *
- * Revision 1.18  1994/10/05  14:54:29  rob
- * Added serial game support in control center sequence..
- *
- * Revision 1.17  1994/09/15  16:32:12  mike
- * Prototype collide_player_and_nasty_robot.
- *
- * Revision 1.16  1994/09/11  15:49:04  mike
- * Prototype for maybe_detonate_weapon.
- *
- * Revision 1.15  1994/09/09  14:20:07  matt
- * Added prototype for scrape function
- *
- * Revision 1.14  1994/09/02  14:00:44  matt
- * Simplified explode_object() & mutliple-stage explosions
- *
- * Revision 1.13  1994/08/18  10:47:35  john
- * Cleaned up game sequencing and player death stuff
- * in preparation for making the player explode into
- * pieces when dead.
- *
- * Revision 1.12  1994/08/17  16:50:08  john
- * Added damaging fireballs, missiles.
- *
- * Revision 1.11  1994/08/03  16:45:31  mike
- * Prototype a function.
- *
- * Revision 1.10  1994/08/03  15:17:41  mike
- * make matcen whack on you if it's ready to make a robot.
- *
- * Revision 1.9  1994/07/22  12:08:03  mike
- * Make robot hit vclip and sound weapon-based until robot dies, then robot-based.
- *
- * Revision 1.8  1994/07/09  17:36:31  mike
- * Prototype apply_damage_to_robot.
- *
- * Revision 1.7  1994/07/09  13:20:36  mike
- * Prototype apply_damage_to_player.
- *
- * Revision 1.6  1994/06/20  23:35:52  john
- * Bunch of stuff.
- *
- * Revision 1.5  1994/06/17  18:04:03  yuan
- * Added Immaterialization...
- * Fixed Invulnerability to allow being hit.
- *
- * Revision 1.4  1994/05/13  20:28:02  john
- * Version II of John's new object code.
- *
- * Revision 1.3  1994/05/13  12:20:35  john
- * Fixed some potential problems with code using global variables
- * that are set in fvi.
- *
- * Revision 1.2  1994/05/12  23:20:32  john
- * Moved all object collision handling into collide.c.
- *
- * Revision 1.1  1994/05/12  20:39:09  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/compbit.h:
-
- * Revision 1.1  1995/05/16  15:55:16  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:28:46  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.3  1994/12/05  15:10:28  allender
- * changed extern prototype definition
- *
- * Revision 1.2  1994/10/19  15:43:33  allender
- * header file which contains the xor value which is used when encrypting
- * bitmaps.tbl
- *
- * Revision 1.1  1994/10/19  13:22:19  allender
- * Initial revision
-
-------------------------------------------------------------------------
-main/config.c:
-
- * Revision 1.8  1995/10/27  10:52:20  allender
- * call digi_set_master_volume when prefs are read in to
- * set the master volume of the mac
- *
- * Revision 1.7  1995/10/24  17:08:39  allender
- * Config_master_volume added for saving sound manager volume
- * across games
- *
- * Revision 1.6  1995/10/20  00:49:31  allender
- * use default values when no prefs file
- *
- * Revision 1.5  1995/09/21  10:06:58  allender
- * set digi and midi volume appropriately
- *
- * Revision 1.4  1995/09/13  08:49:38  allender
- * prefs file stuff
- *
- * Revision 1.3  1995/09/05  08:47:37  allender
- * prefs file working
- *
- * Revision 1.2  1995/05/26  06:54:14  allender
- * removed midi and digi references from config file
- *
- * Revision 1.1  1995/05/16  15:23:45  allender
- * Initial revision
- *
- * Revision 2.2  1995/03/27  09:42:59  john
- * Added VR Settings in config file.
- *
- * Revision 2.1  1995/03/16  11:20:40  john
- * Put in support for Crystal Lake soundcard.
- *
- * Revision 2.0  1995/02/27  11:30:13  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.14  1995/02/11  16:19:36  john
- * Added code to make the default mission be the one last played.
- *
- * Revision 1.13  1995/01/18  13:23:24  matt
- * Made curtom detail level vars initialize properly at load
- *
- * Revision 1.12  1995/01/04  22:15:36  matt
- * Fixed stupid bug using scanf() to read bytes
- *
- * Revision 1.11  1995/01/04  13:14:21  matt
- * Made custom detail level settings save in config file
- *
- * Revision 1.10  1994/12/12  21:35:09  john
- * *** empty log message ***
- *
- * Revision 1.9  1994/12/12  21:31:51  john
- * Made volume work better by making sure volumes are valid
- * and set correctly at program startup.
- *
- * Revision 1.8  1994/12/12  13:58:01  john
- * MAde -nomusic work.
- * Fixed GUS hang at exit by deinitializing digi before midi.
- *
- * Revision 1.7  1994/12/08  10:01:33  john
- * Changed the way the player callsign stuff works.
- *
- * Revision 1.6  1994/12/01  11:24:07  john
- * Made volume/gamma/joystick sliders all be the same length.  0-->8.
- *
- * Revision 1.5  1994/11/29  02:01:07  john
- * Added code to look at -volume command line arg.
- *
- * Revision 1.4  1994/11/14  20:14:11  john
- * Fixed some warnings.
- *
- * Revision 1.3  1994/11/14  19:51:01  john
- * Added joystick cal values to descent.cfg.
- *
- * Revision 1.2  1994/11/14  17:53:09  allender
- * read and write descent.cfg file
- *
- * Revision 1.1  1994/11/14  16:28:08  allender
- * Initial revision
-
-------------------------------------------------------------------------
-main/config.h:
-
- * Revision 1.3  1995/09/08  17:12:26  allender
- * added modem tool stuff for prefs file
- *
- * Revision 1.2  1995/09/05  08:47:48  allender
- * prefs file working
- *
- * Revision 1.1  1995/05/16  15:55:23  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:32:48  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.4  1995/02/11  16:20:06  john
- * Added code to make the default mission be the one last played.
- *
- * Revision 1.3  1994/12/08  10:01:41  john
- * Changed the way the player callsign stuff works.
- *
- * Revision 1.2  1994/11/14  17:53:17  allender
- * extern definitions for ReadConfigFile and WriteConfigFile
- *
- * Revision 1.1  1994/11/14  16:56:17  allender
- * Initial revision
-
-------------------------------------------------------------------------
-main/controls.c:
-
- * Revision 1.3  1995/11/20  17:17:27  allender
- * call fix_fastsincos with tmp variable to prevent
- * writing to NULL
- *
- * Revision 1.2  1995/08/11  16:00:04  allender
- * fixed bug we think we never saw (overflow on max_rotthrust
- *
- * Revision 1.1  1995/05/16  15:23:53  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:27:11  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.50  1995/02/22  14:11:19  allender
- * remove anonymous unions from object structure
- *
- * Revision 1.49  1994/12/15  13:04:10  mike
- * Replace Players[Player_num].time_total references with GameTime.
- *
- * Revision 1.48  1994/11/27  23:12:13  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.47  1994/11/25  22:15:54  matt
- * Added asserts to try to trap frametime < 0 bug
- *
- * Revision 1.46  1994/11/16  11:25:40  matt
- * Took out int3's since I determined that the errors are caused by neg frametime
- *
- * Revision 1.45  1994/11/15  13:07:23  matt
- * Added int3's to try to trap bug
- *
- * Revision 1.44  1994/10/14  16:18:12  john
- * Made Assert that the object was player just nicely exit
- * the function.
- *
- * Revision 1.43  1994/10/13  11:35:25  john
- * Made Thrustmaster FCS Hat work.  Put a background behind the
- * keyboard configure.  Took out turn_sensitivity.  Changed sound/config
- * menu to new menu. Made F6 be calibrate joystick.
- *
- * Revision 1.42  1994/09/29  11:22:02  mike
- * Zero thrust when player dies.
- *
- * Revision 1.41  1994/09/16  13:10:30  mike
- * Hook in afterburner stuff.
- *
- * Revision 1.40  1994/09/14  22:21:54  matt
- * Avoid post-death assert
- *
- * Revision 1.39  1994/09/11  20:30:27  matt
- * Cleaned up thrust vars, changing a few names
- *
- * Revision 1.38  1994/09/10  15:46:31  john
- * First version of new keyboard configuration.
- *
- * Revision 1.37  1994/09/07  15:58:12  mike
- * Check for player dead in controls so you can't fire or move after dead, logical, huh?
- *
- * Revision 1.36  1994/09/06  14:51:56  john
- * Added sensitivity adjustment, fixed bug with joystick button not
- * staying down.
- *
- * Revision 1.35  1994/09/01  15:43:26  john
- * Put pitch bak like it was.
- *
- * Revision 1.34  1994/08/31  18:59:35  john
- * Made rotthrust back like it was.
- *
- * Revision 1.33  1994/08/31  18:49:17  john
- * Slowed Maxrothrust a bit,
- * ..
- *
- * Revision 1.32  1994/08/31  18:32:05  john
- * Lower max rotational thrust
- *
- * Revision 1.31  1994/08/29  21:18:27  john
- * First version of new keyboard/oystick remapping stuff.
- *
- * Revision 1.30  1994/08/29  16:18:30  mike
- * trap divide overflow.
- *
- * Revision 1.29  1994/08/26  14:40:45  john
- * *** empty log message ***
- *
- * Revision 1.28  1994/08/26  12:23:50  john
- * MAde joystick read up to 15 times per second max.
- *
- * Revision 1.27  1994/08/26  10:50:59  john
- * Took out Controls_always_stopped.
- *
- * Revision 1.26  1994/08/26  10:47:27  john
- * *** empty log message ***
- *
- * Revision 1.25  1994/08/26  10:46:50  john
- * New version of controls.
- *
- * Revision 1.24  1994/08/25  19:41:44  john
- * *** empty log message ***
- *
- * Revision 1.23  1994/08/25  18:44:55  john
- * *** empty log message ***
- *
- * Revision 1.22  1994/08/25  18:43:46  john
- * First revision of new control code.
- *
- * Revision 1.21  1994/08/24  20:02:46  john
- * Added cyberman support; made keys work key_down_time
- * returning seconds instead of milliseconds,.
- *
- *
- * Revision 1.20  1994/08/24  19:00:27  john
- * Changed key_down_time to return fixed seconds instead of
- * milliseconds.
- *
- * Revision 1.19  1994/08/19  15:22:12  mike
- * Fix divide overflow in sliding.
- *
- * Revision 1.18  1994/08/19  14:42:50  john
- * Added joystick sensitivity.
- *
- * Revision 1.17  1994/08/17  16:50:01  john
- * Added damaging fireballs, missiles.
- *
- * Revision 1.16  1994/08/12  22:41:54  john
- * Took away Player_stats; added Players array.
- *
- * Revision 1.15  1994/08/09  16:03:56  john
- * Added network players to editor.
- *
- * Revision 1.14  1994/07/28  12:33:31  matt
- * Made sliding use thrust, rather than changing velocity directly
- *
- * Revision 1.13  1994/07/27  20:53:21  matt
- * Added rotational drag & thrust, so turning now has momemtum like moving
- *
- * Revision 1.12  1994/07/25  10:24:06  john
- * Victor stuff.
- *
- * Revision 1.11  1994/07/22  17:53:16  john
- * Added better victormax support
- *
- * Revision 1.10  1994/07/21  21:31:29  john
- * First cheapo version of VictorMaxx tracking.
- *
- * Revision 1.9  1994/07/15  15:16:18  john
- * Fixed some joystick stuff.
- *
- * Revision 1.8  1994/07/15  09:32:09  john
- * Changes player movement.
- *
- * Revision 1.7  1994/07/13  00:14:58  matt
- * Moved all (or nearly all) of the values that affect player movement to
- * bitmaps.tbl
- *
- * Revision 1.6  1994/07/12  12:40:14  matt
- * Revamped physics system
- *
- * Revision 1.5  1994/07/02  13:50:39  matt
- * Cleaned up includes
- *
- * Revision 1.4  1994/07/01  10:55:25  john
- * Added analog joystick throttle
- *
- * Revision 1.3  1994/06/30  20:04:28  john
- * Added -joydef support.
- *
- * Revision 1.2  1994/06/30  19:01:58  matt
- * Moved flying controls code from physics.c to controls.c
- *
- * Revision 1.1  1994/06/30  18:41:25  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/controls.h:
-
- * Revision 1.1  1995/05/16  15:55:31  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:27:17  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.4  1994/07/21  18:15:33  matt
- * Ripped out a bunch of unused stuff
- *
- * Revision 1.3  1994/07/15  09:32:08  john
- * Changes player movement.
- *
- * Revision 1.2  1994/06/30  19:02:22  matt
- * Moved flying controls code from physics.c to controls.c
- *
- * Revision 1.1  1994/06/30  18:41:36  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/credits.c:
-
- * Revision 1.8  1995/11/07  13:54:56  allender
- * loop shareware song since it is too short
- *
- * Revision 1.7  1995/10/31  10:24:25  allender
- * shareware stuff
- *
- * Revision 1.6  1995/10/27  15:17:57  allender
- * minor fix to get them to look right at top and bottom
- * of screens
- *
- * Revision 1.5  1995/10/21  22:50:49  allender
- * credits is way cool!!!!
- *
- * Revision 1.3  1995/08/08  13:45:26  allender
- * added macsys header file
- *
- * Revision 1.2  1995/07/17  08:49:48  allender
- * make work in 640x480 -- still needs major work!!
- *
- * Revision 1.1  1995/05/16  15:24:01  allender
- * Initial revision
- *
- * Revision 2.2  1995/06/14  17:26:08  john
- * Fixed bug with VFX palette not getting loaded for credits, titles.
- *
- * Revision 2.1  1995/03/06  15:23:30  john
- * New screen techniques.
- *
- * Revision 2.0  1995/02/27  11:29:25  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.33  1995/02/11  12:41:56  john
- * Added new song method, with FM bank switching..
- *
- * Revision 1.32  1995/02/03  14:18:06  john
- * Added columns.
- *
- * Revision 1.31  1994/12/28  10:43:00  john
- * More VFX tweaking.
- *
- * Revision 1.30  1994/12/20  18:22:31  john
- * Added code to support non-looping songs, and put
- * it in for endlevel and credits.
- *
- * Revision 1.29  1994/12/15  14:23:00  adam
- * fixed timing.
- *
- * Revision 1.28  1994/12/14  16:56:33  adam
- * *** empty log message ***
- *
- * Revision 1.27  1994/12/14  12:18:11  adam
- * messed w/timing
- *
- * Revision 1.26  1994/12/12  22:52:59  matt
- * Fixed little bug
- *
- * Revision 1.25  1994/12/12  22:49:35  adam
- * *** empty log message ***
- *
- * Revision 1.24  1994/12/09  23:16:50  john
- * Make credits.txb load.
- *
- * Revision 1.23  1994/12/09  00:41:54  mike
- * fix hang in automap print screen.
- *
- * Revision 1.22  1994/12/09  00:34:22  matt
- * Added support for half-height lines
- *
- * Revision 1.21  1994/12/08  18:36:03  yuan
- * More HOGfile support.
- *
- * Revision 1.20  1994/12/04  14:48:17  john
- * Made credits restore playing descent.hmp.
- *
- * Revision 1.19  1994/12/04  14:30:20  john
- * Added hooks for music..
- *
- * Revision 1.18  1994/12/04  12:06:46  matt
- * Put in support for large font
- *
- * Revision 1.17  1994/12/01  10:47:27  john
- * Took out code that allows keypresses to change scroll rate.
- *
- * Revision 1.16  1994/11/30  12:10:52  adam
- * added support for PCX titles/brief screens
- *
- * Revision 1.15  1994/11/27  23:12:17  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.14  1994/11/27  19:51:46  matt
- * Made screen shots work in a few more places
- *
- * Revision 1.13  1994/11/18  16:41:51  adam
- * trimmed some more meat for shareware
- *
- * Revision 1.12  1994/11/10  20:38:29  john
- * Made credits not loop.
- *
- * Revision 1.11  1994/11/05  15:04:06  john
- * Added non-popup menu for the main menu, so that scores and credits don't have to save
- * the background.
- *
- * Revision 1.10  1994/11/05  14:05:52  john
- * Fixed fade transitions between all screens by making gr_palette_fade_in and out keep
- * track of whether the palette is faded in or not.  Then, wherever the code needs to fade out,
- * it just calls gr_palette_fade_out and it will fade out if it isn't already.  The same with fade_in.
- * This eliminates the need for all the flags like Menu_fade_out, game_fade_in palette, etc.
- *
- * Revision 1.9  1994/11/04  12:02:32  john
- * Fixed fading transitions a bit more.
- *
- * Revision 1.8  1994/11/04  11:30:44  john
- * Fixed fade transitions between game/menu/credits.
- *
- * Revision 1.7  1994/11/04  11:06:32  john
- * Added code to support credit fade table.
- *
- * Revision 1.6  1994/11/04  10:16:13  john
- * Made the credits fade in/out smoothly on top of a bitmap background.
- *
- * Revision 1.5  1994/11/03  21:24:12  john
- * Made credits exit the instant a key is pressed.
- * Made it scroll a bit slower.
- *
- * Revision 1.4  1994/11/03  21:20:28  john
- * Working.
- *
- * Revision 1.3  1994/11/03  21:01:24  john
- * First version of credits that works.
- *
- * Revision 1.2  1994/11/03  20:17:39  john
- * Added initial code for showing credits.
- *
- * Revision 1.1  1994/11/03  20:09:05  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/credits.h:
-
- * Revision 1.1  1995/05/16  15:55:39  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:32:30  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.2  1994/11/03  20:17:40  john
- * Added initial code for showing credits.
- *
- * Revision 1.1  1994/11/03  20:09:19  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/desc_id.h:
-
- * Revision 1.1  1995/05/16  15:55:53  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:29:38  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.3  1994/10/19  09:52:57  allender
- * Added variable for bogus error number return when game exits
- *
- * Revision 1.2  1994/10/18  16:43:52  allender
- * Added constants for id and time stamping
- *
- * Revision 1.1  1994/10/17  09:56:47  allender
- * Initial revision
- * Header for checksum stuff - No idea what for.
-
-------------------------------------------------------------------------
-main/digi.h:
-
- * Revision 2.0  1995/02/27  11:28:40  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.29  1995/02/11  12:42:00  john
- * Added new song method, with FM bank switching..
- *
- * Revision 1.28  1995/02/03  17:08:26  john
- * Changed sound stuff to allow low memory usage.
- * Also, changed so that Sounds isn't an array of digi_sounds, it
- * is a ubyte pointing into GameSounds, this way the digi.c code that
- * locks sounds won't accidentally unlock a sound that is already playing, but
- * since it's Sounds[soundno] is different, it would erroneously be unlocked.
- *
- * Revision 1.27  1995/02/01  22:20:31  john
- * Added digi_is_sound_playing.
- *
- * Revision 1.26  1994/12/20  18:03:51  john
- * Added loop midi flag.
- *
- * Revision 1.25  1994/12/13  00:46:14  john
- * Split digi and midi volume into 2 seperate functions.
- *
- * Revision 1.24  1994/12/10  20:34:53  john
- * Added digi_kill_sound_linked_to_object.
- *
- * Revision 1.23  1994/12/10  15:59:39  mike
- * Fixed bug.
- *
- * Revision 1.22  1994/12/10  15:44:35  john
- * Added max_distance passing for sound objects.
- *
- * Revision 1.21  1994/12/05  12:17:40  john
- * Added code that locks/unlocks digital sounds on demand.
- *
- * Revision 1.20  1994/11/28  18:34:57  john
- * Made the digi_max_channels cut of an old sound instead of
- * not playing a new sound.
- *
- * Revision 1.19  1994/11/14  17:53:56  allender
- * made some digi variables extern
- *
- * Revision 1.18  1994/10/28  14:42:58  john
- * Added sound volumes to all sound calls.
- *
- * Revision 1.17  1994/10/11  15:25:37  john
- * Added new function to play a sound once...
- *
- * Revision 1.16  1994/10/03  20:51:44  john
- * Started added pause sound function; for the network I changed to
- * packet structure a bit; never tested, though.
- *
- *
- * Revision 1.15  1994/10/03  13:09:43  john
- * Added Pause function, but never tested it yet.
- *
- * Revision 1.14  1994/09/30  10:09:24  john
- * Changed sound stuff... made it so the reseting card doesn't hang,
- * made volume change only if sound is installed.
- *
- * Revision 1.13  1994/09/29  21:13:43  john
- * Added Master volumes for digi and midi. Also took out panning,
- * because it doesn't work with MasterVolume stuff.
- *
- * Revision 1.12  1994/09/29  12:42:34  john
- * Added sidenum to keep track of sound pos. Made sound functions
- * not do anything if nosound. Made sounds_init delete currently
- * playing sounds.
- *
- * Revision 1.11  1994/09/29  12:23:42  john
- * Added digi_kill_sound_linked_to_segment function.
- *
- * Revision 1.10  1994/09/29  11:59:04  john
- * Added digi_kill_sound
- *
- * Revision 1.9  1994/09/29  10:37:38  john
- * Added sound objects that dynamicaly change volume,pan.
- *
- * Revision 1.8  1994/09/28  16:18:37  john
- * Added capability to play midi song.
- *
- * Revision 1.7  1994/06/17  18:01:41  john
- * A bunch of new stuff by John
- *
- * Revision 1.6  1994/06/15  19:00:58  john
- * Added the capability to make 3d sounds play just once for the
- * laser hit wall effects.
- *
- * Revision 1.5  1994/06/07  10:54:30  john
- * Made key S reinit the sound system.
- *
- * Revision 1.4  1994/05/09  21:11:39  john
- * Sound changes; pass index instead of pointer to digi routines.
- * Made laser sound cut off the last laser sound.
- *
- * Revision 1.3  1994/04/27  11:44:25  john
- * First version of sound! Yay!
- *
- * Revision 1.2  1994/04/20  21:58:50  john
- * First version of sound stuff... hopefully everything
- * is commented out because it hangs..
- *
- * Revision 1.1  1994/04/15  14:25:02  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/dumpmine.c:
-
- * Revision 1.1  1995/05/16  15:24:16  allender
- * Initial revision
- *
- * Revision 2.1  1995/04/06  12:21:50  mike
- * Add texture map information to txm files.
- *
- * Revision 2.0  1995/02/27  11:26:41  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.24  1995/01/23  15:34:43  mike
- * New diagnostic code, levels.all stuff.
- *
- * Revision 1.23  1994/12/20  17:56:36  yuan
- * Multiplayer object capability.
- *
- * Revision 1.22  1994/11/27  23:12:19  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.21  1994/11/23  12:19:04  mike
- * move out level names, stick in gamesave.
- *
- * Revision 1.20  1994/11/21  16:54:36  mike
- * oops.
- *
- *
- * Revision 1.19  1994/11/20  22:12:55  mike
- * Lotsa new stuff in this fine debug file.
- *
- * Revision 1.18  1994/11/17  14:58:09  mike
- * moved segment validation functions from editor to main.
- *
- * Revision 1.17  1994/11/15  21:43:02  mike
- * texture usage system.
- *
- * Revision 1.16  1994/11/15  12:45:59  mike
- * debug code for dumping texture info.
- *
- * Revision 1.15  1994/11/14  20:47:50  john
- * Attempted to strip out all the code in the game
- * directory that uses any ui code.
- *
- * Revision 1.14  1994/10/14  17:33:38  mike
- * Fix error reporting for number of multiplayer objects in mine.
- *
- * Revision 1.13  1994/10/14  13:37:46  mike
- * Forgot parameter in fprintf, was getting bogus number of excess keys.
- *
- * Revision 1.12  1994/10/12  08:05:33  mike
- * Detect keys contained in objects for error checking (txm file).
- *
- * Revision 1.11  1994/10/10  17:02:08  mike
- * fix fix.
- *
- * Revision 1.10  1994/10/10  17:00:37  mike
- * Add checking for proper number of players.
- *
- * Revision 1.9  1994/10/03  23:37:19  mike
- * Adapt to clear and rational understanding of matcens as related to fuelcens as related to something that might work.
- *
- * Revision 1.8  1994/09/30  17:15:29  mike
- * Fix error message, was telling bogus filename.
- *
- * Revision 1.7  1994/09/30  11:50:55  mike
- * More diagnostics.
- *
- * Revision 1.6  1994/09/28  17:31:19  mike
- * More error checking.
- *
- * Revision 1.5  1994/09/28  11:14:05  mike
- * Better checking on bogus walls.
- *
- * Revision 1.4  1994/09/28  09:23:50  mike
- * Change some Error messages to Warnings.
- *
- * Revision 1.3  1994/09/27  17:08:31  mike
- * More mine validation stuff.
- *
- * Revision 1.2  1994/09/27  15:43:22  mike
- * The amazing code to tell you everything and more about our mines!
- *
- * Revision 1.1  1994/09/27  10:51:15  mike
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/autosave.c:
-
- * Revision 2.0  1995/02/27  11:34:53  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.25  1994/11/19  00:04:40  john
- * Changed some shorts to ints.
- * 
- * Revision 1.24  1994/11/17  11:38:59  matt
- * Ripped out code to load old mines
- * 
- * Revision 1.23  1994/07/28  17:00:01  mike
- * fix diagnostic_message erasing.
- * 
- * Revision 1.22  1994/07/21  12:48:28  mike
- * Make time of day a global, fix clock so it doesn't show 10:2 instead of 10:02
- * 
- * Revision 1.21  1994/05/14  17:17:58  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.20  1994/05/02  18:04:14  yuan
- * Fixed warning.
- * 
- * Revision 1.19  1994/05/02  17:59:04  yuan
- * Changed undo_status into an array rather than malloced pointers.
- * 
- * Revision 1.18  1994/03/16  09:55:48  mike
- * Flashing : in time.
- * 
- * Revision 1.17  1994/02/11  10:27:36  matt
- * Changed 'if !DEMO' to 'ifndef DEMO'
- * 
- * Revision 1.16  1994/02/08  12:43:18  yuan
- * Crippled save game function from demo version
- * 
- * Revision 1.15  1994/02/01  13:27:26  yuan
- * autosave default off.
- * 
- * Revision 1.14  1994/01/05  09:57:37  yuan
- * Fixed calendar/clock problem.
- * 
- * Revision 1.13  1993/12/17  16:09:59  yuan
- * Changed clock font from Red to Black.
- * 
- * Revision 1.12  1993/12/15  13:08:38  yuan
- * Fixed :0x times, so that the 0 shows up.
- * 
- * Revision 1.11  1993/12/15  11:19:52  yuan
- * Added code to display clock in upper right.
- * 
- * Revision 1.10  1993/12/14  21:18:51  yuan
- * Added diagnostic message to display
- * 
- * Revision 1.9  1993/12/14  18:32:59  yuan
- * Added timed autosave code
- * 
- * Revision 1.8  1993/12/13  17:23:25  yuan
- * Fixed bugs with undo.
- * They were caused by badly changed extensions.
- * 
- * Revision 1.7  1993/12/09  16:42:32  yuan
- * Changed extension of temp mines from .mi? -> .mn? 
- * and now to .m? (So it doesn't interfere with .mnu)
- * 
- * Revision 1.6  1993/12/09  16:27:06  yuan
- * Added toggle for autosave
- * 
- * Revision 1.5  1993/11/29  19:46:32  matt
- * Changed includes
- * 
- * Revision 1.4  1993/11/11  15:54:11  yuan
- * Added display message for Undo...
- * Eg. Attach Segment UNDONE.
- * 
- * Revision 1.3  1993/11/09  18:53:11  yuan
- * Autosave/Undo works up to 10 moves.
- * 
- * Revision 1.2  1993/11/08  19:14:03  yuan
- * Added Undo command (not working yet)
- * 
- * Revision 1.1  1993/11/08  16:57:59  yuan
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/centers.c:
-
- * Revision 2.0  1995/02/27  11:35:30  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.9  1994/11/27  23:17:28  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.8  1994/10/05  22:13:46  mike
- * Clean up Centers dialog.
- * 
- * Revision 1.7  1994/10/03  23:39:55  mike
- * Call fuelcen_activate instead of fuelcen_create.
- * 
- * Revision 1.6  1994/08/02  12:16:35  mike
- * Change materialization center functionality.
- * 
- * Revision 1.5  1994/08/01  11:04:42  yuan
- * New materialization centers.
- * 
- * Revision 1.4  1994/07/22  17:19:10  yuan
- * Working on dialog box for refuel/repair/material/control centers.
- * 
- * Revision 1.3  1994/07/21  19:35:09  yuan
- * Fixed #include problem
- * 
- * Revision 1.2  1994/07/21  19:02:41  yuan
- * *** empty log message ***
- * 
- * Revision 1.1  1994/07/18  16:00:54  yuan
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/centers.h:
-
- * Revision 2.0  1995/02/27  11:35:02  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.3  1994/08/02  12:16:27  mike
- * Prototype Center_names.
- * 
- * Revision 1.2  1994/07/21  19:35:20  yuan
- * Fixed #include problem
- * 
- * Revision 1.1  1994/07/21  19:11:36  yuan
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/eglobal.c:
-
- * Revision 2.0  1995/02/27  11:35:52  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.35  1994/05/23  14:48:15  mike
- * make current segment be add segment.
- * 
- * Revision 1.34  1994/05/19  12:10:30  matt
- * Use new vecmat macros and globals
- * 
- * Revision 1.33  1994/05/04  19:16:27  mike
- * Add Degenerate_segment_found.
- * 
- * Revision 1.32  1994/05/03  11:02:57  mike
- * Add SegSizeMode.
- * 
- * Revision 1.31  1994/02/16  13:49:12  mike
- * enable editor to compile out.
- * 
- * Revision 1.30  1994/02/10  15:36:35  matt
- * Various changes to make editor compile out.
- * 
- * Revision 1.29  1993/12/16  14:00:33  mike
- * Add Curvert and Curedge.
- * 
- * Revision 1.28  1993/12/10  14:48:28  mike
- * Kill orthogonal views.
- * 
- * Revision 1.27  1993/12/08  10:58:49  mike
- * Add Cur_object_index.
- * 
- * Revision 1.26  1993/12/06  18:45:45  matt
- * Changed object loading & handling
- * 
- * Revision 1.25  1993/12/02  17:51:49  john
- * Changed my variable to match Mike's.
- * 
- * Revision 1.24  1993/12/02  17:36:13  john
- * Added cur_obj_type
- * 
- * Revision 1.23  1993/11/24  14:41:16  mike
- * Add variable Num_tilings.
- * 
- * Revision 1.22  1993/11/12  16:40:55  mike
- * Add Identity_matrix, which is an identity matrix.
- * 
- * Revision 1.21  1993/11/02  13:08:17  mike
- * Add N_warning_segs and Warning_segs
- * 
- * Revision 1.20  1993/11/02  10:31:53  mike
- * Document some variables,
- * Add Been_visited, removing it from editor.c
- * Add Selected_segs[] and N_selected_segs.
- * 
- * Revision 1.19  1993/10/31  18:07:48  mike
- * Add variable Lock_view_to_cursegp.
- * 
- * Revision 1.18  1993/10/19  20:54:51  matt
- * Changed/cleaned up window updates
- * 
- * Revision 1.17  1993/10/18  18:35:43  mike
- * Move Highest_vertex_index and Highest_segment_index here because they need
- * to be globals.
- * 
- * Revision 1.16  1993/10/15  13:10:00  mike
- * Move globals from editor.c to eglobal.c
- * 
- * Revision 1.15  1993/10/14  18:08:55  mike
- * Change use of CONNECTIVITY to MAX_SIDES_PER_SEGMENT
- * 
- * Revision 1.14  1993/10/13  11:11:38  matt
- * Made coordinate axes off by default
- * 
- * Revision 1.13  1993/10/12  09:59:27  mike
- * Remove definition of Side_to_verts, which belongs in the game, not in the editor.
- * 
- * Revision 1.12  1993/10/09  15:48:07  mike
- * Change type of Vertex_active and Side_to_verts from char to byte
- * Move N_found_segs and Found_segs here from render.c
- * Add Show_axes_flag.
- * 
- * Revision 1.11  1993/10/06  11:29:58  mike
- * Add prototype for Side_opposite
- * 
- * Revision 1.10  1993/10/05  17:00:17  mike
- * Add Vertex_active.
- * 
- * Revision 1.9  1993/10/04  17:18:16  mike
- * Add variables Markedsegp, Markedside
- * 
- * Revision 1.8  1993/10/02  18:18:02  mike
- * Added Draw_all_segments.  If !0, then all segments are drawn in draw_world.  If not set, then only those segments which
- * are connected to the first segment are drawn.
- * 
- * Revision 1.7  1993/10/01  10:03:15  mike
- * Fix ordering of vertices on front face: Used to be 0,1,2,3 made it 3,2,1,0
- * 
- * Revision 1.6  1993/09/27  16:04:28  mike
- * Add Side_to_verts to replace _verts, which was local to segment.c
- * 
- * Revision 1.5  1993/09/27  15:20:52  mike
- * Add Curside, which is current side, so we can make a certain side active.
- * 
- * Revision 1.4  1993/09/23  15:01:13  mike
- * Remove game specific variables, put in mglobal.c
- * 
- * Revision 1.3  1993/09/22  10:52:17  mike
- * Add global New_segment
- * 
- * Revision 1.2  1993/09/22  09:41:21  mike
- * Change constand and variable names to conform to coding standards.
- * 
- * Revision 1.1  1993/09/20  17:06:09  mike
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/ehostage.c:
-
- * Revision 2.0  1995/02/27  11:35:45  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.17  1995/01/14  19:18:05  john
- * First version of object paging.
- * 
- * Revision 1.16  1994/11/20  14:11:41  matt
- * Show object number in hostage window
- * 
- * Revision 1.15  1994/11/19  19:55:46  matt
- * Added code to full support different hostage head clip & message for
- * each hostage.
- * 
- * 
- * Revision 1.14  1994/10/28  15:03:27  john
- * Made digi_play_sample use volume.
- * 
- * 
- * Revision 1.13  1994/10/23  02:11:39  matt
- * Got rid of obsolete hostage_info stuff
- * 
- * Revision 1.12  1994/10/04  13:15:44  john
- * Changed PLAY_SOUND to digi_play_sample.
- * 
- * Revision 1.11  1994/08/02  14:17:28  mike
- * Clean up dialog boxes.
- * 
- * Revision 1.10  1994/07/22  17:19:17  yuan
- * Working on dialog box for refuel/repair/material/control centers.
- * 
- * Revision 1.9  1994/07/06  15:22:34  john
- * Added new sound.
- * 
- * 
- * Revision 1.8  1994/07/06  14:26:07  john
- * Added vclip.
- * 
- * Revision 1.7  1994/07/06  13:25:52  john
- * Added compress hostages functions.
- * 
- * Revision 1.6  1994/07/06  12:52:27  john
- * Fixed warnings.
- * 
- * Revision 1.5  1994/07/06  12:43:04  john
- * Made generic messages for hostages.
- * 
- * Revision 1.4  1994/07/06  11:49:01  john
- * Made adding hostage update current object.
- * 
- * Revision 1.3  1994/07/06  10:56:00  john
- * New structures for hostages.
- * 
- * Revision 1.2  1994/07/01  17:57:13  john
- * First version of not-working hostage system
- * 
- * 
- * Revision 1.1  1994/07/01  14:21:44  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/ehostage.h:
-
- * Revision 2.0  1995/02/27  11:35:13  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.2  1994/07/01  17:57:14  john
- * First version of not-working hostage system
- * 
- * 
- * Revision 1.1  1994/07/01  14:24:41  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/elight.c:
-
- * Revision 2.0  1995/02/27  11:35:16  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.21  1994/06/14  16:59:23  mike
- * Fix references to tmap_num2, must strip off orientation bits.
- * 
- * Revision 1.20  1994/05/31  12:31:57  mike
- * fix bug in lighting -- WALL_IS_DOORWAY return value getting ignored,
- * almost never recursively propagated light.
- * 
- * Revision 1.19  1994/05/19  23:35:12  mike
- * Support uv coordinates in range 0..1.0.
- * 
- * Revision 1.18  1994/05/16  12:05:29  john
- * Made texturemap light be a fix from 0 to 1.
- * 
- * Revision 1.17  1994/05/14  18:00:38  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.16  1994/05/03  11:04:27  mike
- * Add function to select edge.
- * 
- * Revision 1.15  1994/04/20  17:29:11  yuan
- * Fixed bug where tmaps above 256 don't light properly.
- * (duh!)
- * 
- * Revision 1.14  1994/03/22  14:20:46  yuan
- * Made texture map 1 also cast light.  (Cumulative with tmap_num2)
- * 
- * Revision 1.13  1994/03/15  16:34:14  yuan
- * Fixed bm loader (might have some changes in walls and switches)
- * 
- * Revision 1.12  1994/02/22  18:55:10  yuan
- * Ambient lighting "shines" on doors too!
- * 
- * Revision 1.11  1994/02/17  12:05:55  matt
- * Got rid of warnings
- * 
- * Revision 1.10  1994/02/16  22:28:03  mike
- * fix ambient lighting and smoothing.
- * 
- * Revision 1.9  1994/02/14  12:05:42  mike
- * change segment data structure.
- * 
- * Revision 1.8  1994/01/26  17:27:45  yuan
- * Still not perfected ambient lighting
- * 
- * Revision 1.7  1994/01/25  17:58:08  yuan
- * Added ambient lighting, and also added fixing bogus segments
- * functions to the editor... (they don't work fully... need to
- * check out seguvs.c
- * 
- * Revision 1.6  1994/01/24  11:46:10  yuan
- * *** empty log message ***
- * 
- * Revision 1.5  1994/01/24  11:03:05  yuan
- * Set lgiht maximum added... Changes are still in progress
- * 
- * Revision 1.4  1994/01/18  19:16:07  yuan
- * Added assign default to lighting pad.
- * 
- * Revision 1.3  1993/12/17  12:26:00  mike
- * Add functions for setting light values on whole segment at once.
- * 
- * Revision 1.2  1993/12/16  16:56:12  mike
- * Add new texture map lighting control functions.
- * 
- * Revision 1.1  1993/12/16  13:21:50  mike
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/eobject.c:
-
- * Revision 2.0  1995/02/27  11:35:14  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.93  1995/02/22  15:09:04  allender
- * remove anonymous unions from object structure
- * 
- * Revision 1.92  1995/01/12  12:10:32  yuan
- * Added coop object capability.
- * 
- * Revision 1.91  1994/12/20  17:57:02  yuan
- * Multiplayer object stuff.
- * 
- * Revision 1.90  1994/11/27  23:17:49  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.89  1994/11/17  14:48:06  mike
- * validation functions moved from editor to game.
- * 
- * Revision 1.88  1994/11/14  11:40:03  mike
- * fix default robot behavior.
- * 
- * Revision 1.87  1994/10/25  10:51:31  matt
- * Vulcan cannon powerups now contain ammo count
- * 
- * Revision 1.86  1994/10/23  02:11:40  matt
- * Got rid of obsolete hostage_info stuff
- * 
- * Revision 1.85  1994/10/17  21:35:32  matt
- * Added support for new Control Center/Main Reactor
- * 
- * Revision 1.84  1994/10/10  17:23:13  mike
- * Verify that not placing too many player objects.
- * 
- * Revision 1.83  1994/09/24  14:15:35  mike
- * Custom colored object support.
- * 
- * Revision 1.82  1994/09/15  22:58:12  matt
- * Made new objects be oriented to their segment
- * Added keypad function to flip an object upside-down
- * 
- * Revision 1.81  1994/09/01  10:58:41  matt
- * Sizes for powerups now specified in bitmaps.tbl; blob bitmaps now plot
- * correctly if width & height of bitmap are different.
- * 
- * Revision 1.80  1994/08/25  21:58:14  mike
- * Write ObjectSelectPrevInMine and something else, I think...
- * 
- * Revision 1.79  1994/08/16  20:19:54  mike
- * Make STILL default (from CHASE_OBJECT).
- * 
- * Revision 1.78  1994/08/14  23:15:45  matt
- * Added animating bitmap hostages, and cleaned up vclips a bit
- * 
- * Revision 1.77  1994/08/13  14:58:43  matt
- * Finished adding support for miscellaneous objects
- * 
- * Revision 1.76  1994/08/12  22:24:58  matt
- * Generalized polygon objects (such as control center)
- * 
- * Revision 1.75  1994/08/09  16:06:11  john
- * Added the ability to place players.  Made old
- * Player variable be ConsoleObject.
- * 
- * Revision 1.74  1994/08/05  18:18:55  matt
- * Made object rotation have 4x resolution, and SHIFT+rotate do old resolution.
- * 
- * Revision 1.73  1994/08/01  13:30:56  matt
- * Made fvi() check holes in transparent walls, and changed fvi() calling
- * parms to take all input data in query structure.
-
-------------------------------------------------------------------------
-main/editor/eobject.h:
-
- * Revision 2.0  1995/02/27  11:35:30  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.5  1994/09/15  22:57:46  matt
- * Made new objects be oriented to their segment
- * Added keypad function to flip an object upside-down
- * 
- * Revision 1.4  1994/08/25  21:57:23  mike
- * Prototype ObjectSelectPrevInMine, and probably wrote it too, though not in this file.
- * 
- * Revision 1.3  1994/08/05  18:17:48  matt
- * Made object rotation have 4x resolution, and SHIFT+rotate do old resolution.
- * 
- * Revision 1.2  1994/05/14  18:00:59  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.1  1994/05/14  17:36:30  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/eswitch.c:
-
- * Revision 2.0  1995/02/27  11:35:18  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.33  1995/01/14  19:18:04  john
- * First version of object paging.
- * 
- * Revision 1.32  1994/11/27  23:18:01  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.31  1994/11/07  10:55:42  yuan
- * *** empty log message ***
- * 
- * Revision 1.30  1994/10/13  13:15:06  yuan
- * Fixed trigger removal bug.
- * 
- * Revision 1.29  1994/10/06  21:24:16  matt
- * Added switch for exit to secret level
- * 
- * Revision 1.28  1994/09/29  17:06:10  matt
- * Took out references to obsolete external triggers
- * 
- * Revision 1.27  1994/09/28  13:40:34  yuan
- * Fixed control center trigger bug.
- * 
- * Revision 1.26  1994/09/26  16:25:04  yuan
- * Only allow one binding of each matcen .
- * 
- * Revision 1.25  1994/09/24  17:10:19  yuan
- * Added Matcen triggers.
- * 
- * Revision 1.24  1994/09/20  18:23:58  yuan
- * Killed the BOGIFYING WALL DRAGON...
- * 
- * There was a problem with triggers being created that had bogus
- * pointers back to their segments.
- * 
- * Revision 1.23  1994/08/25  21:56:33  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.22  1994/08/15  18:06:54  yuan
- * Added external trigger.
- * 
- * Revision 1.21  1994/07/22  17:18:47  yuan
- * Working on dialog box for refuel/repair/material/control centers.
- * 
- * Revision 1.20  1994/07/06  10:55:55  john
- * New structures for hostages.
- * 
- * Revision 1.19  1994/07/01  16:36:20  yuan
- * Working on triggers that aren't always on.
- * 
- * Revision 1.18  1994/06/21  18:50:14  john
- * Made ESC key exit dialog.
- * 
- * Revision 1.17  1994/06/20  22:30:36  yuan
- * Fixed crazy runaway trigger bug that Adam found
- * 
- * Revision 1.16  1994/05/31  10:03:48  yuan
- * Fixed compiler warnings...
- * 
- * 
- * Revision 1.15  1994/05/30  20:22:30  yuan
- * New triggers.
- * 
- * Revision 1.14  1994/05/27  12:33:50  yuan
- * Fixed some bugs when adding trigger.
- * 
- * Revision 1.13  1994/05/27  10:34:29  yuan
- * Added new Dialog boxes for Walls and Triggers.
- * 
- * Revision 1.12  1994/05/25  18:15:02  yuan
- * Fixed make warnings to save 10 cents!
- * 
- * Revision 1.11  1994/05/25  18:08:03  yuan
- * Revamping walls and triggers interface.
- * Wall interface complete, but triggers are still in progress.
- * 
- * Revision 1.10  1994/04/29  15:05:50  yuan
- * Trigger/Link removing stuff still needs to be fixed.
- * 
- * Revision 1.9  1994/04/28  23:25:34  yuan
- * Obliterated warnings.
- * 
- * Revision 1.8  1994/04/28  18:08:06  yuan
- * Fixed trigger bug.
-
-------------------------------------------------------------------------
-main/editor/eswitch.h:
-
- * Revision 2.0  1995/02/27  11:35:40  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.6  1994/05/30  20:22:35  yuan
- * New triggers.
- * 
- * Revision 1.5  1994/05/27  10:34:35  yuan
- * Added new Dialog boxes for Walls and Triggers.
- * 
- * Revision 1.4  1994/05/25  18:08:39  yuan
- * Revamping walls and triggers interface.
- * Wall interface complete, but triggers are still in progress.
- * 
- * Revision 1.3  1994/04/28  23:46:56  yuan
- * Added prototype for remove_trigger.
- * 
- * Revision 1.2  1994/03/15  16:34:20  yuan
- * Fixed bm loader (might have some changes in walls and switches)
- * 
- * Revision 1.1  1994/03/10  14:49:03  yuan
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/fixseg.c:
-
- * Revision 2.0  1995/02/27  11:36:25  john
- * Version 2.0. Ansi-fied.
- * 
- * Revision 1.7  1994/11/27  23:18:01  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.6  1994/11/17  14:48:00  mike
- * validation functions moved from editor to game.
- * 
- * Revision 1.5  1994/08/04  19:13:26  matt
- * Changed a bunch of vecmat calls to use multiple-function routines, and to
- * allow the use of C macros for some functions
- * 
- * Revision 1.4  1994/02/10  15:36:31  matt
- * Various changes to make editor compile out.
- * 
- * Revision 1.3  1993/12/03  18:45:09  mike
- * initial stuff.
- * 
- * Revision 1.2  1993/11/30  17:05:09  mike
- * Added part of code to make a side planar.
- * 
- * Revision 1.1  1993/11/30  10:05:36  mike
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/func.c:
-
- * Revision 1.1  1994/11/21  14:13:17  matt
- * Initial revision
- * 
- * Revision 1.1  1993/11/15  12:28:17  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/group.c:
-
- * Revision 2.0  1995/02/27  11:35:05  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.65  1994/11/27  23:17:21  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.64  1994/11/17  14:48:08  mike
- * validation functions moved from editor to game.
- * 
- * Revision 1.63  1994/11/17  11:38:56  matt
- * Ripped out code to load old mines
- * 
- * Revision 1.62  1994/10/27  10:06:20  mike
- * adapt to no inverse table.
- * 
- * Revision 1.61  1994/10/03  23:40:08  mike
- * New fuelcen_activate parameters.
- * 
- * Revision 1.60  1994/09/28  17:32:01  mike
- * Make group copying work for copying a group's walls.
- * 
- * Revision 1.59  1994/09/20  14:35:28  mike
- * Fix bugs in group subtraction code.  Don't allow to attach a group if the attach side is unfree.
- * 
- * Revision 1.58  1994/08/25  21:58:07  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.57  1994/08/04  19:12:58  matt
- * Changed a bunch of vecmat calls to use multiple-function routines, and to
- * allow the use of C macros for some functions
- * 
- * Revision 1.56  1994/08/03  15:40:01  mike
- * Enable calls to compress_mine to get rid of bugs in group
- * copying -- was creating invalid segments.
- * 
- * Revision 1.55  1994/06/30  10:59:13  yuan
- * Fixed texture translations.
- * 
- * Revision 1.54  1994/06/22  17:36:00  mike
- * Fix bug in group creation, was stuffing first two group segs over number
- * of segments in group (then number would overwrite them), so there would
- * be two bogus segments in group, one of which was always 0, the other
- * would be a small number.
- * 
- * Revision 1.53  1994/06/14  17:07:15  john
- * *** empty log message ***
- * 
- * Revision 1.52  1994/06/14  16:59:09  mike
- * Fix references to tmap_num2, must strip off orientation bits.
- * 
- * Revision 1.51  1994/05/23  14:56:37  mike
- * make current segment be add segment.
- * 
- * Revision 1.50  1994/05/19  12:10:01  matt
- * Use new vecmat macros and globals
- * 
- * Revision 1.49  1994/05/17  10:33:59  matt
- * Deleted unused get_free_object_num() func.
- * 
- * Revision 1.48  1994/05/09  23:34:17  mike
- * Punch all sloppy sides in a group, speed up segment rotation.
- * 
- * Revision 1.47  1994/05/06  14:39:56  mike
- * Make objects move and copy with groups.
- * 
- * Revision 1.46  1994/05/05  16:05:54  yuan
- * Added fuelcen/repaircens to groups...
- * 
- * Eventually, walls will be added too...
- * 
- * Revision 1.45  1994/05/05  12:56:25  yuan
- * Fixed a bunch of group bugs.
- * 
- * Revision 1.44  1994/05/04  14:10:04  mike
- * Assert added to prevent bombing out when current_group = -1
- * 
- * Revision 1.43  1994/05/02  17:59:18  yuan
- * Changed undo_status into an array rather than malloced pointers.
- * 
- * Revision 1.42  1994/05/02  15:23:19  mike
- * Call med_combine_duplicate_vertices in med_copy_group and med_move_group.
- * 
- * Revision 1.41  1994/04/27  12:11:23  mike
- * Fix bug in group rotation.
- * 
- * Revision 1.40  1994/04/22  10:07:37  yuan
- * Make sure we don't get obj->next equal itself error.
- * 
- * Revision 1.39  1994/04/18  17:15:13  yuan
- * Added error checking for select prev, and next group.
-
-------------------------------------------------------------------------
-main/editor/info.c:
-
- * Revision 2.0  1995/02/27  11:35:34  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.42  1995/02/22  15:12:50  allender
- * remove anonymous unions from object structure
- * 
- * Revision 1.41  1994/12/08  13:59:39  matt
- * *** empty log message ***
- * 
- * Revision 1.40  1994/09/30  00:38:30  mike
- * Fix some diagnostic messages
- * 
- * Revision 1.39  1994/09/29  20:13:12  mike
- * Clean up some text, prevent it from writing outside canvas.
- * 
- * Revision 1.38  1994/09/29  09:32:17  mike
- * Fix text clipping problem in UI keypad info text.
- * 
- * Revision 1.37  1994/09/25  23:42:20  matt
- * Took out references to obsolete constants
- * 
- * Revision 1.36  1994/08/25  21:57:05  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.35  1994/08/23  16:39:50  mike
- * mode replaced by behavior in ai_info.
- * 
- * Revision 1.34  1994/07/18  10:45:23  mike
- * Fix erase window in texture pads after adding more click-boxes.
- * 
- * Revision 1.33  1994/07/15  12:34:10  mike
- * Remove use of AIM_FOLLOW_PATH_CIRCULAR.
- * 
- * Revision 1.32  1994/06/17  17:13:46  yuan
- * Fixed text so it doesn't overflow screen
- * 
- * Revision 1.31  1994/06/01  17:22:31  matt
- * Set font color before drawing info; got rid of superfluous %d
- * 
- * Revision 1.30  1994/05/29  23:40:29  matt
- * Killed reference to now-unused movement type
- * 
- * Revision 1.29  1994/05/29  22:52:32  matt
- * Deleted unused stuff
- * 
- * Revision 1.28  1994/05/27  10:34:16  yuan
- * Added new Dialog boxes for Walls and Triggers.
- * 
- * Revision 1.27  1994/05/17  10:34:35  matt
- * Changed Num_objects to num_objects, since it's not really global anymore
- * 
- * Revision 1.26  1994/05/14  17:17:59  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.25  1994/05/12  14:47:07  mike
- * Adjust for Ai_states killed, replaced by field in object structure.
- * 
- * Revision 1.24  1994/05/06  12:52:11  yuan
- * Adding some gamesave checks...
- * 
- * Revision 1.23  1994/05/03  19:21:28  matt
- * Removed reference to robot flythrough mode, which doesn't exist anymore
- * 
- * Revision 1.22  1994/05/03  11:03:06  mike
- * Customize text for segment sizing keypad.
- * 
- * Revision 1.21  1994/04/29  15:05:40  yuan
- * More info added...
- * 
- * Revision 1.20  1994/04/22  17:45:58  john
- * MAde top 2 bits of paste-ons pick the 
- * orientation of the bitmap.
- * 
- * Revision 1.19  1994/04/20  17:29:30  yuan
- * Added tmap_num info.
- * 
- * Revision 1.18  1994/04/13  19:12:55  mike
- * Fix font color problems in keypads.
- * 
- * Revision 1.17  1994/04/13  13:26:37  mike
- * Kill a mprintf.
- * 
- * Revision 1.16  1994/04/13  13:24:44  mike
- * Separate info display, customize for each keypad.
- * 
- * Revision 1.15  1994/03/19  17:21:31  yuan
- * Wall system implemented until specific features need to be added...
- * (Needs to be hammered on though.)
- * 
- * Revision 1.14  1994/02/22  18:13:13  yuan
- * Added tmap number field.
- * 
- * Revision 1.13  1994/02/17  09:46:27  matt
- * Removed include of slew.h
- * 
- * Revision 1.12  1994/02/16  19:58:56  yuan
- * Added type to info
- * 
- * Revision 1.11  1994/02/16  16:48:08  yuan
- * Added Curside.
- * 
- * Revision 1.10  1994/02/03  17:26:43  yuan
- * Fixed formatting of vertex numbering.
- * 
- * Revision 1.9  1994/01/31  12:17:06  yuan
- * Make sure Num_segments, etc. are drawn.
- * 
- * Revision 1.8  1994/01/22  13:43:12  yuan
- * Cosmetic fixes.
- * 
- * Revision 1.7  1994/01/21  12:14:59  yuan
- * Fixed cosmetic problem
- * 
- * Revision 1.6  1994/01/21  12:01:03  yuan
- * Added segment and vertex info
- * 
- * Revision 1.5  1994/01/20  11:28:11  john
- * *** empty log message ***
- * 
- * Revision 1.4  1994/01/19  10:44:42  john
- * *** empty log message ***
- * 
- * Revision 1.3  1994/01/19  10:32:36  john
- * *** empty log message ***
- * 
- * Revision 1.2  1994/01/19  09:34:31  john
- * First version.
- * 
- * Revision 1.1  1994/01/19  09:30:43  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/info.h:
-
- * Revision 2.0  1995/02/27  11:34:32  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.2  1994/05/14  17:18:17  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.1  1994/05/14  16:30:39  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/kbuild.c:
-
- * Revision 2.0  1995/02/27  11:35:43  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.20  1995/02/22  11:00:47  yuan
- * prototype include.
- * 
- * Revision 1.19  1995/02/22  10:59:01  yuan
- * Save sloppy mine before punching.
- * 
- * Revision 1.18  1994/08/25  21:57:56  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.17  1994/05/16  12:00:52  mike
- * Call med_combine_duplicate_vertices before various build functions.
- * 
- * Revision 1.16  1994/05/09  23:34:31  mike
- * Punch all sloppy sides in a group.
- * 
- * Revision 1.15  1994/02/16  15:23:06  yuan
- * Checking in for editor make.
- * 
- * Revision 1.14  1994/01/21  12:01:31  yuan
- * Added clearer editor_status messages (sloppy joint vs. joint)
- * 
- * Revision 1.13  1994/01/14  11:59:52  yuan
- * New function in build menu. 
- * "Punch" through walls to force a joint formation with
- * closest segment:side, if the closest segment:side allows
- * a connection.
- * 
- * Revision 1.12  1994/01/07  17:45:05  yuan
- * Just changed some tabs and formatting I believe.
- * 
- * Revision 1.11  1993/12/06  19:33:36  yuan
- * Fixed autosave stuff so that undo restores Cursegp and
- * Markedsegp
- * 
- * Revision 1.10  1993/12/02  12:39:15  matt
- * Removed extra includes
- * 
- * Revision 1.9  1993/11/12  14:31:31  yuan
- * Added warn_if_concave_segments.
- * 
- * Revision 1.8  1993/11/11  17:12:45  yuan
- * Fixed display of messages, so that concave segment
- * warning doesn't wipe them out immediately.
- * 
- * Revision 1.7  1993/11/09  12:09:28  mike
- * Remove extern for mine_filename, put it in editor.h
- * 
- * Revision 1.6  1993/11/08  19:14:06  yuan
- * Added Undo command (not working yet)
- * 
- * Revision 1.5  1993/11/05  17:32:36  john
- * added funcs
- * .,
- * 
- * Revision 1.4  1993/11/01  16:53:51  mike
- * Add CreateAdjacentJointsSegment and CreateAdjacentJointsAll
- * 
- * Revision 1.3  1993/11/01  11:24:59  mike
- * Add CreateJointAdjacent
- * 
- * Revision 1.2  1993/10/29  19:13:11  yuan
- * Added diagnostic messages
- * 
- * Revision 1.1  1993/10/13  18:53:27  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/kcurve.c:
-
- * Revision 2.0  1995/02/27  11:35:29  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.17  1994/08/25  21:56:43  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.16  1994/05/14  17:17:54  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.15  1994/01/28  10:52:24  mike
- * Bind set_average_light_on_curside to DeleteCurve
- * 
- * Revision 1.14  1994/01/25  17:34:47  mike
- * Stupidly bound fix_bogus_uvs_all to delete curve.
- * 
- * Revision 1.13  1993/12/06  19:34:15  yuan
- * Fixed autosave so that undo restores Cursegp
- * and Markedsegp
- * 
- * Revision 1.12  1993/12/02  12:39:28  matt
- * Removed extra includes
- * 
- * Revision 1.11  1993/11/12  13:08:38  yuan
- * Fixed warning for concave segment so it appears after any
- * "less important" diagnostic messages.
- * 
- * Revision 1.10  1993/11/11  17:03:25  yuan
- * Fixed undo-status display
- * 
- * Revision 1.9  1993/11/11  15:55:11  yuan
- * Added undo messages.
- * 
- * Revision 1.8  1993/11/08  19:13:30  yuan
- * Added Undo command (not working yet)
- * 
- * Revision 1.7  1993/11/05  17:32:51  john
- * added funcs
- * .,
- * 
- * Revision 1.6  1993/10/29  19:12:41  yuan
- * Added diagnostic messages
- * 
- * Revision 1.5  1993/10/29  16:26:30  yuan
- * Added diagnostic messages for curve generation
- * 
- * Revision 1.4  1993/10/22  19:47:30  yuan
- * Can't build curve if Marked Seg has a segment attached.
- * 
- * Revision 1.3  1993/10/19  20:54:50  matt
- * Changed/cleaned up window updates
- * 
- * Revision 1.2  1993/10/14  13:52:17  mike
- * Add return value to AssignTexture
- * 
- * Revision 1.1  1993/10/13  18:53:11  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/kfuncs.c:
-
- * Revision 2.1  1995/03/08  16:07:23  yuan
- * Added segment sizing default functions.
- * 
- * Revision 2.0  1995/02/27  11:34:45  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.112  1995/01/12  12:10:31  yuan
- * Added coop object capability.
- * 
- * Revision 1.111  1994/11/27  23:17:16  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.110  1994/11/23  12:17:22  mike
- * bind retmap functions.
- * 
- * Revision 1.109  1994/11/19  15:20:54  mike
- * rip out unused code and data.
- * 
- * Revision 1.108  1994/11/17  11:39:02  matt
- * Ripped out code to load old mines
- * 
- * Revision 1.107  1994/10/27  10:06:12  mike
- * kill macro stuff.
- * 
- * Revision 1.106  1994/10/18  15:31:43  mike
- * Bind mine correction function to test keypad, key=1.
- * 
- * Revision 1.105  1994/09/26  23:22:06  matt
- * Added functions to keep player's starting position from getting messed up
- * 
- * Revision 1.104  1994/09/24  14:15:41  mike
- * Custom colored object support.
- * 
- * Revision 1.103  1994/09/23  18:03:54  yuan
- * Finished wall checking code.
- * 
- * Revision 1.102  1994/09/22  19:03:52  mike
- * Test function test_shortpos on ctrl-keypad3
- * 
- * Revision 1.101  1994/09/20  14:35:56  mike
- * Bind functions to keypad 2, 3.
- * 
- * Revision 1.100  1994/09/15  22:58:10  matt
- * Made new objects be oriented to their segment
- * Added keypad function to flip an object upside-down
- * 
- * Revision 1.99  1994/09/14  16:50:50  yuan
- * Added load mine only function
- * 
- * Revision 1.98  1994/08/25  21:57:52  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.97  1994/08/16  18:10:52  yuan
- * Maded C place you in the center of a segment.
- * 
- * Revision 1.96  1994/08/15  17:48:01  yuan
- * Added external walls.
- * 
- * Revision 1.95  1994/08/13  17:32:38  mike
- * test function.
- * 
- * Revision 1.94  1994/08/05  21:17:57  matt
- * Allow two doors to be linked together
- * 
- * Revision 1.93  1994/08/05  18:18:52  matt
- * Made object rotation have 4x resolution, and SHIFT+rotate do old resolution.
- * 
- * Revision 1.92  1994/08/03  10:31:06  mike
- * Add texture map propagation without uv assignment.
- * 
- * Revision 1.91  1994/08/02  14:17:00  mike
- * Clean up dialog boxes, add one for Matt.
- * 
- * Revision 1.90  1994/07/30  17:04:47  mike
- * Bind key for max_depth on path testing.
-
-------------------------------------------------------------------------
-main/editor/kfuncs.h:
-
- * Revision 2.0  1995/02/27  11:34:33  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.2  1994/05/14  17:18:18  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.1  1994/05/14  16:37:14  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/kgame.c:
-
- * Revision 2.0  1995/02/27  11:34:55  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.25  1995/02/23  10:18:05  allender
- * fixed parameter mismatch with compute_segment_center
- * 
- * Revision 1.24  1994/11/17  11:38:59  matt
- * Ripped out code to load old mines
- * 
- * Revision 1.23  1994/11/09  11:58:56  matt
- * Fixed small bug
- * 
- * Revision 1.22  1994/10/20  12:48:02  matt
- * Replaced old save files (MIN/SAV/HOT) with new LVL files
- * 
- * Revision 1.21  1994/10/15  19:08:47  mike
- * Fix bug if player object out of mine at save.
- * 
- * Revision 1.20  1994/10/13  13:15:43  matt
- * Properly relink player object when bashed for "permanant" position save
- * 
- * Revision 1.19  1994/10/11  17:07:23  matt
- * Fixed problem that sometimes caused bad player segnum after compress
- * 
- * Revision 1.18  1994/10/08  17:10:40  matt
- * Correctly set current_level_num when loading/creating mine in editor
- * 
- * Revision 1.17  1994/09/26  23:46:13  matt
- * Improved player position save code
- * 
- * Revision 1.16  1994/09/26  23:22:50  matt
- * Added functions to keep player's starting position from getting messed up
- * 
- * Revision 1.15  1994/09/14  16:50:51  yuan
- * Added load mine only function
- * 
- * Revision 1.14  1994/07/22  12:36:50  matt
- * Cleaned up editor/game interactions some more.
- * 
- * Revision 1.13  1994/07/21  17:26:26  matt
- * When new mine created, the default save filename is now reset
- * 
- * Revision 1.12  1994/06/03  12:27:05  yuan
- * Fixed restore game state.
- * 
- * 
- * Revision 1.11  1994/05/30  11:36:09  yuan
- * Do gamesave if new mine is loaded and game is entered...
- * 
- * Revision 1.10  1994/05/14  18:00:33  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.9  1994/05/10  12:15:44  yuan
- * Fixed load_game functions to match prototype.
- * 
- * Revision 1.8  1994/05/06  12:52:15  yuan
- * Adding some gamesave checks...
- * 
- * Revision 1.7  1994/05/04  17:32:05  yuan
- * med_load_game changed to load_game
- * med_save_game changed to save_game
-
-------------------------------------------------------------------------
-main/editor/khelp.c:
-
- * Revision 2.0  1995/02/27  11:34:27  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.5  1993/12/02  12:39:30  matt
- * Removed extra includes
- * 
- * Revision 1.4  1993/11/05  17:32:57  john
- * added funcs
- * .,
- * 
- * Revision 1.3  1993/11/03  13:42:41  yuan
- * Updated help commands
- * 
- * Revision 1.2  1993/10/22  19:48:07  yuan
- * added ctrl-shift-keypad comment in help.
- * 
- * Revision 1.1  1993/10/13  18:53:16  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/kmine.c:
-
- * Revision 2.0  1995/02/27  11:34:22  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.53  1995/02/22  15:04:52  allender
- * remove anonymous unions from vecmat stuff
- * 
- * Revision 1.52  1994/11/27  23:17:13  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.51  1994/11/17  14:48:05  mike
- * validation functions moved from editor to game.
- * 
- * Revision 1.50  1994/11/17  11:38:49  matt
- * Ripped out code to load old mines
- * 
- * Revision 1.49  1994/10/08  17:10:22  matt
- * Correctly set current_level_num when loading/creating mine in editor
- * 
- * Revision 1.48  1994/10/03  11:30:45  matt
- * Fixed problem with permanant player position when creating a new mine
- * 
- * Revision 1.47  1994/09/29  17:42:19  matt
- * Cleaned up game_mode a little
- * 
- * Revision 1.46  1994/08/18  10:48:21  john
- * Cleaned up game sequencing.
- * 
- * Revision 1.45  1994/08/09  16:05:36  john
- * Added the ability to place players.  Made old
- * Player variable be ConsoleObject.
- * 
- * Revision 1.44  1994/07/22  12:37:06  matt
- * Cleaned up editor/game interactions some more.
- * 
- * Revision 1.43  1994/07/21  17:26:50  matt
- * When new mine created, the default save filename is now reset
- * 
- * Revision 1.42  1994/06/08  14:29:25  matt
- * Took out support for old mine versions
- * 
- * Revision 1.41  1994/06/03  12:28:04  yuan
- * Fixed game restore state.
- * 
- * Revision 1.40  1994/05/19  12:10:29  matt
- * Use new vecmat macros and globals
- * 
- * Revision 1.39  1994/05/14  17:17:56  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.38  1994/05/12  14:47:47  mike
- * New previous mine structure and object structure.
- * 
- * Revision 1.37  1994/05/06  12:52:12  yuan
- * Adding some gamesave checks...
- * 
- * Revision 1.36  1994/05/05  20:37:02  yuan
- * Added gamesave checks when entering and leaving the game.
- * 
- * Removed Load Game Save Game functions...
- * Now there is only Load/Save Mine... (equivalent to old Load/Save Game)
- * 
- * Revision 1.35  1994/04/27  22:57:54  matt
- * Made sit mine load from path of sit file
- * 
- * Revision 1.34  1994/04/21  18:29:55  matt
- * Don't use same variable for mine filename & sit filename
- * 
- * Revision 1.33  1994/04/21  18:21:43  matt
- * Strip path from mine filename in sit file
- * 
- * Revision 1.32  1994/04/18  10:54:35  mike
- * Add situation save/load
- * 
- * Revision 1.31  1994/02/16  16:47:54  yuan
- * Removed temp.min.
- * 
- * Revision 1.30  1994/02/16  15:22:51  yuan
- * Checking in for editor make.
- * 
- * Revision 1.29  1994/02/09  15:04:23  yuan
- * brought back save ability
- * 
- * Revision 1.28  1994/02/08  12:42:45  yuan
- * fixed log.
- * 
- * Revision 1.27  1994/02/08  12:41:47  yuan
- *     Crippled save mine function from demo version.
- * 
- * Revision 1.26  1994/01/13  13:26:05  yuan
- * Added med_compress_mine when creating new mine or
- * when loading mine
- * 
- * Revision 1.25  1994/01/11  12:03:23  yuan
- * Fixed so that when old mine implementation not in,
- * message is displayed when you try to load an old mine
- * 
- * Revision 1.24  1994/01/11  11:47:57  yuan
- * *** empty log message ***
- * 
- * Revision 1.23  1994/01/05  09:59:56  yuan
- * Added load old mine funciton
- * 
- * Revision 1.22  1993/12/16  15:58:08  john
- * moved texture selection page to texpage.c
- * ,
- * 
- * Revision 1.21  1993/12/10  14:48:55  mike
- * Kill orthogonal views.
- * 
- * Revision 1.20  1993/12/03  16:44:06  yuan
- * Changed some 0.0 return values to 0
- * 
- * 
- * Revision 1.19  1993/12/02  12:39:34  matt
- * Removed extra includes
- * 
- * Revision 1.18  1993/11/17  13:14:48  yuan
- * Moved Save Group to group.c
- * 
- * Revision 1.17  1993/11/16  17:25:48  yuan
- * Unworking group function added... 
- * 
- * Revision 1.16  1993/11/15  14:46:25  john
- * Changed Menu to MenuX
- * 
- * Revision 1.15  1993/11/08  19:13:45  yuan
- * Added Undo command (not working yet)
-
-------------------------------------------------------------------------
-main/editor/ksegmove.c:
-
- * Revision 2.0  1995/02/27  11:33:37  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.5  1993/12/02  12:39:36  matt
- * Removed extra includes
- * 
- * Revision 1.4  1993/11/12  16:40:23  mike
- * Use rotate_segment_new in place of med_rotate_segment_ang.
- * 
- * Revision 1.3  1993/11/05  17:32:54  john
- * added funcs
- * .,
- * 
- * Revision 1.2  1993/10/26  11:28:41  mike
- * Write common routine SegOrientCommon so all movement can pass
- * through the same routine to check for concavity, among other things.
- * 
- * Revision 1.1  1993/10/13  18:53:21  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/ksegsel.c:
-
- * Revision 2.0  1995/02/27  11:35:33  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.12  1994/08/25  21:57:02  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.11  1994/05/23  14:48:35  mike
- * make current segment be add segment.
- * 
- * Revision 1.10  1993/12/06  19:33:43  yuan
- * Fixed autosave stuff so that undo restores Cursegp and
- * Markedsegp
- * 
- * Revision 1.9  1993/12/02  12:39:37  matt
- * Removed extra includes
- * 
- * Revision 1.8  1993/11/12  13:08:17  yuan
- * Fixed warning for concave segment so it appears after any
- * "less important" diagnostic messages.
- * 
- * Revision 1.7  1993/11/05  17:32:49  john
- * added funcs
- * .,
- * 
- * Revision 1.6  1993/11/01  09:53:18  mike
- * Write functions get_next_segment and get_previous_segment.
- * 
- * Revision 1.5  1993/10/31  18:06:56  mike
- * Only set_view_target_from_segment if in that mode.
- * 
- * Revision 1.4  1993/10/28  15:01:09  matt
- * Mucked with update flags
- * 
- * Revision 1.3  1993/10/14  18:07:47  mike
- * Change use of CONNECTIVITY to MAX_SIDES_PER_SEGMENT
- * 
- * Revision 1.2  1993/10/14  11:47:34  john
- * *** empty log message ***
- * 
- * Revision 1.1  1993/10/13  18:53:39  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/ksegsize.c:
-
- * Revision 2.1  1995/03/08  16:07:21  yuan
- * Added segment sizing default functions.
- * 
- * Revision 2.0  1995/02/27  11:35:46  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.15  1994/11/17  14:47:42  mike
- * validation functions moved from editor to game.
- * 
- * Revision 1.14  1994/08/25  21:57:45  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.13  1994/07/18  10:44:43  mike
- * Fix uv propagation after segment sizing.
- * 
- * Revision 1.12  1994/05/04  19:16:34  mike
- * *** empty log message ***
- * 
- * Revision 1.11  1994/05/03  18:31:00  mike
- * Add PerturbCurside.
- * 
- * Revision 1.10  1994/05/03  11:05:14  mike
- * Overhaul segment sizing system to allow sizing of non-free vertices,
- * and also sizing of vertices on a side, edge or a single vertex.
- * 
- * Revision 1.9  1993/12/12  17:16:00  mike
- * Kill some mprintf code.
- * 
- * 
- * Revision 1.8  1993/12/10  11:10:53  mike
- * Fix bugs in tmap propagation in segment sizing.
- * 
- * Revision 1.7  1993/12/06  13:25:30  mike
- * Fix bug in setting size of New_segment after segment scale.
- * 
- * Revision 1.6  1993/11/17  18:57:52  mike
- * Change scaling to be additive.
- * 
- * Revision 1.5  1993/11/12  16:52:57  mike
- * *** empty log message ***
- * 
- * Revision 1.4  1993/11/05  17:32:47  john
- * added funcs
- * .,
- * 
- * Revision 1.3  1993/10/19  11:22:11  matt
- * Removed extra includes
- * 
- * Revision 1.2  1993/10/17  14:17:52  mike
- * Add big scale changes for segment.
- * 
- * Revision 1.1  1993/10/13  18:53:01  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/ktmap.c:
-
- * Revision 2.0  1995/02/27  11:35:37  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.26  1994/08/25  21:57:12  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.25  1994/08/03  10:32:41  mike
- * Texture map stretching.
- * 
- * Revision 1.24  1994/05/14  17:17:35  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.23  1994/04/28  10:48:38  yuan
- * Fixed undo message for Clear Texture.
- * 
- * Revision 1.22  1994/04/22  17:45:42  john
- * MAde top 2 bits of paste-ons pick the 
- * orientation of the bitmap.
- * 
- * Revision 1.21  1994/04/01  14:36:08  yuan
- * Fixed propogate function so you can propogate and move.
- * 
- * Revision 1.20  1994/03/19  17:22:08  yuan
- * Wall system implemented until specific features need to be added...
- * (Needs to be hammered on though.)
- * 
- * Revision 1.19  1994/02/14  12:06:12  mike
- * change segment data structure.
- * 
- * Revision 1.18  1994/01/25  17:58:47  yuan
- * Added ambient lighting, and also added fixing bogus segments
- * functions to the editor... (they don't work fully... need to
- * check out seguvs.c
- * 
- * Revision 1.17  1994/01/24  11:54:52  yuan
- * Checking everything in
- * 
- * Revision 1.16  1994/01/18  16:05:57  yuan
- * Added clear texture 2 function (shift 0)
- * 
- * Revision 1.15  1994/01/18  10:15:01  yuan
- * added texture stuff
- * 
- * Revision 1.14  1993/12/06  19:33:57  yuan
- * Fixed autosave stuff so that undo restores Cursegp and
- * Markedsegp
- * 
- * Revision 1.13  1993/12/02  12:39:39  matt
- * Removed extra includes
- * 
- * Revision 1.12  1993/11/28  17:31:34  mike
- * Use new segment data structure.
- * 
- * Revision 1.11  1993/11/12  16:38:37  mike
- * Change call to med_propagate_tmaps_to_segments to include new uv_only_flag parameter.
- * 
- * Revision 1.10  1993/11/11  15:53:30  yuan
- * Fixed undo display message
- * 
- * Revision 1.9  1993/11/08  19:13:46  yuan
- * Added Undo command (not working yet)
- * 
- * Revision 1.8  1993/11/05  17:32:48  john
- * added funcs
- * .,
- * 
- * Revision 1.7  1993/11/02  10:31:08  mike
- * Add PropagateTexturesSelected.
- * 
- * Revision 1.6  1993/10/29  11:43:15  mike
- * Write PropagateTextures
- * 
- * Revision 1.5  1993/10/25  13:26:39  mike
- * Force redraw whenever a texture map is assigned.
- * 
- * Revision 1.4  1993/10/15  17:42:53  mike
- * Make AssignTexture also assign texture maps to New_segment.
- * 
- * Revision 1.3  1993/10/15  13:10:24  mike
- * Adapt AssignTexture to new segment structure.
- * 
- * Revision 1.2  1993/10/14  18:09:17  mike
- * Debug code for AssignTexture and comment out code.
- * 
- * Revision 1.1  1993/10/14  14:01:49  mike
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/kview.c:
-
- * Revision 2.0  1995/02/27  11:34:21  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.11  1993/12/02  12:39:41  matt
- * Removed extra includes
- * 
- * Revision 1.10  1993/11/16  13:47:54  john
- * Xchanged move away/closer
- * 
- * Revision 1.9  1993/11/16  13:45:32  john
- * Exchanged zoom in/out.
- * 
- * Revision 1.8  1993/11/05  17:32:56  john
- * added funcs
- * .,
- * 
- * Revision 1.7  1993/11/03  12:10:21  yuan
- * No keypress associated with chase mode
- * 
- * Revision 1.6  1993/11/02  17:06:55  yuan
- * Icon stuff added.
- * 
- * Revision 1.5  1993/11/01  12:48:59  yuan
- * Added Chase mode icon to status bar.
- * 
- * Revision 1.4  1993/10/29  19:12:55  yuan
- * Added diagnostic messages
- * 
- * Revision 1.3  1993/10/27  18:26:16  matt
- * Made zoom & related keys not do anything if no current view
- * 
- * Revision 1.2  1993/10/19  20:54:33  matt
- * Changed/cleaned up window updates
- * 
- * Revision 1.1  1993/10/13  18:53:34  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/macro.c:
-
- * Revision 2.0  1995/02/27  11:35:09  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.12  1993/11/15  14:46:37  john
- * Changed Menu to MenuX
- * 
- * Revision 1.11  1993/11/05  17:32:44  john
- * added funcs
- * .,
- * 
- * Revision 1.10  1993/10/28  16:23:20  john
- * *** empty log message ***
- * 
- * Revision 1.9  1993/10/28  13:03:12  john
- * ..
- * 
- * Revision 1.8  1993/10/25  16:02:35  john
- * *** empty log message ***
- * 
- * Revision 1.7  1993/10/22  13:35:29  john
- * *** empty log message ***
- * 
- * Revision 1.6  1993/10/21  17:10:09  john
- * Fixed bug w/ load macro.
- * 
- * Revision 1.5  1993/10/19  12:58:47  john
- * *** empty log message ***
- * 
- * Revision 1.4  1993/10/19  12:55:02  john
- * *** empty log message ***
- * 
- * Revision 1.3  1993/10/19  12:49:49  john
- * made EventBuffer dynamic, use ReadFile, WriteFile
- * 
- * Revision 1.2  1993/10/15  17:42:20  john
- * *** empty log message ***
- * 
- * Revision 1.1  1993/10/15  17:28:06  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/macro.h:
-
- * Revision 2.0  1995/02/27  11:34:32  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.2  1994/05/14  17:18:19  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.1  1994/05/14  16:38:50  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/med.c:
-
- * Revision 2.3  1995/03/06  18:23:52  john
- * Fixed bug with font screwing up.
- * 
- * Revision 2.2  1995/03/06  16:34:55  john
- * Fixed bug with previous.
- * 
- * Revision 2.1  1995/03/06  15:20:57  john
- * New screen mode method.
- * 
- * Revision 2.0  1995/02/27  11:35:54  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.192  1994/11/30  12:33:55  mike
- * set window clearing mode for editor.
- * 
- * Revision 1.191  1994/11/27  23:17:02  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.190  1994/11/19  00:04:33  john
- * Changed some shorts to ints.
- * 
- * Revision 1.189  1994/11/17  14:47:57  mike
- * validation functions moved from editor to game.
- * 
- * Revision 1.188  1994/11/14  11:41:38  john
- * Fixed bug with editor/game sequencing.
- * 
- * Revision 1.187  1994/11/13  15:36:44  john
- * Changed game sequencing with editor.
- * 
- * Revision 1.186  1994/11/10  16:49:12  matt
- * Don't sort seg list if no segs in list
- * 
- * Revision 1.185  1994/11/08  09:28:39  mike
- * reset ai paths on going to game.
- * 
- * Revision 1.184  1994/10/30  14:13:05  mike
- * rip out repair center stuff.
- * 
- * Revision 1.183  1994/10/27  10:07:06  mike
- * adapt to no inverse table.
- * 
- * Revision 1.182  1994/10/20  12:48:03  matt
- * Replaced old save files (MIN/SAV/HOT) with new LVL files
- * 
- * Revision 1.181  1994/10/13  11:39:22  john
- * Took out network stuff/.
- * 
- * Revision 1.180  1994/10/07  22:21:38  mike
- * Stop Delete-{whatever} from hanging you!
- * 
- * Revision 1.179  1994/10/03  23:39:37  mike
- * Adapt to newer, better, fuelcen_activate function.
- * 
- * Revision 1.178  1994/09/30  00:38:05  mike
- * Shorten diagnostic message erase -- was erasing outside canvas.
- * 
- * Revision 1.177  1994/09/28  17:31:37  mike
- * Add call to check_wall_validity();
- * 
- * Revision 1.176  1994/08/19  10:57:42  mike
- * Fix status message erase bug.
- * 
- * Revision 1.175  1994/08/18  10:48:12  john
- * Cleaned up game sequencing.
- * 
- * Revision 1.174  1994/08/16  18:11:04  yuan
- * Maded C place you in the center of a segment.
- * 
- * Revision 1.173  1994/08/10  19:55:05  john
- * Changed font stuff.
- * 
- * Revision 1.172  1994/08/09  16:06:06  john
- * Added the ability to place players.  Made old
- * Player variable be ConsoleObject.
- * 
- * Revision 1.171  1994/08/04  09:14:11  matt
- * Fixed problem I said I fixed last time
- * 
- * Revision 1.170  1994/08/04  00:27:57  matt
- * When viewing a wall, update the objects segnum if moved out of the segment
- * 
- * Revision 1.169  1994/08/02  14:18:12  mike
- * Clean up dialog boxes.
- * 
- * Revision 1.168  1994/07/29  15:34:35  mike
- * Kill some mprintfs.
- * 
- * Revision 1.167  1994/07/29  14:56:46  yuan
- * Close centers window, when you go into game.
- * 
- * Revision 1.166  1994/07/28  17:16:20  john
- * MAde editor use Network stuff.
- * 
- * Revision 1.165  1994/07/28  16:59:10  mike
- * objects containing objects.
- * 
- * Revision 1.164  1994/07/22  12:37:07  matt
- * Cleaned up editor/game interactions some more.
- * 
- * Revision 1.163  1994/07/21  19:35:11  yuan
- * Fixed #include problem
- * 
- * Revision 1.162  1994/07/21  18:02:09  matt
- * Don't re-init player stats when going from editor -> game
- * 
- * Revision 1.161  1994/07/21  12:47:53  mike
- * Add tilde key functionality for object movement.
- * 
- * Revision 1.160  1994/07/18  10:44:55  mike
- * One-click access to keypads.
- * 
- * Revision 1.159  1994/07/01  18:05:54  john
- * *** empty log message ***
- * 
- * Revision 1.158  1994/07/01  17:57:06  john
- * First version of not-working hostage system
- * 
- * 
- * Revision 1.157  1994/07/01  11:32:29  john
- * *** empty log message ***
- * 
- * Revision 1.156  1994/06/24  17:04:36  john
- * *** empty log message ***
- * 
- * Revision 1.155  1994/06/23  15:53:47  matt
- * Finished hacking in 3d rendering in big window
- * 
- * Revision 1.154  1994/06/21  16:17:54  yuan
- * Init stats when you go to game from editor
- * 
- * Revision 1.153  1994/06/21  12:57:14  yuan
- * Remove center from segment function added to menu.
-
-------------------------------------------------------------------------
-main/editor/meddraw.c:
-
- * Revision 2.0  1995/02/27  11:34:42  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.34  1994/11/09  11:46:30  matt
- * Don't draw non-existant special segments
- * 
- * Revision 1.33  1994/10/27  10:06:38  mike
- * adapt to no inverse table.
- * 
- * Revision 1.32  1994/10/17  18:06:23  john
- * Made net player objects draw in dark green.
- * 
- * Revision 1.31  1994/09/26  16:44:33  yuan
- * Colored special segments.
- * 
- * Revision 1.30  1994/09/01  17:02:41  matt
- * Redraw pointer after world draw
- * 
- * Revision 1.29  1994/08/25  21:56:21  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.28  1994/08/11  18:59:46  mike
- * Adapt to new int (vs short) version of gameseg functions.
- * 
- * Revision 1.27  1994/08/09  16:06:03  john
- * Added the ability to place players.  Made old
- * Player variable be ConsoleObject.
- * 
- * Revision 1.26  1994/07/25  00:03:05  matt
- * Various changes to accomodate new 3d, which no longer takes point numbers
- * as parms, and now only takes pointers to points.
- * 
- * Revision 1.25  1994/07/09  17:38:13  mike
- * comment out mprintf(0, "\n");
- * 
- * Revision 1.24  1994/07/07  19:34:47  matt
- * These changes are mostly Mike's, but I fixed a little bug that caused
- * some edges to think they were never used.
- * 
- * Revision 1.23  1994/07/06  16:36:18  mike
- * Optionally only draw segment lines which are in only one segment.
- * 
- * Revision 1.22  1994/05/27  10:34:28  yuan
- * Added new Dialog boxes for Walls and Triggers.
- * 
- * Revision 1.21  1994/05/14  18:00:56  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.20  1994/05/09  23:35:21  mike
- * Change order of drawing found and selected segments.
- * 
- * Revision 1.19  1994/05/05  12:55:38  yuan
- * Fixed a bunch of group bugs.
- * 
- * Revision 1.18  1994/05/04  13:07:52  matt
- * Made current edge draw in green in wire-frame window
- * Also, moved a bunch of color constants here from editor.h
-
-------------------------------------------------------------------------
-main/editor/meddraw.h:
-
- * Revision 2.0  1995/02/27  11:35:12  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.3  1994/07/06  16:36:54  mike
- * Prototype for draw_mine_all.
- * 
- * Revision 1.2  1993/12/17  12:05:09  john
- * Took stuff out of med.c; moved into medsel.c, meddraw.c, medmisc.c
- * 
- * Revision 1.1  1993/12/17  08:55:14  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/medmisc.c:
-
- * Revision 2.1  1995/03/06  15:20:50  john
- * New screen mode method.
- * 
- * Revision 2.0  1995/02/27  11:36:40  john
- * Version 2.0. Ansi-fied.
- * 
- * Revision 1.31  1994/11/27  23:17:20  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.30  1994/11/17  14:48:11  mike
- * validation functions moved from editor to game.
- * 
- * Revision 1.29  1994/08/25  21:56:15  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.28  1994/08/09  16:06:00  john
- * Added the ability to place players.  Made old
- * Player variable be ConsoleObject.
- * 
- * Revision 1.27  1994/07/21  17:25:43  matt
- * Took out unused func medlisp_create_new_mine() and its prototype
- * 
- * Revision 1.26  1994/07/21  13:27:01  matt
- * Cleaned up render code and added error checking
- * 
- * Revision 1.25  1994/07/20  15:32:52  matt
- * Added func to call g3_point_2_vec() for texture-mapped window
- * 
- * Revision 1.24  1994/07/15  15:26:53  yuan
- * Fixed warning
- * 
- * Revision 1.23  1994/07/14  14:45:16  yuan
- * Added function to set default segment and attach.
- * 
- * Revision 1.22  1994/07/14  09:46:34  yuan
- * Make E attach segment as well as make default.
- * 
- * 
- * Revision 1.21  1994/07/11  18:39:17  john
- * Reversed y axis roll.
- * 
- * Revision 1.20  1994/07/06  16:36:32  mike
- * Add hook for game to render wireframe view: draw_world_from_game.
- * 
- * Revision 1.19  1994/06/24  14:08:31  john
- * Changed calling params for render_frame.
- * 
- * Revision 1.18  1994/06/23  15:54:02  matt
- * Finished hacking in 3d rendering in big window
- * 
- * Revision 1.17  1994/06/22  00:32:56  matt
- * New version, without all the errors of the last version. Sorry.
- * 
- * Revision 1.15  1994/05/23  14:48:54  mike
- * make current segment be add segment.
- * 
- * Revision 1.14  1994/05/19  12:09:35  matt
- * Use new vecmat macros and globals
- * 
- * Revision 1.13  1994/05/14  17:17:55  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.12  1994/05/09  23:35:06  mike
- * Add ClearFoundList, which is probably no longer being called.
- * 
- * Revision 1.11  1994/05/04  14:11:40  mike
- * Increase render depth from 4 to 6 by default.
- * 
- * Revision 1.10  1994/04/27  21:00:25  matt
- * Made texture-mapped window redraw when editor state variables (such as
- * current object) have changed.
- * 
- * Revision 1.9  1994/03/31  12:03:38  matt
- * Cleaned up includes
- * 
- * Revision 1.8  1994/02/17  11:31:21  matt
- * Changes in object system
- * 
- * Revision 1.7  1994/02/11  11:05:14  yuan
- * Make chase mode unsettable... Gives a warning on the mono.
- * 
- * Revision 1.6  1994/01/21  17:37:24  matt
- * Moved code from render_frame() to caller, making code cleaner
- * 
- * Revision 1.5  1994/01/11  18:12:43  yuan
- * compress_mines removed.  Now it is called within
- * the gamesave.min save whenever we go into the game.
- * 
- * Revision 1.4  1994/01/05  10:54:15  john
- * New object code by John
- * 
- * Revision 1.3  1993/12/29  16:15:27  mike
- * Kill scale field from segment struct.
- * 
- * Revision 1.2  1993/12/17  12:05:00  john
- * Took stuff out of med.c; moved into medsel.c, meddraw.c, medmisc.c
- * 
- * Revision 1.1  1993/12/17  08:35:47  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/medmisc.h:
-
- * Revision 2.0  1995/02/27  11:34:40  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.3  1994/07/21  17:25:28  matt
- * Took out unused func medlisp_create_new_mine() and its prototype
- * 
- * Revision 1.2  1993/12/17  12:05:04  john
- * Took stuff out of med.c; moved into medsel.c, meddraw.c, medmisc.c
- * 
- * Revision 1.1  1993/12/17  08:45:23  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/medrobot.c:
-
- * Revision 2.0  1995/02/27  11:35:59  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.46  1995/02/22  15:22:03  allender
- * remove anonyous unions from object structure
- * 
- * Revision 1.45  1994/11/27  23:17:32  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.44  1994/11/14  11:39:57  mike
- * fix default robot behavior
- * 
- * Revision 1.43  1994/11/02  16:18:47  matt
- * Moved draw_model_picture() out of editor, and cleaned up code
- * 
- * Revision 1.42  1994/10/10  17:23:23  mike
- * Verify that not placing too many player objects.
- * 
- * Revision 1.41  1994/10/09  22:04:38  mike
- * Maybe improve, maybe not, robot selection in shift-R menu.
- * 
- * Revision 1.40  1994/09/30  21:49:01  mike
- * Fix stupid shift-R dialog bug which caused lots of mprintf and selecting of object and frustration.
- * 
- * Revision 1.39  1994/09/30  11:51:33  mike
- * Fix boolean logic on an error trap.
- * 
- * Revision 1.38  1994/09/20  14:36:32  mike
- * Clean up Robot dialog.
- * 
- * Revision 1.37  1994/09/12  19:11:56  mike
- * Fix stupid bugs in selecting objects.
- * 
- * Revision 1.36  1994/09/01  17:05:51  matt
- * Don't force redraw if object select fails
- * 
- * Revision 1.35  1994/08/31  19:24:40  mike
- * Fix hang bug when only objects in mine are not robots.
- * 
- * Revision 1.34  1994/08/25  21:56:38  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.33  1994/08/23  16:39:29  mike
- * mode replaced by behavior in ai_info.
- * 
- * Revision 1.32  1994/08/15  23:47:16  mike
- * fix bugs.
- * 
- * Revision 1.31  1994/08/13  17:32:45  mike
- * set to still function.
- * 
- * Revision 1.30  1994/08/09  16:06:02  john
- * Added the ability to place players.  Made old
- * Player variable be ConsoleObject.
- * 
- * Revision 1.29  1994/08/02  16:22:48  matt
- * Finished object editor dialog
-
-------------------------------------------------------------------------
-main/editor/medrobot.h:
-
- * Revision 2.0  1995/02/27  11:35:04  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.4  1994/08/02  14:17:56  mike
- * Clean up dialog boxes.
- * 
- * Revision 1.3  1994/07/21  19:34:58  yuan
- * Fixed #include problem
- * 
- * Revision 1.2  1994/04/27  21:01:16  matt
- * Added prototypes for robot functions
- * 
- * Revision 1.1  1994/04/27  20:28:59  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/medsel.c:
-
- * Revision 2.0  1995/02/27  11:35:20  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.10  1994/08/09  16:05:59  john
- * Added the ability to place players.  Made old
- * Player variable be ConsoleObject.
- * 
- * Revision 1.9  1994/05/23  14:56:27  mike
- * make current segment be add segment.
- * 
- * Revision 1.8  1994/05/14  18:00:50  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.7  1994/03/31  12:03:33  matt
- * Cleaned up includes
- * 
- * Revision 1.6  1994/02/17  12:52:13  yuan
- * Unbackdated
- * y
- * 
- * Revision 1.4  1994/02/17  09:46:53  matt
- * Removed include of slew.h
- * 
- * Revision 1.3  1994/01/05  10:54:23  john
- * New object code by John
- * 
- * Revision 1.2  1993/12/17  12:18:22  john
- * Moved selection stuff out of med.c
- * 
- * Revision 1.1  1993/12/17  09:29:34  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/medsel.h:
-
- * Revision 2.0  1995/02/27  11:34:28  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.2  1993/12/17  12:18:35  john
- * Moved selection stuff out of med.c
- * 
- * Revision 1.1  1993/12/17  09:29:51  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/medwall.c:
-
- * Revision 2.0  1995/02/27  11:35:47  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.71  1995/02/01  16:30:03  yuan
- * Stabilizing triggers and matcens.
- * 
- * Revision 1.70  1995/01/28  15:28:08  yuan
- * Return proper bug description.
- * 
- * Revision 1.69  1995/01/14  19:18:07  john
- * First version of object paging.
- * 
- * Revision 1.68  1995/01/12  12:10:44  yuan
- * Added delete trigger function
- * 
- * Revision 1.67  1994/11/29  16:51:53  yuan
- * Fixed false bogus trigger info.
- * 
- * Revision 1.66  1994/11/27  23:17:29  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.65  1994/11/15  11:59:42  john
- * Changed timing for door to use fixed seconds instead of milliseconds.
- * 
- * Revision 1.64  1994/11/03  10:41:17  yuan
- * Made walls add whichever the previous type was.
- * 
- * Revision 1.63  1994/10/13  13:14:59  yuan
- * Fixed trigger removal bug.
- * 
- * Revision 1.62  1994/10/07  17:43:39  yuan
- * Make validate walls default to 1.
- * 
- * Revision 1.61  1994/10/03  23:40:20  mike
- * Fix hosedness in walls in group copying.
- * 
- * Revision 1.60  1994/09/29  00:20:36  matt
- * Took out reference to unused external wall type
- * 
- * Revision 1.59  1994/09/28  17:32:24  mike
- * Functions to copy walls withing groups.
- * 
- * Revision 1.58  1994/09/28  13:40:46  yuan
- * Fixed control center trigger bug.
- * 
- * Revision 1.57  1994/09/24  12:41:52  matt
- * Took out references to obsolete constants
- * 
- * Revision 1.56  1994/09/23  18:03:55  yuan
- * Finished wall checking code.
- * 
- * Revision 1.55  1994/09/22  14:35:25  matt
- * Made blastable walls work again
- * 
- * Revision 1.54  1994/09/21  16:46:07  yuan
- * Fixed bug that reset wall slot which was just deleted.
- * 
- * Revision 1.53  1994/09/20  18:31:21  yuan
- * Output right Wallnum
- * 
- * Revision 1.52  1994/09/20  18:23:24  yuan
- * Killed the BOGIFYING WALL DRAGON...
- * 
- * There was a problem with triggers being created that had bogus
- * pointers back to their segments.
- * 
- * Revision 1.51  1994/09/20  11:13:11  yuan
- * Delete all bogus walls when checking walls.
- * 
- * Revision 1.50  1994/09/19  23:31:14  yuan
- * Adding wall checking stuff.
- * 
- * Revision 1.49  1994/09/13  21:11:20  matt
- * Added wclips that use tmap1 instead of tmap2, saving lots of merging
- * 
- * Revision 1.48  1994/09/10  13:32:08  matt
- * Made exploding walls a type of blastable walls.
- * Cleaned up blastable walls, making them tmap2 bitmaps.
- * 
- * Revision 1.47  1994/09/10  09:47:47  yuan
- * Added wall checking function.
- * 
- * Revision 1.46  1994/08/26  14:14:56  yuan
- * Fixed wall clip being set to -2 bug.
- * 
- * Revision 1.45  1994/08/25  21:56:26  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.44  1994/08/19  19:30:27  matt
- * Added informative message if wall is already external when making it so.
- * 
- * Revision 1.43  1994/08/17  11:13:46  matt
- * Changed way external walls work
- * 
- * Revision 1.42  1994/08/15  17:47:29  yuan
- * Added external walls
- * 
- * Revision 1.41  1994/08/05  21:18:09  matt
- * Allow two doors to be linked together
- * 
- * Revision 1.40  1994/08/02  14:18:06  mike
- * Clean up dialog boxes.
- * 
- * Revision 1.39  1994/08/01  11:04:33  yuan
- * New materialization centers.
- * 
- * Revision 1.38  1994/07/22  17:19:11  yuan
- * Working on dialog box for refuel/repair/material/control centers.
- * 
- * Revision 1.37  1994/07/20  17:35:33  yuan
- * Added new gold key.
- * 
- * Revision 1.36  1994/07/19  14:31:44  yuan
- * Fixed keys bug.
- * 
- * Revision 1.35  1994/07/18  15:58:31  yuan
- * Hopefully prevent any "Adam door bombouts"
- * 
- * Revision 1.34  1994/07/18  15:48:40  yuan
- * Made minor cosmetic change.
- * 
- * Revision 1.33  1994/07/15  16:09:22  yuan
- * Error checking
- * 
- * Revision 1.32  1994/07/14  16:47:05  yuan
- * Fixed wall dialog for selected dooranims.
- * 
- * Revision 1.31  1994/07/11  15:09:16  yuan
- * Wall anim filenames stored in wclip structure.
- * 
- * Revision 1.30  1994/07/06  10:56:01  john
- * New structures for hostages.
- * 
- * Revision 1.29  1994/07/01  16:35:54  yuan
- * Added key system
- * 
- * Revision 1.28  1994/06/21  18:50:12  john
- * Made ESC key exit dialog.
- * 
- * Revision 1.27  1994/06/20  22:29:59  yuan
- * Fixed crazy runaway trigger bug that Adam found
- * 
- * Revision 1.26  1994/06/01  15:50:25  yuan
- * Added one more door... Needs to be set by bm.c in the future.
- * 
- * Revision 1.25  1994/05/30  20:22:34  yuan
- * New triggers.
- * 
- * Revision 1.24  1994/05/27  10:34:31  yuan
- * Added new Dialog boxes for Walls and Triggers.
- * 
- * Revision 1.23  1994/05/25  18:08:45  yuan
- * Revamping walls and triggers interface.
- * Wall interface complete, but triggers are still in progress.
- * 
- * Revision 1.22  1994/05/18  18:21:56  yuan
- * Fixed delete segment and walls bug.
- * 
- * Revision 1.21  1994/05/11  18:24:29  yuan
- * Oops.. trigger not triggers..
- * 
- * Revision 1.20  1994/05/11  18:23:53  yuan
- * Fixed trigger not set to -1 bug.
-
-------------------------------------------------------------------------
-main/editor/medwall.h:
-
- * Revision 2.0  1995/02/27  11:35:10  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.9  1994/09/28  17:31:51  mike
- * Prototype copy_group_walls().
- * 
- * Revision 1.8  1994/08/05  21:18:16  matt
- * Allow two doors to be linked together
- * 
- * Revision 1.7  1994/06/20  22:30:10  yuan
- * Fixed crazy runaway trigger bug that Adam found
- * 
- * Revision 1.6  1994/05/30  20:22:58  yuan
- * New triggers.
- * 
- * Revision 1.5  1994/05/25  18:08:37  yuan
- * Revamping walls and triggers interface.
- * Wall interface complete, but triggers are still in progress.
- * 
- * Revision 1.4  1994/05/18  18:22:04  yuan
- * Fixed delete segment and walls bug.
- * 
- * Revision 1.3  1994/03/17  18:08:41  yuan
- * New wall stuff... Cut out switches....
- * 
- * Revision 1.2  1994/03/15  16:34:10  yuan
- * Fixed bm loader (might have some changes in walls and switches)
- * 
- * Revision 1.1  1994/02/10  17:52:01  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/mine.c:
-
- * Revision 2.0  1995/02/27  11:34:38  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.82  1995/01/19  15:19:42  mike
- * New super-compressed registered file format.
- * 
- * Revision 1.81  1994/12/15  16:51:39  mike
- * fix error message.
- * 
- * Revision 1.80  1994/12/09  22:52:27  yuan
- * *** empty log message ***
- * 
- * Revision 1.79  1994/11/27  23:17:14  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.78  1994/11/26  21:48:24  matt
- * Fixed saturation in short light value
- * 
- * Revision 1.77  1994/11/18  09:43:22  mike
- * mprintf and clean up instead of Assert on values which don't fit in a short.
- * 
- * Revision 1.76  1994/11/17  20:37:37  john
- * Added comment to get mike or john.
- * 
- * Revision 1.75  1994/11/17  20:08:51  john
- * Added new compiled level format.
- * 
- * Revision 1.74  1994/11/17  11:39:00  matt
- * Ripped out code to load old mines
- * 
- * Revision 1.73  1994/10/20  12:47:47  matt
- * Replaced old save files (MIN/SAV/HOT) with new LVL files
- * 
- * Revision 1.72  1994/09/23  22:13:58  matt
- * Tooks out references to obsolete structure fields
- * 
- * Revision 1.71  1994/09/22  18:39:40  john
- * *** empty log message ***
- * 
- * Revision 1.70  1994/09/22  18:38:09  john
- * Added better help for locked files.
- * 
- * Revision 1.69  1994/08/01  11:04:44  yuan
- * New materialization centers.
- * 
- * Revision 1.68  1994/06/08  14:29:35  matt
- * Took out support for old mine versions
- * 
- * Revision 1.67  1994/05/27  10:34:37  yuan
- * Added new Dialog boxes for Walls and Triggers.
- * 
- * Revision 1.66  1994/05/23  14:48:08  mike
- * make current segment be add segment.
- * 
- * Revision 1.65  1994/05/17  10:34:52  matt
- * New parm to reset_objects; Num_objects no longer global
- * 
- * Revision 1.64  1994/05/12  14:46:46  mike
- * Load previous mine type.
- * 
- * Revision 1.63  1994/05/06  12:52:13  yuan
- * Adding some gamesave checks...
- * 
- * Revision 1.62  1994/05/05  12:56:32  yuan
- * Fixed a bunch of group bugs.
- * 
- * Revision 1.61  1994/05/03  11:36:55  yuan
- * Fixing mine save.
- * 
- * Revision 1.60  1994/03/19  17:22:14  yuan
- * Wall system implemented until specific features need to be added...
- * (Needs to be hammered on though.)
- * 
- * Revision 1.59  1994/03/17  18:08:32  yuan
- * New wall stuff... Cut out switches....
- * 
- * Revision 1.58  1994/03/15  16:34:15  yuan
- * Fixed bm loader (might have some changes in walls and switches)
- * 
- * Revision 1.57  1994/03/01  18:14:09  yuan
- * Added new walls, switches, and triggers.
-
-------------------------------------------------------------------------
-main/editor/objpage.c:
-
- * Revision 2.0  1995/02/27  11:34:43  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.37  1995/01/14  19:17:55  john
- * First version of object paging.
- * 
- * Revision 1.36  1995/01/05  16:20:13  mike
- * bah, remove the int3.
- * 
- * Revision 1.35  1995/01/05  12:47:13  mike
- * Move code about to prevent compiler warning.
- * 
- * Revision 1.34  1994/11/18  15:23:55  john
- * Made so the int3 for drawing an invalib object just returns.
- * 
- * Revision 1.33  1994/11/02  16:19:18  matt
- * Moved draw_model_picture() out of editor, and cleaned up code
- * 
- * Revision 1.32  1994/10/23  02:11:18  matt
- * Got rid of obsolete hostage_info stuff
- * 
- * Revision 1.31  1994/09/09  14:41:35  matt
- * New parms for draw_polygon_model()
- * 
- * Revision 1.30  1994/08/29  19:26:53  matt
- * Fixed botches change from yesterday
- * 
- * Revision 1.29  1994/08/28  23:40:35  matt
- * 
- * 
- * Revision 1.28  1994/08/14  23:15:32  matt
- * Added animating bitmap hostages, and cleaned up vclips a bit
- * 
- * Revision 1.27  1994/08/13  14:59:02  matt
- * Finished adding support for miscellaneous objects
- * 
- * Revision 1.26  1994/08/09  16:06:15  john
- * Added the ability to place players.  Made old
- * Player variable be ConsoleObject.
- * 
- * Revision 1.25  1994/07/28  16:59:23  mike
- * objects containing objects.
- * 
- * Revision 1.24  1994/06/08  18:17:25  john
- * Changed the way object types and id's work for hostages
- * and powerups.
- * 
- * Revision 1.23  1994/06/07  16:52:30  matt
- * Made object lighting work correctly; changed name of Ambient_light to
- * Dynamic_light; cleaned up polygobj object rendering a little.
- * 
- * Revision 1.22  1994/05/31  18:42:07  matt
- * Made robot photos unlighted
- * 
- * Revision 1.21  1994/05/26  21:09:34  matt
- * Moved robot stuff out of polygon model and into robot_info struct
- * Made new file, robot.c, to deal with robots
- * 
- * Revision 1.20  1994/05/19  12:10:11  matt
- * Use new vecmat macros and globals
- * 
- * Revision 1.19  1994/05/17  14:45:27  mike
- * Get object type and id from ObjType and ObjId.
- * 
- * Revision 1.18  1994/05/17  12:03:36  mike
- * Deal with little known fact that polygon object != robot.
- * 
- * Revision 1.17  1994/04/29  09:16:56  matt
- * Added support for multiple-piece explosions
- * 
- * Revision 1.16  1994/04/18  14:15:00  john
- * Initial version of robot dialog box.
- * 
- * Revision 1.15  1994/04/11  12:01:36  yuan
- * Fixed resetting to first object on page annoyance.
- * 
- * Revision 1.14  1994/04/01  14:35:50  yuan
- * Removed debug "id %d\n" for placing objects
- * 
- * Revision 1.13  1994/04/01  11:17:04  yuan
- * Added objects to objpage. Added buttons for easier tmap scrolling.
- * Objects are selected fully from objpage and add object menu or pad.
- * 
- * Revision 1.12  1994/03/25  18:42:26  matt
- * Adjusted constant to make robot pictures more correct size
- * 
- * Revision 1.11  1994/03/25  16:57:17  matt
- * New parm to draw_polygon_object(), and draw object "snapshots" in
- * correct size (although this probably doesn't work yet).
- * 
- * Revision 1.10  1994/03/25  14:23:01  matt
- * Disabled lighting when taking "snapshots" of robots
- * 
- * Revision 1.9  1994/03/17  10:47:24  john
- * Corrected all kinds of problems associated with N_polygon_objects.
- * 
- * Revision 1.8  1994/03/16  11:07:31  john
- * Made zoom work a bit better.
- * 
- * Revision 1.7  1994/03/16  10:50:32  john
- * fixed warning with constant length.
- * 
- * Revision 1.6  1994/03/16  10:43:18  john
- * Added controls to rotate/zoom object.
- * 
- * Revision 1.5  1994/03/15  22:23:24  matt
- * Render little bitmap pictures of robots for display on editor page
- * 
- * Revision 1.4  1994/02/01  11:27:14  john
- * Hacked in 8 object types for demo.
- * 
- * Revision 1.3  1994/01/26  16:42:19  john
- * Display numbers instead of bitmaps... made 
- * Num_robot_types or whatever be set to 4
- * in init_object_page... this is a hack!!!
- * 
- * Revision 1.2  1993/12/16  17:26:24  john
- * Moved texture and object selection to texpage and objpage
- * 
- * Revision 1.1  1993/12/16  16:12:57  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/objpage.h:
-
- * Revision 2.0  1995/02/27  11:35:32  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.8  1994/11/02  16:19:20  matt
- * Moved draw_model_picture() out of editor, and cleaned up code
- * 
- * Revision 1.7  1994/07/28  16:59:36  mike
- * objects containing objects.
- * 
- * Revision 1.6  1994/05/17  14:45:48  mike
- * Get object type and id from ObjectType and ObjectId.
- * 
- * Revision 1.5  1994/05/17  12:03:55  mike
- * Deal with little known fact that polygon object != robot.
- * 
- * Revision 1.4  1994/05/14  18:00:33  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.3  1994/04/01  11:17:06  yuan
- * Added objects to objpage. Added buttons for easier tmap scrolling.
- * Objects are selected fully from objpage and add object menu or pad.
- * 
- * Revision 1.2  1993/12/16  17:26:27  john
- * Moved texture and object selection to texpage and objpage
- * 
- * Revision 1.1  1993/12/16  16:13:08  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/segment.c:
-
- * Revision 2.0  1995/02/27  11:35:21  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.191  1995/02/22  15:28:30  allender
- * remove anonymous unions from object structure
- * 
- * Revision 1.190  1995/02/02  02:59:40  yuan
- * Working on exterminating bogus matcen_nums... (harmless though)
- * 
- * Revision 1.189  1995/02/01  16:29:51  yuan
- * Stabilizing triggers and matcens.
- * 
- * Revision 1.188  1995/02/01  11:31:47  yuan
- * Trigger bug fixed.
- * 
- * Revision 1.187  1994/11/27  23:17:24  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.186  1994/11/17  14:48:12  mike
- * validation functions moved from editor to game.
- * 
- * Revision 1.185  1994/10/30  14:13:17  mike
- * rip out local segment stuff.
- * 
- * Revision 1.184  1994/10/27  10:04:24  matt
- * When triangulating, don't use WID() to see if connected, look at children
- * 
- * Revision 1.183  1994/10/26  13:40:23  mike
- * debug code for matt.
- * 
- * Revision 1.182  1994/10/24  16:34:00  mike
- * Force render after mine compress to prevent bugs in segment selection via clicking in 3d window.
- * 
- * Revision 1.181  1994/10/20  18:16:15  mike
- * Initialize ControlCenterTriggers.num_links in create_new_mine.
- * 
- * Revision 1.180  1994/10/18  16:29:14  mike
- * Write function to automatically fix bogus segnums in segment array.
- * 
- * Revision 1.179  1994/10/08  17:10:41  matt
- * Correctly set current_level_num when loading/creating mine in editor
- * 
- * Revision 1.178  1994/09/25  14:17:51  mike
- * Initialize (to 0) Num_robot_centers and Num_open_doors at mine creation.
- * 
- * Revision 1.177  1994/09/20  14:36:06  mike
- * Write function to find overlapping segments.
- * 
- * Revision 1.176  1994/08/25  21:55:57  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.175  1994/08/23  15:28:03  mike
- * Fix peculiarity in med_combine_duplicate_vertices.
- * 
- * Revision 1.174  1994/08/09  16:06:17  john
- * Added the ability to place players.  Made old
- * Player variable be ConsoleObject.
- * 
- * Revision 1.173  1994/08/05  21:18:10  matt
- * Allow two doors to be linked together
- * 
- * Revision 1.172  1994/08/04  19:13:16  matt
- * Changed a bunch of vecmat calls to use multiple-function routines, and to
- * allow the use of C macros for some functions
- * 
- * Revision 1.171  1994/07/22  12:37:00  matt
- * Cleaned up editor/game interactions some more.
- * 
- * Revision 1.170  1994/07/22  11:20:08  mike
- * Set Lsegments validity.
- * 
- * Revision 1.169  1994/07/21  19:02:49  mike
- * lsegment stuff.
- * 
- * Revision 1.168  1994/07/21  13:27:17  matt
- * Ripped out remants of old demo system, and added demo
- * disables object movement and game options from menu.
- * 
- * Revision 1.167  1994/07/19  20:15:48  matt
- * Name for each level now saved in the .SAV file & stored in Current_level_name
- * 
- * Revision 1.166  1994/07/06  12:42:45  john
- * Made generic messages for hostages.
- * 
- * Revision 1.165  1994/06/24  17:04:29  john
- * *** empty log message ***
- * 
- * Revision 1.164  1994/06/15  15:42:40  mike
- * Initialize static_light field in new segments.
- * 
- * Revision 1.163  1994/06/13  17:49:19  mike
- * Fix bug in med_validate_side which was toasting lighting for removable walls.
- * 
- * Revision 1.162  1994/06/13  10:52:20  mike
- * Fix bug in triangulation of sides between connected segments.
- * Was assigning SIDE_IS_02 regardless of how triangulated, was
- * causing physics bugs.
- * 
- * Revision 1.161  1994/06/08  18:14:16  mike
- * Fix triangulation of sides in hallways (ie, where there is no wall),
- * so they get triangulated the same way, so find_new_seg doesn't get
- * stuck in an infinite recursion.
- * 
- * Revision 1.160  1994/06/08  11:44:31  mike
- * Fix bug in normals not being opposite on opposite sides of a segment.
- * Problem occurred due to difference in handling of remainder in signed divide.
- * 
- * Revision 1.159  1994/05/31  19:00:15  yuan
- * Fixed gamestate restore.
- * 
- * Revision 1.158  1994/05/30  20:22:36  yuan
- * New triggers.
- * 
- * Revision 1.157  1994/05/26  19:32:51  mike
- * Add bfs_parse.
- * 
- * Revision 1.156  1994/05/23  14:56:46  mike
- * make current segment be add segment.,
-
-------------------------------------------------------------------------
-main/editor/seguvs.c:
-
- * Revision 2.1  1995/05/08  10:49:34  mike
- * fix lighting bug: oblong segments could be very dark.
- * 
- * Revision 2.0  1995/02/27  11:36:37  john
- * Version 2.0. Ansi-fied.
- * 
- * Revision 1.84  1994/11/27  23:17:18  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.83  1994/11/17  14:48:02  mike
- * validation functions moved from editor to game.
- * 
- * Revision 1.82  1994/10/15  19:08:26  mike
- * Disable exhaustive search mprintfs in find_point_seg during lighting.
- * 
- * Revision 1.81  1994/08/25  21:55:50  mike
- * IS_CHILD stuff.
- * 
- * Revision 1.80  1994/08/04  19:13:22  matt
- * Changed a bunch of vecmat calls to use multiple-function routines, and to
- * allow the use of C macros for some functions
- * 
- * Revision 1.79  1994/08/03  10:31:33  mike
- * Texture map propagation without uv assignment.
- * 
- * Revision 1.78  1994/08/01  13:31:12  matt
- * Made fvi() check holes in transparent walls, and changed fvi() calling
- * parms to take all input data in query structure.
- * 
- * Revision 1.77  1994/07/08  14:31:24  matt
- * New parms for FVI
- * 
- * Revision 1.76  1994/06/23  14:01:04  mike
- * Fix cache bug which caused some vertices to not get light, mainly
- * noticeable at joints which had doors.
- * 
- * Revision 1.75  1994/06/22  17:33:11  mike
- * Make position of light (which is always towards center of segment from
- * actual light panel) constant, not dependent on segment size, which fixes
- * bug of dark light panels in very large segments.
- * 
- * Revision 1.74  1994/06/21  18:58:18  mike
- * Fix stupid bug in light propagation, was using wrong vector in fvi caching.
- * 
- * Revision 1.73  1994/06/20  11:20:24  mike
- * Fix stupid lighting bug introduced when I went to cached fvi results.
- * 
- * Revision 1.72  1994/06/19  16:26:37  mike
- * Speed up lighting by storing and hashing fvi results.
- * 
- * Revision 1.71  1994/06/17  16:05:56  mike
- * Support optional quick lighting propagation: no find_vector_intersection.
- * 
- * Revision 1.70  1994/06/15  15:42:30  mike
- * Propagate static_light.
- * 
- * Revision 1.69  1994/06/14  16:59:37  mike
- * Fix references to tmap_num2, must strip off orientation bits.
- * 
- * Revision 1.68  1994/06/09  09:58:58  matt
- * Moved find_vector_intersection() from physics.c to new file fvi.c
- * 
- * 
- * Revision 1.67  1994/06/08  18:14:02  mike
- * mprintf a dot in light casting.
- * 
- * Revision 1.66  1994/06/08  14:37:45  mike
- * double static light value in going from value (a short) to static_light (a fix).
- * 
- * Revision 1.65  1994/06/08  14:29:44  matt
- * Added static_light field to segment structure, and padded side struct
- * to be longword aligned.
- * 
- * Revision 1.64  1994/06/08  11:45:24  mike
- * New, supercool, superslow lighting function.
- * 
- * Revision 1.63  1994/06/07  09:38:11  mike
- * Make lighting function yet better by calling find_vector_intersection.
- * 
- * Revision 1.62  1994/06/06  13:14:33  mike
- * Make illusory walls cast light.
- * 
- * Revision 1.61  1994/06/05  20:39:47  mike
- * Add new distance and dot product based lighting function.
- * 
- * Revision 1.60  1994/05/31  12:31:18  mike
- * fix bugs in lighting, though it's not perfect, will be changing all
- * lighting to be distance based.  Bug had to do with not handling one
- * of the return values from WALL_IS_DOORWAY, so assuming light couldn't
- * be recursively propagated almost all the time.
- * 
- * Revision 1.59  1994/05/19  23:35:26  mike
- * Support uv coordinates in range 0..1.0.
- * 
- * Revision 1.58  1994/05/19  12:10:21  matt
- * Use new vecmat macros and globals
- * 
- * Revision 1.57  1994/05/04  19:15:53  mike
- * Error checking for degenerate segments.
- * 
- * Revision 1.56  1994/05/03  11:02:34  mike
- * Change how default texture map assignment works; now pixels are constant size.
- * 
- * Revision 1.55  1994/04/28  23:25:26  yuan
- * Obliterated warnings.
-
-------------------------------------------------------------------------
-main/editor/seguvs.h:
-
- * Revision 2.0  1995/02/27  11:34:58  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.3  1994/08/03  10:32:28  mike
- * Add stretch_uvs_from_curedge.
- * 
- * Revision 1.2  1994/05/14  18:00:58  matt
- * Got rid of externs in source (non-header) files
- * 
- * Revision 1.1  1994/05/14  17:27:26  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/texpage.c:
-
- * Revision 2.0  1995/02/27  11:34:51  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.14  1995/01/14  19:18:02  john
- * First version of object paging.
- * 
- * Revision 1.13  1994/11/27  23:17:15  matt
- * Made changes for new mprintf calling convention
- * 
- * Revision 1.12  1994/11/23  15:49:00  mike
- * fix bug in tmapnum == 0 always getting reassigned.
- * 
- * Revision 1.11  1994/11/23  12:17:34  mike
- * changing texture maps in all mines.
- * 
- * Revision 1.10  1994/11/19  00:04:42  john
- * Changed some shorts to ints.
- * 
- * Revision 1.9  1994/11/16  17:59:36  john
- * Fixed bug with writing to canvas before initing it.
- * 
- * Revision 1.8  1994/11/16  13:15:21  matt
- * Fixed grab bug, and cleaned up code
- * 
- * Revision 1.7  1994/08/05  12:26:37  matt
- * Fixed overplot problem with texture names
- * 
- * Revision 1.6  1994/04/11  12:01:58  yuan
- * Fixed resetting to first texture on page annoyance.
- * 
- * Revision 1.5  1994/04/01  11:15:53  yuan
- * Added objects to objpage. Added buttons for easier tmap scrolling.
- * Objects are selected fully from objpage and add object menu or pad.
- * 
- * Revision 1.4  1994/03/15  16:33:37  yuan
- * Fixed bm loader (might have some changes in walls and switches)
- * 
- * Revision 1.3  1993/12/16  17:25:46  john
- * Moved texture and object selection to texpage and objpage
- * 
- * Revision 1.2  1993/12/16  15:57:39  john
- * moved texture selection stuff to texpage.c
- * 
- * Revision 1.1  1993/12/16  15:06:56  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/editor/texture.c:
-
- * Revision 2.0  1995/02/27  11:34:50  john
- * Version 2.0! No anonymous unions, Watcom 10.0, with no need
- * for bitmaps.tbl.
- * 
- * Revision 1.13  1994/08/04  19:13:15  matt
- * Changed a bunch of vecmat calls to use multiple-function routines, and to
- * allow the use of C macros for some functions
- * 
- * Revision 1.12  1994/08/03  10:31:56  mike
- * Texture map propagation without uv assignment.
- * 
- * Revision 1.11  1994/07/14  19:36:34  yuan
- * Tuning texture slides.
- * 
- * Revision 1.10  1994/07/14  19:29:08  yuan
- * Fixed sliding.
- * 
- * Revision 1.9  1994/07/14  14:43:06  yuan
- * Added 3x rotation.
- * 
- * Revision 1.8  1994/07/14  11:12:42  yuan
- * Made sliding 3x more sensitive
- * 
- * Revision 1.7  1994/07/14  10:49:56  yuan
- * Made texture rotation 3x finer
- * 
- * Revision 1.6  1994/02/14  12:06:00  mike
- * change segment data structure.
- * 
- * Revision 1.5  1993/12/06  13:26:52  mike
- * Make rotation and sliding work for triangulated sides.
- * 
- * Revision 1.4  1993/12/04  17:18:46  mike
- * Add tiling functions, set_default.
- * 
- * Revision 1.3  1993/12/03  18:39:12  unknown
- * Add texture map sliding, allow to work on triangulated sides.
- * 
- * Revision 1.2  1993/11/30  17:06:09  mike
- * Texture map functions.
- * 
- * Revision 1.1  1993/11/29  16:00:57  mike
- * Initial revision
-
-------------------------------------------------------------------------
-main/effects.c:
-
- * Revision 1.1  1995/05/16  15:24:25  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:32:49  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.21  1995/02/13  20:35:06  john
- * Lintized
- *
- * Revision 1.20  1994/12/10  16:44:50  matt
- * Added debugging code to track down door that turns into rock
- *
- * Revision 1.19  1994/12/06  16:27:14  matt
- * Fixed horrible bug that was referencing segment -1
- *
- * Revision 1.18  1994/12/02  23:20:51  matt
- * Reset bitmaps possibly changed by crit clips
- *
- * Revision 1.17  1994/11/14  14:00:19  matt
- * Fixed stupid bug
- *
- * Revision 1.16  1994/11/14  12:42:43  matt
- * Allow holes in effects list
- *
- * Revision 1.15  1994/11/08  21:11:52  matt
- * Added functions to stop & start effects
- *
- * Revision 1.14  1994/10/04  18:59:08  matt
- * Exploding eclips now play eclip while exploding, then switch to static bm
- *
- * Revision 1.13  1994/10/04  15:17:42  matt
- * Took out references to unused constant
- *
- * Revision 1.12  1994/09/29  11:00:01  matt
- * Made eclips (wall animations) not frame-rate dependent (for now)
- *
- * Revision 1.11  1994/09/25  00:40:24  matt
- * Added the ability to make eclips (monitors, fans) which can be blown up
- *
- * Revision 1.10  1994/08/14  23:15:14  matt
- * Added animating bitmap hostages, and cleaned up vclips a bit
- *
- * Revision 1.9  1994/08/05  15:56:04  matt
- * Cleaned up effects system, and added alternate effects for after mine
- * destruction.
- *
- * Revision 1.8  1994/08/01  23:17:21  matt
- * Add support for animating textures on robots
- *
- * Revision 1.7  1994/05/23  15:10:46  yuan
- * Make Eclips read directly...
- * No more need for $EFFECTS list.
- *
- * Revision 1.6  1994/04/06  14:42:44  yuan
- * Adding new powerups.
- *
- * Revision 1.5  1994/03/15  16:31:54  yuan
- * Cleaned up bm-loading code.
- * (And structures)
- *
- * Revision 1.4  1994/03/04  17:09:09  yuan
- * New door stuff.
- *
- * Revision 1.3  1994/01/11  11:18:50  yuan
- * Fixed frame_count
- *
- * Revision 1.2  1994/01/11  10:38:55  yuan
- * Special effects new implementation
- *
- * Revision 1.1  1994/01/10  09:45:29  yuan
- * Initial revision
-
-------------------------------------------------------------------------
-main/effects.h:
-
- * Revision 1.1  1995/05/16  15:56:08  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:27:34  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.15  1994/11/08  21:12:07  matt
- * Added functions to stop & start effects
- *
- * Revision 1.14  1994/10/13  17:14:11  adam
- * MAX_EFFECTS to 60 (ugh)
- *
- * Revision 1.13  1994/10/05  10:14:34  adam
- * MAX_EFFECTS to 50
- *
- * Revision 1.12  1994/10/04  18:59:09  matt
- * Exploding eclips now play eclip while exploding, then switch to static bm
- *
- * Revision 1.11  1994/10/04  15:17:52  matt
- * Took out references to unused constant
- *
- * Revision 1.10  1994/09/29  14:15:00  matt
- * Added sounds for eclips (wall effects)
- *
- * Revision 1.9  1994/09/25  00:40:24  matt
- * Added the ability to make eclips (monitors, fans) which can be blown up
- *
- * Revision 1.8  1994/08/05  15:55:25  matt
- * Cleaned up effects system, and added alternate effects for after mine
- * destruction.
- *
- * Revision 1.7  1994/08/01  23:17:20  matt
- * Add support for animating textures on robots
- *
- * Revision 1.6  1994/05/19  18:13:18  yuan
- * MAX_EFFECTS increased to 30
- *
- * Revision 1.5  1994/03/15  16:32:37  yuan
- * Cleaned up bm-loading code.
- * (Fixed structures too)
- *
- * Revision 1.4  1994/03/04  17:09:07  yuan
- * New door stuff.
- *
- * Revision 1.3  1994/01/19  18:22:45  yuan
- * Changed number of effects from 10-20
- *
- * Revision 1.2  1994/01/11  10:39:07  yuan
- * Special effects new implementation
- *
- * Revision 1.1  1994/01/10  10:36:14  yuan
- * Initial revision
-
-------------------------------------------------------------------------
-main/endlevel.c:
-
- * Revision 1.5  1995/10/31  10:24:09  allender
- * shareware stuff
- *
- * Revision 1.4  1995/09/14  16:33:54  allender
- * fixed function return values for those that didn't
- * have them...thanks matt!
- *
- * Revision 1.3  1995/07/28  15:36:26  allender
- * reverse inverse sqrt change
- *
- * Revision 1.2  1995/07/28  15:17:40  allender
- * inverse magnitude fixup
- *
- * Revision 1.1  1995/05/16  15:24:32  allender
- * Initial revision
- *
- * Revision 2.2  1995/03/21  14:40:14  john
- * Ifdef'd out the NETWORK code.
- *
- * Revision 2.1  1995/03/20  18:15:50  john
- * Added code to not store the normals in the segment structure.
- *
- * Revision 2.0  1995/02/27  11:30:42  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.80  1995/02/22  13:24:45  john
- * Removed the vecmat anonymous unions.
- *
- * Revision 1.79  1995/02/11  12:41:54  john
- * Added new song method, with FM bank switching..
- *
- * Revision 1.78  1995/02/08  11:37:41  mike
- * Check for failures in call to obj_create.
- *
- * Revision 1.77  1995/02/05  22:09:49  matt
- * Switch out of rear view when starting endlevel sequence
- *
- * Revision 1.76  1995/01/30  18:08:28  rob
- * Add palette fade out before ending level on special missions.
- *
- * Revision 1.75  1995/01/29  16:19:19  rob
- * Fixed endlevel for custom missions.
- *
- * Revision 1.74  1995/01/26  12:18:10  rob
- * Changed calling convention of network_do_frame.
- *
- * Revision 1.73  1995/01/21  16:50:03  matt
- * Made endlevel work with new mission stuff
- *
- * Revision 1.72  1994/12/20  18:22:51  john
- * Added code to support non-looping songs, and put
- * it in for endlevel and credits.
- *
- * Revision 1.71  1994/12/15  12:23:58  matt
- * Added check for failure to create camera object
- *
- * Revision 1.70  1994/12/15  03:05:28  matt
- * Added error checking for NULL return from object_create_explosion()
- *
- * Revision 1.69  1994/12/12  21:41:38  matt
- * Don't start endlevel if OF_SHOULD_BE_DEAD is set for player
- *
- * Revision 1.68  1994/12/12  15:44:54  rob
- * Rolled back a change to endlevel_start that caused more bugs than
- * it fixed.
- *
- * Revision 1.67  1994/12/12  12:08:33  rob
- * IF a player is dead upon entering the tunnel, make them not dead.  Not perfect solution
- * but avoids some last-minute weirdness we want to fix.  This should be revisited in new
- * versions if possible!
- *
- * Revision 1.66  1994/12/11  22:02:13  allender
- * made endlevel data loading work with .txb encoded format (made with
- * compbit -i level0?.end -o level0?.txb)
- *
- * Revision 1.65  1994/12/11  20:32:47  matt
- * Made camera transition happen 1/3 of the way through exit tunnel
- *
- * Revision 1.64  1994/12/08  20:56:27  john
- * More cfile stuff.
- *
- * Revision 1.63  1994/12/07  17:00:52  rob
- * Trying to fix homing tone warning when in exit tunnel.
- *
- * Revision 1.62  1994/12/06  13:24:47  matt
- * Made exit model come out of bitmaps.tbl
- *
- * Revision 1.61  1994/12/06  12:06:22  matt
- * Fixed/cleaned up satellite (planet/sun) code
- *
- * Revision 1.60  1994/12/05  13:37:12  adam
- * removed slew-mode
- *
- * Revision 1.59  1994/12/05  12:49:37  matt
- * Made satellite a rod (instead of a plane old non-rotating bitmap), and
- * made the size settable in the .end file
- *
- * Revision 1.58  1994/12/04  21:40:00  matt
- * Added explosion sounds
- *
- * Revision 1.57  1994/12/04  18:31:41  matt
- * Wasn't coding planet position, causing it to disappear sometimes
- *
- * Revision 1.56  1994/12/04  14:30:26  john
- * Added hooks for music..
- *
- * Revision 1.55  1994/12/04  13:53:52  matt
- * Added code to make camera off-centered during lookback
- *
- * Revision 1.54  1994/12/04  12:30:18  matt
- * Fixed slew for short sequence
- *
- * Revision 1.53  1994/12/03  19:28:10  matt
- * Added alternate model for exit model after mine destruction
- *
- * Revision 1.52  1994/12/03  00:17:23  matt
- * Made endlevel sequence cut off early
- * Made exit model and bit explosion always plot last (after all terrain)
- *
- * Revision 1.51  1994/12/01  20:15:43  yuan
- * Localization.
- *
- * Revision 1.50  1994/11/30  23:27:35  adam
- * mucked around carelessly
- *
- * Revision 1.49  1994/11/28  21:50:37  mike
- * optimizations.
- *
- * Revision 1.48  1994/11/28  00:12:05  allender
- * took out demo code that was in at one time to record endlevel sequence.
- * We are _not_ recording endlevel sequence
- *
- * Revision 1.47  1994/11/27  23:35:54  allender
- * pause demo recording when starting endlevel sequence.  on demo playback,
- * don't do endlevel at all.
- *
- * Revision 1.46  1994/11/27  23:13:59  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.45  1994/11/26  23:17:29  matt
- * When camera leaves mine, bank it so it's level with the ground
- *
- * Revision 1.44  1994/11/23  16:52:13  rob
- * Ended netgame endlevel sequence a bit earlier.
- *
- * Revision 1.43  1994/11/22  19:20:46  rob
- * Modem support for secret levels.
- *
- * Revision 1.42  1994/11/22  12:11:03  rob
- * Fixed bug - file handle left open in load_endlevel_data.
- *
- * Revision 1.41  1994/11/21  17:29:22  matt
- * Cleaned up sequencing & game saving for secret levels
- *
- * Revision 1.40  1994/11/19  15:14:54  mike
- * remove unused code and data
- *
- * Revision 1.39  1994/11/19  12:41:32  matt
- * Added system to read endlevel data from file, and to make it work
- * with any exit tunnel.
- *
- * Revision 1.38  1994/11/17  15:02:24  mike
- * support new segment validation functions.
- *
- * Revision 1.37  1994/11/17  13:04:45  allender
- * backout out newdemo changes
- *
- * Revision 1.35  1994/11/16  14:52:33  rob
- * Commented out SLEW_ON on Matt's direction.
- * Changed something to fix demo recording.
- *
- * Revision 1.34  1994/11/16  11:49:29  matt
- * Added code to rotate terrain to match mine
- *
- * Revision 1.33  1994/11/14  17:54:54  allender
- * on exit sequence during demo recording, force player exited from mine
- * packet to all other network players
- *
- * Revision 1.32  1994/11/10  21:27:42  matt
- * Took out printf's
- *
- * Revision 1.31  1994/11/10  14:02:24  matt
- * Hacked in support for player ships with different textures
- *
- * Revision 1.30  1994/11/09  10:31:33  matt
- * Don't create explosions if can't find seg to create them in
- *
- * Revision 1.29  1994/11/05  17:22:37  john
- * Fixed lots of sequencing problems with newdemo stuff.
- *
- * Revision 1.28  1994/11/03  11:10:39  matt
- * Fixed chase angles code
- * Maybe other things, too.
- *
- * Revision 1.27  1994/10/30  20:09:21  matt
- * For endlevel: added big explosion at tunnel exit; made lights in tunnel
- * go out; made more explosions on walls.
- *
- * Revision 1.26  1994/10/28  16:37:50  allender
- * stop demo recording when endlevel sequence activated
- *
- * Revision 1.25  1994/10/27  21:15:21  matt
- * Added explosions in mine chasing player
- *
- * Revision 1.24  1994/10/27  01:03:57  matt
- * Fixed several small bugs in flythrough
- *
- * Revision 1.23  1994/10/22  01:32:30  matt
- * Don't start endlevel sequence if player dead
- *
- * Revision 1.22  1994/10/22  00:08:06  matt
- * Fixed up problems with bonus & game sequencing
- * Player doesn't get credit for hostages unless he gets them out alive
-
-------------------------------------------------------------------------
-main/endlevel.h:
-
- * Revision 1.2  1995/09/14  16:36:34  allender
- * fixed function prototype for those functions that didn't
- * have them...thanks matt
- *
- * Revision 1.1  1995/05/16  15:56:16  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:31:37  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.5  1994/12/06  13:24:55  matt
- * Made exit model come out of bitmaps.tbl
- *
- * Revision 1.4  1994/11/19  12:41:35  matt
- * Added system to read endlevel data from file, and to make it work
- * with any exit tunnel.
- *
- * Revision 1.3  1994/10/30  20:09:20  matt
- * For endlevel: added big explosion at tunnel exit; made lights in tunnel
- * go out; made more explosions on walls.
- *
- * Revision 1.2  1994/08/19  20:09:38  matt
- * Added end-of-level cut scene with external scene
- *
- * Revision 1.1  1994/08/15  19:18:47  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/escort.c:
-
- * Revision 1.1  1995/05/06  23:32:19  mike
- * Initial revision
-
-------------------------------------------------------------------------
-main/fireball.c:
-
- * Revision 1.2  1995/10/31  10:23:56  allender
- * shareware stuff
- *
- * Revision 1.1  1995/05/16  15:24:41  allender
- * Initial revision
- *
- * Revision 2.2  1995/03/21  14:39:57  john
- * Ifdef'd out the NETWORK code.
- *
- * Revision 2.1  1995/03/20  18:15:47  john
- * Added code to not store the normals in the segment structure.
- *
- * Revision 2.0  1995/02/27  11:30:34  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.200  1995/02/22  13:18:41  allender
- * remove anonymous unions from object structure
- *
- * Revision 1.199  1995/02/14  19:58:32  mike
- * comment out "something bad has happened" int3.
- *
- * Revision 1.198  1995/02/09  13:11:01  mike
- * remove an annoying mprintf and Int3().
- *
- * Revision 1.197  1995/02/08  17:10:14  mike
- * don't drop cloaks if one nearby.
- *
- * Revision 1.196  1995/02/08  13:27:14  rob
- * Give keys dropped by robots 0 velocity in coop game.
- *
- * Revision 1.195  1995/02/08  11:57:40  mike
- * determine whether debris object failed to create because buffer was
- * exhausted or because limit was hit.
- *
- * Revision 1.194  1995/02/08  11:37:58  mike
- * Check for failures in call to obj_create.
- *
- * Revision 1.193  1995/02/07  21:09:41  mike
- * only replace weapon with energy 1/2 time.
- *
- * Revision 1.192  1995/01/30  18:21:52  rob
- * Replace extra life powerups in multiplayer to invul when
- * dropped by robots.
- *
- * Revision 1.191  1995/01/28  17:40:59  mike
- * fix stupidity in converting quad lasers to energy.
- *
- * Revision 1.190  1995/01/27  15:05:59  rob
- * Trying to fix a bug with damaging robots with player badass explosions.
- *
- * Revision 1.189  1995/01/26  18:59:04  rob
- * Powerups were flying too far in robot-cooperative games.
- *
- * Revision 1.188  1995/01/25  10:53:35  mike
- * make badass damage go through grates.
- *
- * Revision 1.187  1995/01/25  09:37:23  mike
- * fix objects containing robots, worked for powerups, bad {} placement.
- *
- * Revision 1.186  1995/01/23  22:51:20  mike
- * drop energy instead of primary weapon if you already have primary weapon.
- *
- * Revision 1.185  1995/01/20  16:56:37  mike
- * Cut damage done by badass weapons.
- *
- * Revision 1.184  1995/01/19  17:44:57  mike
- * damage_force removed, that information coming from strength field.
- *
- * Revision 1.183  1995/01/16  21:06:54  mike
- * Move function pick_random_point_in_segment from fireball.c to gameseg.c.
- *
- * Revision 1.182  1995/01/16  19:24:04  mike
- * If a gated-in robot and going to drop energy powerup, don't!
- *
- * Revision 1.181  1995/01/15  20:48:03  mike
- * drop energy in place of quad lasers if player already has quad lasers.
- *
- * Revision 1.180  1995/01/14  19:32:19  rob
- * Fixed an error.
- *
- * Revision 1.179  1995/01/14  18:50:55  rob
- * Make robot egg creation suitable for mutliplayer situations.
- *
- * Revision 1.178  1995/01/14  14:55:07  rob
- * Make weapons/keys/etc never disappear in network mode.
-
-------------------------------------------------------------------------
-main/fireball.h:
-
- * Revision 1.1  1995/05/16  15:56:23  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:27:03  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.13  1995/01/17  12:14:38  john
- * Made walls, object explosion vclips load at level start.
- *
- * Revision 1.12  1995/01/13  15:41:52  rob
- * Added prototype for maybe_replace_powerup_with_energy
- *
- * Revision 1.11  1994/11/17  16:28:36  rob
- * Changed maybe_drop_cloak_powerup to maybe_drop_net_powerup (more
- * generic and useful)
- *
- * Revision 1.10  1994/10/12  08:03:42  mike
- * Prototype maybe_drop_cloak_powerup.
- *
- * Revision 1.9  1994/10/11  12:24:39  matt
- * Cleaned up/change badass explosion calls
- *
- * Revision 1.8  1994/09/07  16:00:34  mike
- * Add object pointer to parameter list of object_create_badass_explosion.
- *
- * Revision 1.7  1994/09/02  14:00:39  matt
- * Simplified explode_object() & mutliple-stage explosions
- *
- * Revision 1.6  1994/08/17  16:49:58  john
- * Added damaging fireballs, missiles.
- *
- * Revision 1.5  1994/07/14  22:39:19  matt
- * Added exploding doors
- *
- * Revision 1.4  1994/06/08  10:56:36  matt
- * Improved debris: now get submodel size from new POF files; debris now has
- * limited life; debris can now be blown up.
- *
- * Revision 1.3  1994/04/01  13:35:44  matt
- * Added multiple-stage explosions
- *
- * Revision 1.2  1994/02/17  11:33:32  matt
- * Changes in object system
- *
- * Revision 1.1  1994/02/16  22:41:15  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/fuelcen.c:
-
- * Revision 1.2  1995/10/31  10:23:40  allender
- * shareware stuff
- *
- * Revision 1.1  1995/05/16  15:24:50  allender
- * Initial revision
- *
- * Revision 2.3  1995/03/21  14:38:40  john
- * Ifdef'd out the NETWORK code.
- *
- * Revision 2.2  1995/03/06  15:23:09  john
- * New screen techniques.
- *
- * Revision 2.1  1995/02/27  13:13:26  john
- * Removed floating point.
- *
- * Revision 2.0  1995/02/27  11:27:20  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.159  1995/02/22  13:48:10  allender
- * remove anonymous unions in object structure
- *
- * Revision 1.158  1995/02/08  11:37:48  mike
- * Check for failures in call to obj_create.
- *
- * Revision 1.157  1995/02/07  20:39:39  mike
- * fix toasters in multiplayer
- *
- *
- * Revision 1.156  1995/02/02  18:40:10  john
- * Fixed bug with full screen cockpit flashing non-white.
- *
- * Revision 1.155  1995/01/28  15:27:22  yuan
- * Make sure fuelcen nums are valid.
- *
- * Revision 1.154  1995/01/03  14:26:23  rob
- * Better ifdef for robot centers.
- *
- * Revision 1.153  1995/01/03  11:27:49  rob
- * Added include of fuelcen.c
- *
- * Revision 1.152  1995/01/03  09:47:22  john
- * Some ifdef SHAREWARE lines.
- *
- * Revision 1.151  1995/01/02  21:02:07  rob
- * added matcen support for coop/multirobot.
- *
- * Revision 1.150  1994/12/15  18:31:22  mike
- * fix confusing precedence problems.
- *
- * Revision 1.149  1994/12/15  13:04:22  mike
- * Replace Players[Player_num].time_total references with GameTime.
- *
- * Revision 1.148  1994/12/15  03:05:18  matt
- * Added error checking for NULL return from object_create_explosion()
- *
- * Revision 1.147  1994/12/13  19:49:12  rob
- * Made the fuelcen noise quieter.
- *
- * Revision 1.146  1994/12/13  12:03:18  john
- * Made the warning sirens not start until after "desccruction
- * secquence activated voice".
- *
- * Revision 1.145  1994/12/12  17:18:30  mike
- * make warning siren louder.
- *
- * Revision 1.144  1994/12/11  23:18:04  john
- * Added -nomusic.
- * Added RealFrameTime.
- * Put in a pause when sound initialization error.
- * Made controlcen countdown and framerate use RealFrameTime.
- *
- * Revision 1.143  1994/12/11  14:10:16  mike
- * louder sounds.
- *
- * Revision 1.142  1994/12/06  11:33:19  yuan
- * Fixed bug with fueling when above 100.
- *
- * Revision 1.141  1994/12/05  23:37:14  matt
- * Took out calls to warning() function
- *
- * Revision 1.140  1994/12/05  23:19:18  yuan
- * Fixed fuel center refuelers..
- *
- * Revision 1.139  1994/12/03  12:48:12  mike
- * diminish rocking due to control center destruction.
- *
- * Revision 1.138  1994/12/02  23:30:32  mike
- * fix bumpiness after toasting control center.
- *
- * Revision 1.137  1994/12/02  22:48:14  mike
- * rock the ship after toasting the control center!
- *
- * Revision 1.136  1994/12/02  17:12:11  rob
- * Fixed countdown sounds.
- *
- * Revision 1.135  1994/11/29  20:59:43  rob
- * Don't run out of fuel in net games (don't want to sync it between machines)
- *
- * Revision 1.134  1994/11/29  19:10:57  john
- * Took out debugging mprintf.
- *
- * Revision 1.133  1994/11/29  13:19:40  john
- * Made voice for "destruction actived in t-"
- * be at 12.75 secs.
- *
- * Revision 1.132  1994/11/29  12:19:46  john
- * MAde the "Mine desctruction will commence"
- * voice play at 12.5 secs.
- *
- * Revision 1.131  1994/11/29  12:12:54  adam
- * *** empty log message ***
- *
- * Revision 1.130  1994/11/28  21:04:26  rob
- * Added code to cast noise when player refuels.
- *
- * Revision 1.129  1994/11/27  23:15:04  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.128  1994/11/21  16:27:51  mike
- * debug code for morphing.
- *
- * Revision 1.127  1994/11/21  12:33:50  matt
- * For control center explosions, use small fireball, not pseudo-random vclip
- *
- * Revision 1.126  1994/11/20  22:12:15  mike
- * Fix bug in initializing materialization centers.
- *
- * Revision 1.125  1994/11/19  15:18:22  mike
- * rip out unused code and data.
- *
- * Revision 1.124  1994/11/08  12:18:59  mike
- * Initialize Fuelcen_seconds_left.
- *
- * Revision 1.123  1994/10/30  14:12:33  mike
- * rip out repair center stuff
- *
- * Revision 1.122  1994/10/28  14:42:45  john
- * Added sound volumes to all sound calls.
- *
- * Revision 1.121  1994/10/16  12:44:02  mike
- * Make time to exit mine after control center destruction diff level dependent.
- *
- * Revision 1.120  1994/10/09  22:03:26  mike
- * Adapt to new create_n_segment_path parameters.
- *
- * Revision 1.119  1994/10/06  14:52:42  mike
- * Remove last of ability to damage fuel centers.
- *
- * Revision 1.118  1994/10/06  14:08:45  matt
- * Made morph flash effect get orientation from segment
- *
- * Revision 1.117  1994/10/05  16:09:03  mike
- * Put debugging code into matcen/fuelcen synchronization problem.
- *
- * Revision 1.116  1994/10/04  15:32:41  john
- * Took out the old PLAY_SOUND??? code and replaced it
- * with direct calls into digi_link_??? so that all sounds
- * can be made 3d.
- *
- * Revision 1.115  1994/10/03  23:37:57  mike
- * Clean up this mess of confusion to the point where maybe matcens actually work.
- *
- * Revision 1.114  1994/10/03  13:34:40  matt
- * Added new (and hopefully better) game sequencing functions
- *
- * Revision 1.113  1994/09/30  14:41:57  matt
- * Fixed bug as per Mike's instructions
- *
- * Revision 1.112  1994/09/30  00:37:33  mike
- * Balance materialization centers.
- *
- * Revision 1.111  1994/09/28  23:12:52  matt
- * Macroized palette flash system
- *
- * Revision 1.110  1994/09/27  15:42:31  mike
- * Add names of Specials.
- *
- * Revision 1.109  1994/09/27  00:02:23  mike
- * Yet more materialization center stuff.
- *
- * Revision 1.108  1994/09/26  11:26:23  mike
- * Balance materialization centers.
- *
- * Revision 1.107  1994/09/25  23:40:47  matt
- * Changed the object load & save code to read/write the structure fields one
- * at a time (rather than the whole structure at once).  This mean that the
- * object structure can be changed without breaking the load/save functions.
- * As a result of this change, the local_object data can be and has been
- * incorporated into the object array.  Also, timeleft is now a property
- * of all objects, and the object structure has been otherwise cleaned up.
- *
- * Revision 1.106  1994/09/25  15:55:58  mike
- * Balance materialization centers, make them emit light, make them re-triggerable after awhile.
- *
- * Revision 1.105  1994/09/24  17:42:33  mike
- * Making materialization centers be activated by triggers and balancing them.
- *
- * Revision 1.104  1994/09/24  14:16:06  mike
- * Support new network constants.
- *
- * Revision 1.103  1994/09/20  19:14:40  john
- * Massaged the sound system; used a better formula for determining
- * which l/r balance, also, put in Mike's stuff that searches for a connection
- * between the 2 sounds' segments, stopping for closed doors, etc.
- *
- * Revision 1.102  1994/09/17  01:40:51  matt
- * Added status bar/sizable window mode, and in the process revamped the
- * whole cockpit mode system.
- *
- * Revision 1.101  1994/08/31  20:57:25  matt
- * Cleaned up endlevel/death code
- *
- * Revision 1.100  1994/08/30  17:54:20  mike
- * Slow down rate of creation of objects by materialization centers.
- *
- * Revision 1.99  1994/08/29  11:47:01  john
- * Added warning if no control centers in mine.
-
-------------------------------------------------------------------------
-main/fuelcen.h:
-
- * Revision 1.1  1995/05/16  15:56:31  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:28:43  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.26  1995/01/26  12:19:16  rob
- * Added externs of things needed for multiplayer.
- *
- * Revision 1.25  1994/10/30  14:11:10  mike
- * rip out repair center stuff.
- *
- * Revision 1.24  1994/10/03  23:36:36  mike
- * Add segnum and fuelcen_num (renaming dest_seg and *path) in matcen_info struct.
- *
- * Revision 1.23  1994/09/30  00:37:44  mike
- * Change FuelCenter struct.
- *
- * Revision 1.22  1994/09/27  15:42:49  mike
- * Kill some obsolete matcen constants, Prototype Special_names.
- *
- * Revision 1.21  1994/09/27  00:04:30  mike
- * Moved FuelCenter struct here from fuelcen.c
- *
- * Revision 1.20  1994/09/25  15:55:37  mike
- * Prototype function disable_matcens.
- *
- * Revision 1.19  1994/09/24  17:41:34  mike
- * Prototype trigger_matcen.
- *
- * Revision 1.18  1994/08/03  17:52:19  matt
- * Tidied up repair centers a bit
- *
- * Revision 1.17  1994/08/02  12:16:01  mike
- * *** empty log message ***
- *
- * Revision 1.16  1994/08/01  11:04:03  yuan
- * New materialization centers.
- *
- * Revision 1.15  1994/07/21  19:02:15  mike
- * break repair centers.
- *
- * Revision 1.14  1994/07/14  11:25:22  john
- * Made control centers destroy better; made automap use Tab key.
- *
- * Revision 1.13  1994/07/13  10:45:33  john
- * Made control center object switch when dead.
- *
- * Revision 1.12  1994/07/09  17:36:44  mike
- * Add extern for find_connected_repair_seg.
- *
- * Revision 1.11  1994/06/15  19:00:32  john
- * Show timer in on top of 3d with mine destroyed...
- *
- * Revision 1.10  1994/05/31  16:49:46  john
- * Begin to add robot materialization centers.
- *
- * Revision 1.9  1994/05/30  20:22:03  yuan
- * New triggers.
- *
- * Revision 1.8  1994/05/05  16:41:14  matt
- * Cleaned up repair center code, and moved some from object.c to fuelcen.c
- *
- * Revision 1.7  1994/04/21  20:41:21  yuan
- * Added extern.
- *
- * Revision 1.6  1994/04/21  20:28:32  john
- * Added flag for Yuan to tell when a fuel center is destroyed.
- *
- * Revision 1.5  1994/04/14  17:00:59  john
- * Made repair cen's work properly; added reset_all_fuelcens.
- *
- * Revision 1.4  1994/04/12  20:28:04  john
- * Added control center.
- *
- * Revision 1.3  1994/04/08  15:37:10  john
- * Added repair centers.
- *
- * Revision 1.2  1994/04/06  19:10:38  john
- * NEw version.
- *
- *
- * Revision 1.1  1994/04/06  12:39:02  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/fvi.c:
-
- * Revision 1.7  1995/10/21  23:52:18  allender
- * #ifdef'ed out stack debug stuff
- *
- * Revision 1.6  1995/10/10  12:07:42  allender
- * add forgotten ;
- *
- * Revision 1.5  1995/10/10  11:47:27  allender
- * put in stack space check
- *
- * Revision 1.4  1995/08/23  21:34:08  allender
- * fix mcc compiler warning
- *
- * Revision 1.3  1995/08/14  14:35:18  allender
- * changed transparency to 0
- *
- * Revision 1.2  1995/07/05  16:50:51  allender
- * transparency/kitchen change
- *
- * Revision 1.1  1995/05/16  15:24:59  allender
- * Initial revision
- *
- * Revision 2.3  1995/03/24  14:49:04  john
- * Added cheat for player to go thru walls.
- *
- * Revision 2.2  1995/03/21  17:58:32  john
- * Fixed bug with normals..
- *
- *
- * Revision 2.1  1995/03/20  18:15:37  john
- * Added code to not store the normals in the segment structure.
- *
- * Revision 2.0  1995/02/27  11:27:41  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.49  1995/02/22  14:45:47  allender
- * remove anonymous unions from object structure
- *
- * Revision 1.48  1995/02/22  13:24:50  john
- * Removed the vecmat anonymous unions.
- *
- * Revision 1.47  1995/02/07  16:17:26  matt
- * Disabled all robot-robot collisions except those involving two green
- * guys.  Used to do collisions if either robot was green guy.
- *
- * Revision 1.46  1995/02/02  14:07:53  matt
- * Fixed confusion about which segment you are touching when you're
- * touching a wall.  This manifested itself in spurious lava burns.
- *
- * Revision 1.45  1995/02/02  13:45:53  matt
- * Made a bunch of lint-inspired changes
- *
- * Revision 1.44  1995/01/24  12:10:17  matt
- * Fudged collisions for player/player, and player weapon/other player in
- * coop games.
- *
- * Revision 1.43  1995/01/14  19:16:45  john
- * First version of new bitmap paging code.
- *
- * Revision 1.42  1994/12/15  12:22:40  matt
- * Small change which may or may not help
- *
- * Revision 1.41  1994/12/14  11:45:51  matt
- * Fixed (hopefully) little bug with invalid segnum
- *
- * Revision 1.40  1994/12/13  17:12:01  matt
- * Increased edge tolerance a bunch more
- *
- * Revision 1.39  1994/12/13  14:37:59  matt
- * Fixed another stupid little bug
- *
- * Revision 1.38  1994/12/13  13:25:44  matt
- * Increased tolerance massively to avoid catching on corners
- *
- * Revision 1.37  1994/12/13  12:02:20  matt
- * Fixed small bug
- *
- * Revision 1.36  1994/12/13  11:17:35  matt
- * Lots of changes to hopefully fix objects leaving the mine.  Note that
- * this code should be considered somewhat experimental - one problem I
- * know about is that you can get stuck on edges more easily than before.
- * There may be other problems I don't know about yet.
- *
- * Revision 1.35  1994/12/12  01:20:57  matt
- * Added hack in object-object collisions that treats claw guys as
- * if they have 3/4 of their actual radius.
- *
- * Revision 1.34  1994/12/04  22:48:39  matt
- * Physics & FVI now only build seglist for player objects, and they
- * responsilby deal with buffer full conditions
- *
- * Revision 1.33  1994/12/04  22:07:05  matt
- * Added better handing of buffer full condition
- *
- * Revision 1.32  1994/12/01  21:06:33  matt
- * Several important changes:
- *  (1) Checking against triangulated sides has been standardized a bit
- *  (2) Code has been added to de-triangulate some sides
- *  (3) BIG ONE: the tolerance for checking a point against a plane has
- *      been drastically relaxed
- *
- *
- * Revision 1.31  1994/11/27  23:15:03  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.30  1994/11/19  15:20:30  mike
- * rip out unused code and data
- *
- * Revision 1.29  1994/11/16  12:18:17  mike
- * hack for green_guy:green_guy collision detection.
- *
- * Revision 1.28  1994/11/10  13:08:54  matt
- * Added support for new run-length-encoded bitmaps
- *
- * Revision 1.27  1994/10/31  12:27:51  matt
- * Added new function object_intersects_wall()
- *
- * Revision 1.26  1994/10/20  13:59:27  matt
- * Added assert
- *
- * Revision 1.25  1994/10/09  23:51:09  matt
- * Made find_hitpoint_uv() work with triangulated sides
- *
- * Revision 1.24  1994/09/25  00:39:29  matt
- * Took out mprintf's
- *
- * Revision 1.23  1994/09/25  00:37:53  matt
- * Made the 'find the point in the bitmap where something hit' system
- * publicly accessible.
- *
- * Revision 1.22  1994/09/21  16:58:22  matt
- * Fixed bug in trans wall check that was checking against verically
- * flipped bitmap (i.e., the y coord was negative when checking).
- *
- * Revision 1.21  1994/09/02  11:31:40  matt
- * Fixed object/object collisions, so you can't fly through robots anymore.
- * Cleaned up object damage system.
- *
- * Revision 1.20  1994/08/26  09:42:03  matt
- * Increased the size of a buffer
- *
- * Revision 1.19  1994/08/11  18:57:53  mike
- * Convert shorts to ints for optimization.
- *
- * Revision 1.18  1994/08/08  21:38:24  matt
- * Put in small optimization
- *
- * Revision 1.17  1994/08/08  12:21:52  yuan
- * Fixed assert
- *
- * Revision 1.16  1994/08/08  11:47:04  matt
- * Cleaned up fvi and physics a little
- *
- * Revision 1.15  1994/08/04  00:21:04  matt
- * Cleaned up fvi & physics error handling; put in code to make sure objects
- * are in correct segment; simplified segment finding for objects and points
- *
- * Revision 1.14  1994/08/02  19:04:26  matt
- * Cleaned up vertex list functions
- *
- * Revision 1.13  1994/08/02  09:56:28  matt
- * Put in check for bad value find_plane_line_intersection()
- *
- * Revision 1.12  1994/08/01  17:27:26  matt
- * Added support for triangulated walls in trans point check
- *
- * Revision 1.11  1994/08/01  13:30:40  matt
- * Made fvi() check holes in transparent walls, and changed fvi() calling
- * parms to take all input data in query structure.
- *
- * Revision 1.10  1994/07/13  21:47:17  matt
- * FVI() and physics now keep lists of segments passed through which the
- * trigger code uses.
- *
- * Revision 1.9  1994/07/09  21:21:40  matt
- * Fixed, hopefull, bugs in sphere-to-vector intersection code
- *
- * Revision 1.8  1994/07/08  14:26:42  matt
- * Non-needed powerups don't get picked up now; this required changing FVI to
- * take a list of ingore objects rather than just one ignore object.
- *
- * Revision 1.7  1994/07/06  20:02:37  matt
- * Made change to match gameseg that uses lowest point number as reference
- * point when checking against a plane
- *
- * Revision 1.6  1994/06/29  15:43:58  matt
- * When computing intersection of vector and sphere, use the radii of both
- * objects.
- *
- * Revision 1.5  1994/06/14  15:57:58  matt
- * Took out asserts, and added other hacks, pending real bug fixes
- *
- * Revision 1.4  1994/06/13  23:10:08  matt
- * Fixed problems with triangulated sides
- *
- * Revision 1.3  1994/06/09  12:11:14  matt
- * Fixed confusing use of two variables, hit_objnum & fvi_hit_object, to
- * keep the same information in different ways.
- *
- * Revision 1.2  1994/06/09  09:58:38  matt
- * Moved find_vector_intersection() from physics.c to new file fvi.c
- *
- * Revision 1.1  1994/06/09  09:25:57  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/fvi.h:
-
- * Revision 1.2  1995/08/23  21:34:29  allender
- * fix mcc compiler warning
- *
- * Revision 1.1  1995/05/16  15:56:38  allender
- * Initial revision
- *
- * Revision 2.1  1995/03/20  18:15:58  john
- * Added code to not store the normals in the segment structure.
- *
- * Revision 2.0  1995/02/27  11:32:02  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.10  1995/02/02  14:07:58  matt
- * Fixed confusion about which segment you are touching when you're
- * touching a wall.  This manifested itself in spurious lava burns.
- *
- * Revision 1.9  1994/12/04  22:48:04  matt
- * Physics & FVI now only build seglist for player objects, and they
- * responsilby deal with buffer full conditions
- *
- * Revision 1.8  1994/10/31  12:28:01  matt
- * Added new function object_intersects_wall()
- *
- * Revision 1.7  1994/10/10  13:10:00  matt
- * Increased max_fvi_segs
- *
- * Revision 1.6  1994/09/25  00:38:29  matt
- * Made the 'find the point in the bitmap where something hit' system
- * publicly accessible.
- *
- * Revision 1.5  1994/08/01  13:30:35  matt
- * Made fvi() check holes in transparent walls, and changed fvi() calling
- * parms to take all input data in query structure.
- *
- * Revision 1.4  1994/07/13  21:47:59  matt
- * FVI() and physics now keep lists of segments passed through which the
- * trigger code uses.
- *
- * Revision 1.3  1994/07/08  14:27:26  matt
- * Non-needed powerups don't get picked up now; this required changing FVI to
- * take a list of ingore objects rather than just one ignore object.
- *
- * Revision 1.2  1994/06/09  09:58:39  matt
- * Moved find_vector_intersection() from physics.c to new file fvi.c
- *
- * Revision 1.1  1994/06/09  09:26:14  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/game.c:
-
- * Revision 1.1  1995/12/05  16:01:09  allender
- * Initial revision
- *
- * Revision 1.38  1995/11/13  13:02:35  allender
- * put up HUD message when player starts tournament
- *
- * Revision 1.37  1995/11/13  09:21:05  allender
- * ved and shorted tournament mode messages
- *
- * Revision 1.36  1995/11/09  17:27:00  allender
- * took out cheats during demo playback
- *
- * Revision 1.35  1995/11/07  17:05:41  allender
- * move registered cheats
- *
- * Revision 1.34  1995/11/03  12:55:45  allender
- * shareware changes
- *
- * Revision 1.33  1995/10/29  20:15:00  allender
- * took out frame rate cheat.  Pause for at least a second because
- * of cmd-P problem
- *
- * Revision 1.32  1995/10/26  14:11:26  allender
- * fix up message box stuff to align correctly
- *
- * Revision 1.31  1995/10/24  18:09:41  allender
- * ixed cockpit weirdness -- don't update cockpit when do_appl_quit
- * is called -- screen saved in mevent.c
- *
- * Revision 1.30  1995/10/21  23:39:10  allender
- * ruise marking indicator
- *
- * Revision 1.29  1995/10/21  22:52:27  allender
- * bald guy cheat -- print screen stuff
- *
- * Revision 1.28  1995/10/20  00:54:28  allender
- * new help menus and redbook checking in outer game loop
- *
- * Revision 1.27  1995/10/17  15:34:19  allender
- * pixel double is now default mode
- *
- * Revision 1.26  1995/10/12  17:34:44  allender
- * bigger message box -- command key equivs for function keys
- *
- * Revision 1.25  1995/10/11  12:17:14  allender
- * removed event loop processing
- *
- * Revision 1.24  1995/10/11  00:58:47  allender
- * removed debugging code
- *
- * Revision 1.23  1995/10/10  11:50:32  allender
- * fixed boxed message to align on 8 byte boundry,
- * and some debug code
- *
- * Revision 1.22  1995/09/24  10:51:26  allender
- * cannot go to finder in network..added cmd-q for quit
- *
- * Revision 1.21  1995/09/22  15:05:18  allender
- * *more* hud and font type stuff (messages)
- *
- * Revision 1.20  1995/09/22  14:39:57  allender
- * ved framerate counter up
- *
- * Revision 1.19  1995/09/18  17:01:28  allender
- * start of compatibility stuff
- *
- * Revision 1.18  1995/09/15  15:53:13  allender
- * better handling of PICT screen shots
- *
- * Revision 1.17  1995/09/14  15:27:41  allender
- * fixed function type on message_box routiens
- *
- * Revision 1.16  1995/09/13  11:37:47  allender
- * put in call to dump PICT file instead of PCX
- *
- * Revision 1.15  1995/09/08  17:13:28  allender
- * put back in ibitblt.h and start of PICT picture dump
- *
- * Revision 1.14  1995/09/07  10:20:58  allender
- * make cockpit mode default
- *
- * Revision 1.13  1995/09/07  10:17:34  allender
- * added command key equivalents for function keys
- *
- * Revision 1.12  1995/09/04  11:36:47  allender
- * fixed pixel double mode to have correct number of rendered
- * lines
- *
- * Revision 1.11  1995/09/01  15:47:07  allender
- * cap frame rate at 60 fps
- *
- * Revision 1.10  1995/08/26  16:25:59  allender
- * whole buncha' stuff!!!!
- *
- * Revision 1.9  1995/08/01  16:04:47  allender
- * put in ctrl_esc sequence to go to menubar
- *
- * Revision 1.8  1995/07/28  14:15:11  allender
- * added FRAME cheat to display frame rate
- *
- * Revision 1.7  1995/07/17  08:54:19  allender
- * *** empty log message ***
- *
- * Revision 1.6  1995/07/12  12:54:06  allender
- * removed some debug keys
- *
- * Revision 1.5  1995/07/05  16:44:35  allender
- * changed some debug keys
- *
- * Revision 1.4  1995/06/23  10:24:57  allender
- * added scanline doubling routine
- *
- * Revision 1.3  1995/06/13  13:08:26  allender
- * added special debug key to move window into upper left corner.
- * also added debug key to put game in 640x480 mode
- *
- * Revision 1.2  1995/06/12  11:10:31  allender
- * added DEL_SHIFT_M to move window to corner of screen
- *
- * Revision 1.1  1995/05/16  15:25:08  allender
- * Initial revision
- *
- * Revision 2.36  1996/01/05  16:52:05  john
- * Improved 3d stuff.
- *
- * Revision 2.35  1995/10/09  22:17:10  john
- * Took out the page flipping in set_screen_mode, which shouldn't
- * be there.  This was hosing the modex stuff.
- *
- * Revision 2.34  1995/10/09  19:46:34  john
- * Fixed bug with modex paging with lcdbios.
- *
- * Revision 2.33  1995/10/08  11:46:09  john
- * Fixed bug with 2d offset in interlaced mode in low res.
- * Made LCDBIOS with pageflipping using VESA set start
- * Address function.  X=CRTC offset, Y=0.
- *
- * Revision 2.32  1995/10/07  13:20:51  john
- * Added new modes for LCDBIOS, also added support for -JoyNice,
- * and added Shift+F1-F4 to controls various stereoscopic params.
- *
- * Revision 2.31  1995/05/31  14:34:43  unknown
- * fixed warnings.
- *
- * Revision 2.30  1995/05/08  11:23:45  john
- * Made 3dmax work like Kasan wants it to.
- *
- * Revision 2.29  1995/04/06  13:47:39  yuan
- * Restored rear view to original.
- *
- * Revision 2.28  1995/04/06  12:13:07  john
- * Fixed some bugs with 3dmax.
- *
- * Revision 2.27  1995/04/05  13:18:18  mike
- * decrease energy usage on fusion cannon
- *
- * Revision 2.26  1995/03/30  16:36:32  mike
- * text localization.
- *
- * Revision 2.25  1995/03/27  16:45:26  john
- * Fixed some cheat bugs.  Added astral cheat.
- *
- * Revision 2.24  1995/03/27  15:37:11  mike
- * boost fusion cannon for non-multiplayer modes.
- *
- * Revision 2.23  1995/03/24  17:48:04  john
- * Fixed bug with menus and 320x100.
- *
- * Revision 2.22  1995/03/24  15:34:02  mike
- * cheats.
- *
- * Revision 2.21  1995/03/24  13:11:39  john
- * Added save game during briefing screens.
- *
- * Revision 2.20  1995/03/21  14:40:50  john
- * Ifdef'd out the NETWORK code.
- *
- * Revision 2.19  1995/03/16  22:07:16  john
- * Made so only for screen can be used for anything other
- * than mode 13.
- *
- * Revision 2.18  1995/03/16  21:45:35  john
- * Made all paged modes have incompatible menus!
- *
- * Revision 2.17  1995/03/16  18:30:35  john
- * Made wider than 320 screens not have
- * a status bar mode.
- *
- * Revision 2.16  1995/03/16  10:53:34  john
- * Move VFX center to Shift+Z instead of Enter because
- * it conflicted with toggling HUD on/off.
- *
- * Revision 2.15  1995/03/16  10:18:33  john
- * Fixed bug with VFX mode not working. also made warning
- * when it can't set VESA mode.
- *
- * Revision 2.14  1995/03/14  16:22:39  john
- * Added cdrom alternate directory stuff.
- *
- * Revision 2.13  1995/03/14  12:14:17  john
- * Made VR helmets have 4 resolutions to choose from.
- *
- * Revision 2.12  1995/03/10  13:47:33  john
- * Added head tracking sensitivity.
- *
- * Revision 2.11  1995/03/10  13:13:47  john
- * Added code to show T-xx on iglasses.
- *
- * Revision 2.10  1995/03/09  18:07:29  john
- * Fixed bug with iglasses tracking not "centering" right.
- * Made VFX have bright headlight lighting.
- *
- * Revision 2.9  1995/03/09  11:48:02  john
- * Added HUD for VR helmets.
- *
- * Revision 2.8  1995/03/07  15:12:53  john
- * Fixed VFX,3dmax support.
- *
- * Revision 2.7  1995/03/07  11:35:03  john
- * Fixed bug with cockpit in rear view.
- *
- * Revision 2.6  1995/03/06  18:40:17  john
- * Added some ifdef EDITOR stuff.
- *
- * Revision 2.5  1995/03/06  18:31:21  john
- * Fixed bug with nmenu popping up on editor screen.
- *
- * Revision 2.4  1995/03/06  17:28:33  john
- * Fixed but with cockpit toggling wrong.
- *
- * Revision 2.3  1995/03/06  16:08:10  mike
- * Fix compile errors if building without editor.
- *
- * Revision 2.2  1995/03/06  15:24:10  john
- * New screen techniques.
- *
- * Revision 2.1  1995/02/27  13:41:03  john
- * Removed floating point from frame rate calculations.
- *
- * Revision 2.0  1995/02/27  11:31:54  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.770  1995/02/22  12:45:15  allender
- * remove anonymous unions from object structure
- *
- * Revision 1.769  1995/02/15  10:06:25  allender
- * make pause pause game during demo playback
- *
- * Revision 1.768  1995/02/13  20:35:11  john
- * Lintized
- *
- * Revision 1.767  1995/02/13  19:40:29  allender
- * added place to demo record restoration from rear view in place that
- * I forgot before
- *
- * Revision 1.766  1995/02/13  10:29:27  john
- * Fixed bug with cheats not restoreing across save games.
- *
- * Revision 1.765  1995/02/11  22:54:33  john
- * Made loading for pig not show up for demos.
- *
- * Revision 1.764  1995/02/11  17:30:08  allender
- * ifndef NDEBUG around strip frame stuff
- *
- * Revision 1.763  1995/02/11  17:13:01  rob
- * Took out modem.c code fille stuff.
- *
- * Revision 1.762  1995/02/11  16:36:47  allender
- * debug key to strip frames from end of demo
- *
- * Revision 1.761  1995/02/11  14:29:16  john
- * Turned off cheats when going into game.
- *
- * Revision 1.760  1995/02/11  13:46:54  mike
- * fix cheats.
- *
- * Revision 1.759  1995/02/11  12:36:09  matt
- * Cleaned up cheats
- *
- * Revision 1.758  1995/02/11  12:27:04  mike
- * fix path-to-exit cheat.
- *
- * Revision 1.757  1995/02/11  01:56:24  mike
- * robots don't fire cheat.
- *
- * Revision 1.756  1995/02/10  16:38:40  mike
- * illuminate path to exit cheat.
- *
- * Revision 1.755  1995/02/10  16:19:40  mike
- * new show-path-to-exit system, still buggy, compiled out.
- *
- * Revision 1.754  1995/02/10  15:54:46  matt
- * Added new cheats
- *
- * Revision 1.753  1995/02/09  12:25:42  matt
- * Made mem_fill() test routines not be called if RELEASE
- *
- * Revision 1.752  1995/02/09  08:49:32  mike
- * change fill opcode value to 0xcc, int 3 value.
- *
- *
- * Revision 1.751  1995/02/09  02:59:26  mike
- * check code for 00066xxx bugs.
- *
- * Revision 1.750  1995/02/08  17:10:02  mike
- * add, but don't call, debug code.
- *
- * Revision 1.749  1995/02/07  11:07:27  john
- * Added hooks for confirm on game state restore.
- *
- * Revision 1.748  1995/02/06  15:52:45  mike
- * add mini megawow powerup for giving reasonable weapons.
- *
- * Revision 1.747  1995/02/06  12:53:35  allender
- * force endlevel_sequence to 0 to fix weird bug
- *
- * Revision 1.746  1995/02/04  10:03:30  mike
- * Fly to exit cheat.
- *
- * Revision 1.745  1995/02/02  15:57:52  john
- * Added turbo mode cheat.
- *
- * Revision 1.744  1995/02/02  14:43:39  john
- * Uppped frametime limit to 150 Hz.
- *
- * Revision 1.743  1995/02/02  13:37:16  mike
- * move T-?? message down in certain modes.
- *
- * Revision 1.742  1995/02/02  01:26:59  john
- * Took out no key repeating.
- *
- * Revision 1.741  1995/01/29  21:36:44  mike
- * make fusion cannon not make pitching slow.
- *
- * Revision 1.740  1995/01/28  15:57:57  john
- * Made joystick calibration be only when wrong detected in
- * menu or joystick axis changed.
- *
- * Revision 1.739  1995/01/28  15:21:03  yuan
- * Added X-tra life cheat.
- *
- * Revision 1.738  1995/01/27  14:08:31  rob
- * Fixed a bug.
- *
- * Revision 1.737  1995/01/27  14:04:59  rob
- * Its not my fault, Mark told me to do it!
- *
- * Revision 1.736  1995/01/27  13:12:18  rob
- * Added charging noises to play across net.
- *
- * Revision 1.735  1995/01/27  11:48:28  allender
- * check for newdemo_state to be paused and stop recording.  We might be
- * in between levels
- *
- * Revision 1.734  1995/01/26  22:11:41  mike
- * Purple chromo-blaster (ie, fusion cannon) spruce up (chromification)
- *
- * Revision 1.733  1995/01/26  17:03:04  mike
- * make fusion cannon have more chrome, make fusion, mega rock you!
- *
- * Revision 1.732  1995/01/25  14:37:25  john
- * Made joystick only prompt for calibration once...
- *
- * Revision 1.731  1995/01/24  15:49:14  john
- * Made typeing in long net messages wrap on
- * small screen sizes.
- *
- * Revision 1.730  1995/01/24  15:23:42  mike
- * network message tweaking.
- *
- * Revision 1.729  1995/01/24  12:00:47  john
- * Fixed bug with defing macro passing keys to controls.
- *
- * Revision 1.728  1995/01/24  11:53:35  john
- * Added better macro defining code.
- *
- * Revision 1.727  1995/01/23  22:17:15  john
- * Fixed bug with not clearing key buffer when leaving f8.
- *
- * Revision 1.726  1995/01/23  22:07:09  john
- * Added flush to game inputs during F8.
-
-------------------------------------------------------------------------
-main/game.h:
-
- * Revision 1.3  1995/09/14  13:44:34  allender
- * fixed function prototypes to have void return value to satify
- * moto compiler
- *
- * Revision 1.2  1995/08/17  09:25:05  allender
- * externed Scanline_double variable
- *
- * Revision 1.1  1995/05/16  15:56:46  allender
- * Initial revision
- *
- * Revision 2.1  1995/03/06  15:23:22  john
- * New screen techniques.
- *
- * Revision 2.0  1995/02/27  11:28:21  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.79  1995/02/13  10:37:17  john
- * Saved Buggin' cheat mode to save file.
- *
- * Revision 1.78  1995/02/01  16:34:12  john
- * Linted.
- *
- * Revision 1.77  1995/01/29  21:37:14  mike
- * initialize variables on game load so you don't drain your energy when you fire.
- *
- * Revision 1.76  1995/01/26  22:11:36  mike
- * Purple chromo-blaster (ie, fusion cannon) spruce up (chromification)
- *
- * Revision 1.75  1995/01/26  16:45:31  mike
- * Add autofire fusion cannon stuff.
- *
- * Revision 1.74  1994/12/11  23:18:06  john
- * Added -nomusic.
- * Added RealFrameTime.
- * Put in a pause when sound initialization error.
- * Made controlcen countdown and framerate use RealFrameTime.
- *
- * Revision 1.73  1994/12/09  00:41:24  mike
- * fix hang in automap print screen
- *
- * Revision 1.72  1994/12/04  13:47:00  mike
- * enhance custom detail level support.
- *
- * Revision 1.71  1994/12/02  15:05:44  matt
- * Added new "official" cheats
- *
- * Revision 1.70  1994/11/28  18:14:09  rob
- * Added game_mode flag for team games.
- *
- * Revision 1.69  1994/11/15  16:51:13  matt
- * Made rear view only switch to rear cockpit if cockpit on in front view
- *
- * Revision 1.68  1994/11/04  16:26:10  john
- * Fixed bug with letterbox mode game after you finish a game.
- *
- * Revision 1.67  1994/11/02  11:59:48  john
- * Moved menu out of game into inferno main loop.
- *
- * Revision 1.66  1994/10/26  23:02:19  matt
- * Made palette flash saturate negative values
- *
- * Revision 1.65  1994/10/26  15:21:05  mike
- * Detail level stuff.  Make Render_depth public.
- *
- * Revision 1.64  1994/10/19  00:13:01  matt
- * Added prototypes
- *
- * Revision 1.63  1994/10/09  14:54:39  matt
- * Made player cockpit state & window size save/restore with saved games & automap
- *
- * Revision 1.62  1994/10/08  19:56:32  matt
- * Added prototype
- *
- * Revision 1.61  1994/10/07  22:19:32  mike
- * Increase number of difficulty levels from 4 to 5.
- *
- * Revision 1.60  1994/10/06  14:14:11  matt
- * Added new function to reset time (to prevent big FrameTime) at start of level
- *
- * Revision 1.59  1994/10/05  17:08:43  matt
- * Changed order of cockpit bitmaps, since there's no longer a full-screen cockpit
- *
- * Revision 1.58  1994/10/03  23:44:13  matt
- * Save & restore palette effect around menus & pause message
- *
- * Revision 1.57  1994/09/29  17:42:12  matt
- * Cleaned up game_mode a little
- *
- * Revision 1.56  1994/09/28  23:12:01  matt
- * Macroized palette flash system
- *
- * Revision 1.55  1994/09/24  16:56:13  rob
- * Added new fields for the Game_mode bitvector for modem play.
- *
- * Revision 1.54  1994/09/24  14:16:20  mike
- * Added new game mode constants.
- *
- * Revision 1.53  1994/09/22  19:00:57  mike
- * Move NDL from robot.h to here.
- *
- * Revision 1.52  1994/09/22  10:46:51  mike
- * Add difficulty levels.
- *
- * Revision 1.51  1994/09/17  01:39:52  matt
- * Added status bar/sizable window mode, and in the process revamped the
- * whole cockpit mode system.
- *
- * Revision 1.50  1994/09/15  21:23:10  matt
- * Changed system to keep track of whether & what cockpit is up
- *
- * Revision 1.49  1994/09/15  16:11:33  john
- * Added support for VFX1 head tracking. Fixed bug with memory over-
- * write when using stereo mode.
- *
- * Revision 1.48  1994/09/13  16:40:10  mike
- * Prototype Global_missile_firing_count.
- *
- * Revision 1.47  1994/09/13  11:19:05  mike
- * Add Next_missile_fire_time.
- *
- * Revision 1.46  1994/09/12  09:52:50  john
- * Made global flush function that flushes keyboard,mouse, and joystick.
- *
- * Revision 1.45  1994/09/03  15:24:14  mike
- * Make global Global_laser_firing_count.
- *
- * Revision 1.44  1994/08/31  19:26:57  mike
- * Prototypes for Next_laser_fire_time, Laser_delay_time.
- *
- * Revision 1.43  1994/08/18  10:47:22  john
- * Cleaned up game sequencing and player death stuff
- * in preparation for making the player explode into
- * pieces when dead.
- *
- * Revision 1.42  1994/08/11  18:03:53  matt
- * Added prototype
- *
- * Revision 1.41  1994/06/29  20:41:38  matt
- * Added new pause mode; cleaned up countdown & game startup code
- *
- * Revision 1.40  1994/06/24  17:03:49  john
- * Added VFX support. Also took all game sequencing stuff like
- * EndGame out and put it into gameseq.c
- *
- * Revision 1.39  1994/06/20  15:01:08  yuan
- * Added death when mine blows up...
- * Continues onto next level.
- *
- * Revision 1.38  1994/06/17  18:07:20  matt
- * Moved some vars out of ifdef
- *
- * Revision 1.37  1994/06/15  11:09:22  yuan
- * Moved gauge_message to mono screen for now.
- *
- * Revision 1.36  1994/05/30  20:22:11  yuan
- * New triggers.
- *
- * Revision 1.35  1994/05/27  10:32:48  yuan
- * New dialog boxes (Walls and Triggers) added.
- *
- *
- * Revision 1.34  1994/05/20  11:56:45  matt
- * Cleaned up find_vector_intersection() interface
- * Killed check_point_in_seg(), check_player_seg(), check_object_seg()
- *
- * Revision 1.33  1994/05/19  21:45:21  matt
- * Removed unused prototypes
- *
- * Revision 1.32  1994/05/19  18:53:17  yuan
- * Changing player structure...
- *
- * Revision 1.31  1994/05/16  16:38:35  yuan
- * Fixed palette add so it doesn't show up in the menu.
- *
- * Revision 1.30  1994/05/16  09:28:17  matt
- * Renamed init_player() to be init_player_stats(), added new funtion
- * init_player_object()
- *
- * Revision 1.29  1994/05/14  17:14:57  matt
- * Got rid of externs in source (non-header) files
-
-------------------------------------------------------------------------
-main/gamefont.c:
-
- * Revision 1.2  1995/08/18  10:23:25  allender
- * remove refernce to big font -- add PC small font for pixel
- * doubling display
- *
- * Revision 1.1  1995/05/16  15:25:22  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:30:14  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.8  1994/11/18  16:41:39  adam
- * trimmed some meat
- *
- * Revision 1.7  1994/11/17  13:07:11  adam
- * removed unused font
- *
- * Revision 1.6  1994/11/03  21:36:12  john
- * Added code for credit fonts.
- *
- * Revision 1.5  1994/08/17  20:20:02  matt
- * Took out alternate-color versions of font3, since this is a mono font
- *
- * Revision 1.4  1994/08/12  12:03:44  adam
- * tweaked fonts.
- *
- * Revision 1.3  1994/08/11  12:43:40  adam
- * changed font filenames
- *
- * Revision 1.2  1994/08/10  19:57:15  john
- * Changed font stuff; Took out old menu; messed up lots of
- * other stuff like game sequencing messages, etc.
- *
- * Revision 1.1  1994/08/10  17:20:09  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/gamefont.h:
-
- * Revision 1.2  1995/08/18  10:23:54  allender
- * removed large font -- added PC small font
- *
- * Revision 1.1  1995/05/16  15:56:55  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:31:09  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.7  1994/11/18  16:41:28  adam
- * trimmed meat
- *
- * Revision 1.6  1994/11/17  13:07:00  adam
- * removed unused font
- *
- * Revision 1.5  1994/11/03  21:36:02  john
- * Added code for credit fonts.
- *
- * Revision 1.4  1994/08/17  20:20:25  matt
- * Took out alternate-color versions of font3, since this is a mono font
- *
- * Revision 1.3  1994/08/11  12:44:32  adam
- * killed a #define
- *
- * Revision 1.2  1994/08/10  19:57:16  john
- * Changed font stuff; Took out old menu; messed up lots of
- * other stuff like game sequencing messages, etc.
- *
- * Revision 1.1  1994/08/10  17:20:22  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/gamemine.c:
-
- * Revision 1.2  1995/10/31  10:15:58  allender
- * code for shareware levels
- *
- * Revision 1.1  1995/05/16  15:25:29  allender
- * Initial revision
- *
- * Revision 2.2  1995/03/06  15:23:14  john
- * New screen techniques.
- *
- * Revision 2.1  1995/02/27  13:13:37  john
- * Removed floating point.
- *
- * Revision 2.0  1995/02/27  11:27:45  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.70  1995/02/13  20:35:09  john
- * Lintized
- *
- * Revision 1.69  1995/02/07  17:12:03  rob
- * Added ifdef's for Editor.
- *
- * Revision 1.68  1995/02/07  16:51:48  mike
- * fix gray rock josh problem.
- *
- * Revision 1.67  1995/02/01  15:46:26  yuan
- * Fixed matcen_nums.
- *
- * Revision 1.66  1995/01/19  15:19:28  mike
- * new super-compressed registered file format.
- *
- * Revision 1.65  1994/12/10  16:44:59  matt
- * Added debugging code to track down door that turns into rock
- *
- * Revision 1.64  1994/12/10  14:58:24  yuan
- * *** empty log message ***
- *
- * Revision 1.63  1994/12/08  17:19:10  yuan
- * Cfiling stuff.
- *
- * Revision 1.62  1994/12/07  14:05:33  yuan
- * Fixed wall assert problem... Bashed highest_segment
- * _index before WALL_IS_DOORWAY check.
- *
- * Revision 1.61  1994/11/27  23:14:52  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.60  1994/11/27  18:05:20  matt
- * Compile out LVL reader when editor compiled out
- *
- * Revision 1.59  1994/11/26  22:51:45  matt
- * Removed editor-only fields from segment structure when editor is compiled
- * out, and padded segment structure to even multiple of 4 bytes.
- *
- * Revision 1.58  1994/11/26  21:48:02  matt
- * Fixed saturation in short light value
- *
- * Revision 1.57  1994/11/20  22:11:49  mike
- * comment out an apparently unnecessary call to fuelcen_reset().
- *
- * Revision 1.56  1994/11/18  21:56:42  john
- * Added a better, leaner pig format.
- *
- * Revision 1.55  1994/11/17  20:09:18  john
- * Added new compiled level format.
- *
- * Revision 1.54  1994/11/17  15:40:17  mike
- * Comment out mprintf which was causing important information to scroll away.
- *
- * Revision 1.53  1994/11/17  14:56:37  mike
- * moved segment validation functions from editor to main.
- *
- * Revision 1.52  1994/11/17  11:39:35  matt
- * Ripped out code to load old mines
- *
- * Revision 1.51  1994/11/14  20:47:53  john
- * Attempted to strip out all the code in the game
- * directory that uses any ui code.
- *
- * Revision 1.50  1994/11/14  16:05:38  matt
- * Fixed, maybe, again, errors when can't find texture during remap
- *
- * Revision 1.49  1994/11/14  14:34:03  matt
- * Fixed up handling when textures can't be found during remap
- *
- * Revision 1.48  1994/11/14  13:01:55  matt
- * Added Int3() when can't find texture
- *
- * Revision 1.47  1994/10/30  14:12:21  mike
- * rip out local segments stuff.
- *
- * Revision 1.46  1994/10/27  19:43:07  john
- * Disable the piglet option.
- *
- * Revision 1.45  1994/10/27  18:51:42  john
- * Added -piglet option that only loads needed textures for a
- * mine.  Only saved ~1MB, and code still doesn't free textures
- * before you load a new mine.
- *
- * Revision 1.44  1994/10/20  12:47:22  matt
- * Replace old save files (MIN/SAV/HOT) with new LVL files
- *
- * Revision 1.43  1994/10/19  16:46:40  matt
- * Made tmap overrides for robots remap texture numbers
- *
- * Revision 1.42  1994/10/03  23:37:01  mike
- * Adapt to changed fuelcen_activate parameters.
- *
- * Revision 1.41  1994/09/23  22:14:49  matt
- * Took out obsolete structure fields
- *
- * Revision 1.40  1994/08/01  11:04:11  yuan
- * New materialization centers.
- *
- * Revision 1.39  1994/07/21  19:01:47  mike
- * Call Lsegment stuff.
-
-------------------------------------------------------------------------
-main/gamemine.h:
-
- * Revision 1.1  1995/05/16  15:57:02  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:28:50  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.15  1994/11/17  11:39:34  matt
- * Ripped out code to load old mines
- *
- * Revision 1.14  1994/10/19  16:46:40  matt
- * Made tmap overrides for robots remap texture numbers
- *
- * Revision 1.13  1994/09/23  22:14:37  matt
- * Took out obsolete structure fields
- *
- * Revision 1.12  1994/07/22  12:36:32  matt
- * Cleaned up editor/game interactions some more.
- *
- * Revision 1.11  1994/06/01  11:21:37  yuan
- * Added controlcentertriggers to the gamesave.
- *
- * Revision 1.10  1994/05/10  12:14:26  yuan
- * Game save/load... Demo levels 1-5 added...
- * High scores fixed...
- *
- * Revision 1.9  1994/05/04  18:25:05  yuan
- * Working on gamesave.
- *
- * Revision 1.8  1994/05/03  15:53:27  yuan
- * Readded structure field groups for backward compatibility...
- *
- * Revision 1.7  1994/05/03  11:36:26  yuan
- * Stabilizing gamesave stuff.
- *
- * Revision 1.6  1994/04/28  11:01:32  yuan
- * Added objects in structure.
- *
- * Revision 1.5  1994/04/06  18:30:03  john
- * Added Refueling segments.
- *
- * Revision 1.4  1994/03/17  18:06:53  yuan
- * Removed switch code... Now we just have Walls, Triggers, and Links...
- *
- * Revision 1.3  1994/03/01  18:12:24  yuan
- * Wallswitches, triggers, and more!
- *
- * Revision 1.2  1994/02/10  15:36:01  matt
- * Various changes to make editor compile out.
- *
- * Revision 1.1  1994/02/09  17:11:45  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/gamesave.c:
-
- * Revision 1.3  1996/02/21  13:59:17  allender
- * check Data folder when can't open a level file from a hog
- *
- * Revision 1.2  1995/10/31  10:23:23  allender
- * shareware stuff
- *
- * Revision 1.1  1995/05/16  15:25:37  allender
- * Initial revision
- *
- * Revision 2.2  1995/04/23  14:53:12  john
- * Made some mine structures read in with no structure packing problems.
- *
- * Revision 2.1  1995/03/20  18:15:43  john
- * Added code to not store the normals in the segment structure.
- *
- * Revision 2.0  1995/02/27  11:29:50  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.207  1995/02/23  10:17:36  allender
- * fixed parameter mismatch with compute_segment_center
- *
- * Revision 1.206  1995/02/22  14:51:17  allender
- * fixed some things that I missed
- *
- * Revision 1.205  1995/02/22  13:31:38  allender
- * remove anonymous unions from object structure
- *
- * Revision 1.204  1995/02/01  20:58:08  john
- * Made editor check hog.
- *
- * Revision 1.203  1995/01/28  17:40:34  mike
- * correct level names (use rdl, sdl) for dumpmine stuff.
- *
- * Revision 1.202  1995/01/25  20:03:46  matt
- * Moved matrix check to avoid orthogonalizing an uninitialize matrix
- *
- * Revision 1.201  1995/01/20  16:56:53  mike
- * remove some mprintfs.
- *
- * Revision 1.200  1995/01/15  19:42:13  matt
- * Ripped out hostage faces for registered version
- *
- * Revision 1.199  1995/01/05  16:59:09  yuan
- * Make it so if editor is loaded, don't get error from typo
- * in filename.
- *
- * Revision 1.198  1994/12/19  12:49:46  mike
- * Change fgets to cfgets.  fgets was getting a pointer mismatch warning.
- *
- * Revision 1.197  1994/12/12  01:20:03  matt
- * Took out object size hack for green claw guys
- *
- * Revision 1.196  1994/12/11  13:19:37  matt
- * Restored calls to fix_object_segs() when debugging is turned off, since
- * it's not a big routine, and could fix some possibly bad problems.
- *
- * Revision 1.195  1994/12/10  16:17:24  mike
- * fix editor bug that was converting transparent walls into rock.
- *
- * Revision 1.194  1994/12/09  14:59:27  matt
- * Added system to attach a fireball to another object for rendering purposes,
- * so the fireball always renders on top of (after) the object.
- *
- * Revision 1.193  1994/12/08  17:19:02  yuan
- * Cfiling stuff.
- *
- * Revision 1.192  1994/12/02  20:01:05  matt
- * Always give vulcan cannon powerup same amount of ammo, regardless of
- * how much it was saved with
- *
- * Revision 1.191  1994/11/30  17:45:57  yuan
- * Saving files now creates RDL/SDLs instead of CDLs.
- *
- * Revision 1.190  1994/11/30  17:22:14  matt
- * Ripped out hostage faces in shareware version
- *
- * Revision 1.189  1994/11/28  00:09:30  allender
- * commented out call to newdemo_record_start_demo in load_level...what is
- * this doing here anyway?????
- *
- * Revision 1.188  1994/11/27  23:13:48  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.187  1994/11/27  18:06:20  matt
- * Cleaned up LVL/CDL file loading
- *
- * Revision 1.186  1994/11/25  22:46:29  matt
- * Allow ESC out of compiled/normal menu (esc=compiled).
- *
- * Revision 1.185  1994/11/23  12:18:35  mike
- * move level names here...a more logical place than dumpmine.
- *
- * Revision 1.184  1994/11/21  20:29:19  matt
- * If hostage info is bad, fix it.
- *
- * Revision 1.183  1994/11/21  20:26:07  matt
- * Fixed bug, I hope
- *
- * Revision 1.182  1994/11/21  20:20:37  matt
- * Fixed stupid mistake
- *
- * Revision 1.181  1994/11/21  20:18:40  matt
- * Fixed (hopefully) totally bogus writing of hostage data
- *
- * Revision 1.180  1994/11/20  14:11:56  matt
- * Gracefully handle two hostages having same id
- *
- * Revision 1.179  1994/11/19  23:55:05  mike
- * remove Assert, put in comment for Matt.
- *
- * Revision 1.178  1994/11/19  19:53:24  matt
- * Added code to full support different hostage head clip & message for
- * each hostage.
- *
- * Revision 1.177  1994/11/19  15:15:21  mike
- * remove unused code and data
- *
- * Revision 1.176  1994/11/19  10:28:28  matt
- * Took out write routines when editor compiled out
- *
- * Revision 1.175  1994/11/17  20:38:25  john
- * Took out warning.
- *
- * Revision 1.174  1994/11/17  20:36:34  john
- * Made it so that saving a mine will write the .cdl even
- * if .lvl gets error.
- *
- * Revision 1.173  1994/11/17  20:26:19  john
- * Made the game load whichever of .cdl or .lvl exists,
- * and if they both exist, prompt the user for which one.
- *
- * Revision 1.172  1994/11/17  20:11:20  john
- * Fixed warning.
- *
- * Revision 1.171  1994/11/17  20:09:26  john
- * Added new compiled level format.
- *
- * Revision 1.170  1994/11/17  14:57:21  mike
- * moved segment validation functions from editor to main.
- *
- * Revision 1.169  1994/11/17  11:39:21  matt
- * Ripped out code to load old mines
- *
- * Revision 1.168  1994/11/16  11:24:53  matt
- * Made attack-type robots have smaller radius, so they get closer to player
- *
- * Revision 1.167  1994/11/15  21:42:47  mike
- * better error messages.
- *
- * Revision 1.166  1994/11/15  15:30:41  matt
- * Save ptr to name of level being loaded
- *
- * Revision 1.165  1994/11/14  20:47:46  john
- * Attempted to strip out all the code in the game
- * directory that uses any ui code.
- *
- * Revision 1.164  1994/11/14  14:34:23  matt
- * Fixed up handling when textures can't be found during remap
- *
- * Revision 1.163  1994/11/10  14:02:49  matt
- * Hacked in support for player ships with different textures
- *
- * Revision 1.162  1994/11/06  14:38:17  mike
- * Remove an apparently unnecessary mprintf.
- *
- * Revision 1.161  1994/10/30  14:11:28  mike
- * ripout local segments stuff.
- *
- * Revision 1.160  1994/10/28  12:10:41  matt
- * Check that was supposed to happen only when editor was in was happening
- * only when editor was out.
- *
- * Revision 1.159  1994/10/27  11:25:32  matt
- * Only do connectivity error check when editor in
- *
- * Revision 1.158  1994/10/27  10:54:00  matt
- * Made connectivity error checking put up warning if errors found
- *
- * Revision 1.157  1994/10/25  10:50:54  matt
- * Vulcan cannon powerups now contain ammo count
- *
- * Revision 1.156  1994/10/23  02:10:43  matt
- * Got rid of obsolete hostage_info stuff
- *
- * Revision 1.155  1994/10/22  18:57:26  matt
- * Added call to check_segment_connections()
- *
- * Revision 1.154  1994/10/21  12:19:23  matt
- * Clear transient objects when saving (& loading) games
- *
- * Revision 1.153  1994/10/21  11:25:10  mike
- * Use new constant IMMORTAL_TIME.
- *
- * Revision 1.152  1994/10/20  12:46:59  matt
- * Replace old save files (MIN/SAV/HOT) with new LVL files
- *
- * Revision 1.151  1994/10/19  19:26:32  matt
- * Fixed stupid bug
- *
- * Revision 1.150  1994/10/19  16:46:21  matt
- * Made tmap overrides for robots remap texture numbers
- *
- * Revision 1.149  1994/10/18  08:50:27  yuan
- * Fixed correct variable this time.
- *
- * Revision 1.148  1994/10/18  08:45:02  yuan
- * Oops. forgot load function.
- *
- * Revision 1.147  1994/10/18  08:42:10  yuan
- * Avoid the int3.
- *
- * Revision 1.146  1994/10/17  21:34:57  matt
- * Added support for new Control Center/Main Reactor
- *
- * Revision 1.145  1994/10/15  19:06:34  mike
- * Fix bug, maybe, having to do with something or other, ...
- *
- * Revision 1.144  1994/10/12  21:07:33  matt
- * Killed unused field in object structure
- *
- * Revision 1.143  1994/10/06  14:52:55  mike
- * Put check in to detect possibly bogus walls in last segment which leaked through an earlier check
- * due to misuse of Highest_segment_index.
- *
- * Revision 1.142  1994/10/05  22:12:44  mike
- * Put in cleanup for matcen/fuelcen links.
- *
- * Revision 1.141  1994/10/03  11:30:05  matt
- * Make sure player in a valid segment before saving
- *
- * Revision 1.140  1994/09/28  11:14:41  mike
- * Better error messaging on bogus mines: Only bring up dialog box if a "real" (level??.*) level.
- *
- * Revision 1.139  1994/09/28  09:22:58  mike
- * Comment out a mprintf.
- *
- * Revision 1.138  1994/09/27  17:08:36  mike
- * Message boxes when you load bogus mines.
- *
- * Revision 1.137  1994/09/27  15:43:45  mike
- * Move the dump stuff to dumpmine.
- *
- * Revision 1.136  1994/09/27  00:02:31  mike
- * Dump text files (".txm") when loading a mine, showing all kinds of useful mine info.
- *
- * Revision 1.135  1994/09/26  11:30:41  matt
- * Took out code which loaded bogus player structure
- *
- * Revision 1.134  1994/09/26  11:18:44  john
- * Fixed some conflicts with newseg.
- *
- * Revision 1.133  1994/09/26  10:56:58  matt
- * Fixed inconsistancies in lifeleft for immortal objects
- *
- * Revision 1.132  1994/09/25  23:41:10  matt
- * Changed the object load & save code to read/write the structure fields one
- * at a time (rather than the whole structure at once).  This mean that the
- * object structure can be changed without breaking the load/save functions.
- * As a result of this change, the local_object data can be and has been
- * incorporated into the object array.  Also, timeleft is now a property
- * of all objects, and the object structure has been otherwise cleaned up.
-
-------------------------------------------------------------------------
-main/gamesave.h:
-
- * Revision 1.1  1995/05/16  15:57:10  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:30:25  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.11  1994/11/23  12:19:32  mike
- * detail level menu.
- *
- * Revision 1.10  1994/10/20  12:47:30  matt
- * Replace old save files (MIN/SAV/HOT) with new LVL files
- *
- * Revision 1.9  1994/09/27  17:08:47  mike
- * Message boxes when you load bogus mines.
- *
- * Revision 1.8  1994/09/27  15:43:05  mike
- * Prototype write_game_text.
- *
- * Revision 1.7  1994/09/14  15:46:39  matt
- * Added function load_mine_only()
- *
- * Revision 1.6  1994/07/22  12:36:28  matt
- * Cleaned up editor/game interactions some more.
- *
- * Revision 1.5  1994/07/20  13:38:14  matt
- * Added get_level_name() prototype
- *
- * Revision 1.4  1994/06/20  22:19:41  john
- * Added Gamesave_num_org_robots.
- *
- * Revision 1.3  1994/06/14  11:32:49  john
- * Made Newdemo record & restore the current mine.
- *
- * Revision 1.2  1994/05/14  17:16:25  matt
- * Got rid of externs in source (non-header) files
- *
- * Revision 1.1  1994/05/14  16:01:26  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/gameseg.c:
-
- * Revision 1.9  1995/11/08  16:26:04  allender
- * minor bug fix in find_connected_distance
- *
- * Revision 1.8  1995/10/12  17:36:55  allender
- * made trace_segs only recurse 100 times max
- *
- * Revision 1.7  1995/10/11  18:29:01  allender
- * removed Int3 from trace_segs
- *
- * Revision 1.6  1995/10/11  14:13:54  allender
- * put in stack check code into trace-segs
- *
- * Revision 1.5  1995/09/23  09:40:25  allender
- * put in casts in extract_shortpos to try and solve shortpos problem
- * with appletalk
- *
- * Revision 1.4  1995/09/20  14:26:50  allender
- * added flag to swap bytes on extract shortpot
- *
- * Revision 1.3  1995/08/12  12:01:27  allender
- * added flag to create_shortpos to swap bytes
- *
- * Revision 1.2  1995/06/06  10:42:07  allender
- * made shortpos routines swap bytes when extracting and making shortpos structures
- *
- * Revision 1.1  1995/05/16  15:25:46  allender
- * Initial revision
- *
- * Revision 2.2  1995/03/20  18:15:39  john
- * Added code to not store the normals in the segment structure.
- *
- * Revision 2.1  1995/03/08  12:11:39  allender
- * fix shortpos reading/writing
- *
- * Revision 2.0  1995/02/27  11:29:21  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.78  1995/02/22  13:52:22  allender
- * remove anonymous unions from object structure
- *
- * Revision 1.77  1995/02/22  13:24:47  john
- * Removed the vecmat anonymous unions.
- *
- * Revision 1.76  1995/02/13  20:35:01  john
- * Lintized
- *
- * Revision 1.75  1995/02/09  13:10:51  mike
- * remove an annoying mprintf.
- *
- * Revision 1.74  1995/02/05  17:49:28  rob
- * Added assert to gameseg.c.
- *
- * Revision 1.73  1995/02/02  00:49:26  mike
- * new automap segment-depth functionality.
- *
- * Revision 1.72  1995/01/16  21:06:51  mike
- * Move function pick_random_point_in_segment from fireball.c to gameseg.c.
- *
- * Revision 1.71  1994/12/21  19:54:32  matt
- * Added error checking
- *
- * Revision 1.70  1994/12/11  21:34:09  matt
- * Changed assert() to int3()
- *
- * Revision 1.69  1994/12/01  21:04:37  matt
- * Several important changes:
- *  (1) Checking against triangulated sides has been standardized a bit
- *  (2) Code has been added to de-triangulate some sides
- *  (3) BIG ONE: the tolerance for checking a point against a plane has
- *      been drastically relaxed
- *
- *
- * Revision 1.67  1994/11/27  23:12:21  matt
- * Made changes for new mprintf calling convention
- *
- * Revision 1.66  1994/11/26  22:51:40  matt
- * Removed editor-only fields from segment structure when editor is compiled
- * out, and padded segment structure to even multiple of 4 bytes.
- *
- * Revision 1.65  1994/11/22  16:55:38  mike
- * use memset in place of loop to clear array.
- *
- * Revision 1.64  1994/11/19  15:20:37  mike
- * rip out unused code and data
- *
- * Revision 1.63  1994/11/18  18:31:48  matt
- * Fixed code again (and maybe for real)
- *
- * Revision 1.62  1994/11/18  16:54:24  matt
- * Fixed extract_orient_from_segment()
- *
- * Revision 1.61  1994/11/17  14:56:50  mike
- * moved segment validation functions from editor to main.
- *
- * Revision 1.60  1994/11/16  23:38:53  mike
- * new improved boss teleportation behavior.
- *
- * Revision 1.59  1994/10/30  14:12:46  mike
- * rip out local segments stuff.
- *
- * Revision 1.58  1994/10/27  10:53:39  matt
- * Made connectivity error checking put up warning if errors found
- *
- * Revision 1.57  1994/10/25  21:19:26  mike
- * debugging code.
- *
- * Revision 1.56  1994/10/25  11:26:09  mike
- * *** empty log message ***
- *
- * Revision 1.55  1994/10/22  22:36:08  matt
- * Improved error finding routine
- *
- * Revision 1.54  1994/10/22  18:56:51  matt
- * Fixed obscure bug in segment trace code
- * Added error find routine, check_segment_connections()
- *
- * Revision 1.53  1994/10/17  14:05:19  matt
- * Don't give recursion assert if doing lighting
- *
- * Revision 1.52  1994/10/15  19:03:48  mike
- * Don't do exhaustive search in smooth lighting.
- *
- * Revision 1.51  1994/10/12  09:46:44  mike
- * Add debug code for trapping exhaustive searches.
- *
- * Revision 1.50  1994/10/11  20:50:41  matt
- * Made find_point_seg() take -1 as segnum, meaning to search all segments
- *
- * Revision 1.49  1994/10/11  17:40:31  matt
- * Fixed bug that caused segment trace to only go through sides you can fly through
- *
- * Revision 1.48  1994/10/10  14:48:16  matt
- * Fixed mistake that caused odd pauses and occasional int3's
- *
- * Revision 1.47  1994/10/09  23:50:41  matt
- * Made find_hitpoint_uv() work with triangulated sides
- *
- * Revision 1.46  1994/10/08  23:06:52  matt
- * trace_segs() didn't know about external walls
- *
- * Revision 1.45  1994/10/07  22:18:57  mike
- * Put in asserts to trap bad segnums.
- *
- * Revision 1.44  1994/10/06  14:08:07  matt
- * Added new function, extract_orient_from_segment()
- *
- * Revision 1.43  1994/10/04  16:24:11  mike
- * Set global Connected_segment_distance for debug reasons for aipath.c.
- *
- * Revision 1.42  1994/10/04  09:18:42  mike
- * Comment out a variable definition, preventing a warning message.
- *
- * Revision 1.41  1994/10/03  23:43:42  mike
- * Put in a warning for overrunning point_segs buffer.
- *
- * Revision 1.40  1994/10/03  20:55:43  rob
- * Added velocity to shortpos.
- *
- * Revision 1.39  1994/09/27  11:46:06  rob
- * re-fixed that same bug (ugh).
- *
- * Revision 1.38  1994/09/27  10:10:51  rob
- * Fixed bug in extract_shortpos (obj_relink added).
- *
- * Revision 1.37  1994/09/25  23:41:02  matt
- * Changed the object load & save code to read/write the structure fields one
- * at a time (rather than the whole structure at once).  This mean that the
- * object structure can be changed without breaking the load/save functions.
- * As a result of this change, the local_object data can be and has been
- * incorporated into the object array.  Also, timeleft is now a property
- * of all objects, and the object structure has been otherwise cleaned up.
- *
- * Revision 1.36  1994/09/22  19:03:05  mike
- * Add shortpos manipulation functions create_shortpos and extract_shortpos.
- *
- * Revision 1.35  1994/09/19  21:21:16  mike
- * Minor optimization to find_connected_distance.
- *
- * Revision 1.34  1994/09/19  21:05:25  mike
- * Write function find_connected_distance,
- * returns distance between two points as travellable through the mine.
- *
- * Revision 1.33  1994/08/30  15:07:15  matt
- * Changed find_point_seg() to deal with some infinite recursion problems.
- *
- * Revision 1.32  1994/08/11  18:58:32  mike
- * Use ints in place of shorts for optimization.
- *
- * Revision 1.31  1994/08/04  00:20:09  matt
- * Cleaned up fvi & physics error handling; put in code to make sure objects
- * are in correct segment; simplified segment finding for objects and points
- *
- * Revision 1.30  1994/08/03  16:46:12  mike
- * not much...
- *
- * Revision 1.29  1994/08/02  20:41:31  matt
- * Fixed bug in get_side_verts()
- *
- * Revision 1.28  1994/08/02  19:04:25  matt
- * Cleaned up vertex list functions
- *
- * Revision 1.27  1994/08/01  10:39:44  matt
- * find_new_seg() now will look through any kind of wall but a totally solid one
- *
- * Revision 1.26  1994/07/28  19:15:59  matt
- * Fixed yet another bug in get_seg_masks()
-
-------------------------------------------------------------------------
-main/gameseg.h:
-
- * Revision 1.1  1995/05/16  15:57:18  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:31:20  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.24  1995/02/01  16:34:03  john
- * Linted.
- *
- * Revision 1.23  1995/01/16  21:06:36  mike
- * Move function pick_random_point_in_segment from fireball.c to gameseg.c.
- *
- * Revision 1.22  1994/11/23  12:18:59  mike
- * prototype for level names.
- *
- * Revision 1.21  1994/11/17  14:56:59  mike
- * moved segment validation functions from editor to main.
- *
- * Revision 1.20  1994/11/16  23:38:46  mike
- * new improved boss teleportation behavior.
- *
- * Revision 1.19  1994/10/30  14:12:14  mike
- * rip out local segments stuff.
- *
- * Revision 1.18  1994/10/09  23:51:07  matt
- * Made find_hitpoint_uv() work with triangulated sides
- *
- * Revision 1.17  1994/10/06  14:08:22  matt
- * Added new function, extract_orient_from_segment()
- *
- * Revision 1.16  1994/09/19  21:05:52  mike
- * Prototype for find_connected_distance.
- *
- * Revision 1.15  1994/08/11  18:58:45  mike
- * Change shorts to ints.
- *
- * Revision 1.14  1994/08/04  00:21:09  matt
- * Cleaned up fvi & physics error handling; put in code to make sure objects
- * are in correct segment; simplified segment finding for objects and points
- *
- * Revision 1.13  1994/08/02  19:04:25  matt
- * Cleaned up vertex list functions
- *
- * Revision 1.12  1994/07/21  19:01:53  mike
- * lsegment stuff.
- *
- * Revision 1.11  1994/07/07  09:31:13  matt
- * Added comments
- *
- * Revision 1.10  1994/06/14  12:21:20  matt
- * Added new function, find_point_seg()
- *
- * Revision 1.9  1994/05/29  23:17:38  matt
- * Move find_object_seg() from physics.c to gameseg.c
- * Killed unused find_point_seg()
- *
- * Revision 1.8  1994/05/20  11:56:57  matt
- * Cleaned up find_vector_intersection() interface
- * Killed check_point_in_seg(), check_player_seg(), check_object_seg()
- *
- * Revision 1.7  1994/03/17  18:07:38  yuan
- * Removed switch code... Now we just have Walls, Triggers, and Links...
- *
- * Revision 1.6  1994/02/22  18:14:44  yuan
- * Added new wall system
- *
- * Revision 1.5  1994/02/17  11:33:22  matt
- * Changes in object system
- *
- * Revision 1.4  1994/02/16  13:48:33  mike
- * enable editor to compile out.
- *
- * Revision 1.3  1994/02/14  12:05:07  mike
- * change segment data structure.
- *
- * Revision 1.2  1994/02/10  16:07:20  mike
- * separate editor from game based on EDITOR flag.
- *
- * Revision 1.1  1994/02/09  15:45:38  mike
- * Initial revision
-
-------------------------------------------------------------------------
-main/gameseq.c:
-
- * Revision 1.1  1995/12/05  16:02:05  allender
- * Initial revision
- *
- * Revision 1.14  1995/11/03  12:55:30  allender
- * shareware changes
- *
- * Revision 1.13  1995/10/31  10:23:07  allender
- * shareware stuff
- *
- * Revision 1.12  1995/10/18  18:25:02  allender
- * call auto_select_weapon after initing ammo since that may
- * change the secondary weapon status
- *
- * Revision 1.11  1995/10/17  13:17:11  allender
- * added closebox when entering pilot name
- *
- * Revision 1.10  1995/09/24  10:56:59  allender
- * new players must be looked for in Players directory
- *
- * Revision 1.9  1995/09/18  08:08:08  allender
- * remove netgame binding if at endgame
- *
- * Revision 1.8  1995/09/14  14:13:01  allender
- * initplayerobject have void return
- *
- * Revision 1.7  1995/08/31  12:54:42  allender
- * try and fix bug
- *
- * Revision 1.6  1995/08/26  16:25:40  allender
- * put return values on needed functions
- *
- * Revision 1.5  1995/08/14  09:26:28  allender
- * added byteswap header files
- *
- * Revision 1.4  1995/08/01  13:57:42  allender
- * macified player file stuff -- players stored in seperate folder
- *
- * Revision 1.3  1995/06/08  12:54:37  allender
- * new function for calculating a segment based checksum since the old way
- * is byte order dependent
- *
- * Revision 1.2  1995/06/02  07:42:10  allender
- * removed duplicate extern for network_endlevel_poll2
- *
- * Revision 1.1  1995/05/16  15:25:56  allender
- * Initial revision
- *
- * Revision 2.10  1995/12/19  15:48:25  john
- * Made screen reset when loading new level.
- *
- * Revision 2.9  1995/07/07  16:47:52  john
- * Fixed bug with reactor time..
- *
- * Revision 2.8  1995/06/15  12:14:18  john
- * Made end game, win game and title sequences all go
- * on after 5 minutes automatically.
- *
- * Revision 2.7  1995/05/26  16:16:25  john
- * Split SATURN into define's for requiring cd, using cd, etc.
- * Also started adding all the Rockwell stuff.
- *
- * Revision 2.6  1995/03/24  13:11:20  john
- * Added save game during briefing screens.
- *
- * Revision 2.5  1995/03/23  17:56:20  allender
- * added code to record old laser level and weapons when player gets
- * new ship
- *
- * Revision 2.4  1995/03/21  08:39:14  john
- * Ifdef'd out the NETWORK code.
- *
- * Revision 2.3  1995/03/15  14:33:33  john
- * Added code to force the Descent CD-rom in the drive.
- *
- * Revision 2.2  1995/03/06  16:47:26  mike
- * destination saturn
- *
- * Revision 2.1  1995/03/06  15:23:23  john
- * New screen techniques.
- *
- * Revision 2.0  1995/02/27  11:28:53  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.310  1995/02/14  10:48:09  mike
- * zero bonus if you are a cheater.
- *
- * Revision 1.309  1995/02/11  19:17:08  rob
- * Fixed bug in laser fire rate after demo playback.
- *
- * Revision 1.308  1995/02/11  14:34:08  rob
- * Added include of netmisc.c
- *
- * Revision 1.307  1995/02/11  14:29:04  rob
- * Fixes for invul. controlcen.
- *
- * Revision 1.306  1995/02/11  13:47:00  mike
- * fix cheats.
- *
- * Revision 1.305  1995/02/11  13:10:52  rob
- * Fixed end of anarchy mission problems.
- *
- * Revision 1.304  1995/02/11  12:46:12  mike
- * initialize Robot_firing_enabled, part of AHIMSA cheat.
- *
- * Revision 1.303  1995/02/11  12:42:03  john
- * Added new song method, with FM bank switching..
- *
- * Revision 1.302  1995/02/10  17:39:29  matt
- * Changed secret exit message to be centered
- *
- * Revision 1.301  1995/02/10  16:17:33  mike
- * init Last_level_path_shown.
- *
- * Revision 1.300  1995/02/09  22:18:22  john
- * Took out between level saves.
- *
- * Revision 1.299  1995/02/09  12:11:42  rob
- * Get rid of high scores thing for multiplayer games.
- *
- * Revision 1.298  1995/02/08  20:34:24  rob
- * Took briefing screens back OUT of coop games (per Interplay request)
- *
- * Revision 1.297  1995/02/08  19:20:09  rob
- * Moved checksum calc.
- *
- * Revision 1.296  1995/02/05  14:39:24  rob
- * Changed object mapping to be more efficient.
- *
- * Revision 1.295  1995/02/02  19:05:38  john
- * Made end level menu for 27 not overwrite descent title..
- *
- * Revision 1.294  1995/02/02  16:36:42  adam
- * *** empty log message ***
- *
- * Revision 1.293  1995/02/02  15:58:02  john
- * Added turbo mode cheat.
- *
- * Revision 1.292  1995/02/02  15:29:34  matt
- * Changed & localized secret level text
- *
- * Revision 1.291  1995/02/02  10:50:03  adam
- * messed with secret level message
- *
- * Revision 1.290  1995/02/02  01:20:28  adam
- * changed endgame song temporarily.
- *
- * Revision 1.289  1995/02/01  23:19:43  rob
- * Fixed up endlevel stuff for multiplayer.
- * Put in palette fades around areas that didn't have them before.
- *
- * Revision 1.288  1995/02/01  17:12:34  mike
- * Make score come after endgame screens.
- *
- * Revision 1.287  1995/01/30  18:34:30  rob
- * Put briefing screens back into coop games.
- *
- * Revision 1.286  1995/01/27  13:07:59  rob
- * Removed erroneous warning message.
- *
- * Revision 1.285  1995/01/27  11:47:43  rob
- * Removed new secret level menu from multiplayer games.
- *
- * Revision 1.284  1995/01/26  22:11:11  mike
- * Purple chromo-blaster (ie, fusion cannon) spruce up (chromification)
- *
- * Revision 1.283  1995/01/26  16:55:13  rob
- * Removed ship bonus from cooperative endgame.
- *
- * Revision 1.282  1995/01/26  16:45:24  mike
- * Add autofire fusion cannon stuff.
- *
- * Revision 1.281  1995/01/26  14:44:44  rob
- * Removed unnecessary #ifdefs around mprintfs.
- * Changed NumNetPlayerPositions to be independant of MaxNumNetPlayers to
- * accomodate 4-player robo-archy games with 8 start positions.
- *
- * Revision 1.280  1995/01/26  12:19:01  rob
- * Changed network_do_frame call.
- *
- * Revision 1.279  1995/01/26  00:35:03  matt
- * Changed numbering convention for HMP files for levels
- *
- * Revision 1.278  1995/01/25  16:07:59  matt
- * Added message (prototype) when going to secret level
- *
- * Revision 1.277  1995/01/22  18:57:23  matt
- * Made player highest level work with missions
- *
- * Revision 1.276  1995/01/21  23:13:08  matt
- * Made high scores with (not work, really) with loaded missions
- * Don't give player high score when quit game
- *
- * Revision 1.275  1995/01/21  17:17:39  john
- * *** empty log message ***
- *
- * Revision 1.274  1995/01/21  17:15:38  john
- * Added include for state.h
- *
- * Revision 1.273  1995/01/21  16:21:14  matt
- * Fixed bugs in secret level sequencing
- *
- * Revision 1.272  1995/01/20  22:47:29  matt
- * Mission system implemented, though imcompletely
- *
- * Revision 1.271  1995/01/19  17:00:48  john
- * Made save game work between levels.
- *
- * Revision 1.270  1995/01/17  17:49:10  rob
- * Added key syncing for coop.
- *
- * Revision 1.269  1995/01/17  14:27:37  john
- * y
- *
- * Revision 1.268  1995/01/17  13:36:33  john
- * Moved pig loading into StartNewLevelSub.
- *
- * Revision 1.267  1995/01/16  16:53:55  john
- * Added code to save cheat state during save game.
- *
- * Revision 1.266  1995/01/15  19:42:10  matt
- * Ripped out hostage faces for registered version
- *
- * Revision 1.265  1995/01/15  16:55:06  john
- * Improved mine texture parsing.
- *
- * Revision 1.264  1995/01/15  11:56:24  john
- * Working version of paging.
- *
- * Revision 1.263  1995/01/14  19:16:40  john
- * First version of new bitmap paging code.
- *
- * Revision 1.262  1995/01/13  17:38:58  yuan
- * Removed Int3() for number players check.
- *
- * Revision 1.261  1995/01/12  12:09:52  yuan
- * Added coop object capability.
- *
- * Revision 1.260  1995/01/05  17:16:08  yuan
- * Removed Int3s.
- *
- * Revision 1.259  1995/01/05  11:34:29  john
- * Took out endlevel save stuff for registered.
- *
- * Revision 1.258  1995/01/04  19:00:16  rob
- * Added some debugging for two bugs.
- *
- * Revision 1.257  1995/01/04  13:18:18  john
- * Added cool 6 game save.
- *
- * Revision 1.256  1995/01/04  08:46:18  rob
- * JOHN CHECKED IN FOR ROB !!!
- *
- * Revision 1.255  1995/01/02  20:07:35  rob
- * Added score syncing.
- * Get rid of endlevel score for coop games (put it back in elsewhere)
- *
- * Revision 1.254  1995/01/02  16:17:43  mike
- * init super boss.
- *
- * Revision 1.253  1994/12/21  21:08:47  rob
- * fixed a bug in coop player ship positions.
- *
- * Revision 1.252  1994/12/21  12:57:08  rob
- * Handle additional player ships in mines.
-
-------------------------------------------------------------------------
-main/gameseq.h:
-
- * Revision 1.4  1995/10/31  10:22:55  allender
- * shareware stuff
- *
- * Revision 1.3  1995/09/14  14:13:14  allender
- * initplayerobject have void return
- *
- * Revision 1.2  1995/08/24  15:36:17  allender
- * fixed prototypes warnings
- *
- * Revision 1.1  1995/05/16  15:57:26  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:32:03  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.41  1995/02/07  10:51:54  rob
- * fix typo.
- *
- * Revision 1.40  1995/02/06  20:10:16  rob
- * Extern'ed DoEndLevelScoreGlitz.
- *
- * Revision 1.39  1995/02/01  16:34:13  john
- * Linted.
- *
- * Revision 1.38  1995/01/27  11:15:03  rob
- * Added extern for player position vars.
- *
- * Revision 1.37  1995/01/20  22:47:38  matt
- * Mission system implemented, though imcompletely
- *
- * Revision 1.36  1995/01/17  13:36:08  john
- * Moved pig loading into StartNewLevelSub.
- *
- * Revision 1.35  1995/01/04  12:21:28  john
- * *** empty log message ***
- *
- * Revision 1.34  1995/01/04  12:20:47  john
- * Declearations to work better with game state save.
- *
- *
- * Revision 1.33  1994/12/08  09:46:35  matt
- * Made level name len a multiple of 4 for alignment
- *
- * Revision 1.32  1994/11/29  16:33:29  rob
- * Added new defines for last_secret_level based on shareware or not shareware.
- *
- * Revision 1.31  1994/11/26  15:30:20  matt
- * Allow escape out of change pilot menu
- *
- * Revision 1.30  1994/11/21  17:29:38  matt
- * Cleaned up sequencing & game saving for secret levels
- *
- * Revision 1.29  1994/11/21  15:55:03  matt
- * Corrected LAST_LEVEL
- *
- * Revision 1.28  1994/11/20  22:12:43  mike
- * set LAST_LEVEL based on SHAREWARE.
- *
- * Revision 1.27  1994/11/09  10:55:51  matt
- * Cleaned up initialization for editor -> game transitions
- *
- * Revision 1.26  1994/11/08  17:50:48  rob
- * ADded prototype for StartNewLEvel.
- *
- *
- * Revision 1.25  1994/11/07  17:50:57  rob
- * Added extern prototype for init_player_stats_level called for
- * network games.
- *
- * Revision 1.24  1994/10/25  15:40:03  yuan
- * *** empty log message ***
- *
- * Revision 1.23  1994/10/22  00:08:52  matt
- * Fixed up problems with bonus & game sequencing
- * Player doesn't get credit for hostages unless he gets them out alive
- *
- * Revision 1.22  1994/10/18  18:57:08  matt
- * Added main menu option to enter new player name
- *
- * Revision 1.21  1994/10/07  23:37:32  matt
- * Added prototype
- *
- * Revision 1.20  1994/10/07  16:02:53  matt
- * Loading saved game no longer clears players weapons & other stats
- *
- * Revision 1.19  1994/10/06  14:12:46  matt
- * Added flash effect when player appears
- *
- * Revision 1.18  1994/10/03  13:34:44  matt
- * Added new (and hopefully better) game sequencing functions
- *
- * Revision 1.17  1994/09/30  15:19:53  matt
- * Added new game sequencing functions, but left them disabled for now.
- *
- * Revision 1.16  1994/09/28  17:24:34  matt
- * Added first draft of game save/load system
- *
- * Revision 1.15  1994/09/27  12:29:42  matt
- * Changed level naming
- *
- * Revision 1.14  1994/09/02  11:53:55  mike
- * Rename init_player_stats to init_player_stats_game.
- *
- * Revision 1.13  1994/08/31  20:57:34  matt
- * Cleaned up endlevel/death code
- *
- * Revision 1.12  1994/08/23  18:45:06  yuan
- * Added level 10 capability.. (LEDGES)
- *
- * Revision 1.11  1994/08/18  10:47:38  john
- * Cleaned up game sequencing and player death stuff
- * in preparation for making the player explode into
- * pieces when dead.
- *
- * Revision 1.10  1994/08/15  15:24:45  john
- * Made players know who killed them; Disabled cheat menu
- * during net player; fixed bug with not being able to turn
- * of invulnerability; Made going into edit/starting new leve
- * l drop you out of a net game; made death dialog box.
- *
- * Revision 1.9  1994/08/13  12:20:56  john
- * Made the networking uise the Players array.
- *
- * Revision 1.8  1994/07/22  12:36:24  matt
- * Cleaned up editor/game interactions some more.
- *
- * Revision 1.7  1994/07/19  20:15:33  matt
- * Name for each level now saved in the .SAV file & stored in Current_level_name
- *
- * Revision 1.6  1994/07/02  13:49:33  matt
- * Cleaned up includes
- *
- * Revision 1.5  1994/07/02  13:09:52  matt
- * Moved player stats struct from gameseq.h to player.h
- *
- * Revision 1.4  1994/07/01  16:35:35  yuan
- * Added key system
- *
- * Revision 1.3  1994/06/26  14:07:35  matt
- * Added prototypes
- *
- * Revision 1.2  1994/06/24  17:03:56  john
- * Added VFX support. Also took all game sequencing stuff like
- * EndGame out and put it into gameseq.c
- *
- * Revision 1.1  1994/06/24  14:13:53  john
- * Initial revision
-
-------------------------------------------------------------------------
-main/gauges.c:
-
- * Revision 1.15  1995/10/31  10:22:37  allender
- * shareware stuff
- *
- * Revision 1.14  1995/10/26  14:11:05  allender
- * do copy of weapon boxes in cockpit correctly
- *
- * Revision 1.13  1995/10/21  22:54:56  allender
- * fixed up player names on hud
- *
- * Revision 1.12  1995/10/12  17:39:27  allender
- * fixed status bar lives display
- *
- * Revision 1.11  1995/09/22  15:21:46  allender
- * fixed hud problems (reticle and kill lists) for
- * non pixel doubled mode
- *
- * Revision 1.10  1995/09/13  11:38:47  allender
- * show KB left in heap instead of piggy cache
- *
- * Revision 1.9  1995/09/04  15:52:28  allender
- * fix vulcan ammo count to update without overwritting itself
- *
- * Revision 1.8  1995/08/31  14:11:20  allender
- * worked on hud kill list for non pixel doubled mode
- *
- * Revision 1.7  1995/08/24  16:05:05  allender
- * more gauge placement -- still not done!
- *
- * Revision 1.6  1995/08/18  15:44:56  allender
- * put in PC gauges for keys, lives, and reticle when pixel doubling
- *
- * Revision 1.5  1995/08/18  10:24:47  allender
- * added proper support for cockpit mode -- still needs
- *
- * Revision 1.4  1995/07/26  16:56:34  allender
- * more gauge stuff for status bar.  still problem
- * with ship
- *
- * Revision 1.3  1995/07/17  08:55:57  allender
- * fix up for large status bar.  Still needs some work though
- *
- * Revision 1.2  1995/06/20  09:54:29  allender
- * stopgap measure to get status bar "working" until real mac
- * status bar gets added
- *
- * Revision 1.1  1995/05/16  15:26:05  allender
- * Initial revision
- *
- * Revision 2.7  1995/12/19  16:18:33  john
- * Made weapon info align with canvas width, not 315.
- *
- * Revision 2.6  1995/03/21  14:39:25  john
- * Ifdef'd out the NETWORK code.
- *
- * Revision 2.5  1995/03/14  12:31:25  john
- * Prevent negative shields from printing.
- *
- * Revision 2.4  1995/03/10  12:57:58  allender
- * move rear view text up four pixels up when playing back demo
- *
- * Revision 2.3  1995/03/09  11:47:51  john
- * Added HUD for VR helmets.
- *
- * Revision 2.2  1995/03/06  15:23:26  john
- * New screen techniques.
- *
- * Revision 2.1  1995/02/27  13:13:45  john
- * Removed floating point.
- *
- * Revision 2.0  1995/02/27  11:29:06  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.203  1995/02/11  01:56:45  mike
- * move up weapons text on fullscreen hud, missiles was offscreen.
- *
- * Revision 1.202  1995/02/09  13:23:34  rob
- * Added reticle names in demo playback.
- *
- * Revision 1.201  1995/02/08  19:20:46  rob
- * Show cloaked teammates on H
- * UD.  Get rid of show ID's in anarchy option.
- *
- * Revision 1.200  1995/02/07  21:09:00  mike
- * add flashing to invulnerability and cloak on fullscreen.
- *
- * Revision 1.199  1995/02/02  21:55:57  matt
- * Added new colored key icons for fullscreen
- *
- * Revision 1.198  1995/01/30  17:17:07  rob
- * Fixed teammate names on hud.
- *
- * Revision 1.197  1995/01/28  17:40:49  mike
- * fix gauge fontcolor.
- *
- * Revision 1.196  1995/01/27  17:03:14  mike
- * fix placement of weapon info in multiplayer fullscreen, as per AP request.
- *
- * Revision 1.195  1995/01/27  11:51:23  rob
- * Put deaths tally into cooperative mode
- *
- * Revision 1.194  1995/01/27  11:43:24  adam
- * fiddled with key display
- *
- * Revision 1.193  1995/01/25  23:38:35  mike
- * fix keys on fullscreen.
- *
- * Revision 1.192  1995/01/24  22:03:28  mike
- * Lotsa hud stuff, put a lot of messages up.
- *
- * Revision 1.191  1995/01/23  16:47:21  rob
- * Fixed problem with playing extra life noise in coop.
- *
- * Revision 1.190  1995/01/22  16:00:46  mike
- * remove unneeded string.
- *
- * Revision 1.189  1995/01/22  15:58:22  mike
- * localization
- *
- * Revision 1.188  1995/01/20  17:19:45  rob
- * Fixing colors of hud kill list players.
- *
- * Revision 1.187  1995/01/20  09:19:18  allender
- * record player flags when in CM_FULL_SCREEN
- *
- * Revision 1.186  1995/01/19  16:29:09  allender
- * made demo recording of weapon change be in this file for shareware only
- *
- * Revision 1.185  1995/01/19  15:00:33  allender
- * code to record shield, energy, and ammo in fullscreen
- *
- * Revision 1.184  1995/01/19  13:43:13  matt
- * Fixed "cheater" message on HUD
- *
- * Revision 1.183  1995/01/18  16:11:58  mike
- * Don't show added scores of 0.
- *
- * Revision 1.182  1995/01/17  17:42:39  allender
- * do ammo counts in demo recording
- *
- * Revision 1.181  1995/01/16  17:26:25  rob
- * Fixed problem with coloration of team kill list.
- *
- * Revision 1.180  1995/01/16  17:22:39  john
- * Made so that KB and framerate don't collide.
- *
- * Revision 1.179  1995/01/16  14:58:31  matt
- * Changed score_added display to print "Cheater!" when cheats enabled
- *
- * Revision 1.178  1995/01/15  19:42:07  matt
- * Ripped out hostage faces for registered version
- *
- * Revision 1.177  1995/01/15  19:25:07  mike
- * show vulcan ammo and secondary ammo in fullscreen view.
- *
- * Revision 1.176  1995/01/15  13:16:12  john
- * Made so that paging always happens, lowmem just loads less.
- * Also, make KB load print to hud.
- *
- * Revision 1.175  1995/01/14  19:17:32  john
- * First version of piggy paging.
- *
- * Revision 1.174  1995/01/05  21:25:23  rob
- * Re-did some changes lost due to RCS weirdness.
- *
- * Revision 1.173  1995/01/05  12:22:34  rob
- * Don't show player names for cloaked players.
- *
- * Revision 1.172  1995/01/04  17:14:50  allender
- * make init_gauges work properly on demo playback
- *
- * Revision 1.171  1995/01/04  15:04:42  allender
- * new demo calls for registered version
- *
- * Revision 1.167  1995/01/03  13:03:57  allender
- * pass score points instead of total points.   Added ifdef for
- * multi_send_score
- *
- * Revision 1.166  1995/01/03  11:45:02  allender
- * add hook to record player score
- *
- * Revision 1.165  1995/01/03  11:25:19  allender
- * remove newdemo stuff around score display
- *
- * Revision 1.163  1995/01/02  21:03:53  rob
- * Fixing up the hud-score-list for coop games.
- *
- * Revision 1.162  1994/12/31  20:54:40  rob
- * Added coop mode HUD score list.
- * Added more generic system for player names on HUD.
- *
- * Revision 1.161  1994/12/30  20:13:01  rob
- * Ifdef reticle names on shareware.
- * Added robot reticle naming.
- *
- * Revision 1.160  1994/12/29  17:53:51  mike
- * move up energy/shield in fullscreen to get out of way of kill list.
- *
- * Revision 1.159  1994/12/29  16:44:05  mike
- * add energy and shield showing.
- *
- * Revision 1.158  1994/12/28  16:34:29  mike
- * make warning beep go away on Player_is_dead.
- *
- * Revision 1.157  1994/12/28  10:00:43  allender
- * change in init_gauges to for multiplayer demo playbacks
- *
- * Revision 1.156  1994/12/27  11:06:46  allender
- * removed some previous code to for demo playback stuff
- *
- * Revision 1.155  1994/12/23  14:23:06  john
- * Added floating reticle for VR helments.
- *
- * Revision 1.154  1994/12/21  12:56:41  allender
- * on multiplayer demo playback, show kills and deaths
- *
- * Revision 1.153  1994/12/19  20:28:42  rob
- * Get rid of kill list in coop games.
- *
- * Revision 1.152  1994/12/14  18:06:44  matt
- * Removed compile warnings
- *
- * Revision 1.151  1994/12/14  15:21:28  rob
- * Made gauges align in status_bar net game.
- *
- * Revision 1.150  1994/12/12  17:20:33  matt
- * Don't get bonus points when cheating
- *
- * Revision 1.149  1994/12/12  16:47:00  matt
- * When cheating, get no score.  Change level cheat to prompt for and
- * jump to new level.
- *
- * Revision 1.148  1994/12/12  12:05:45  rob
- * Grey out players who are disconnected.
- *
- * Revision 1.147  1994/12/09  16:19:48  yuan
- * kill matrix stuff.
- *
- * Revision 1.146  1994/12/09  16:12:34  rob
- * Fixed up the status bar kills gauges for net play.
- *
- * Revision 1.145  1994/12/09  01:55:34  rob
- * Added kills list to HUD/status bar.
- * Added something for Mark.
- *
- * Revision 1.144  1994/12/08  21:03:30  allender
- * pass old player flags to record_player_flags
- *
- * Revision 1.143  1994/12/07  22:49:33  mike
- * no homing missile warning during endlevel sequence.
- *
- * Revision 1.142  1994/12/06  13:55:31  matt
- * Use new rounding func, f2ir()
- *
- * Revision 1.141  1994/12/03  19:03:37  matt
- * Fixed vulcan ammo HUD message
- *
- * Revision 1.140  1994/12/03  18:43:18  matt
- * Fixed (hopefully) claok gauge
- *
- * Revision 1.139  1994/12/03  14:26:21  yuan
- * Fixed dumb bug
- *
- * Revision 1.138  1994/12/03  14:17:30  yuan
- * Localization 320
-
-------------------------------------------------------------------------
-main/gauges.h:
-
- * Revision 1.3  1995/08/23  21:37:13  allender
- * fix mcc compiler warmings
- *
- * Revision 1.2  1995/08/18  15:45:24  allender
- * upped max gauges
- *
- * Revision 1.1  1995/05/16  15:57:34  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:28:45  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
- *
- * Revision 1.27  1994/12/14  18:06:39  matt
- * Added prototype
- *
- * Revision 1.26  1994/12/09  16:19:52  yuan
- * kill matrix stuff.
- *
- * Revision 1.25  1994/10/25  11:07:34  mike
- * Prototype play_homing_warning.
- *
- * Revision 1.24  1994/10/24  16:34:39  mike
- * Increase MAX_GAUGE_BMS from 56 to 80...
- *
- * Revision 1.23  1994/10/21  20:43:47  mike
- * Prototype add_bonus_points_to_score.
- *
- * Revision 1.22  1994/10/14  15:56:33  mike
- * Prototype update_laser_weapon_info.
- *
- * Revision 1.21  1994/10/13  15:17:26  mike
- * Remove afterburner references.
- *
- * Revision 1.20  1994/10/05  17:09:46  matt
- * Added functional reticle
- *
- * Revision 1.19  1994/10/04  21:41:29  matt
- * Added cloaked player gauge effect, and different ship bitmap for each player
- *
- * Revision 1.18  1994/09/26  13:29:40  matt
- * Added extra life each 100,000 points, and show icons on HUD for num lives
- *
- * Revision 1.17  1994/09/20  11:56:08  matt
- * Added prototype
- *
- * Revision 1.16  1994/09/20  00:11:03  matt
- * Finished gauges for Status Bar, including hostage video display.
- *
- * Revision 1.15  1994/09/17  23:57:18  matt
- * Got some, but not all, off the status bar gauges working
- *
- * Revision 1.14  1994/09/16  13:08:46  mike
- * Prototype say_afterburner_status.
- *
- * Revision 1.13  1994/09/14  16:27:03  mike
- * Prototype player_dead_message();
- *
- *
- * Revision 1.12  1994/07/20  17:34:43  yuan
- * Some minor bug fixes and new key gauges...
- *
- * Revision 1.11  1994/07/14  14:46:02  yuan
- * Added score effect.
- *
- * Revision 1.10  1994/07/12  16:22:00  yuan
- * Increased number of maximum gauges.
- *
- * Revision 1.9  1994/07/11  20:10:36  yuan
- * Numerical gauges.
- *
- * Revision 1.8  1994/07/10  18:01:28  yuan
- * Added new gauges.
- *
- * Revision 1.7  1994/06/21  15:08:22  john
- * Made demo record HUD message and cleaned up the HUD code.
- *
- * Revision 1.6  1994/06/21  12:40:46  yuan
- * Fixing HUD message.
- *
- * Revision 1.5  1994/06/21  12:11:56  yuan
- * Fixed up menus and added HUDisplay messages.
- *
- * Revision 1.4  1994/04/28  21:34:24  mike
- * prototype check_erase_gauge
- *
- * Revision 1.3  1994/04/06  14:42:46  yuan
- * Adding new powerups.
- *
- * Revision 1.2  1993/12/05  22:48:58  matt
- * Reworked include files in an attempt to cut down on build times
- *
- * Revision 1.1  1993/12/05  21:07:55  matt
- * Initial revision
-
-------------------------------------------------------------------------
-main/hostage.c:
-
- * Revision 1.1  1995/05/16  15:26:24  allender
- * Initial revision
- *
- * Revision 2.0  1995/02/27  11:28:36  john
- * New version 2.0, which has no anonymous unions, builds with
- * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.