Merge branch 'arb_map_buffer_range'
[mesa.git] / src / mesa / drivers / dri / r300 / r300_swtcl.h
index 92362b745bcf2b18af6abd47a675fcea6a1f83b2..c271d2654687875d4eb3124480c5b5bf07c8d587 100644 (file)
@@ -28,48 +28,38 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 /*
  * Authors:
- *   Keith Whitwell <keith@tungstengraphics.com>
+ *   Keith Whitwell <keith@tungstengraphics.com> - original r200 code
+ *   Dave Airlie <airlied@linux.ie>
  */
 
 #ifndef __R300_SWTCL_H__
 #define __R300_SWTCL_H__
 
-#include "mtypes.h"
+#include "main/mtypes.h"
 #include "swrast/swrast.h"
 #include "r300_context.h"
 
-extern void r300InitSwtcl( GLcontext *ctx );
-extern void r300DestroySwtcl( GLcontext *ctx );
-
-#if 0
-extern void r200ChooseRenderState( GLcontext *ctx );
-extern void r200ChooseVertexState( GLcontext *ctx );
-
-extern void r200CheckTexSizes( GLcontext *ctx );
-
-extern void r200BuildVertices( GLcontext *ctx, GLuint start, GLuint count,
-                                GLuint newinputs );
-
-extern void r200PrintSetupFlags(char *msg, GLuint flags );
-
-
-extern void r200_emit_indexed_verts( GLcontext *ctx,
-                                      GLuint start,
-                                      GLuint count );
+/*
+ * Here are definitions of OVM locations of vertex attributes for non TCL hw
+ */
+#define SWTCL_OVM_POS 0
+#define SWTCL_OVM_COLOR0 2
+#define SWTCL_OVM_COLOR1 3
+#define SWTCL_OVM_COLOR2 4
+#define SWTCL_OVM_COLOR3 5
+#define SWTCL_OVM_TEX(n) ((n) + 6)
+#define SWTCL_OVM_POINT_SIZE 15
 
-extern void r200_translate_vertex( GLcontext *ctx, 
-                                    const r200Vertex *src, 
-                                    SWvertex *dst );
+extern void r300ChooseSwtclVertexFormat(GLcontext *ctx, GLuint *InputsRead,  GLuint *OutputsWritten);
 
-extern void r200_print_vertex( GLcontext *ctx, const r200Vertex *v );
+extern void r300InitSwtcl( GLcontext *ctx );
+extern void r300DestroySwtcl( GLcontext *ctx );
 
-extern void r200_import_float_colors( GLcontext *ctx );
-extern void r200_import_float_spec_colors( GLcontext *ctx );
+extern void r300RenderStart(GLcontext *ctx);
+extern void r300RenderFinish(GLcontext *ctx);
+extern void r300RenderPrimitive(GLcontext *ctx, GLenum prim);
+extern void r300ResetLineStipple(GLcontext *ctx);
 
-extern void r200PointsBitmap( GLcontext *ctx, GLint px, GLint py,
-                             GLsizei width, GLsizei height,
-                             const struct gl_pixelstore_attrib *unpack,
-                             const GLubyte *bitmap );
-#endif
+extern void r300_swtcl_flush(GLcontext *ctx, uint32_t current_offset);
 
 #endif