summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2005-03-17Enable the generation of server-side __glGetBooleanv_size and relatedIan Romanick
functions. There are two parts to this. First, a size element with a name "Get" is shorthand for having four separate size elements with names "GetIntegerv", "GetDoublev", "GetFloatv", and "GetBooleanv". Additionally, a count of "?" is treated specially. This causes a call to a handcoded function named "__gl<base name>_variable_size". This is *only* needed to support GL_COMPRESSED_TEXTURE_FORMATS. That enum can return a variable number of values depending how many compressed texture formats are supported by the implementation. Fix a problem with glGetProgram{Local,Env}Parameter[df]vARB, glAreProgramsResidentNV, and glGetVertexAttribivNV. These changes only affect code generated for the server-side. The changes to enum.c are caused by enums added for the server-side __glGetBooleanv_size functions.
2005-03-17Minor refactoring and code tweaking. The only notable chage is thatIan Romanick
FilterGLAPISpecBase::xref is replaced by FilterGLAPISpecBase::functions_by_name. The notable difference between the two is that ::functions_by_name includes all functions, whether they have an assigned offset or not. This feature will be useful (necessary) when more server-side code is generated.
2005-03-17Minor vertex array support tweaks. These are in preparation for theIan Romanick
(eventual) addition of support for ARB_vertex_buffer_object. Elminitate the need for array_state_vector::large_header. Make some very minor tweaks to the handling of the indices pointer in emit_DrawElements_old.
2005-03-17Minor vertex array support tweaks. Most of these are in preparation for theIan Romanick
(eventual) addition of support for ARB_vertex_buffer_object. Move all the private vertex array data structures out of indirect_vertex_array.c and into indirect_va_private.h. Rename array_state_vector::enabled_array_count to array_state_vector::enabled_client_array_count. Make sure that both the GL extension string and the server GL version are available when __glXInitVertexState is called. Make sure that array_state::normalized is set correctly in the array's gl*Pointer function.
2005-03-17Refactored some of the code for PrintGlxReqSize_[ch]. This ensures that theIan Romanick
same set of functions will be iterated for both the generated C-source file and the generated header file.
2005-03-17Fix the handling of zero-sized output parameters (i.e., those with typeIan Romanick
'GLvoid *'). This fixes the GLX protocol for glGetProgramStringARB. This fixes bugzilla #2747. Remove the 'ignore="true"' from glVertexAttrib4bvARB. This fixes bugzilla #2746.
2005-03-17Hard-code the client-side maximum GL version. It turns out that there areIan Romanick
some flaws in the calculation code when the highest version listed in known_gl_extensions is supported. This code would also have some problems with some of the new features (that don't have an associated extension) on GL 2.0.
2005-03-16Proper VAP output configuration as R300_RS_ROUTE_0_COLOR became optional and ↵Aapo Tahkola
broke arbvptorus(takes no input color but produces output color). Also removing some useless code.
2005-03-16Fixed some strangeness when mixing textured/flat primitives. Skipping ↵Ben Skeggs
texture units should render correctly also. Aapo, I dont think I broke glxgears again on you...
2005-03-15add support for user-configurable brilinear filtering on r200Roland Scheidegger
2005-03-15Fix to get glxgears display anything.Aapo Tahkola
2005-03-15For some reason the Makefile didn't commit..Ben Skeggs
2005-03-15Initial multitexturing support. Old behaviour can be re-enabled by changing ↵Ben Skeggs
ifdefs in r300_setup_rs_unit and r300SetupPixelShader in r300_state.c\nRequires DRM update.
2005-03-14When timestamping textures, need to emit the event with SAVAGE_WAIT_3DFelix Kuehling
set. Otherwise the 3D engine may still be using a texture that is being overwritten. In order to minimize the cost of waiting, timestamp textures only when needed: when a texture image changes, when a different texture is bound to a texture unit or when a texture unit is disabled. (Used to be after flushing every command buffer.)
2005-03-14Stencil supportPeter Zubaj
Reflex from mesa demos doesn't work TODO - double side stencil I hope that I didn't break anything
2005-03-14re-enable slang sourcesMichal Krol
2005-03-14make it compile under linuxMichal Krol
2005-03-14make it compile under gcc 3.3.2Michal Krol
2005-03-14fix enum commaMichal Krol
2005-03-13Replacing alpha test bits with values that give desired results as compaired ↵Aapo Tahkola
to software rendering. Alpha test in textures is still completely broken as can be seen in progs/demos/fire and various games.
2005-03-13Updated savage_dri.h from Xorg CVS. This removes definitions that areFelix Kuehling
not part of the DDX->DRI interface and should never have been in this file in the first place.
2005-03-12Removed savagedma.[ch]. They have been unused for a while and were onlyFelix Kuehling
kept around for reference. Now that command DMA is implemented in the DRM module they are no longer needed.
2005-03-12Unlike radeon and r200 drivers r300AllocCmdBuf allocs dwords not bytes.Aapo Tahkola
2005-03-11Add support for ARB_draw_buffers and ARB_occlusion_query. The GLX protocolIan Romanick
for these extensions (as well as ARB_vertex_program and ARB_matrix_palette) was just approved by the ARB on 8-Mar-2005. Now the only extension missing for 1.5 support is ARB_vertex_buffer_object. The opcodes for ARB_matrix_palette were also added to gl_API.xml. Since this extension isn't supported by Mesa, no code is generated for it. Some tabs were also converted to spaces in the comment for GetCompressedTexImageARB.
2005-03-11add MAT_DIRTY_FLAGS in _math_matrix_mul_floats(), (bug 2696)Brian Paul
2005-03-11Add suitable definitions for the _REV formats, plus a commentPaul Mackerras
explaining why they are the same as the non-REV formats now that textures don't get byte-swapped on their way to the chip. Fix the ARGB4444 and L8 formats. Add entries for the A8 and RGB332 formats.
2005-03-10- Flush before updating the timestamp of a texture heap from a bound texture.Felix Kuehling
- Flush before using a new texture or before disabling a texture unit, because savageFlushCmdBuf can only update the timestamp of the last used texture. This fixes corruption in quake2 with single-textured lighting.
2005-03-09If the texture image changed force emitting the texture address, evenFelix Kuehling
if it didn't change. This seems to flush texture cashes. Fixes multi-textured lighting in quake2.
2005-03-09Don't use R200 texture constants - R300 fields are all different.Vladimir Dergachev
2005-03-09Deal with texture formats in a more robust way.Vladimir Dergachev
2005-03-08Replacing some RADEON cmd types with r300 counterparts.Aapo Tahkola
2005-03-08Improving Vladimirs alpha test fix a bit as it turns out r300Enable didnt ↵Aapo Tahkola
correctly disable alpha test. Vertex programs with high vertex count now run a lot faster as software fallback is no longer on. Also disabling 'temp to result'-instructions as they probably violate the spec and dont seem to be something thats needed.
2005-03-06Actually *use* the count_scale value associated with a parameter.Ian Romanick
2005-03-06Don't synchronize after each frame. Allow the GPU to be one frameFelix Kuehling
ahead of the CPU for more parallelism of CPU and GPU. Unfortunately there seems to be some broken hardware (like my ProSavageDDR) on which status register updates are delayed sometimes. This leads to very jerky animation if the hardware can buffer more than the current frame. A new option "sync_frames" can be used as a remedy on such broken hardware.
2005-03-06- Fixed two bugs related to DMA buffer handling that showed up with theFelix Kuehling
new DRM version 2.4 and command DMA. - Flush less. - Bumped the driver date.
2005-03-05Add format 15. It turned out to be X,X,X,X,X8.Vladimir Dergachev
2005-03-05Fixing memset on ia64 & other archsDave Airlie
From: Stephane Marchesin
2005-03-05Enable VB mode rendering by default. If anyone thinks this is wrong, ↵Vladimir Dergachev
*please* feel free to change it back. My reasons: * immediate mode is broken * vb mode is faster * vb mode is the right way to do it.
2005-03-05Do properly initialize ALPHA_TEST register instead of carefully preserving ↵Vladimir Dergachev
bogus value. This fixes many, many rendering issues which I wrongly blamed on texture programming or performance..
2005-03-05fix for solo to set the mode, and make solo gcc2 friendly...Dave Airlie
From: Stephane Marchesin
2005-03-05remove one of the two _tnl_isolate_materials function callsRoland Scheidegger
2005-03-04Import fixes from X.org tree (Søren Sandmann <sandmann@redhat.com>).Ian Romanick
2005-03-04Set pipes for R420 cards. Gives a nice speedup. This needs to be tested on ↵Rune Petersen
r420 cards with less than 16 pipes.
2005-03-03Add a couple of helper functions for completeness.Vladimir Dergachev
2005-03-03Fix some errors in the parameter descriptions in serveral vertex / fragmentIan Romanick
program related functions.
2005-03-03Check for some common function parameter description errors in theIan Romanick
endElement handler for <function>. This catches the errors as early as possible and makes debugging other code easier.
2005-03-03When building in the X-Server, attr.depth doesn't exist. Instead, useIan Romanick
(XMesaDrawable)w)->depth in the error message.
2005-03-03change gl_buffer_object's Size field to GLsizeiptrARB typeBrian Paul
2005-03-02use COPY_CLEAN_4V macro to replace using both ASSIGN_4V & COPY_SZ_4VAlan Hourihane
2005-03-02Added a bunch of new comments, minor code clean-ups.Brian Paul