Commit graph

3731 commits

Author SHA1 Message Date
Eric Anholt
e5856a2960 Convert Rage 128 over to t_vertex.c. While it's slightly slower (10% in ipers)
it's not that big of a deal in more normal apps, and axes a good bit of code.
And I assume that t_vertex will only get faster.  Removes ~43k from compiled
binary.

Tested with:	quake3, ut, ipers, texcyl, chromium, tuxracer, neverball (kinda)
2004-10-02 01:33:46 +00:00
Eric Anholt
fc552c530f Add an option for vertices emitted to be swapped CPU_TO_LE32, to be used by the
r128 code.
2004-10-02 01:28:38 +00:00
Ian Romanick
5b73371e05 Cut out all of the old texture environment code and rewrote it from
scratch.  There were just too many cut-and-paste errors in the code,
and it was too hard to follow.

This fixes Mesa bugzilla #1508.  #1509 is probably also fixed, but
I'd like to do some more testing before I close that particular bug.
Additionally, this cuts almost 4,600 lines of code from the driver.
2004-10-02 01:23:46 +00:00
Ian Romanick
bf4b63f836 Replace the numerous switch-statements to derive GL_COMBINE post-scale
state with a function.  This function sets the bits correctly.  Did some
trivial refactoring on some of the GL_COMBINE code.

First pass at replacing classic texture environments with GL_COMBINE.
This is controlled by the EXPERIMENTAL_COMBINE_MODE define.
2004-10-01 18:32:25 +00:00
Dave Airlie
75672d2e94 Fix mesa solo with doublebuffered apps, the drawable index/stamp weren't
being updated properly..
2004-10-01 04:34:01 +00:00
Ian Romanick
75e2f0698e Factored out code for setting texture coordinate wrap bits. Added support
for GL_ARB_texture_mirrored_repeat.  Enabled GL_NV_blend_square.  It has
always actually been supported.  Removed redundant EXT versions of ARB
extension strings.
2004-09-30 21:18:23 +00:00
Brian Paul
ba467e86fe set span.y prior to each span write in draw_depth_pixels, like Karl's other fix 2004-09-30 15:39:43 +00:00
Eric Anholt
6a2ca962db Bugzilla #1058: Fix some potential 64bit pointer issues by storing differences
between pointers in appropriate types.

Submitted by:	  Ronny V. Vindenes <s864@ii.uib.no>
2004-09-30 00:40:21 +00:00
Eric Anholt
7a086dc05e OK, one more time. Simplify the state-backup system by just storing the full
state in a ready-to-emit cmdbuf, which avoids the issue Nicolai Haehnle reported
where the check() could return differently during backup-and-emit than it should
have if it were called at the right time.  Move the lit emission before most of
the TCL state emission on r200, which fixes neverball issues.

Tested with:	r100/r200 with neverball, tuxracer, chromium, quake3, ipers
2004-09-30 00:08:05 +00:00
Karl Schultz
fa569c0a73 Fix bug in glDrawPixels when writing color indexed images on color indexed
devices.  In draw_index_pixels(), use the correct variables for the span Y
and span end values.
2004-09-28 18:53:44 +00:00
Nicolai Haehnle
f30d53e049 Initial revision 2004-09-28 10:59:23 +00:00
Daniel Borca
bbe364603c use GLuint instead of uint 2004-09-28 06:44:46 +00:00
Brian Paul
293ad98510 VBO RefCount fix (David Reveman) 2004-09-27 16:19:17 +00:00
Daniel Borca
e60c9311da stencil wrap works, either HW or SW (Ian Romanick) 2004-09-27 07:23:20 +00:00
Eric Anholt
8018f7104b Bump driver_date for today's fixes. 2004-09-25 21:08:56 +00:00
Eric Anholt
97ac8282f5 Can't bail in sisDDLogicOpCode when logicop is off, because it's called with
GL_COPY to turn off logicop.  Fixes glean's logicop test.
2004-09-25 21:08:30 +00:00
Eric Anholt
18c459c10b Triangle stipple is a fallback, since we don't have code for the stippling.
Doesn't seem to help with glean's paths test, but I'm pretty sure it's correct.
2004-09-25 21:06:58 +00:00
Eric Anholt
5565d32b57 Correct a couple of comments. 2004-09-25 19:43:30 +00:00
Eric Anholt
7b363b0dd4 Fix SiS AGP vertex dispatch by not trying to emit 0 vertices, which would hang
the hardware.  Re-enable AGP by default.
2004-09-25 19:01:18 +00:00
Eric Anholt
5562fe653c The previous code would emit a full set of state during the first EmitState on
a new cmdbuf, to ensure that state wasn't lost across UNLOCK/LOCK pairs (in the
case of context switching).  This was rather inefficient.  Instead, after
flushing a cmdbuf, mark the state as needing to be saved on unlock.  Then, at
the beginning of flushing a cmdbuf, if we actually have lost the context, go
back and emit a new cmdbuf with the full set of state, before continuing with
the cmdbuf flush.  Provides a 10-15% improvement in ipers performance in my
tests, along with other apps.

