summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/savage/savagestate.c
AgeCommit message (Collapse)Author
2005-01-16Added a fast path for emitting unclipped primitives directly to aFelix Kuehling
vertex buffer. ELTS are not supported yet (missing functionality in the DRM). You need at least Savage DRM version 2.1.3, which fixes a bug that screwed up triangle fans and strips. Moved the texture normalization stage to savagerender.c.
2005-01-08Added state debugging option (SAVAGE_DEBUG=state).Felix Kuehling
Fixed: Use savageEmitChangedRegs instead of savageEmitContiguousRegs for emitting Savage4.
2005-01-05* Fixed handling of scissorsFelix Kuehling
* Only set scissor regs directly if drmMinor < 1 * Don't set texaddr to 0 when a texture unit is disabled. That would trigger the tightened texture state check in the DRM if the texaddr and texdesc registers were not emitted atomically.
2005-01-03Added support for floating point depth buffers on Savage4-basedFelix Kuehling
hardware. By also reversing the depth range this can compensate the loss of accuracy of far objects caused by the projective transformation. Software fallbacks work but are slightly slower since floats in a custom (non IEEE) format have to be encoded and decoded. I havn't done anything about polygon offsets yet. There doesn't seem to be an easy way do get it right except making the offset unit as big as the lowest resolution of depth values. For now float depth is disabled by default but can be enabled through driconf (though I have seen only positive effects so far).
2005-01-01Removed all direct hardware access (MMIO, BCI) from the Savage DRIFelix Kuehling
driver. It uses the new DRM version 2.0.x now, which has just been committed to DRM CVS.
2004-12-15Added configuration support to the Savage driver. Three options areFelix Kuehling
supported so far.
2004-12-15Fixed initialization of some stencil-related S4 registers, which wasFelix Kuehling
misplaced in savageDDInitState_s3d, where was overwriting completely unrelated S3D registers with garbage.
2004-12-14uint*t -> u_int*tAlan Hourihane
2004-11-27Remove _mesa_ResizeBuffersMESA() call from _mesa_set_viewport().Brian Paul
Now, the driver's Viewport routine should call _mesa_ResizeBuffersMESA() if necessary. Cleaned up code related to GLframebuffer width/height initialization. Set initial viewport/scissor params in _mesa_make_current2(), instead of in the drivers' MakeCurrent functions.
2004-10-08Apply Eric's stencil wrap patch (Eric Anholt)Alex Deucher
2004-10-02added support for GL_ARB_draw_buffersBrian Paul
2004-05-03get rid of last few XF86DRIClipRectDave Airlie
2004-03-27Forgot to set SAVAGE_NEW_CULL in savageDDEnable_s3d.Felix Kuehling
2004-03-26Enable drawing directly to the (now tiled) front buffer.Felix Kuehling
2004-03-25Recalculate the viewport matrix in savageEmitDrawingRectangle.Felix Kuehling
2004-03-25More state management changes:Felix Kuehling
- Don't lock in savageDDUpdateStatte, don't call savageEmitHwStateLocked - Need to grab the lock for texture uploads now - New SAVAGE_NEW_CULL bit in new_state to make sure that culling state and raster_primitive are not examined at the wrong times.
2004-03-24Make sure hardware culling is disabled for unfilled primitives,Felix Kuehling
points and lines.
2004-03-24Buffer vertices and emit them in batches. Still using conventional drawingFelix Kuehling
commands, no vertex DMA.
2004-03-21Implemented support for software-based AUX color buffers.Brian Paul
Only available with Xlib driver for now. Assorted clean-ups related to Draw/ReadBuffer(). Renamed FRONT_LEFT_BIT -> DD_FRONT_LEFT_BIT, etc.
2004-03-21Removed some useless definitions, artifacts from the Utah-GLX i810 driver.Felix Kuehling
2004-03-21unsigned int -> uint32_t, unsigned char -> uint8_t where the size matters.Felix Kuehling
A bit more cosmetics. Improved state emit on Savage 3D/IX/MX.
2004-03-20Cleaned up and fixed stencil fallback.Felix Kuehling
2004-03-02Fixed some small state tracking issues while hunting a different problem.Felix Kuehling
2004-02-29Reorganized hardware state data structures and state emission. Don't trackFelix Kuehling
which registers changed in all the functions that change the state. Instead check which registers changed in the end when the hardware state is updated. Tried to avoid cosmetic (whitespace) changes in this commit.
2004-02-26Converted vertex setup to use t_vertex.[ch].Felix Kuehling
2004-02-22Imported the Savage DRI driver from the savage-2-0-0-branch of DRI CVSFelix Kuehling
with modifications to make it work with current Mesa 6.