Brian Paul
43aa034084
updated comment
2006-09-13 22:49:48 +00:00
Roland Scheidegger
888b1a9166
don't use derived value _ColorLogicOpEnabled as it's not current by the time we call the blend/logic op functions. Fixes glean logicOp test on r200.
2006-09-13 22:41:46 +00:00
Brian Paul
fd2e402359
added GL_CURRENT_RASTER_SECONDARY_COLOR query (OpenGL 2.1)
2006-09-13 21:02:32 +00:00
Brian Paul
bd5331f9e8
just comments and const qualifiers
2006-09-13 20:26:43 +00:00
Brian Paul
ac1d7370a7
fix broken do_EXP()
2006-09-13 20:14:24 +00:00
Roland Scheidegger
cb08dcbbf2
fix GL_REFLECTION_MAP texgen by not using tex matrix negation when lighting is not enabled (?). This fixes demos/cubemap as well as glean texCube test.
2006-09-13 17:35:44 +00:00
Roland Scheidegger
87d6028f28
make sure we upload the new vertex program if the program string changes.
2006-09-13 17:30:11 +00:00
Brian Paul
25d59d2962
make triangle smoothing a sw fallback (Martign van Oosterhout)
2006-09-13 16:41:25 +00:00
Jerome Glisse
323414940f
Fix compilation warning.
2006-09-12 18:52:13 +00:00
Jerome Glisse
6a65e6db3d
Removing some of r200 dependency, cleaning up code a bit,
...
and fixing a couple of warning. More cleanup and shuffle
to come. I have tested this change they might broke things
especialy with r300_texstate.c change (format_x doesn't
seems to be use at all by r300).
2006-09-12 18:34:43 +00:00
Keith Whitwell
b1cb39d8bd
quieten debug
2006-09-12 14:27:57 +00:00
Keith Whitwell
16a22a5f4a
Potential fix for doom3 lockups. Seems that there is a conflict
...
between the vertex cache, the vertex shader and the clipping stages,
all of which are competitors for URB entries assigned to the VS unit.
This change reduces the maximum number of clip and VS threads by
enough to ensure that they cannot consume all the available URB
entries, and then reduces the number somewhat more up to an arbitary
amount I discovered by trial and error. Unfortunately trial and error
solutions don't inspire total confidence...
2006-09-12 13:54:31 +00:00
Keith Whitwell
72e810db9d
Disassemble active program when DEBUG_VS is set.
2006-09-12 13:51:09 +00:00
Keith Whitwell
7b8c73460f
Add code to tweak aubfile state and primitives on replay.
2006-09-12 13:50:22 +00:00
Keith Whitwell
e1ae10db2c
Encode a unique id in the aub header date fields.
2006-09-12 13:43:10 +00:00
Brian Paul
bd38df11f4
Win32 fixes (SF bug 1554931)
2006-09-11 16:39:04 +00:00
Brian Paul
31a66ada72
undo some accidental changes in _mesa_is_legal_format_and_type()
2006-09-11 15:25:49 +00:00
Brian Paul
02aa5fba03
init accum buffer fields in _mesa_update_framebuffer_visual()
2006-09-11 15:04:23 +00:00
Roland Scheidegger
25847f2b5b
remove code to deal with non-normalized texture coordinates for tex rect targets (swtcl tex coord translation stage, tcl tex matrix adaption) and use the chip's native handling of such coords instead (!!!). Seems noone noticed those bits in the se_coord_fmt reg, even though it works fairly similar to r200 (except it's set per-unit and always active, so only enable it for texture rectangles).
2006-09-10 19:19:13 +00:00
Brian Paul
cb53555058
Redefine the BYTE_TO_FLOAT() and SHORT_TO_FLOAT() macros to avoid problems
...
converting 0 to exactly 0.0
This goes against the OpenGL spec (see table 2.6) but solves problems
when doing byte -> float -> ubyte conversion for particular texture formats.
2006-09-10 17:42:57 +00:00
Brian Paul
ef8244df1a
don't use xmesa_DrawPixels_8R8G8B() if there's a software alpha channel
2006-09-10 17:10:36 +00:00
Roland Scheidegger
7998962444
cause a raster fallback if a yuv texture is used on texture unit > 0 as yuv conversion appears only to work on first unit.
2006-09-10 13:48:51 +00:00
Keith Whitwell
02df36f394
Basic facility for playing back captured aubfiles. Requires a small
...
hack to the drm to disable command verification on the cmd_buffer
ioctl. Doesn't exactly replay as commands are normally delivered as
batchbuffers but are captured and replayed as commands on the ring.
2006-09-08 10:36:32 +00:00
Roland Scheidegger
a5e73e6887
cause a vtxfmt fallback directly when hitting NewList for radeon and r200 drivers, otherwise we'll mix up tcl and vtxfmt path for some reason. This fixes a warzone2100 asssertion failure.
2006-09-08 00:54:55 +00:00
Keith Whitwell
3e05902d30
Consistent return values from the bm* functions.
...
Get aubfile generation working again.
2006-09-07 19:58:16 +00:00
Keith Whitwell
493b2ddecb
Cope with memory pool fragmentation by allowing a second attempt at
...
rendering operations to take place after evicting all resident
buffers.
Cope better with memory allocation failures throughout the driver and
improve tracking of failures.
2006-09-07 19:05:40 +00:00
Keith Whitwell
c26f36c830
Add some asserts, fix some not-quite-bugs.
2006-09-07 18:28:35 +00:00
Keith Whitwell
e48db4430f
Fix glitch with pool alignments.
2006-09-07 16:29:37 +00:00
Keith Whitwell
1456a0fff6
Use lower alignments where possible. Also pad out allocated blocks to
...
a multiple of alignment to avoid accumulating unusable free blocks.
2006-09-07 16:23:22 +00:00
Keith Whitwell
133f141680
Make sure bmBufferOffset is called for all active buffers every time
...
we render. Currenly requires that some state be re-examined after
every LOCK_HARDWARE().
2006-09-07 16:09:50 +00:00
Roland Scheidegger
c5cb8e2c6f
make really sure R200_VAP_PROG_VTX_SHADER_ENABLE is never set when we're already in a tcl fallback, otherwise the chip will instantly lock up when vertex progs are enabled the next time not in a tcl fallback (fixes for instance guaranteed lockup running any program which uses vertex progs with tcl_mode=0 and then later with tcl_mode=1).
2006-09-07 13:34:29 +00:00
Roland Scheidegger
28e7219b96
only allow VERT_ATTRIB_MAX instead of _TNL_ATTRIB_MAX for inputs of vertex programs (fixes a segfault since the result of the shift is undefined otherwise, and it may happen that _TNL_ATTRIB_POINTSIZE will be tried to read, unlike all other attribs this however may be unitialized (might be a bug in itself)).
2006-09-07 13:26:44 +00:00
Eric Anholt
d016d4e70f
Fix a leak of the screen's option cache on cleanup (copied from radeon).
2006-09-07 06:02:00 +00:00
Keith Whitwell
14ec34d647
Simplify the immediate and displaylist code. Treat VertexAttrib*ARB
...
as non-aliasing and cope with the >32 attributes that result, taking
materials into account.
2006-09-06 18:30:00 +00:00
Brian Paul
7d767604c7
remove stray tab
2006-09-06 13:44:57 +00:00
Brian Paul
d9aebd8498
for VERTEX_ATTRIB_WEIGHT, use break, not return
2006-09-06 05:03:47 +00:00
Brian Paul
3a55750d48
Hack for Warcraft (bug 8060): allow 'vertex.weight' to be referenced in
...
vertex program, even though it's not really supported. Results will be
undefined, but Warcraft doesn't actually use the attribute.
2006-09-05 23:15:29 +00:00
Brian Paul
43cc1dc18f
fix typo in enable_parser_extensions(): s/point_parameters/vertex_blend/
2006-09-05 23:11:09 +00:00
Brian Paul
a088f160b3
Consolidate common case of _mesa_set_program_error() followed by _mesa_error()
...
in new program_error() function.
Add const qualifiers in many places.
Reorder some debug code to prevent referencing free'd memory.
2006-09-05 23:08:51 +00:00
Keith Whitwell
d5cbb49c22
Dynamically allocate instruction store for tnl programs according to
...
requirements.
2006-09-05 10:01:24 +00:00
Keith Whitwell
74b2166ff8
Fixes for calculating point attenuation
2006-09-04 23:34:36 +00:00
Keith Whitwell
f65ad97469
Don't export NV_vertex_program as it's not supported, it confuses
...
glean, and we no longer need to export it to keep Mesa happy as we did
at one time.
2006-09-04 18:27:40 +00:00
Rune Petersen
ac7ea94030
Managed to make a commit that can't build... Sorry again...
2006-09-04 16:20:16 +00:00
Brian Paul
c78e895f09
get rid of GL_BOOLEAN definition (bug 8113)
2006-09-04 14:07:04 +00:00
Roland Scheidegger
014bfda235
fog state atom contains (only) fog params necessary for tcl. Must not be emitted if vertex progs are enabled as it overlaps vertex param #94 .
2006-09-04 00:57:39 +00:00
Rune Petersen
5300e8242f
add missing change to skip low impact RAST fallback...
...
Sorry.
2006-09-03 20:31:52 +00:00
Roland Scheidegger
5b4e7cdca4
fix the presumably broken check for the allow_large_textures and vblank_mode options (same as bug 8042).
2006-09-01 23:36:30 +00:00
Roland Scheidegger
91650469ae
make sure vertex programs are only enabled on the hw when they are really enabled, not just when a program enables vertex progs (could still be not enabled due to some error). Otherwise the hw potentially would try to execute a not valid (not set up at all) vertex program, likely leading to lockups. Hopefully fixes #8060 .
2006-09-01 20:21:12 +00:00
Keith Whitwell
6ec2d37ae8
Catch a few more cases of using a message reg as an instruction source
...
arg.
2006-09-01 14:57:19 +00:00
Keith Whitwell
db0e53af74
fix a couple of cases where a message reg is used as an instruction source.
2006-09-01 14:18:06 +00:00