]> git.lizzy.rs Git - plan9front.git/blob - sys/src/games/doom/r_draw.h
rio: disable cons if /dev/kbd is open, add games/doom
[plan9front.git] / sys / src / games / doom / r_draw.h
1 // Emacs style mode select   -*- C++ -*- 
2 //-----------------------------------------------------------------------------
3 //
4 // $Id:$
5 //
6 // Copyright (C) 1993-1996 by id Software, Inc.
7 //
8 // This source is available for distribution and/or modification
9 // only under the terms of the DOOM Source Code License as
10 // published by id Software. All rights reserved.
11 //
12 // The source is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // FITNESS FOR A PARTICULAR PURPOSE. See the DOOM Source Code License
15 // for more details.
16 //
17 // DESCRIPTION:
18 //      System specific interface stuff.
19 //
20 //-----------------------------------------------------------------------------
21
22
23 #ifndef __R_DRAW__
24 #define __R_DRAW__
25
26
27 #ifdef __GNUG__
28 #pragma interface
29 #endif
30
31
32 extern lighttable_t*    dc_colormap;
33 extern int              dc_x;
34 extern int              dc_yl;
35 extern int              dc_yh;
36 extern fixed_t          dc_iscale;
37 extern fixed_t          dc_texturemid;
38
39 // first pixel in a column
40 extern byte*            dc_source;              
41
42
43 // The span blitting interface.
44 // Hook in assembler or system specific BLT
45 //  here.
46 void    R_DrawColumn (void);
47 void    R_DrawColumnLow (void);
48
49 // The Spectre/Invisibility effect.
50 void    R_DrawFuzzColumn (void);
51 void    R_DrawFuzzColumnLow (void);
52
53 // Draw with color translation tables,
54 //  for player sprite rendering,
55 //  Green/Red/Blue/Indigo shirts.
56 void    R_DrawTranslatedColumn (void);
57 void    R_DrawTranslatedColumnLow (void);
58
59 void
60 R_VideoErase
61 ( unsigned      ofs,
62   int           count );
63
64 extern int              ds_y;
65 extern int              ds_x1;
66 extern int              ds_x2;
67
68 extern lighttable_t*    ds_colormap;
69
70 extern fixed_t          ds_xfrac;
71 extern fixed_t          ds_yfrac;
72 extern fixed_t          ds_xstep;
73 extern fixed_t          ds_ystep;
74
75 // start of a 64*64 tile image
76 extern byte*            ds_source;              
77
78 extern byte*            translationtables;
79 extern byte*            dc_translation;
80
81
82 // Span blitting for rows, floor/ceiling.
83 // No Sepctre effect needed.
84 void    R_DrawSpan (void);
85
86 // Low resolution mode, 160x200?
87 void    R_DrawSpanLow (void);
88
89
90 void
91 R_InitBuffer
92 ( int           width,
93   int           height );
94
95
96 // Initialize color translation tables,
97 //  for player rendering etc.
98 void    R_InitTranslationTables (void);
99
100
101
102 // Rendering function.
103 void R_FillBackScreen (void);
104
105 // If the view size is not full screen, draws a border around it.
106 void R_DrawViewBorder (void);
107
108
109
110 #endif
111 //-----------------------------------------------------------------------------
112 //
113 // $Log:$
114 //
115 //-----------------------------------------------------------------------------