summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers
Commit message (Collapse)AuthorAgeFilesLines
* switch over to vbo moduleKeith Whitwell2006-10-293-9/+6
|
* remove code for inserting mvp transform into position-invariant vertex progs ↵Roland Scheidegger2006-10-261-96/+7
| | | | and instead use _mesa_insert_mvp_code().
* change some bogus comments regarding the base e exponential function used ↵Roland Scheidegger2006-10-252-7/+6
| | | | for fog in vertex programs.
* fix (per-vertex) fog when using ARB_vp by incorporating fog factor ↵Roland Scheidegger2006-10-246-67/+153
| | | | computation into the vertex program (not yet fixed for swtnl). Simplify (and correct) the VTX_TCL_OUTPUT_VTXFMT handling when using vertex programs, turns out it's solely driven by the needs of the past-vertex stage of the pipeline, this should fix lockups with ill-specified applications using vertex programs (for instance applications enabling fog but not writing to fog coord output will now get (conformant) undefined results instead of lockups).
* Emit cliprects in the userspace driver as required, rather thanKeith Whitwell2006-10-2310-66/+81
| | | | | | | | passing them to the kernel. This works because all drawing commands in the 965 driver are emitted with the lock held and the batchbuffer is always flushed prior to releasing the lock. This allows multiple cliprects to be dealt with, without replaying entire batchbuffers and redundantly re-emitting state.
* don't use params passed to Clear()Brian Paul2006-10-211-2/+6
|
* Enable GLX_SGI_make_current_read for radeon.Ian Romanick2006-10-185-34/+57
| | | | | | | | | | | | | | Added code to track the drawable bound to the context for reading. In addition, when a drawable is initially bound (for reading or drawing) or when the size of the drawable changes, update the size of the framebuffer object that back the drawable (for software fallbacks). Deprecate the old GetBufferSize interface. Bump the driver date. These changes were tested with wincopy on both direct rendering and accelerated indirect rendering (AIGLX).
* Don't use x/y/w/h params given to Clear().Brian Paul2006-10-182-160/+59
|
* Want to stop passing x/y/width/height to Clear() function.Brian Paul2006-10-1815-122/+168
| | | | | | | The coordinates need to be computed after we've got the hw lock. Code updated to: 1. Ignore all/x/y/width/height/ params passed to Clear func. 2. Pass 0,0,0,0,0 to _swrast_Clear() until they're totally removed.
* remove obsolete intelBufferSize(), bump driver dateBrian Paul2006-10-171-23/+2
|
* Remove get_buffer_size()Brian Paul2006-10-172-15/+4
| | | | | Always check window size in XMesaMakeCurrent() in case glViewport is not called.
* Lots of fixes/changes to select color depth at runtime.Brian Paul2006-10-171-109/+100
|
* Init _UseTexEnvProgram to fix failed assertion in i915_render_start() - this ↵Brian Paul2006-10-161-0/+1
| | | | may be temporary
* Updates to intelWindowMoved():Brian Paul2006-10-161-6/+8
| | | | | | | Only need to call _mesa_resize_framebuffer() when we've detected a window size change. Set the drawFb->Initalized flag to GL_TRUE to avoid obsolete Driver.GetBufferSize/ResizeBuffer calls in the Mesa code.
* Track the currently bound read drawable and make sure its info is upIan Romanick2006-10-162-2/+15
| | | | to date.
* remove some old code that could cause infinite recursionBrian Paul2006-10-161-7/+0
|
* allow >10 mipmap levels (patch by Benno Schulenberg) (bug 3130)Brian Paul2006-10-154-19/+25
|
* regenerated to get DRI_CONF_EXCESS_MIPMAP()Brian Paul2006-10-151-0/+5
|
* fix handling of textures with a base internal format that does not have all ↵Roland Scheidegger2006-10-152-11/+30
| | | | four rgba values set for radeon and r200 (discovered with a modified glean pixelFormats test, noone ever noticed in over 2 years). For radeon, use hw format I8 as previously, and change tex env to make the correct default values appear for both GL_ALPHA and GL_LUMINANCE textures. For r200, which supports GL_LUMINANCE just fine, use the AL88 hw format for GL_ALPHA textures, since it seems like it's probably not worth the effort to fix up the texture environment (certainly complicated in case of ATI_fragment_shader programs).
* minor clean-up: s/intel->driDrawable/dPriv/Brian Paul2006-10-151-1/+1
|
* Remove calls to _mesa_ResizeBuffersMESA() - generally replace with code toBrian Paul2006-10-156-12/+72
| | | | check the current window size, then call _mesa_resize_framebuffer().
* Remove a bunch of "ctx->Driver.function = _swrast_Function" lines sinceBrian Paul2006-10-1520-252/+15
| | | | | default/fallback functions are already plugged in by the call to _mesa_init_driver_functions().
* Use endianness test function provided by mesa.Jerome Glisse2006-10-152-9/+6
| | | | | | | Use the _mesa_little_endian helper function insted of the MESA_BIG_ENDIAN flag. There is still place using this flag but we need to find how to submit 16bits elements on big endian computer.
* Remove Driver.ResizeBuffers = _mesa_resize_framebuffer lines.Brian Paul2006-10-1518-19/+0
| | | | | This is already done by the preceeding call to _mesa_init_driver_functions() which plugs in default functions like that.
* increate MaxTextureLevels to 11 (bug 3130)Brian Paul2006-10-152-2/+9
|
* Some code movement so that the gl_framebuffer is fully initialized beforeBrian Paul2006-10-141-5/+9
| | | | | calling _mesa_make_current() to avoid hitting the initialize_framebuffer_size() stuff in context.c
* Big re-org of buffer size management.Brian Paul2006-10-144-491/+526
| | | | | | | All buffer resizes now handled by xmesa_check_and_update_buffer_size() which uses the _mesa_resize_framebuffer() function. Moved all low-level XImage/Pixmap resizing into xm_buffers.c file. Also, update lots of comments for Doxygen.
* build fix: s/Table/TableUB/Brian Paul2006-10-141-1/+1
|
* assorted clean-upsBrian Paul2006-10-141-56/+38
|
* implement ARB_point_parameters and ARB_point_sprite on r200. The code is ↵Roland Scheidegger2006-10-1310-18/+238
| | | | nearly the same as outlined in bug #4707, except it disables perspective correction for point sprites to make them actually work. And, separate the state atom into two as the tcl parameters would overwrite vertex program parameters when active. Also implement the GL_VERTEX_PROGRAM_POINT_SIZE_ARB option to make vertex programs outputting a point size work correctly (untested). Smooth points will still always be size 1. While here, enable gouraud shading for fog when using fog coord.
* Upload of interleaved arrays currently assumes that position is theKeith Whitwell2006-10-131-0/+1
| | | | | | first element in the interleaved group. Add a test to catch cases where this isn't true and use per-array uploads instead. Fixes compiz glitches on x64.
* Make sure instructions are zero'd out before use.Keith Whitwell2006-10-131-0/+1
|
* Use unsigned long batchbuffer offset, fixes x64 warnings.Keith Whitwell2006-10-131-1/+1
|
* Fix printf warning.Keith Whitwell2006-10-131-1/+1
|
* Use unsigned long cast for checking pointer alignment, fixes x64 warnings.Keith Whitwell2006-10-131-2/+2
|
* Use mesa function to get opcode name rather than an internal table.Keith Whitwell2006-10-131-61/+1
|
* Revamp color table code.Brian Paul2006-10-132-7/+5
| | | | Always store all color tables as both float and ubyte.
* Fix bug #4681.Ian Romanick2006-10-111-142/+158
| | | | | | | | | | | | | | | | | glDeleteTextures and glDeleteTexturesEXT were erroneously listed as aliases of each other. For anything /except/ GLX protocol they are aliases. This set of changes allows functions that are functionally identical but have different GLX protocol to be listed as aliases. When building with GLX_INDIRECT_RENDERING set, different static functions are used. These functions determine whether the current context is direct rendering or not. If the context is direct rendering, the aliased function (e.g., glDeleteTextures in the case of glDeleteTexturesEXT) is called. If the context is not direct rendering, the correct GLX protocol is sent. For a deeper explanation of what is changed, please see: http://dri.freedesktop.org/wiki/PartiallyAliasedFunctions
* In xmesa_DrawPixels_8R8G8B() check if drawing into a window system buffer,Brian Paul2006-10-111-16/+17
| | | | not a user-created FBO.
* List of source (.c) files in each directory.Brian Paul2006-10-112-0/+10
| | | | | To be included by X.org Makefile.am files so that lists of files don't need to be hardcoded and frequently updated there.
* Move the fp_machine struct into s_nvfragmprog.c since (except for programBrian Paul2006-10-101-0/+3
| | | | debug) it's only used there.
* Use the mesa-provided texenv program rather than rolling our own.Keith Whitwell2006-10-104-1/+21
| | | | Turn on texture crossbar support.
* missing fileKeith Whitwell2006-10-051-0/+132
|
* Accelerate glBitmap with a color expand blit. Nice speedup for demosKeith Whitwell2006-10-057-5/+477
| | | | like 'fire' that display a help message or fps number this way.
* Quieten debug message.Keith Whitwell2006-10-051-1/+1
|
* eliminate rhw divide under some circumstancesKeith Whitwell2006-10-053-18/+32
|
* Quieten debug message.Keith Whitwell2006-10-051-0/+2
|
* Bugzilla 6242: [mach64] Use private DMA buffers (only)Felix Kuehling2006-10-024-23/+27
| | | | | | | | | | https://bugs.freedesktop.org/show_bug.cgi?id=6242 Patch by George Sapountzis: https://bugs.freedesktop.org/attachment.cgi?id=6271 Update to new mach64 DRM 2.0.0 with private DMA buffers. Handle EAGAIN in mach64FireBlitLocked: call drmCommandWrite up to MACH64_TIMEOUT times when EAGAIN is returned. Also handle EAGAIN in mach64FlushVerticesLocked.
* i915: Fix wait for scheduled swap on secondary display.Michel Dänzer2006-09-291-0/+5
|
* Move mipmap generation functions, texture scaling functions into newBrian Paul2006-09-292-0/+2
| | | | mipmap.c file.