diff options
| -rw-r--r-- | src/mesa/drivers/glide/fxdd.c | 17 | ||||
| -rw-r--r-- | src/mesa/drivers/glide/fxsetup.c | 8 | ||||
| -rw-r--r-- | src/mesa/drivers/windows/wmesa.c | 29 | ||||
| -rw-r--r-- | src/mesa/drivers/windows/wmesa_stereo.c | 30 | ||||
| -rw-r--r-- | src/mesa/drivers/x11/xm_dd.c | 39 | ||||
| -rw-r--r-- | src/mesa/main/dd.h | 9 | ||||
| -rw-r--r-- | src/mesa/main/state.c | 5 | 
7 files changed, 47 insertions, 90 deletions
| diff --git a/src/mesa/drivers/glide/fxdd.c b/src/mesa/drivers/glide/fxdd.c index 14c0c5f64e..1295d6011a 100644 --- a/src/mesa/drivers/glide/fxdd.c +++ b/src/mesa/drivers/glide/fxdd.c @@ -102,21 +102,6 @@ void fxInitPixelTables(fxMesaContext fxMesa, GLboolean bgrOrder)  /*****                 Miscellaneous functions                    *****/  /**********************************************************************/ -/* Enalbe/Disable dithering */ -static void fxDDDither(GLcontext *ctx, GLboolean enable) -{ -  if (MESA_VERBOSE&VERBOSE_DRIVER) { -    fprintf(stderr,"fxmesa: fxDDDither()\n"); -  } - -  if (enable) { -    FX_grDitherMode(GR_DITHER_4x4); -  } else { -    FX_grDitherMode(GR_DITHER_DISABLE); -  } -} - -  /* Return buffer size information */  static void fxDDBufferSize(GLcontext *ctx, GLuint *width, GLuint *height)  { @@ -1099,8 +1084,6 @@ void fxSetupDDPointers(GLcontext *ctx)    ctx->Driver.GetString=fxDDGetString; -  ctx->Driver.Dither=fxDDDither; -    ctx->Driver.NearFar=fxDDSetNearFar;    ctx->Driver.GetParameteri=fxDDGetParameteri; diff --git a/src/mesa/drivers/glide/fxsetup.c b/src/mesa/drivers/glide/fxsetup.c index b6bbb0c85b..45be2b8482 100644 --- a/src/mesa/drivers/glide/fxsetup.c +++ b/src/mesa/drivers/glide/fxsetup.c @@ -1406,7 +1406,6 @@ void fxDDColorMask(GLcontext *ctx,    fxMesa->new_state |= FX_NEW_COLOR_MASK;    ctx->Driver.RenderStart = fxSetupFXUnits;    (void) r; (void) g; (void) b; (void) a; -  return GL_FALSE;  }  static void fxSetupColorMask(GLcontext *ctx) @@ -1620,6 +1619,13 @@ void fxDDEnable(GLcontext *ctx, GLenum cap, GLboolean state)        ctx->Driver.RenderStart = fxSetupFXUnits;      }      break; +  case GL_DITHER: +    if (state) { +      FX_grDitherMode(GR_DITHER_4x4); +    } else { +      FX_grDitherMode(GR_DITHER_DISABLE); +    } +    break;    case GL_SCISSOR_TEST:       fxMesa->new_state |= FX_NEW_SCISSOR;       ctx->Driver.RenderStart = fxSetupFXUnits; diff --git a/src/mesa/drivers/windows/wmesa.c b/src/mesa/drivers/windows/wmesa.c index f0a1c84fe5..33a8f19631 100644 --- a/src/mesa/drivers/windows/wmesa.c +++ b/src/mesa/drivers/windows/wmesa.c @@ -1,4 +1,4 @@ -/* $Id: wmesa.c,v 1.5 2000/09/07 15:45:28 brianp Exp $ */ +/* $Id: wmesa.c,v 1.6 2000/09/08 21:44:56 brianp Exp $ */  /*  *   File name   :   wmesa.c @@ -22,6 +22,9 @@  /*   * $Log: wmesa.c,v $ + * Revision 1.6  2000/09/08 21:44:56  brianp + * removed ctx->Driver.Dither function + *   * Revision 1.5  2000/09/07 15:45:28  brianp   * Removed ctx->Driver.LogicOp().   * ctx->Driver.Index/ColorMask() now return void. @@ -570,24 +573,26 @@ static void set_color( GLcontext* ctx, GLubyte r, GLubyte g, GLubyte b, GLubyte  } -static void dither( GLcontext* ctx, GLboolean enable ) +static void enable( GLcontext* ctx, GLenum pname, GLboolean enable )  {     if (!Current)        return; -    if(enable == GL_FALSE){ -        Current->dither_flag = GL_FALSE; -        if(Current->cColorBits == 8) +   if (pname == GL_DITHER) { +      if(enable == GL_FALSE){ +         Current->dither_flag = GL_FALSE; +         if(Current->cColorBits == 8)              Current->pixelformat = PF_INDEX8; -    } -    else{ -        if (Current->rgb_flag && Current->cColorBits == 8){ +      } +      else{ +         if (Current->rgb_flag && Current->cColorBits == 8){              Current->pixelformat = PF_DITHER8;              Current->dither_flag = GL_TRUE; -        } -        else +         } +         else              Current->dither_flag = GL_FALSE; -    } +      } +   }  } @@ -1165,7 +1170,7 @@ void setup_DD_pointers( GLcontext* ctx )      ctx->Driver.Index = set_index;      ctx->Driver.Color = set_color; -    ctx->Driver.Dither = dither; +    ctx->Driver.Enable = enable;      ctx->Driver.SetBuffer = set_buffer;      ctx->Driver.GetBufferSize = buffer_size; diff --git a/src/mesa/drivers/windows/wmesa_stereo.c b/src/mesa/drivers/windows/wmesa_stereo.c index fe3c315bd9..934e6a5f83 100644 --- a/src/mesa/drivers/windows/wmesa_stereo.c +++ b/src/mesa/drivers/windows/wmesa_stereo.c @@ -279,32 +279,6 @@ static void set_color( GLcontext* ctx, GLubyte r, GLubyte g, GLubyte b, GLubyte -/* Set the index mode bitplane mask. */
 -static GLboolean index_mask(GLcontext* ctx, GLuint mask)
 -{
 -   /* can't implement */
 -   return GL_FALSE;
 -}
 -
 -
 -
 -/* Set the RGBA drawing mask. */
 -static GLboolean color_mask( GLcontext* ctx,
 -							 GLboolean rmask, GLboolean gmask,
 -							 GLboolean bmask, GLboolean amask)
 -{
 -   /* can't implement */
 -   return GL_FALSE;
 -}
 -
 -
 -
 -static void dither( GLcontext* ctx, GLboolean enable )
 -{
 -   /* No op */
 -}
 -
 -
  static GLboolean set_buffer( GLcontext* ctx, GLenum mode )
  {
 @@ -1031,10 +1005,6 @@ void setup_DD_pointers( GLcontext* ctx )     ctx->Driver.Index = set_index;
     ctx->Driver.Color = set_color;
 -   ctx->Driver.IndexMask = index_mask;
 -   ctx->Driver.ColorMask = color_mask;
 -
 -   ctx->Driver.Dither = dither;
     ctx->Driver.SetBuffer = set_buffer;
     ctx->Driver.GetBufferSize = buffer_size;
 diff --git a/src/mesa/drivers/x11/xm_dd.c b/src/mesa/drivers/x11/xm_dd.c index 271cb13f08..f10684dcf7 100644 --- a/src/mesa/drivers/x11/xm_dd.c +++ b/src/mesa/drivers/x11/xm_dd.c @@ -1,4 +1,4 @@ -/* $Id: xm_dd.c,v 1.1 2000/09/07 15:40:30 brianp Exp $ */ +/* $Id: xm_dd.c,v 1.2 2000/09/08 21:44:57 brianp Exp $ */  /*   * Mesa 3-D graphics library @@ -349,22 +349,6 @@ color_mask(GLcontext *ctx,  } -/* - * Enable/disable dithering - */ -static void -dither( GLcontext *ctx, GLboolean enable ) -{ -   const XMesaContext xmesa = (XMesaContext) ctx->DriverCtx; -   if (enable) { -      xmesa->pixelformat = xmesa->xm_visual->dithered_pf; -   } -   else { -      xmesa->pixelformat = xmesa->xm_visual->undithered_pf; -   } -} - -  /**********************************************************************/  /*** glClear implementations                                        ***/ @@ -920,6 +904,25 @@ get_string( GLcontext *ctx, GLenum name )  } +static void +enable( GLcontext *ctx, GLenum pname, GLboolean state ) +{ +   const XMesaContext xmesa = (XMesaContext) ctx->DriverCtx; + +   switch (pname) { +      case GL_DITHER: +         if (state) +            xmesa->pixelformat = xmesa->xm_visual->dithered_pf; +         else +            xmesa->pixelformat = xmesa->xm_visual->undithered_pf; +         break; +      default: +         ;  /* silence compiler warning */ +   } +} + + +  /*   * Initialize all the DD.* function pointers depending on the color   * buffer configuration.  This is mainly called by XMesaMakeCurrent. @@ -957,7 +960,7 @@ xmesa_update_state( GLcontext *ctx )     ctx->Driver.Clear = clear_buffers;     ctx->Driver.IndexMask = index_mask;     ctx->Driver.ColorMask = color_mask; -   ctx->Driver.Dither = dither; +   ctx->Driver.Enable = enable;     ctx->Driver.PointsFunc = xmesa_get_points_func( ctx );     ctx->Driver.LineFunc = xmesa_get_line_func( ctx ); diff --git a/src/mesa/main/dd.h b/src/mesa/main/dd.h index 66a740d4ec..68982004a2 100644 --- a/src/mesa/main/dd.h +++ b/src/mesa/main/dd.h @@ -1,4 +1,4 @@ -/* $Id: dd.h,v 1.30 2000/09/07 15:45:27 brianp Exp $ */ +/* $Id: dd.h,v 1.31 2000/09/08 21:44:55 brianp Exp $ */  /*   * Mesa 3-D graphics library @@ -336,13 +336,6 @@ struct dd_function_table {      * This is called whenever glFlush() is called.      */ -   void (*Dither)( GLcontext *ctx, GLboolean enable ); -   /* -    * Enable/disable dithering. -    * NOTE: This function will be removed in the future in favor -    * of the "Enable" driver function. -    */ -     void (*Error)( GLcontext *ctx );     /*      * Called whenever an error is generated.  ctx->ErrorValue contains diff --git a/src/mesa/main/state.c b/src/mesa/main/state.c index e9f68398a4..9d95264cbe 100644 --- a/src/mesa/main/state.c +++ b/src/mesa/main/state.c @@ -1,4 +1,4 @@ -/* $Id: state.c,v 1.25 2000/09/08 21:28:04 brianp Exp $ */ +/* $Id: state.c,v 1.26 2000/09/08 21:44:55 brianp Exp $ */  /*   * Mesa 3-D graphics library @@ -885,9 +885,6 @@ void gl_update_state( GLcontext *ctx )        if (ctx->NewState & (NEW_RASTER_OPS | NEW_TEXTURE_ENABLE)) {  	 update_fog_mode(ctx);  	 update_rasterflags(ctx); -	 if (ctx->Driver.Dither) { -	    (*ctx->Driver.Dither)( ctx, ctx->Color.DitherFlag ); -	 }  	 /* update scissor region */  	 ctx->DrawBuffer->Xmin = 0; | 