Tested with:	ipers, glxgears, quake3
2004-09-25 07:00:15 +00:00
Eric Anholt
4010481ba3 Fix texturing in quake3. Some code was left over from the dirty/clean list
setup that now removed atoms from the atomlist on texture deletion.
2004-09-25 06:12:40 +00:00
Eric Anholt
b4e2e9c65a Bump DRIVER_DATE for yesterday's changes. 2004-09-25 03:00:27 +00:00
Brian Paul
328a039413 patches for clearing hw depth buffers from software fallback (Nicolai Haehnle) 2004-09-24 14:30:13 +00:00
Daniel Borca
d9873c59ef added (back!) option to use non-packedcolor 2004-09-24 07:03:53 +00:00
Eric Anholt
303c342d53 -O -Wall warnings cleanups in r200. 2004-09-24 04:20:58 +00:00
Eric Anholt
cddd5c99e5 Clean up some warnings in the R100 driver with -O -Wall. 2004-09-24 03:09:49 +00:00
Eric Anholt
106ab07acd Remove an unnecessary calculation of the dest pointer. 2004-09-24 01:33:15 +00:00
Brian Paul
529e0a98d4 don't test for NULL pixels pointer here, do that in the 'store' routines after validating PBO address 2004-09-23 17:34:52 +00:00
Brian Paul
7e0c5888ea added a comment in BindTexture 2004-09-23 17:31:21 +00:00
Brian Paul
7287bbf4fc just some comments and formatting changes 2004-09-23 17:30:54 +00:00
Dave Airlie
a1f8ecf962 fix for Erics new emit state code, rework out the dest pointer
after we check the buffer
2004-09-23 08:24:03 +00:00
Eric Anholt
0c8f8d3dc9 The previous code would emit a full set of state during the first EmitState on
a new cmdbuf, to ensure that state wasn't lost across UNLOCK/LOCK pairs (in the
case of context switching).  This was rather inefficient.  Instead, after
flushing a cmdbuf, mark the state as needing to be saved on UNLOCK.  Then, at
the beginning of flushing a cmdbuf, if we actually have lost the context, go
back and emit a new cmdbuf with the full set of state, before continuing with
the cmdbuf flush.  Also, remove the dirty/clean atom lists, since atoms are
emitted in a fixed order these days, and go with a simpler single list.

Provides a 14% improvement in ipers performance in my tests, along with other
apps.
2004-09-22 06:27:02 +00:00
Dave Airlie
029ee9c680 Add xmlconfig to the i810 makefile 2004-09-21 00:39:59 +00:00
Daniel Borca
e2b13e4af3 clamp size of wide points 2004-09-20 08:33:38 +00:00
Ian Romanick
c59270e2b8 Add GL_ARB_texture_cube_map support for i830. Most of the code was
lifted from the i915 side.  i830 will now report version 1.3!  Hurrah!
With the exception of GL_EXT_texture_compression_s3tc, the i830 driver
now supports all the extensions that its Windows counterpart supports.
2004-09-19 08:03:46 +00:00
Ian Romanick
b9bbe78031 Added GL_ARB_point_parameters support for i830. 2004-09-19 07:15:38 +00:00
Ian Romanick
be3359bad5 Merge in all the i830 functional differences from the old i830 driver. 2004-09-19 07:01:26 +00:00
Karl Schultz
ffe52c6444 rearrange a couple of lines of code to avoid compilation error in VC 6,
probably due to a compiler bug.
2004-09-17 22:02:05 +00:00
Eric Anholt
6616146698 Symbol names are prepended with an underscore on CYGWIN as well.
X.Org Bugzilla:	1079
Submitted by:	Alexander Gottwald <ago@freedesktop.org>
2004-09-17 05:10:33 +00:00
Brian Paul
b18715fea3 replace glNormal3f(v) with GL_CALL(Normal3f)(v), etc (Andreas Stenglein 2004-09-15 14:49:33 +00:00
Brian Paul
d4aaa68979 in _mesa_problem() include version number in error message 2004-09-15 14:40:14 +00:00
Brian Paul
765f1a12c6 also fix possible delete bugs with buffer objects and vertex/fragment programs 2004-09-14 22:28:27 +00:00
Brian Paul
f18fc68707 Repeatedly deleting a texture ID with glDeleteTextures() could lead to a crash.
Added a DeletePending flag to texture object struct to fix that.
Other misc clean-ups.
2004-09-14 20:40:55 +00:00
Brian Paul
c3912b66ab Handle GL_MAX_VERTEX_ATTRIBS_ARB in glGet*().
Define 2.0 point-sprite related tokens in glheader.h (temporary).
2004-09-13 19:58:27 +00:00
Ian Romanick
4ef9ad22ae Minor extension string tweaks. Added support for vertex program extensions.
Tested with arbvptorus, arbvpwarpmesh, vptorus, and vpwarpmesh.
2004-09-13 16:36:44 +00:00
Brian Paul
051f6a5cb0 remove ARB_texture_non_power_of_two from _mesa_enable_1_5_extensions() 2004-09-13 14:55:07 +00:00
Brian Paul
114246eb86 tweak texcoord for sampling texture rectangles (Dave Reveman) 2004-09-13 14:53:02 +00:00
Daniel Borca
b66f674410 cleanup and bugfixes for fxDDClear() 2004-09-13 09:31:28 +00:00
Daniel Borca
802632e62d cleanup and some changes towards GL_ARB_point_sprite (two-zero) 2004-09-13 09:29:30 +00:00
Daniel Borca
eabfd43ad4 cleanup 2004-09-13 09:27:03 +00:00