Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
xf_mem.h
Go to the documentation of this file.
1#ifndef XF_MEM_H
2#define XF_MEM_H
3
4#define XF_TEXGEN_REGULAR 0x00000000
5#define XF_TEXGEN_BUMP_MAP 0x00000001
6#define XF_TEXGEN_COLOR_STRGBC0 0x00000002
7#define XF_TEXGEN_COLOR_STRGBC1 0x00000003
8#define XF_TEX_TEXGEN_TYPE_F_UNUSED_4 0x00000004
9#define XF_TEX_TEXGEN_TYPE_F_UNUSED_5 0x00000005
10#define XF_TEX_TEXGEN_TYPE_F_UNUSED_6 0x00000006
11#define XF_TEX_TEXGEN_TYPE_F_UNUSED_7 0x00000007
12
13#define XF_ERROR_F_CTEX_BUG_ENABLE_SIZE 1
14#define XF_ERROR_F_CTEX_BUG_ENABLE_SHIFT 0
15#define XF_ERROR_F_CTEX_BUG_ENABLE_MASK 0x00000001
16#define XF_ERROR_F_GET_CTEX_BUG_ENABLE(xf_error_f) \
17 ((((unsigned long)(xf_error_f)) & XF_ERROR_F_CTEX_BUG_ENABLE_MASK) >> XF_ERROR_F_CTEX_BUG_ENABLE_SHIFT)
18
19#define XF_ERROR_F_TFAN4_BUG_ENABLE_SIZE 1
20#define XF_ERROR_F_TFAN4_BUG_ENABLE_SHIFT 1
21#define XF_ERROR_F_TFAN4_BUG_ENABLE_MASK 0x00000002
22#define XF_ERROR_F_GET_TFAN4_BUG_ENABLE(xf_error_f) \
23 ((((unsigned long)(xf_error_f)) & XF_ERROR_F_TFAN4_BUG_ENABLE_MASK) >> XF_ERROR_F_TFAN4_BUG_ENABLE_SHIFT)
24
25#define XF_ERROR_F_TFAN16_BUG_ENABLE_SIZE 1
26#define XF_ERROR_F_TFAN16_BUG_ENABLE_SHIFT 2
27#define XF_ERROR_F_TFAN16_BUG_ENABLE_MASK 0x00000004
28#define XF_ERROR_F_GET_TFAN16_BUG_ENABLE(xf_error_f) \
29 ((((unsigned long)(xf_error_f)) & XF_ERROR_F_TFAN16_BUG_ENABLE_MASK) >> XF_ERROR_F_TFAN16_BUG_ENABLE_SHIFT)
30
31#define XF_ERROR_F_DUALTRAN_REG_ENABLE_SIZE 1
32#define XF_ERROR_F_DUALTRAN_REG_ENABLE_SHIFT 3
33#define XF_ERROR_F_DUALTRAN_REG_ENABLE_MASK 0x00000008
34#define XF_ERROR_F_GET_DUALTRAN_REG_ENABLE(xf_error_f) \
35 ((((unsigned long)(xf_error_f)) & XF_ERROR_F_DUALTRAN_REG_ENABLE_MASK) >> XF_ERROR_F_DUALTRAN_REG_ENABLE_SHIFT)
36
37#define XF_ERROR_F_BYPASS_BUG_ENABLE_SIZE 1
38#define XF_ERROR_F_BYPASS_BUG_ENABLE_SHIFT 4
39#define XF_ERROR_F_BYPASS_BUG_ENABLE_MASK 0x00000010
40#define XF_ERROR_F_GET_BYPASS_BUG_ENABLE(xf_error_f) \
41 ((((unsigned long)(xf_error_f)) & XF_ERROR_F_BYPASS_BUG_ENABLE_MASK) >> XF_ERROR_F_BYPASS_BUG_ENABLE_SHIFT)
42
43#define XF_ERROR_F_FAST_MATRIX_ENABLE_SIZE 1
44#define XF_ERROR_F_FAST_MATRIX_ENABLE_SHIFT 5
45#define XF_ERROR_F_FAST_MATRIX_ENABLE_MASK 0x00000020
46#define XF_ERROR_F_GET_FAST_MATRIX_ENABLE(xf_error_f) \
47 ((((unsigned long)(xf_error_f)) & XF_ERROR_F_FAST_MATRIX_ENABLE_MASK) >> XF_ERROR_F_FAST_MATRIX_ENABLE_SHIFT)
48
49#define XF_DUALTEXTRAN_F_DUALTEXTRAN_ENABLE_SIZE 1
50#define XF_DUALTEXTRAN_F_DUALTEXTRAN_ENABLE_SHIFT 0
51#define XF_DUALTEXTRAN_F_DUALTEXTRAN_ENABLE_MASK 0x00000001
52#define XF_DUALTEXTRAN_F_GET_DUALTEXTRAN_ENABLE(xf_dualtextran_f) \
53 ((((unsigned long)(xf_dualtextran_f)) & XF_DUALTEXTRAN_F_DUALTEXTRAN_ENABLE_MASK) >> XF_DUALTEXTRAN_F_DUALTEXTRAN_ENABLE_SHIFT)
54
55#define XF_PERF0_F(perf_a, perf_b, perf_c, perf_d) \
56((((unsigned long)(perf_a)) << XF_PERF0_F_PERF_A_SHIFT) | \
57 (((unsigned long)(perf_b)) << XF_PERF0_F_PERF_B_SHIFT) | \
58 (((unsigned long)(perf_c)) << XF_PERF0_F_PERF_C_SHIFT) | \
59 (((unsigned long)(perf_d)) << XF_PERF0_F_PERF_D_SHIFT))
60
61#define XF_INVERTEXSPEC_F_HOST_COLORS_SIZE 2
62#define XF_INVERTEXSPEC_F_HOST_COLORS_SHIFT 0
63#define XF_INVERTEXSPEC_F_HOST_COLORS_MASK 0x00000003
64#define XF_INVERTEXSPEC_F_GET_HOST_COLORS(xf_invertexspec_f) \
65 ((((unsigned long)(xf_invertexspec_f)) & XF_INVERTEXSPEC_F_HOST_COLORS_MASK) >> XF_INVERTEXSPEC_F_HOST_COLORS_SHIFT)
66
67#define XF_INVERTEXSPEC_F_HOST_NORMAL_SIZE 2
68#define XF_INVERTEXSPEC_F_HOST_NORMAL_SHIFT 2
69#define XF_INVERTEXSPEC_F_HOST_NORMAL_MASK 0x0000000c
70#define XF_INVERTEXSPEC_F_GET_HOST_NORMAL(xf_invertexspec_f) \
71 ((((unsigned long)(xf_invertexspec_f)) & XF_INVERTEXSPEC_F_HOST_NORMAL_MASK) >> XF_INVERTEXSPEC_F_HOST_NORMAL_SHIFT)
72
73#define XF_INVERTEXSPEC_F_HOST_TEXTURES_SIZE 4
74#define XF_INVERTEXSPEC_F_HOST_TEXTURES_SHIFT 4
75#define XF_INVERTEXSPEC_F_HOST_TEXTURES_MASK 0x000000f0
76#define XF_INVERTEXSPEC_F_GET_HOST_TEXTURES(xf_invertexspec_f) \
77 ((((unsigned long)(xf_invertexspec_f)) & XF_INVERTEXSPEC_F_HOST_TEXTURES_MASK) >> XF_INVERTEXSPEC_F_HOST_TEXTURES_SHIFT)
78
79#define XF_INVERTEXSPEC_F_TOTAL_SIZE 8
80#define XF_INVERTEXSPEC_F_UNUSED_SIZE 24
81
82#define XF_INVERTEXSPEC_F(host_colors, host_normal, host_textures) \
83 ((((unsigned long)(host_colors)) << XF_INVERTEXSPEC_F_HOST_COLORS_SHIFT) | \
84 (((unsigned long)(host_normal)) << XF_INVERTEXSPEC_F_HOST_NORMAL_SHIFT) | \
85 (((unsigned long)(host_textures)) << XF_INVERTEXSPEC_F_HOST_TEXTURES_SHIFT))
86
87#define XF_TEX_RESERVED0_SIZE 1
88#define XF_TEX_RESERVED0_SHIFT 0
89#define XF_TEX_RESERVED0_MASK 0x00000001
90#define XF_TEX_GET_RESERVED0(xf_tex) \
91 ((((unsigned long)(xf_tex)) & XF_TEX_RESERVED0_MASK) >> XF_TEX_RESERVED0_SHIFT)
92
93#define XF_TEX_PROJECTION_SIZE 1
94#define XF_TEX_PROJECTION_SHIFT 1
95#define XF_TEX_PROJECTION_MASK 0x00000002
96#define XF_TEX_GET_PROJECTION(xf_tex) \
97 ((((unsigned long)(xf_tex)) & XF_TEX_PROJECTION_MASK) >> XF_TEX_PROJECTION_SHIFT)
98
99#define XF_TEX_INPUT_FORM_SIZE 1
100#define XF_TEX_INPUT_FORM_SHIFT 2
101#define XF_TEX_INPUT_FORM_MASK 0x00000004
102#define XF_TEX_GET_INPUT_FORM(xf_tex) \
103 ((((unsigned long)(xf_tex)) & XF_TEX_INPUT_FORM_MASK) >> XF_TEX_INPUT_FORM_SHIFT)
104
105#define XF_TEX_RESERVED1_SIZE 1
106#define XF_TEX_RESERVED1_SHIFT 3
107#define XF_TEX_RESERVED1_MASK 0x00000008
108#define XF_TEX_GET_RESERVED1(xf_tex) \
109 ((((unsigned long)(xf_tex)) & XF_TEX_RESERVED1_MASK) >> XF_TEX_RESERVED1_SHIFT)
110
111#define XF_TEX_TEXGEN_TYPE_SIZE 3
112#define XF_TEX_TEXGEN_TYPE_SHIFT 4
113#define XF_TEX_TEXGEN_TYPE_MASK 0x00000070
114#define XF_TEX_GET_TEXGEN_TYPE(xf_tex) \
115 ((((unsigned long)(xf_tex)) & XF_TEX_TEXGEN_TYPE_MASK) >> XF_TEX_TEXGEN_TYPE_SHIFT)
116
117#define XF_TEX_SOURCE_ROW_SIZE 5
118#define XF_TEX_SOURCE_ROW_SHIFT 7
119#define XF_TEX_SOURCE_ROW_MASK 0x00000f80
120#define XF_TEX_GET_SOURCE_ROW(xf_tex) \
121 ((((unsigned long)(xf_tex)) & XF_TEX_SOURCE_ROW_MASK) >> XF_TEX_SOURCE_ROW_SHIFT)
122
123#define XF_TEX_BUMP_MAP_SOURCE_SIZE 3
124#define XF_TEX_BUMP_MAP_SOURCE_SHIFT 12
125#define XF_TEX_BUMP_MAP_SOURCE_MASK 0x00007000
126#define XF_TEX_GET_BUMP_MAP_SOURCE(xf_tex) \
127 ((((unsigned long)(xf_tex)) & XF_TEX_BUMP_MAP_SOURCE_MASK) >> XF_TEX_BUMP_MAP_SOURCE_SHIFT)
128
129#define XF_TEX_BUMP_MAP_LIGHT_SIZE 3
130#define XF_TEX_BUMP_MAP_LIGHT_SHIFT 15
131#define XF_TEX_BUMP_MAP_LIGHT_MASK 0x00038000
132#define XF_TEX_GET_BUMP_MAP_LIGHT(xf_tex) \
133 ((((unsigned long)(xf_tex)) & XF_TEX_BUMP_MAP_LIGHT_MASK) >> XF_TEX_BUMP_MAP_LIGHT_SHIFT)
134
135#define XF_TEX_TOTAL_SIZE 18
136#define XF_TEX_UNUSED_SIZE 14
137
138#define XF_TEX(reserved0, projection, input_form, reserved1, texgen_type, source_row, bump_map_source, bump_map_light) \
139 ((((unsigned long)(reserved0)) << XF_TEX_RESERVED0_SHIFT) | \
140 (((unsigned long)(projection)) << XF_TEX_PROJECTION_SHIFT) | \
141 (((unsigned long)(input_form)) << XF_TEX_INPUT_FORM_SHIFT) | \
142 (((unsigned long)(reserved1)) << XF_TEX_RESERVED1_SHIFT) | \
143 (((unsigned long)(texgen_type)) << XF_TEX_TEXGEN_TYPE_SHIFT) | \
144 (((unsigned long)(source_row)) << XF_TEX_SOURCE_ROW_SHIFT) | \
145 (((unsigned long)(bump_map_source)) << XF_TEX_BUMP_MAP_SOURCE_SHIFT) | \
146 (((unsigned long)(bump_map_light)) << XF_TEX_BUMP_MAP_LIGHT_SHIFT))
147
148#define XF_DUALTEX_F_DUALMATRIX_ADRS_SIZE 6
149#define XF_DUALTEX_F_DUALMATRIX_ADRS_SHIFT 0
150#define XF_DUALTEX_F_DUALMATRIX_ADRS_MASK 0x0000003f
151#define XF_DUALTEX_F_GET_DUALMATRIX_ADRS(xf_dualtex_f) \
152 ((((unsigned long)(xf_dualtex_f)) & XF_DUALTEX_F_DUALMATRIX_ADRS_MASK) >> XF_DUALTEX_F_DUALMATRIX_ADRS_SHIFT)
153
154#define XF_DUALTEX_F_RESERVED0_SIZE 2
155#define XF_DUALTEX_F_RESERVED0_SHIFT 6
156#define XF_DUALTEX_F_RESERVED0_MASK 0x000000c0
157#define XF_DUALTEX_F_GET_RESERVED0(xf_dualtex_f) \
158 ((((unsigned long)(xf_dualtex_f)) & XF_DUALTEX_F_RESERVED0_MASK) >> XF_DUALTEX_F_RESERVED0_SHIFT)
159
160#define XF_DUALTEX_F_NORMAL_ENABLE_SIZE 1
161#define XF_DUALTEX_F_NORMAL_ENABLE_SHIFT 8
162#define XF_DUALTEX_F_NORMAL_ENABLE_MASK 0x00000100
163#define XF_DUALTEX_F_GET_NORMAL_ENABLE(xf_dualtex_f) \
164 ((((unsigned long)(xf_dualtex_f)) & XF_DUALTEX_F_NORMAL_ENABLE_MASK) >> XF_DUALTEX_F_NORMAL_ENABLE_SHIFT)
165
166#define XF_DUALTEX_F_TOTAL_SIZE 9
167#define XF_DUALTEX_F_UNUSED_SIZE 23
168
169#define XF_DUALTEX_F(dualmatrix_adrs, reserved0, normal_enable) \
170 ((((unsigned long)(dualmatrix_adrs)) << XF_DUALTEX_F_DUALMATRIX_ADRS_SHIFT) | \
171 (((unsigned long)(reserved0)) << XF_DUALTEX_F_RESERVED0_SHIFT) | \
172 (((unsigned long)(normal_enable)) << XF_DUALTEX_F_NORMAL_ENABLE_SHIFT))
173
174#define XF_PERF0_F_PERF_A_SIZE 5
175#define XF_PERF0_F_PERF_A_SHIFT 0
176#define XF_PERF0_F_PERF_A_MASK 0x0000001f
177#define XF_PERF0_F_GET_PERF_A(xf_perf0_f) \
178 ((((unsigned long)(xf_perf0_f)) & XF_PERF0_F_PERF_A_MASK) >> XF_PERF0_F_PERF_A_SHIFT)
179
180#define XF_PERF0_F_PERF_B_SIZE 5
181#define XF_PERF0_F_PERF_B_SHIFT 5
182#define XF_PERF0_F_PERF_B_MASK 0x000003e0
183#define XF_PERF0_F_GET_PERF_B(xf_perf0_f) \
184 ((((unsigned long)(xf_perf0_f)) & XF_PERF0_F_PERF_B_MASK) >> XF_PERF0_F_PERF_B_SHIFT)
185
186#define XF_PERF0_F_PERF_C_SIZE 5
187#define XF_PERF0_F_PERF_C_SHIFT 10
188#define XF_PERF0_F_PERF_C_MASK 0x00007c00
189#define XF_PERF0_F_GET_PERF_C(xf_perf0_f) \
190 ((((unsigned long)(xf_perf0_f)) & XF_PERF0_F_PERF_C_MASK) >> XF_PERF0_F_PERF_C_SHIFT)
191
192#define XF_PERF0_F_PERF_D_SIZE 5
193#define XF_PERF0_F_PERF_D_SHIFT 15
194#define XF_PERF0_F_PERF_D_MASK 0x000f8000
195#define XF_PERF0_F_GET_PERF_D(xf_perf0_f) \
196 ((((unsigned long)(xf_perf0_f)) & XF_PERF0_F_PERF_D_MASK) >> XF_PERF0_F_PERF_D_SHIFT)
197
198#define XF_PERF0_F_TOTAL_SIZE 20
199#define XF_PERF0_F_UNUSED_SIZE 12
200
201#define XF_PERF0_F(perf_a, perf_b, perf_c, perf_d) \
202 ((((unsigned long)(perf_a)) << XF_PERF0_F_PERF_A_SHIFT) | \
203 (((unsigned long)(perf_b)) << XF_PERF0_F_PERF_B_SHIFT) | \
204 (((unsigned long)(perf_c)) << XF_PERF0_F_PERF_C_SHIFT) | \
205 (((unsigned long)(perf_d)) << XF_PERF0_F_PERF_D_SHIFT))
206
207#define XF_PERF1_F_PERF_TARGET_SIZE 7
208#define XF_PERF1_F_PERF_TARGET_SHIFT 0
209#define XF_PERF1_F_PERF_TARGET_MASK 0x0000007f
210#define XF_PERF1_F_GET_PERF_TARGET(xf_perf1_f) \
211 ((((unsigned long)(xf_perf1_f)) & XF_PERF1_F_PERF_TARGET_MASK) >> XF_PERF1_F_PERF_TARGET_SHIFT)
212
213#define XF_PERF1_F_TOTAL_SIZE 7
214#define XF_PERF1_F_UNUSED_SIZE 25
215
216#define XF_PERF1_F(perf_target) \
217 ((((unsigned long)(perf_target)) << XF_PERF1_F_PERF_TARGET_SHIFT))
218
219#define XF_MATERIAL0_F_ALPHA_SIZE 8
220#define XF_MATERIAL0_F_ALPHA_SHIFT 0
221#define XF_MATERIAL0_F_ALPHA_MASK 0x000000ff
222#define XF_MATERIAL0_F_GET_ALPHA(xf_material0_f) \
223 ((((unsigned long)(xf_material0_f)) & XF_MATERIAL0_F_ALPHA_MASK) >> XF_MATERIAL0_F_ALPHA_SHIFT)
224#define XF_MATERIAL0_F_SET_ALPHA(xf_material0_f, alpha) { \
225 xf_material0_f = (((unsigned long)(xf_material0_f)) & ~XF_MATERIAL0_F_ALPHA_MASK) | (((unsigned long)(alpha)) << XF_MATERIAL0_F_ALPHA_SHIFT);\
226}
227#define XF_MATERIAL0_F_BLUE_SIZE 8
228#define XF_MATERIAL0_F_BLUE_SHIFT 8
229#define XF_MATERIAL0_F_BLUE_MASK 0x0000ff00
230#define XF_MATERIAL0_F_GET_BLUE(xf_material0_f) \
231 ((((unsigned long)(xf_material0_f)) & XF_MATERIAL0_F_BLUE_MASK) >> XF_MATERIAL0_F_BLUE_SHIFT)
232#define XF_MATERIAL0_F_SET_BLUE(xf_material0_f, blue) { \
233 xf_material0_f = (((unsigned long)(xf_material0_f)) & ~XF_MATERIAL0_F_BLUE_MASK) | (((unsigned long)(blue)) << XF_MATERIAL0_F_BLUE_SHIFT);\
234
235#define XF_MATERIAL0_F_GREEN_SIZE 8
236#define XF_MATERIAL0_F_GREEN_SHIFT 16
237#define XF_MATERIAL0_F_GREEN_MASK 0x00ff0000
238#define XF_MATERIAL0_F_GET_GREEN(xf_material0_f) \
239 ((((unsigned long)(xf_material0_f)) & XF_MATERIAL0_F_GREEN_MASK) >> XF_MATERIAL0_F_GREEN_SHIFT)
240#define XF_MATERIAL0_F_SET_GREEN(xf_material0_f, green) { \
241 xf_material0_f = (((unsigned long)(xf_material0_f)) & ~XF_MATERIAL0_F_GREEN_MASK) | (((unsigned long)(green)) << XF_MATERIAL0_F_GREEN_SHIFT);\
242}
243
244#define XF_MATERIAL0_F_RED_SIZE 8
245#define XF_MATERIAL0_F_RED_SHIFT 24
246#define XF_MATERIAL0_F_RED_MASK 0xff000000
247#define XF_MATERIAL0_F_GET_RED(xf_material0_f) \
248 ((((unsigned long)(xf_material0_f)) & XF_MATERIAL0_F_RED_MASK) >> XF_MATERIAL0_F_RED_SHIFT)
249#define XF_MATERIAL0_F_SET_RED(xf_material0_f, red) { \
250 xf_material0_f = (((unsigned long)(xf_material0_f)) & ~XF_MATERIAL0_F_RED_MASK) | (((unsigned long)(red)) << XF_MATERIAL0_F_RED_SHIFT);\
251}
252#define XF_MATERIAL0_F_TOTAL_SIZE 32
253#define XF_MATERIAL0_F(alpha, blue, green, red) \
254 ((((unsigned long)(alpha)) << XF_MATERIAL0_F_ALPHA_SHIFT) | \
255 (((unsigned long)(blue)) << XF_MATERIAL0_F_BLUE_SHIFT) | \
256 (((unsigned long)(green)) << XF_MATERIAL0_F_GREEN_SHIFT) | \
257 (((unsigned long)(red)) << XF_MATERIAL0_F_RED_SHIFT))
258
259#define XF_MATERIAL1_F_ALPHA_SIZE 8
260#define XF_MATERIAL1_F_ALPHA_SHIFT 0
261#define XF_MATERIAL1_F_ALPHA_MASK 0x000000ff
262#define XF_MATERIAL1_F_GET_ALPHA(xf_material1_f) \
263 ((((unsigned long)(xf_material1_f)) & XF_MATERIAL1_F_ALPHA_MASK) >> XF_MATERIAL1_F_ALPHA_SHIFT)
264#define XF_MATERIAL1_F_SET_ALPHA(xf_material1_f, alpha) { \
265 xf_material1_f = (((unsigned long)(xf_material1_f)) & ~XF_MATERIAL1_F_ALPHA_MASK) | (((unsigned long)(alpha)) << XF_MATERIAL1_F_ALPHA_SHIFT);\
266}
267#define XF_MATERIAL1_F_BLUE_SIZE 8
268#define XF_MATERIAL1_F_BLUE_SHIFT 8
269#define XF_MATERIAL1_F_BLUE_MASK 0x0000ff00
270#define XF_MATERIAL1_F_GET_BLUE(xf_material1_f) \
271 ((((unsigned long)(xf_material1_f)) & XF_MATERIAL1_F_BLUE_MASK) >> XF_MATERIAL1_F_BLUE_SHIFT)
272#define XF_MATERIAL1_F_SET_BLUE(xf_material1_f, blue) { \
273 xf_material1_f = (((unsigned long)(xf_material1_f)) & ~XF_MATERIAL1_F_BLUE_MASK) | (((unsigned long)(blue)) << XF_MATERIAL1_F_BLUE_SHIFT);\
274}
275#define XF_MATERIAL1_F_GREEN_SIZE 8
276#define XF_MATERIAL1_F_GREEN_SHIFT 16
277#define XF_MATERIAL1_F_GREEN_MASK 0x00ff0000
278#define XF_MATERIAL1_F_GET_GREEN(xf_material1_f) \
279 ((((unsigned long)(xf_material1_f)) & XF_MATERIAL1_F_GREEN_MASK) >> XF_MATERIAL1_F_GREEN_SHIFT)
280#define XF_MATERIAL1_F_SET_GREEN(xf_material1_f, green) { \
281 xf_material1_f = (((unsigned long)(xf_material1_f)) & ~XF_MATERIAL1_F_GREEN_MASK) | (((unsigned long)(green)) << XF_MATERIAL1_F_GREEN_SHIFT);\
282}
283#define XF_MATERIAL1_F_RED_SIZE 8
284#define XF_MATERIAL1_F_RED_SHIFT 24
285#define XF_MATERIAL1_F_RED_MASK 0xff000000
286#define XF_MATERIAL1_F_GET_RED(xf_material1_f) \
287 ((((unsigned long)(xf_material1_f)) & XF_MATERIAL1_F_RED_MASK) >> XF_MATERIAL1_F_RED_SHIFT)
288#define XF_MATERIAL1_F_SET_RED(xf_material1_f, red) { \
289 xf_material1_f = (((unsigned long)(xf_material1_f)) & ~XF_MATERIAL1_F_RED_MASK) | (((unsigned long)(red)) << XF_MATERIAL1_F_RED_SHIFT);\
290}
291#define XF_MATERIAL1_F_TOTAL_SIZE 32
292#define XF_MATERIAL1_F(alpha, blue, green, red) \
293 ((((unsigned long)(alpha)) << XF_MATERIAL1_F_ALPHA_SHIFT) | \
294 (((unsigned long)(blue)) << XF_MATERIAL1_F_BLUE_SHIFT) | \
295 (((unsigned long)(green)) << XF_MATERIAL1_F_GREEN_SHIFT) | \
296 (((unsigned long)(red)) << XF_MATERIAL1_F_RED_SHIFT))
297
298#define XF_COLOR0CNTRL_F_MATERIAL_SRC_SIZE 1
299#define XF_COLOR0CNTRL_F_MATERIAL_SRC_SHIFT 0
300#define XF_COLOR0CNTRL_F_MATERIAL_SRC_MASK 0x00000001
301#define XF_COLOR0CNTRL_F_GET_MATERIAL_SRC(xf_color0cntrl_f) \
302 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_MATERIAL_SRC_MASK) >> XF_COLOR0CNTRL_F_MATERIAL_SRC_SHIFT)
303#define XF_COLOR0CNTRL_F_SET_MATERIAL_SRC(xf_color0cntrl_f, material_src) { \
304 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_MATERIAL_SRC_MASK) | (((unsigned long)(material_src)) << XF_COLOR0CNTRL_F_MATERIAL_SRC_SHIFT);\
305}
306
307#define XF_COLOR0CNTRL_F_LIGHTFUNC_SIZE 1
308#define XF_COLOR0CNTRL_F_LIGHTFUNC_SHIFT 1
309#define XF_COLOR0CNTRL_F_LIGHTFUNC_MASK 0x00000002
310#define XF_COLOR0CNTRL_F_GET_LIGHTFUNC(xf_color0cntrl_f) \
311 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_LIGHTFUNC_MASK) >> XF_COLOR0CNTRL_F_LIGHTFUNC_SHIFT)
312#define XF_COLOR0CNTRL_F_SET_LIGHTFUNC(xf_color0cntrl_f, lightfunc) { \
313 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_LIGHTFUNC_MASK) | (((unsigned long)(lightfunc)) << XF_COLOR0CNTRL_F_LIGHTFUNC_SHIFT);\
314}
315
316#define XF_COLOR0CNTRL_F_AMBIENT_SRC_SIZE 1
317#define XF_COLOR0CNTRL_F_AMBIENT_SRC_SHIFT 6
318#define XF_COLOR0CNTRL_F_AMBIENT_SRC_MASK 0x00000040
319#define XF_COLOR0CNTRL_F_GET_AMBIENT_SRC(xf_color0cntrl_f) \
320 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_AMBIENT_SRC_MASK) >> XF_COLOR0CNTRL_F_AMBIENT_SRC_SHIFT)
321#define XF_COLOR0CNTRL_F_SET_AMBIENT_SRC(xf_color0cntrl_f, ambient_src) { \
322 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_AMBIENT_SRC_MASK) | (((unsigned long)(ambient_src)) << XF_COLOR0CNTRL_F_AMBIENT_SRC_SHIFT);\
323}
324
325#define XF_COLOR0CNTRL_F_DIFFUSEATTEN_SIZE 2
326#define XF_COLOR0CNTRL_F_DIFFUSEATTEN_SHIFT 7
327#define XF_COLOR0CNTRL_F_DIFFUSEATTEN_MASK 0x00000180
328#define XF_COLOR0CNTRL_F_GET_DIFFUSEATTEN(xf_color0cntrl_f) \
329 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_DIFFUSEATTEN_MASK) >> XF_COLOR0CNTRL_F_DIFFUSEATTEN_SHIFT)
330#define XF_COLOR0CNTRL_F_SET_DIFFUSEATTEN(xf_color0cntrl_f, diffuseatten) { \
331 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_DIFFUSEATTEN_MASK) | (((unsigned long)(diffuseatten)) << XF_COLOR0CNTRL_F_DIFFUSEATTEN_SHIFT);\
332}
333
334#define XF_COLOR0CNTRL_F_LIGHT0_SIZE 1
335#define XF_COLOR0CNTRL_F_LIGHT0_SHIFT 2
336#define XF_COLOR0CNTRL_F_LIGHT0_MASK 0x00000004
337#define XF_COLOR0CNTRL_F_GET_LIGHT0(xf_color0cntrl_f) \
338 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_LIGHT0_MASK) >> XF_COLOR0CNTRL_F_LIGHT0_SHIFT)
339#define XF_COLOR0CNTRL_F_SET_LIGHT0(xf_color0cntrl_f, light0) { \
340 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_LIGHT0_MASK) | (((unsigned long)(light0)) << XF_COLOR0CNTRL_F_LIGHT0_SHIFT);\
341}
342
343#define XF_COLOR0CNTRL_F_LIGHT1_SIZE 1
344#define XF_COLOR0CNTRL_F_LIGHT1_SHIFT 3
345#define XF_COLOR0CNTRL_F_LIGHT1_MASK 0x00000008
346#define XF_COLOR0CNTRL_F_GET_LIGHT1(xf_color0cntrl_f) \
347 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_LIGHT1_MASK) >> XF_COLOR0CNTRL_F_LIGHT1_SHIFT)
348#define XF_COLOR0CNTRL_F_SET_LIGHT1(xf_color0cntrl_f, light1) { \
349 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_LIGHT1_MASK) | (((unsigned long)(light1)) << XF_COLOR0CNTRL_F_LIGHT1_SHIFT);\
350}
351
352#define XF_COLOR0CNTRL_F_LIGHT2_SIZE 1
353#define XF_COLOR0CNTRL_F_LIGHT2_SHIFT 4
354#define XF_COLOR0CNTRL_F_LIGHT2_MASK 0x00000010
355#define XF_COLOR0CNTRL_F_GET_LIGHT2(xf_color0cntrl_f) \
356 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_LIGHT2_MASK) >> XF_COLOR0CNTRL_F_LIGHT2_SHIFT)
357#define XF_COLOR0CNTRL_F_SET_LIGHT2(xf_color0cntrl_f, light2) { \
358 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_LIGHT2_MASK) | (((unsigned long)(light2)) << XF_COLOR0CNTRL_F_LIGHT2_SHIFT);\
359}
360
361#define XF_COLOR0CNTRL_F_LIGHT3_SIZE 1
362#define XF_COLOR0CNTRL_F_LIGHT3_SHIFT 5
363#define XF_COLOR0CNTRL_F_LIGHT3_MASK 0x00000020
364#define XF_COLOR0CNTRL_F_GET_LIGHT3(xf_color0cntrl_f) \
365 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_LIGHT3_MASK) >> XF_COLOR0CNTRL_F_LIGHT3_SHIFT)
366#define XF_COLOR0CNTRL_F_SET_LIGHT3(xf_color0cntrl_f, light3) { \
367 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_LIGHT3_MASK) | (((unsigned long)(light3)) << XF_COLOR0CNTRL_F_LIGHT3_SHIFT);\
368}
369
370#define XF_COLOR0CNTRL_F_LIGHT4_SIZE 1
371#define XF_COLOR0CNTRL_F_LIGHT4_SHIFT 11
372#define XF_COLOR0CNTRL_F_LIGHT4_MASK 0x00000800
373#define XF_COLOR0CNTRL_F_GET_LIGHT4(xf_color0cntrl_f) \
374 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_LIGHT4_MASK) >> XF_COLOR0CNTRL_F_LIGHT4_SHIFT)
375#define XF_COLOR0CNTRL_F_SET_LIGHT4(xf_color0cntrl_f, light4) { \
376 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_LIGHT4_MASK) | (((unsigned long)(light4)) << XF_COLOR0CNTRL_F_LIGHT4_SHIFT);\
377}
378
379#define XF_COLOR0CNTRL_F_LIGHT5_SIZE 1
380#define XF_COLOR0CNTRL_F_LIGHT5_SHIFT 12
381#define XF_COLOR0CNTRL_F_LIGHT5_MASK 0x00001000
382#define XF_COLOR0CNTRL_F_GET_LIGHT5(xf_color0cntrl_f) \
383 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_LIGHT5_MASK) >> XF_COLOR0CNTRL_F_LIGHT5_SHIFT)
384#define XF_COLOR0CNTRL_F_SET_LIGHT5(xf_color0cntrl_f, light5) { \
385 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_LIGHT5_MASK) | (((unsigned long)(light5)) << XF_COLOR0CNTRL_F_LIGHT5_SHIFT);\
386}
387
388#define XF_COLOR0CNTRL_F_LIGHT6_SIZE 1
389#define XF_COLOR0CNTRL_F_LIGHT6_SHIFT 13
390#define XF_COLOR0CNTRL_F_LIGHT6_MASK 0x00002000
391#define XF_COLOR0CNTRL_F_GET_LIGHT6(xf_color0cntrl_f) \
392 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_LIGHT6_MASK) >> XF_COLOR0CNTRL_F_LIGHT6_SHIFT)
393#define XF_COLOR0CNTRL_F_SET_LIGHT6(xf_color0cntrl_f, light6) { \
394 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_LIGHT6_MASK) | (((unsigned long)(light6)) << XF_COLOR0CNTRL_F_LIGHT6_SHIFT);\
395}
396
397#define XF_COLOR0CNTRL_F_LIGHT7_SIZE 1
398#define XF_COLOR0CNTRL_F_LIGHT7_SHIFT 14
399#define XF_COLOR0CNTRL_F_LIGHT7_MASK 0x00004000
400#define XF_COLOR0CNTRL_F_GET_LIGHT7(xf_color0cntrl_f) \
401 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_LIGHT7_MASK) >> XF_COLOR0CNTRL_F_LIGHT7_SHIFT)
402#define XF_COLOR0CNTRL_F_SET_LIGHT7(xf_color0cntrl_f, light7) { \
403 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_LIGHT7_MASK) | (((unsigned long)(light7)) << XF_COLOR0CNTRL_F_LIGHT7_SHIFT);\
404}
405
406#define XF_COLOR0CNTRL_F_ATTENENABLE_SIZE 1
407#define XF_COLOR0CNTRL_F_ATTENENABLE_SHIFT 9
408#define XF_COLOR0CNTRL_F_ATTENENABLE_MASK 0x00000200
409#define XF_COLOR0CNTRL_F_GET_ATTENENABLE(xf_color0cntrl_f) \
410 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_ATTENENABLE_MASK) >> XF_COLOR0CNTRL_F_ATTENENABLE_SHIFT)
411#define XF_COLOR0CNTRL_F_SET_ATTENENABLE(xf_color0cntrl_f, attenenable) { \
412 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_ATTENENABLE_MASK) | (((unsigned long)(attenenable)) << XF_COLOR0CNTRL_F_ATTENENABLE_SHIFT);\
413}
414
415#define XF_COLOR0CNTRL_F_ATTENSELECT_SIZE 1
416#define XF_COLOR0CNTRL_F_ATTENSELECT_SHIFT 10
417#define XF_COLOR0CNTRL_F_ATTENSELECT_MASK 0x00000400
418#define XF_COLOR0CNTRL_F_GET_ATTENSELECT(xf_color0cntrl_f) \
419 ((((unsigned long)(xf_color0cntrl_f)) & XF_COLOR0CNTRL_F_ATTENSELECT_MASK) >> XF_COLOR0CNTRL_F_ATTENSELECT_SHIFT)
420#define XF_COLOR0CNTRL_F_SET_ATTENSELECT(xf_color0cntrl_f, attenselect) { \
421 xf_color0cntrl_f = (((unsigned long)(xf_color0cntrl_f)) & ~XF_COLOR0CNTRL_F_ATTENSELECT_MASK) | (((unsigned long)(attenselect)) << XF_COLOR0CNTRL_F_ATTENSELECT_SHIFT);\
422}
423
424#define SC_XF_AMBIENT0_F_SET_ALPHA(line, xf_ambient0_f,alpha) \
425 FAST_GPFLAGSET(line, xf_ambient0_f,alpha,XF_AMBIENT0_F_ALPHA)
426
427#define SC_XF_AMBIENT0_F_SET_BLUE(line, xf_ambient0_f,blue) \
428 FAST_GPFLAGSET(line, xf_ambient0_f,blue,XF_AMBIENT0_F_BLUE)
429
430#define SC_XF_AMBIENT0_F_SET_GREEN(line, xf_ambient0_f,green) \
431 FAST_GPFLAGSET(line, xf_ambient0_f,green,XF_AMBIENT0_F_GREEN)
432
433#define SC_XF_AMBIENT0_F_SET_RED(line, xf_ambient0_f,red) \
434 FAST_GPFLAGSET(line, xf_ambient0_f,red,XF_AMBIENT0_F_RED)
435
436#define SC_XF_AMBIENT1_F_SET_ALPHA(line, xf_ambient1_f,alpha) \
437 FAST_GPFLAGSET(line, xf_ambient1_f,alpha,XF_AMBIENT1_F_ALPHA)
438
439#define SC_XF_AMBIENT1_F_SET_BLUE(line, xf_ambient1_f,blue) \
440 FAST_GPFLAGSET(line, xf_ambient1_f,blue,XF_AMBIENT1_F_BLUE)
441
442#define SC_XF_AMBIENT1_F_SET_GREEN(line, xf_ambient1_f,green) \
443 FAST_GPFLAGSET(line, xf_ambient1_f,green,XF_AMBIENT1_F_GREEN)
444
445#define SC_XF_AMBIENT1_F_SET_RED(line, xf_ambient1_f,red) \
446 FAST_GPFLAGSET(line, xf_ambient1_f,red,XF_AMBIENT1_F_RED)
447
448#define SC_XF_MATERIAL0_F_SET_ALPHA(line, xf_material0_f,alpha) \
449 FAST_GPFLAGSET(line, xf_material0_f,alpha,XF_MATERIAL0_F_ALPHA)
450
451#define SC_XF_MATERIAL0_F_SET_BLUE(line, xf_material0_f,blue) \
452 FAST_GPFLAGSET(line, xf_material0_f,blue,XF_MATERIAL0_F_BLUE)
453
454#define SC_XF_MATERIAL0_F_SET_GREEN(line, xf_material0_f,green) \
455 FAST_GPFLAGSET(line, xf_material0_f,green,XF_MATERIAL0_F_GREEN)
456
457#define SC_XF_MATERIAL0_F_SET_RED(line, xf_material0_f,red) \
458 FAST_GPFLAGSET(line, xf_material0_f,red,XF_MATERIAL0_F_RED)
459
460#define SC_XF_MATERIAL1_F_SET_ALPHA(line, xf_material1_f,alpha) \
461 FAST_GPFLAGSET(line, xf_material1_f,alpha,XF_MATERIAL1_F_ALPHA)
462
463#define SC_XF_MATERIAL1_F_SET_BLUE(line, xf_material1_f,blue) \
464 FAST_GPFLAGSET(line, xf_material1_f,blue,XF_MATERIAL1_F_BLUE)
465
466#define SC_XF_MATERIAL1_F_SET_GREEN(line, xf_material1_f,green) \
467 FAST_GPFLAGSET(line, xf_material1_f,green,XF_MATERIAL1_F_GREEN)
468
469#define SC_XF_MATERIAL1_F_SET_RED(line, xf_material1_f,red) \
470 FAST_GPFLAGSET(line, xf_material1_f,red,XF_MATERIAL1_F_RED)
471
472#define SC_XF_MATRIXINDEX0_F_SET_GEOM(line, xf_matrixindex0_f,geom) \
473 FAST_GPFLAGSET(line, xf_matrixindex0_f,geom,XF_MATRIXINDEX0_F_GEOM)
474
475#define SC_XF_MATRIXINDEX0_F_SET_TEX0(line, xf_matrixindex0_f,tex0) \
476 FAST_GPFLAGSET(line, xf_matrixindex0_f,tex0,XF_MATRIXINDEX0_F_TEX0)
477
478#define SC_XF_MATRIXINDEX0_F_SET_TEX1(line, xf_matrixindex0_f,tex1) \
479 FAST_GPFLAGSET(line, xf_matrixindex0_f,tex1,XF_MATRIXINDEX0_F_TEX1)
480
481#define SC_XF_MATRIXINDEX0_F_SET_TEX2(line, xf_matrixindex0_f,tex2) \
482 FAST_GPFLAGSET(line, xf_matrixindex0_f,tex2,XF_MATRIXINDEX0_F_TEX2)
483
484#define SC_XF_MATRIXINDEX0_F_SET_TEX3(line, xf_matrixindex0_f,tex3) \
485 FAST_GPFLAGSET(line, xf_matrixindex0_f,tex3,XF_MATRIXINDEX0_F_TEX3)
486
487#define SC_XF_MATRIXINDEX1_F_SET_TEX4(line, xf_matrixindex1_f,tex4) \
488 FAST_GPFLAGSET(line, xf_matrixindex1_f,tex4,XF_MATRIXINDEX1_F_TEX4)
489
490#define SC_XF_MATRIXINDEX1_F_SET_TEX5(line, xf_matrixindex1_f,tex5) \
491 FAST_GPFLAGSET(line, xf_matrixindex1_f,tex5,XF_MATRIXINDEX1_F_TEX5)
492
493#define SC_XF_MATRIXINDEX1_F_SET_TEX6(line, xf_matrixindex1_f,tex6) \
494 FAST_GPFLAGSET(line, xf_matrixindex1_f,tex6,XF_MATRIXINDEX1_F_TEX6)
495
496#define SC_XF_MATRIXINDEX1_F_SET_TEX7(line, xf_matrixindex1_f,tex7) \
497 FAST_GPFLAGSET(line, xf_matrixindex1_f,tex7,XF_MATRIXINDEX1_F_TEX7)
498
499#define SC_XF_INVERTEXSPEC_F_SET_HOST_COLORS(line, xf_invertexspec_f,host_colors) \
500 FAST_GPFLAGSET(line, xf_invertexspec_f,host_colors,XF_INVERTEXSPEC_F_HOST_COLORS)
501
502#define SC_XF_INVERTEXSPEC_F_SET_HOST_NORMAL(line, xf_invertexspec_f,host_normal) \
503 FAST_GPFLAGSET(line, xf_invertexspec_f,host_normal,XF_INVERTEXSPEC_F_HOST_NORMAL)
504
505#define SC_XF_INVERTEXSPEC_F_SET_HOST_TEXTURES(line, xf_invertexspec_f,host_textures) \
506 FAST_GPFLAGSET(line, xf_invertexspec_f,host_textures,XF_INVERTEXSPEC_F_HOST_TEXTURES)
507
508#define SC_XF_NUMCOLORS_F_SET_GEN_NUMCOLORS(line, xf_numcolors_f,gen_numcolors) \
509 FAST_GPFLAGSET(line, xf_numcolors_f,gen_numcolors,XF_NUMCOLORS_F_GEN_NUMCOLORS)
510
511#define SC_XF_COLOR0CNTRL_F_SET_MATERIAL_SRC(line, xf_color0cntrl_f,material_src) \
512 FAST_GPFLAGSET(line, xf_color0cntrl_f,material_src,XF_COLOR0CNTRL_F_MATERIAL_SRC)
513
514#define SC_XF_COLOR0CNTRL_F_SET_LIGHTFUNC(line, xf_color0cntrl_f,lightfunc) \
515 FAST_GPFLAGSET(line, xf_color0cntrl_f,lightfunc,XF_COLOR0CNTRL_F_LIGHTFUNC)
516
517#define SC_XF_COLOR0CNTRL_F_SET_LIGHT0(line, xf_color0cntrl_f,light0) \
518 FAST_GPFLAGSET(line, xf_color0cntrl_f,light0,XF_COLOR0CNTRL_F_LIGHT0)
519
520#define SC_XF_COLOR0CNTRL_F_SET_LIGHT1(line, xf_color0cntrl_f,light1) \
521 FAST_GPFLAGSET(line, xf_color0cntrl_f,light1,XF_COLOR0CNTRL_F_LIGHT1)
522
523#define SC_XF_COLOR0CNTRL_F_SET_LIGHT2(line, xf_color0cntrl_f,light2) \
524 FAST_GPFLAGSET(line, xf_color0cntrl_f,light2,XF_COLOR0CNTRL_F_LIGHT2)
525
526#define SC_XF_COLOR0CNTRL_F_SET_LIGHT3(line, xf_color0cntrl_f,light3) \
527 FAST_GPFLAGSET(line, xf_color0cntrl_f,light3,XF_COLOR0CNTRL_F_LIGHT3)
528
529#define SC_XF_COLOR0CNTRL_F_SET_AMBIENT_SRC(line, xf_color0cntrl_f,ambient_src) \
530 FAST_GPFLAGSET(line, xf_color0cntrl_f,ambient_src,XF_COLOR0CNTRL_F_AMBIENT_SRC)
531
532#define SC_XF_COLOR0CNTRL_F_SET_DIFFUSEATTEN(line, xf_color0cntrl_f,diffuseatten) \
533 FAST_GPFLAGSET(line, xf_color0cntrl_f,diffuseatten,XF_COLOR0CNTRL_F_DIFFUSEATTEN)
534
535#define SC_XF_COLOR0CNTRL_F_SET_ATTENENABLE(line, xf_color0cntrl_f,attenenable) \
536 FAST_GPFLAGSET(line, xf_color0cntrl_f,attenenable,XF_COLOR0CNTRL_F_ATTENENABLE)
537
538#define SC_XF_COLOR0CNTRL_F_SET_ATTENSELECT(line, xf_color0cntrl_f,attenselect) \
539 FAST_GPFLAGSET(line, xf_color0cntrl_f,attenselect,XF_COLOR0CNTRL_F_ATTENSELECT)
540
541#define SC_XF_COLOR0CNTRL_F_SET_LIGHT4(line, xf_color0cntrl_f,light4) \
542 FAST_GPFLAGSET(line, xf_color0cntrl_f,light4,XF_COLOR0CNTRL_F_LIGHT4)
543
544#define SC_XF_COLOR0CNTRL_F_SET_LIGHT5(line, xf_color0cntrl_f,light5) \
545 FAST_GPFLAGSET(line, xf_color0cntrl_f,light5,XF_COLOR0CNTRL_F_LIGHT5)
546
547#define SC_XF_COLOR0CNTRL_F_SET_LIGHT6(line, xf_color0cntrl_f,light6) \
548 FAST_GPFLAGSET(line, xf_color0cntrl_f,light6,XF_COLOR0CNTRL_F_LIGHT6)
549
550#define SC_XF_COLOR0CNTRL_F_SET_LIGHT7(line, xf_color0cntrl_f,light7) \
551 FAST_GPFLAGSET(line, xf_color0cntrl_f,light7,XF_COLOR0CNTRL_F_LIGHT7)
552
553#define SC_XF_COLOR1CNTRL_F_SET_MATERIAL_SRC(line, xf_color1cntrl_f,material_src) \
554 FAST_GPFLAGSET(line, xf_color1cntrl_f,material_src,XF_COLOR1CNTRL_F_MATERIAL_SRC)
555
556#define SC_XF_COLOR1CNTRL_F_SET_LIGHTFUNC(line, xf_color1cntrl_f,lightfunc) \
557 FAST_GPFLAGSET(line, xf_color1cntrl_f,lightfunc,XF_COLOR1CNTRL_F_LIGHTFUNC)
558
559#define SC_XF_COLOR1CNTRL_F_SET_LIGHT0(line, xf_color1cntrl_f,light0) \
560 FAST_GPFLAGSET(line, xf_color1cntrl_f,light0,XF_COLOR1CNTRL_F_LIGHT0)
561
562#define SC_XF_COLOR1CNTRL_F_SET_LIGHT1(line, xf_color1cntrl_f,light1) \
563 FAST_GPFLAGSET(line, xf_color1cntrl_f,light1,XF_COLOR1CNTRL_F_LIGHT1)
564
565#define SC_XF_COLOR1CNTRL_F_SET_LIGHT2(line, xf_color1cntrl_f,light2) \
566 FAST_GPFLAGSET(line, xf_color1cntrl_f,light2,XF_COLOR1CNTRL_F_LIGHT2)
567
568#define SC_XF_COLOR1CNTRL_F_SET_LIGHT3(line, xf_color1cntrl_f,light3) \
569 FAST_GPFLAGSET(line, xf_color1cntrl_f,light3,XF_COLOR1CNTRL_F_LIGHT3)
570
571#define SC_XF_COLOR1CNTRL_F_SET_AMBIENT_SRC(line, xf_color1cntrl_f,ambient_src) \
572 FAST_GPFLAGSET(line, xf_color1cntrl_f,ambient_src,XF_COLOR1CNTRL_F_AMBIENT_SRC)
573
574#define SC_XF_COLOR1CNTRL_F_SET_DIFFUSEATTEN(line, xf_color1cntrl_f,diffuseatten) \
575 FAST_GPFLAGSET(line, xf_color1cntrl_f,diffuseatten,XF_COLOR1CNTRL_F_DIFFUSEATTEN)
576
577#define SC_XF_COLOR1CNTRL_F_SET_ATTENENABLE(line, xf_color1cntrl_f,attenenable) \
578 FAST_GPFLAGSET(line, xf_color1cntrl_f,attenenable,XF_COLOR1CNTRL_F_ATTENENABLE)
579
580#define SC_XF_COLOR1CNTRL_F_SET_ATTENSELECT(line, xf_color1cntrl_f,attenselect) \
581 FAST_GPFLAGSET(line, xf_color1cntrl_f,attenselect,XF_COLOR1CNTRL_F_ATTENSELECT)
582
583#define SC_XF_COLOR1CNTRL_F_SET_LIGHT4(line, xf_color1cntrl_f,light4) \
584 FAST_GPFLAGSET(line, xf_color1cntrl_f,light4,XF_COLOR1CNTRL_F_LIGHT4)
585
586#define SC_XF_COLOR1CNTRL_F_SET_LIGHT5(line, xf_color1cntrl_f,light5) \
587 FAST_GPFLAGSET(line, xf_color1cntrl_f,light5,XF_COLOR1CNTRL_F_LIGHT5)
588
589#define SC_XF_COLOR1CNTRL_F_SET_LIGHT6(line, xf_color1cntrl_f,light6) \
590 FAST_GPFLAGSET(line, xf_color1cntrl_f,light6,XF_COLOR1CNTRL_F_LIGHT6)
591
592#define SC_XF_COLOR1CNTRL_F_SET_LIGHT7(line, xf_color1cntrl_f,light7) \
593 FAST_GPFLAGSET(line, xf_color1cntrl_f,light7,XF_COLOR1CNTRL_F_LIGHT7)
594
595#define SC_XF_ALPHA0CNTRL_F_SET_MATERIAL_SRC(line, xf_alpha0cntrl_f,material_src) \
596 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,material_src,XF_ALPHA0CNTRL_F_MATERIAL_SRC)
597
598#define SC_XF_ALPHA0CNTRL_F_SET_LIGHTFUNC(line, xf_alpha0cntrl_f,lightfunc) \
599 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,lightfunc,XF_ALPHA0CNTRL_F_LIGHTFUNC)
600
601#define SC_XF_ALPHA0CNTRL_F_SET_LIGHT0(line, xf_alpha0cntrl_f,light0) \
602 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,light0,XF_ALPHA0CNTRL_F_LIGHT0)
603
604#define SC_XF_ALPHA0CNTRL_F_SET_LIGHT1(line, xf_alpha0cntrl_f,light1) \
605 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,light1,XF_ALPHA0CNTRL_F_LIGHT1)
606
607#define SC_XF_ALPHA0CNTRL_F_SET_LIGHT2(line, xf_alpha0cntrl_f,light2) \
608 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,light2,XF_ALPHA0CNTRL_F_LIGHT2)
609
610#define SC_XF_ALPHA0CNTRL_F_SET_LIGHT3(line, xf_alpha0cntrl_f,light3) \
611 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,light3,XF_ALPHA0CNTRL_F_LIGHT3)
612
613#define SC_XF_ALPHA0CNTRL_F_SET_AMBIENT_SRC(line, xf_alpha0cntrl_f,ambient_src) \
614 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,ambient_src,XF_ALPHA0CNTRL_F_AMBIENT_SRC)
615
616#define SC_XF_ALPHA0CNTRL_F_SET_DIFFUSEATTEN(line, xf_alpha0cntrl_f,diffuseatten) \
617 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,diffuseatten,XF_ALPHA0CNTRL_F_DIFFUSEATTEN)
618
619#define SC_XF_ALPHA0CNTRL_F_SET_ATTENENABLE(line, xf_alpha0cntrl_f,attenenable) \
620 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,attenenable,XF_ALPHA0CNTRL_F_ATTENENABLE)
621
622#define SC_XF_ALPHA0CNTRL_F_SET_ATTENSELECT(line, xf_alpha0cntrl_f,attenselect) \
623 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,attenselect,XF_ALPHA0CNTRL_F_ATTENSELECT)
624
625#define SC_XF_ALPHA0CNTRL_F_SET_LIGHT4(line, xf_alpha0cntrl_f,light4) \
626 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,light4,XF_ALPHA0CNTRL_F_LIGHT4)
627
628#define SC_XF_ALPHA0CNTRL_F_SET_LIGHT5(line, xf_alpha0cntrl_f,light5) \
629 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,light5,XF_ALPHA0CNTRL_F_LIGHT5)
630
631#define SC_XF_ALPHA0CNTRL_F_SET_LIGHT6(line, xf_alpha0cntrl_f,light6) \
632 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,light6,XF_ALPHA0CNTRL_F_LIGHT6)
633
634#define SC_XF_ALPHA0CNTRL_F_SET_LIGHT7(line, xf_alpha0cntrl_f,light7) \
635 FAST_GPFLAGSET(line, xf_alpha0cntrl_f,light7,XF_ALPHA0CNTRL_F_LIGHT7)
636
637#define SC_XF_ALPHA1CNTRL_F_SET_MATERIAL_SRC(line, xf_alpha1cntrl_f,material_src) \
638 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,material_src,XF_ALPHA1CNTRL_F_MATERIAL_SRC)
639
640#define SC_XF_ALPHA1CNTRL_F_SET_LIGHTFUNC(line, xf_alpha1cntrl_f,lightfunc) \
641 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,lightfunc,XF_ALPHA1CNTRL_F_LIGHTFUNC)
642
643#define SC_XF_ALPHA1CNTRL_F_SET_LIGHT0(line, xf_alpha1cntrl_f,light0) \
644 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,light0,XF_ALPHA1CNTRL_F_LIGHT0)
645
646#define SC_XF_ALPHA1CNTRL_F_SET_LIGHT1(line, xf_alpha1cntrl_f,light1) \
647 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,light1,XF_ALPHA1CNTRL_F_LIGHT1)
648
649#define SC_XF_ALPHA1CNTRL_F_SET_LIGHT2(line, xf_alpha1cntrl_f,light2) \
650 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,light2,XF_ALPHA1CNTRL_F_LIGHT2)
651
652#define SC_XF_ALPHA1CNTRL_F_SET_LIGHT3(line, xf_alpha1cntrl_f,light3) \
653 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,light3,XF_ALPHA1CNTRL_F_LIGHT3)
654
655#define SC_XF_ALPHA1CNTRL_F_SET_AMBIENT_SRC(line, xf_alpha1cntrl_f,ambient_src) \
656 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,ambient_src,XF_ALPHA1CNTRL_F_AMBIENT_SRC)
657
658#define SC_XF_ALPHA1CNTRL_F_SET_DIFFUSEATTEN(line, xf_alpha1cntrl_f,diffuseatten) \
659 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,diffuseatten,XF_ALPHA1CNTRL_F_DIFFUSEATTEN)
660
661#define SC_XF_ALPHA1CNTRL_F_SET_ATTENENABLE(line, xf_alpha1cntrl_f,attenenable) \
662 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,attenenable,XF_ALPHA1CNTRL_F_ATTENENABLE)
663
664#define SC_XF_ALPHA1CNTRL_F_SET_ATTENSELECT(line, xf_alpha1cntrl_f,attenselect) \
665 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,attenselect,XF_ALPHA1CNTRL_F_ATTENSELECT)
666
667#define SC_XF_ALPHA1CNTRL_F_SET_LIGHT4(line, xf_alpha1cntrl_f,light4) \
668 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,light4,XF_ALPHA1CNTRL_F_LIGHT4)
669
670#define SC_XF_ALPHA1CNTRL_F_SET_LIGHT5(line, xf_alpha1cntrl_f,light5) \
671 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,light5,XF_ALPHA1CNTRL_F_LIGHT5)
672
673#define SC_XF_ALPHA1CNTRL_F_SET_LIGHT6(line, xf_alpha1cntrl_f,light6) \
674 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,light6,XF_ALPHA1CNTRL_F_LIGHT6)
675
676#define SC_XF_ALPHA1CNTRL_F_SET_LIGHT7(line, xf_alpha1cntrl_f,light7) \
677 FAST_GPFLAGSET(line, xf_alpha1cntrl_f,light7,XF_ALPHA1CNTRL_F_LIGHT7)
678
679#define SC_XF_TEX_SET_RESERVED0(line, xf_tex,reserved0) \
680 FAST_GPFLAGSET(line, xf_tex,reserved0,XF_TEX_RESERVED0)
681
682#define SC_XF_TEX_SET_PROJECTION(line, xf_tex,projection) \
683 FAST_GPFLAGSET(line, xf_tex,projection,XF_TEX_PROJECTION)
684
685#define SC_XF_TEX_SET_INPUT_FORM(line, xf_tex,input_form) \
686 FAST_GPFLAGSET(line, xf_tex,input_form,XF_TEX_INPUT_FORM)
687
688#define SC_XF_TEX_SET_RESERVED1(line, xf_tex,reserved1) \
689 FAST_GPFLAGSET(line, xf_tex,reserved1,XF_TEX_RESERVED1)
690
691#define SC_XF_TEX_SET_TEXGEN_TYPE(line, xf_tex,texgen_type) \
692 FAST_GPFLAGSET(line, xf_tex,texgen_type,XF_TEX_TEXGEN_TYPE)
693
694#define SC_XF_TEX_SET_SOURCE_ROW(line, xf_tex,source_row) \
695 FAST_GPFLAGSET(line, xf_tex,source_row,XF_TEX_SOURCE_ROW)
696
697#define SC_XF_TEX_SET_BUMP_MAP_SOURCE(line, xf_tex,bump_map_source) \
698 FAST_GPFLAGSET(line, xf_tex,bump_map_source,XF_TEX_BUMP_MAP_SOURCE)
699
700#define SC_XF_TEX_SET_BUMP_MAP_LIGHT(line, xf_tex,bump_map_light) \
701 FAST_GPFLAGSET(line, xf_tex,bump_map_light,XF_TEX_BUMP_MAP_LIGHT)
702
703#define SC_XF_PERF0_F_SET_PERF_A(line, xf_perf0_f,perf_a) \
704 FAST_GPFLAGSET(line, xf_perf0_f,perf_a,XF_PERF0_F_PERF_A)
705
706#define SC_XF_PERF0_F_SET_PERF_B(line, xf_perf0_f,perf_b) \
707 FAST_GPFLAGSET(line, xf_perf0_f,perf_b,XF_PERF0_F_PERF_B)
708
709#define SC_XF_PERF0_F_SET_PERF_C(line, xf_perf0_f,perf_c) \
710 FAST_GPFLAGSET(line, xf_perf0_f,perf_c,XF_PERF0_F_PERF_C)
711
712#define SC_XF_PERF0_F_SET_PERF_D(line, xf_perf0_f,perf_d) \
713 FAST_GPFLAGSET(line, xf_perf0_f,perf_d,XF_PERF0_F_PERF_D)
714
715#define SC_XF_PERF1_F_SET_PERF_TARGET(line, xf_perf1_f,perf_target) \
716 FAST_GPFLAGSET(line, xf_perf1_f,perf_target,XF_PERF1_F_PERF_TARGET)
717
718#define SC_XF_ERROR_F_SET_CTEX_BUG_ENABLE(line, xf_error_f,ctex_bug_enable) \
719 FAST_GPFLAGSET(line, xf_error_f,ctex_bug_enable,XF_ERROR_F_CTEX_BUG_ENABLE)
720
721#define SC_XF_ERROR_F_SET_TFAN4_BUG_ENABLE(line, xf_error_f,tfan4_bug_enable) \
722 FAST_GPFLAGSET(line, xf_error_f,tfan4_bug_enable,XF_ERROR_F_TFAN4_BUG_ENABLE)
723
724#define SC_XF_ERROR_F_SET_TFAN16_BUG_ENABLE(line, xf_error_f,tfan16_bug_enable) \
725 FAST_GPFLAGSET(line, xf_error_f,tfan16_bug_enable,XF_ERROR_F_TFAN16_BUG_ENABLE)
726
727#define SC_XF_ERROR_F_SET_DUALTRAN_REG_ENABLE(line, xf_error_f,dualtran_reg_enable) \
728 FAST_GPFLAGSET(line, xf_error_f,dualtran_reg_enable,XF_ERROR_F_DUALTRAN_REG_ENABLE)
729
730#define SC_XF_ERROR_F_SET_BYPASS_BUG_ENABLE(line, xf_error_f,bypass_bug_enable) \
731 FAST_GPFLAGSET(line, xf_error_f,bypass_bug_enable,XF_ERROR_F_BYPASS_BUG_ENABLE)
732
733#define SC_XF_ERROR_F_SET_FAST_MATRIX_ENABLE(line, xf_error_f,fast_matrix_enable) \
734 FAST_GPFLAGSET(line, xf_error_f,fast_matrix_enable,XF_ERROR_F_FAST_MATRIX_ENABLE)
735
736#define SC_XF_DUALTEXTRAN_F_SET_DUALTEXTRAN_ENABLE(line, xf_dualtextran_f,dualtextran_enable) \
737 FAST_GPFLAGSET(line, xf_dualtextran_f,dualtextran_enable,XF_DUALTEXTRAN_F_DUALTEXTRAN_ENABLE)
738
739#define SC_XF_DUALTEX_F_SET_DUALMATRIX_ADRS(line, xf_dualtex_f,dualmatrix_adrs) \
740 FAST_GPFLAGSET(line, xf_dualtex_f,dualmatrix_adrs,XF_DUALTEX_F_DUALMATRIX_ADRS)
741
742#define SC_XF_DUALTEX_F_SET_RESERVED0(line, xf_dualtex_f,reserved0) \
743 FAST_GPFLAGSET(line, xf_dualtex_f,reserved0,XF_DUALTEX_F_RESERVED0)
744
745#define SC_XF_DUALTEX_F_SET_NORMAL_ENABLE(line, xf_dualtex_f,normal_enable) \
746 FAST_GPFLAGSET(line, xf_dualtex_f,normal_enable,XF_DUALTEX_F_NORMAL_ENABLE)
747
748
749#endif // XF_MEM_H