Rearange menu of mpegplayer. Add new menu with "settings" and "quit", and remove...
[kugel-rb.git] / apps / plugins / doom / r_draw.h
blob3b4313583689abdff407e07d36e3920945cfa44f
1 /* Emacs style mode select -*- C++ -*-
2 *-----------------------------------------------------------------------------
5 * PrBoom a Doom port merged with LxDoom and LSDLDoom
6 * based on BOOM, a modified and improved DOOM engine
7 * Copyright (C) 1999 by
8 * id Software, Chi Hoang, Lee Killough, Jim Flynn, Rand Phares, Ty Halderman
9 * Copyright (C) 1999-2000 by
10 * Jess Haas, Nicolas Kalkhof, Colin Phipps, Florian Schulze
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * This program is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 * GNU General Public License for more details.
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, write to the Free Software
24 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
25 * 02111-1307, USA.
27 * DESCRIPTION:
28 * System specific interface stuff.
30 *-----------------------------------------------------------------------------*/
32 #ifndef __R_DRAW__
33 #define __R_DRAW__
35 #include "r_defs.h"
37 #ifdef __GNUG__
38 #pragma interface
39 #endif
41 extern lighttable_t *dc_colormap;
42 extern int dc_x;
43 extern int dc_yl;
44 extern int dc_yh;
45 extern fixed_t dc_iscale;
46 extern fixed_t dc_texturemid;
47 extern int dc_texheight; // killough
49 // first pixel in a column
50 extern const byte *dc_source;
52 // The span blitting interface.
53 // Hook in assembler or system specific BLT here.
55 void R_DrawColumn(void) ICODE_ATTR;
56 void R_DrawTLColumn(void) ICODE_ATTR; // drawing translucent textures // phares
57 void R_DrawFuzzColumn(void) ICODE_ATTR; // The Spectre/Invisibility effect.
59 // Draw with color translation tables, for player sprite rendering,
60 // Green/Red/Blue/Indigo shirts.
62 void R_DrawTranslatedColumn(void);
64 void R_VideoErase(unsigned ofs, int count);
66 extern lighttable_t *ds_colormap;
68 extern int ds_y;
69 extern int ds_x1;
70 extern int ds_x2;
71 extern fixed_t ds_xfrac;
72 extern fixed_t ds_yfrac;
73 extern fixed_t ds_xstep;
74 extern fixed_t ds_ystep;
76 // start of a 64*64 tile image
77 extern byte *ds_source;
78 extern byte playernumtotrans[MAXPLAYERS]; // CPhipps - what translation table for what player
79 extern byte *translationtables;
80 extern byte *dc_translation;
82 // Span blitting for rows, floor/ceiling. No Spectre effect needed.
83 void R_DrawSpan(void) ICODE_ATTR;
85 void R_InitBuffer(int width, int height);
87 // Initialize color translation tables, for player rendering etc.
88 void R_InitTranslationTables(void);
90 // Rendering function.
91 void R_FillBackScreen(void);
93 // If the view size is not full screen, draws a border around it.
94 void R_DrawViewBorder(void);
96 extern const byte *tranmap; // translucency filter maps 256x256 // phares
97 extern const byte *main_tranmap; // killough 4/11/98
99 #endif