PowerBlocks SDK
 
Loading...
Searching...
No Matches
gx_immediate.h
Go to the documentation of this file.
1
11
12// This header is not supposed to be included directly.
13// Instead include gx.h
14
15// These functions are implemented in the order
16// They should be described to hardware.
17// That is gxVertex, gxNormal, gxColor, gxTexCoord
18
19/* -------------------VERTEX--------------------- */
20
21#define gxVertex2f(x, y) GX_WPAR_F32 = x; \
22 GX_WPAR_F32 = y;
23#define gxVertex3f(x, y, z) GX_WPAR_F32 = x; \
24 GX_WPAR_F32 = y; \
25 GX_WPAR_F32 = z;
26
27#define gxVertex2ub(x, y) GX_WPAR_U8 = x; \
28 GX_WPAR_U8 = y;
29#define gxVertex3ub(x, y, z) GX_WPAR_U8 = x; \
30 GX_WPAR_U8 = y; \
31 GX_WPAR_U8 = z;
32
33#define gxVertex2b(x, y) GX_WPAR_S8 = x; \
34 GX_WPAR_S8 = y;
35#define gxVertex3b(x, y, z) GX_WPAR_S8 = x; \
36 GX_WPAR_S8 = y; \
37 GX_WPAR_S8 = z;
38
39#define gxVertex2us(x, y) GX_WPAR_U16 = x; \
40 GX_WPAR_U16 = y;
41#define gxVertex3us(x, y, z) GX_WPAR_U16 = x; \
42 GX_WPAR_U16 = y; \
43 GX_WPAR_U16 = z;
44
45#define gxVertex2s(x, y) GX_WPAR_S16 = x; \
46 GX_WPAR_S16 = y;
47#define gxVertex3s(x, y, z) GX_WPAR_S16 = x; \
48 GX_WPAR_S16 = y; \
49 GX_WPAR_S16 = z;
50
51#define gxVertex2ui(x, y) GX_WPAR_U32 = x; \
52 GX_WPAR_U32 = y;
53#define gxVertex3ui(x, y, z) GX_WPAR_U32 = x; \
54 GX_WPAR_U32 = y; \
55 GX_WPAR_U32 = z;
56
57#define gxVertex2i(x, y) GX_WPAR_S32 = x; \
58 GX_WPAR_S32 = y;
59#define gxVertex3i(x, y, z) GX_WPAR_S32 = x; \
60 GX_WPAR_S32 = y; \
61 GX_WPAR_S32 = z;
62
63#define gxVertexIdx1ub(i) GX_WPAR_U8 = i;
64#define gxVertexIdx1us(i) GX_WPAR_U16 = i;
65
66/* -------------------NORMALS--------------------- */
67
68#define gxNormal3f(x, y, z) GX_WPAR_F32 = x; \
69 GX_WPAR_F32 = y; \
70 GX_WPAR_F32 = z;
71
72#define gxNormal3b(x, y, z) GX_WPAR_S8 = x; \
73 GX_WPAR_S8 = y; \
74 GX_WPAR_S8 = z;
75
76#define gxNormal3s(x, y, z) GX_WPAR_S16 = x; \
77 GX_WPAR_S16 = y; \
78 GX_WPAR_S16 = z;
79
80#define gxNormal3i(x, y, z) GX_WPAR_S32 = x; \
81 GX_WPAR_S32 = y; \
82 GX_WPAR_S32 = z;
83
84#define gxNormalIdx1ub(i) GX_WPAR_U8 = i;
85#define gxNormalIdx1us(i) GX_WPAR_U16 = i;
86
87/* -------------------COLORS--------------------- */
88
89#define gxColor3f(r, g, b) GX_WPAR_F32 = r; \
90 GX_WPAR_F32 = g; \
91 GX_WPAR_F32 = b;
92#define gxColor4f(r, g, b, a) GX_WPAR_F32 = r; \
93 GX_WPAR_F32 = g; \
94 GX_WPAR_F32 = b; \
95 GX_WPAR_F32 = a;
96
97#define gxColor1ub(v) GX_WPAR_U8 = v;
98#define gxColor3ub(r, g, b) GX_WPAR_U8 = r; \
99 GX_WPAR_U8 = g; \
100 GX_WPAR_U8 = b;
101#define gxColor4ub(r, g, b, a) GX_WPAR_U8 = r; \
102 GX_WPAR_U8 = g; \
103 GX_WPAR_U8 = b; \
104 GX_WPAR_U8 = a;
105
106#define gxColor1b(v) GX_WPAR_S8 = v;
107#define gxColor3b(r, g, b) GX_WPAR_S8 = r; \
108 GX_WPAR_S8 = g; \
109 GX_WPAR_S8 = b;
110#define gxColor4b(r, g, b, a) GX_WPAR_S8 = r; \
111 GX_WPAR_S8 = g; \
112 GX_WPAR_S8 = b; \
113 GX_WPAR_S8 = a;
114
115#define gxColor1us(v) GX_WPAR_U16 = v;
116#define gxColor3us(r, g, b) GX_WPAR_U16 = r; \
117 GX_WPAR_U16 = g; \
118 GX_WPAR_U16 = b;
119#define gxColor4us(r, g, b, a) GX_WPAR_U16 = r; \
120 GX_WPAR_U16 = g; \
121 GX_WPAR_U16 = b; \
122 GX_WPAR_U16 = a;
123
124#define gxColor1s(v) GX_WPAR_S16 = v;
125#define gxColor3s(r, g, b) GX_WPAR_S16 = r; \
126 GX_WPAR_S16 = g; \
127 GX_WPAR_S16 = b;
128#define gxColor4s(r, g, b, a) GX_WPAR_S16 = r; \
129 GX_WPAR_S16 = g; \
130 GX_WPAR_S16 = b; \
131 GX_WPAR_S16 = a;
132
133#define gxColor1ui(v) GX_WPAR_U32 = v;
134#define gxColor3ui(r, g, b) GX_WPAR_U32 = r; \
135 GX_WPAR_U32 = g; \
136 GX_WPAR_U32 = b;
137#define gxColor4ui(r, g, b, a) GX_WPAR_U32 = r; \
138 GX_WPAR_U32 = g; \
139 GX_WPAR_U32 = b; \
140 GX_WPAR_U32 = a;
141
142#define gxColor1i(v) GX_WPAR_U32 = v;
143#define gxColor3i(r, g, b) GX_WPAR_S32 = r; \
144 GX_WPAR_S32 = g; \
145 GX_WPAR_S32 = b;
146#define gxColor4i(r, g, b, a) GX_WPAR_S32 = r; \
147 GX_WPAR_S32 = g; \
148 GX_WPAR_S32 = b; \
149 GX_WPAR_S32 = a;
150
151#define gxColorIdx1ub(i) GX_WPAR_U8 = i;
152#define gxColorIdx1us(i) GX_WPAR_U16 = i;
153
154/* -------------------TEXTURE COORDINATES--------------------- */
155
156#define gxTexCoord1f(s) GX_WPAR_F32 = s;
157#define gxTexCoord2f(s, t) GX_WPAR_F32 = s; \
158 GX_WPAR_F32 = t;
159
160#define gxTexCoord1ub(s) GX_WPAR_U8 = s;
161#define gxTexCoord2ub(s, t) GX_WPAR_U8 = s; \
162 GX_WPAR_U8 = t;
163
164#define gxTexCoord1b(s) GX_WPAR_S8 = s;
165#define gxTexCoord2b(s, t) GX_WPAR_S8 = s; \
166 GX_WPAR_S8 = t;
167
168#define gxTexCoord1us(s) GX_WPAR_U16 = s;
169#define gxTexCoord2us(s, t) GX_WPAR_U16 = s; \
170 GX_WPAR_U16 = t;
171
172#define gxTexCoord1s(s) GX_WPAR_S16 = s;
173#define gxTexCoord2s(s, t) GX_WPAR_S16 = s; \
174 GX_WPAR_S16 = t;
175
176#define gxTexCoord1ui(s) GX_WPAR_U32 = s;
177#define gxTexCoord2ui(s, t) GX_WPAR_U32 = s; \
178 GX_WPAR_U32 = t;
179
180#define gxTexCoord1i(s) GX_WPAR_S32 = s;
181#define gxTexCoord2i(s, t) GX_WPAR_S32 = s; \
182 GX_WPAR_S32 = t;
183
184#define gxTexCoordIdx1ub(i) GX_WPAR_U8 = i;
185#define gxTexCoordIdx1us(i) GX_WPAR_U16 = i;
186
187/* -------------------MATRIX INDEX--------------------- */
188#define gxMatrixIdx1ub(i) GX_WPAR_U8 = i;