aboutsummaryrefslogtreecommitdiffstats
path: root/demos/3rdparty/doom/r_draw.h
diff options
context:
space:
mode:
authorinmarket <andrewh@inmarket.com.au>2013-12-24 01:00:14 +1000
committerinmarket <andrewh@inmarket.com.au>2013-12-24 01:00:14 +1000
commit39adfff2a9f73919dd09593efc38884dc2a05f40 (patch)
treef0fdf8c70ce4a1396e33927f9033049de370c56a /demos/3rdparty/doom/r_draw.h
parent57d9c4854beefd22aa367f6a44b5da4a586632b1 (diff)
downloaduGFX-39adfff2a9f73919dd09593efc38884dc2a05f40.tar.gz
uGFX-39adfff2a9f73919dd09593efc38884dc2a05f40.tar.bz2
uGFX-39adfff2a9f73919dd09593efc38884dc2a05f40.zip
demo - DOOM the game.
Runs but not quite functional yet (requires user input to be completed). Shareware WAD file. Please read README.txt and DOOMLIC.txt
Diffstat (limited to 'demos/3rdparty/doom/r_draw.h')
-rw-r--r--demos/3rdparty/doom/r_draw.h115
1 files changed, 115 insertions, 0 deletions
diff --git a/demos/3rdparty/doom/r_draw.h b/demos/3rdparty/doom/r_draw.h
new file mode 100644
index 00000000..534fffd9
--- /dev/null
+++ b/demos/3rdparty/doom/r_draw.h
@@ -0,0 +1,115 @@
+// Emacs style mode select -*- C++ -*-
+//-----------------------------------------------------------------------------
+//
+// $Id:$
+//
+// Copyright (C) 1993-1996 by id Software, Inc.
+//
+// This source is available for distribution and/or modification
+// only under the terms of the DOOM Source Code License as
+// published by id Software. All rights reserved.
+//
+// The source is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// FITNESS FOR A PARTICULAR PURPOSE. See the DOOM Source Code License
+// for more details.
+//
+// DESCRIPTION:
+// System specific interface stuff.
+//
+//-----------------------------------------------------------------------------
+
+
+#ifndef __R_DRAW__
+#define __R_DRAW__
+
+
+#ifdef __GNUG__
+#pragma interface
+#endif
+
+
+extern lighttable_t* dc_colormap;
+extern int dc_x;
+extern int dc_yl;
+extern int dc_yh;
+extern fixed_t dc_iscale;
+extern fixed_t dc_texturemid;
+
+// first pixel in a column
+extern byte* dc_source;
+
+
+// The span blitting interface.
+// Hook in assembler or system specific BLT
+// here.
+void R_DrawColumn (void);
+void R_DrawColumnLow (void);
+
+// The Spectre/Invisibility effect.
+void R_DrawFuzzColumn (void);
+void R_DrawFuzzColumnLow (void);
+
+// Draw with color translation tables,
+// for player sprite rendering,
+// Green/Red/Blue/Indigo shirts.
+void R_DrawTranslatedColumn (void);
+void R_DrawTranslatedColumnLow (void);
+
+void
+R_VideoErase
+( unsigned ofs,
+ int count );
+
+extern int ds_y;
+extern int ds_x1;
+extern int ds_x2;
+
+extern lighttable_t* ds_colormap;
+
+extern fixed_t ds_xfrac;
+extern fixed_t ds_yfrac;
+extern fixed_t ds_xstep;
+extern fixed_t ds_ystep;
+
+// start of a 64*64 tile image
+extern byte* ds_source;
+
+extern byte* translationtables;
+extern byte* dc_translation;
+
+
+// Span blitting for rows, floor/ceiling.
+// No Sepctre effect needed.
+void R_DrawSpan (void);
+
+// Low resolution mode, 160x200?
+void R_DrawSpanLow (void);
+
+
+void
+R_InitBuffer
+( int width,
+ int height );
+
+
+// Initialize color translation tables,
+// for player rendering etc.
+void R_InitTranslationTables (void);
+
+
+
+// Rendering function.
+void R_FillBackScreen (void);
+
+// If the view size is not full screen, draws a border around it.
+void R_DrawViewBorder (void);
+
+
+
+#endif
+//-----------------------------------------------------------------------------
+//
+// $Log:$
+//
+//-----------------------------------------------------------------------------