summaryrefslogtreecommitdiff
path: root/apps/plugins/sdl/progs/quake/asm_draw.h
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/sdl/progs/quake/asm_draw.h')
-rw-r--r--apps/plugins/sdl/progs/quake/asm_draw.h151
1 files changed, 151 insertions, 0 deletions
diff --git a/apps/plugins/sdl/progs/quake/asm_draw.h b/apps/plugins/sdl/progs/quake/asm_draw.h
new file mode 100644
index 0000000000..5534ab63c7
--- /dev/null
+++ b/apps/plugins/sdl/progs/quake/asm_draw.h
@@ -0,0 +1,151 @@
1/*
2Copyright (C) 1996-1997 Id Software, Inc.
3
4This program is free software; you can redistribute it and/or
5modify it under the terms of the GNU General Public License
6as published by the Free Software Foundation; either version 2
7of the License, or (at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12
13See the GNU General Public License for more details.
14
15You should have received a copy of the GNU General Public License
16along with this program; if not, write to the Free Software
17Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18
19*/
20//
21// asm_draw.h
22//
23// Include file for asm drawing routines.
24//
25
26//
27// !!! note that this file must match the corresponding C structures at all
28// times !!!
29//
30
31// !!! if this is changed, it must be changed in r_local.h too !!!
32#define NEAR_CLIP 0.01
33
34// !!! if this is changed, it must be changed in r_local.h too !!!
35#define CYCLE 128
36
37// espan_t structure
38// !!! if this is changed, it must be changed in r_shared.h too !!!
39#define espan_t_u 0
40#define espan_t_v 4
41#define espan_t_count 8
42#define espan_t_pnext 12
43#define espan_t_size 16
44
45// sspan_t structure
46// !!! if this is changed, it must be changed in d_local.h too !!!
47#define sspan_t_u 0
48#define sspan_t_v 4
49#define sspan_t_count 8
50#define sspan_t_size 12
51
52// spanpackage_t structure
53// !!! if this is changed, it must be changed in d_polyset.c too !!!
54#define spanpackage_t_pdest 0
55#define spanpackage_t_pz 4
56#define spanpackage_t_count 8
57#define spanpackage_t_ptex 12
58#define spanpackage_t_sfrac 16
59#define spanpackage_t_tfrac 20
60#define spanpackage_t_light 24
61#define spanpackage_t_zi 28
62#define spanpackage_t_size 32
63
64// edge_t structure
65// !!! if this is changed, it must be changed in r_shared.h too !!!
66#define et_u 0
67#define et_u_step 4
68#define et_prev 8
69#define et_next 12
70#define et_surfs 16
71#define et_nextremove 20
72#define et_nearzi 24
73#define et_owner 28
74#define et_size 32
75
76// surf_t structure
77// !!! if this is changed, it must be changed in r_shared.h too !!!
78#define SURF_T_SHIFT 6
79#define st_next 0
80#define st_prev 4
81#define st_spans 8
82#define st_key 12
83#define st_last_u 16
84#define st_spanstate 20
85#define st_flags 24
86#define st_data 28
87#define st_entity 32
88#define st_nearzi 36
89#define st_insubmodel 40
90#define st_d_ziorigin 44
91#define st_d_zistepu 48
92#define st_d_zistepv 52
93#define st_pad 56
94#define st_size 64
95
96// clipplane_t structure
97// !!! if this is changed, it must be changed in r_local.h too !!!
98#define cp_normal 0
99#define cp_dist 12
100#define cp_next 16
101#define cp_leftedge 20
102#define cp_rightedge 21
103#define cp_reserved 22
104#define cp_size 24
105
106// medge_t structure
107// !!! if this is changed, it must be changed in model.h too !!!
108#define me_v 0
109#define me_cachededgeoffset 4
110#define me_size 8
111
112// mvertex_t structure
113// !!! if this is changed, it must be changed in model.h too !!!
114#define mv_position 0
115#define mv_size 12
116
117// refdef_t structure
118// !!! if this is changed, it must be changed in render.h too !!!
119#define rd_vrect 0
120#define rd_aliasvrect 20
121#define rd_vrectright 40
122#define rd_vrectbottom 44
123#define rd_aliasvrectright 48
124#define rd_aliasvrectbottom 52
125#define rd_vrectrightedge 56
126#define rd_fvrectx 60
127#define rd_fvrecty 64
128#define rd_fvrectx_adj 68
129#define rd_fvrecty_adj 72
130#define rd_vrect_x_adj_shift20 76
131#define rd_vrectright_adj_shift20 80
132#define rd_fvrectright_adj 84
133#define rd_fvrectbottom_adj 88
134#define rd_fvrectright 92
135#define rd_fvrectbottom 96
136#define rd_horizontalFieldOfView 100
137#define rd_xOrigin 104
138#define rd_yOrigin 108
139#define rd_vieworg 112
140#define rd_viewangles 124
141#define rd_ambientlight 136
142#define rd_size 140
143
144// mtriangle_t structure
145// !!! if this is changed, it must be changed in model.h too !!!
146#define mtri_facesfront 0
147#define mtri_vertindex 4
148#define mtri_size 16 // !!! if this changes, array indexing in !!!
149 // !!! d_polysa.s must be changed to match !!!
150#define mtri_shift 4
151