The Mesa 3D Graphics Library

# Mesa 6.5.1 Release Notes / September 15, 2006

Mesa 6.5.1 is a 6.5 follow-on development release mostly consisting of bug fixes.

## MD5 checksums

    d9a555297319bb932a3192952d53d073  MesaLib-6.5.1.tar.gz
    c46f2c6646a270911b791dd8e1c2d977  MesaLib-6.5.1.tar.bz2
    939eaaff33322bfeafac784402b45f4f  MesaLib-6.5.1.zip
    9e4bbe83c007bfbaa67449a81cc3d36a  MesaDemos-6.5.1.tar.gz
    0f2794baf7a9d98b22caea9f78c6942d  MesaDemos-6.5.1.tar.bz2
    14c77eab9cc7a265c331abf239927c1c  MesaDemos-6.5.1.zip
    c5f87c23aaf4eaf1bda0d007ea98366c  MesaGLUT-6.5.1.tar.gz
    2525642fe7f454e3e1a1aad01359b406  MesaGLUT-6.5.1.tar.bz2
    e33b165c22551e23b58ede8767378543  MesaGLUT-6.5.1.zip

## New Features

- Intel i965 "broadwater" DRI driver
- GL_APPLE_vertex_array_object - allows encapsulation of a set of vertex arrays in an object.
- GL_EXT_texture_sRGB - non-linearly mapped texture formats
- GL_EXT_gpu_program_parameters - addes a few new functions for setting multiple vertex/fragment program parameters with one call.
- "engine" demo
- updated fbdev driver and GLUT for fbdev (Sean D'Epagnier)
- many updates to the DRI drivers

## Changes

- The glVertexAttribARB functions no longer alias the conventional vertex attributes.
- glxinfo program prints more info with -l option
- GL_FRAGMENT_PROGRAM_NV and GL_FRAGMENT_PROGRAM_ARB are now compatible, in terms of glBindProgramARB()
- The GL_ARB_vertex_program attribute `vertex.weight` is now accepted by the parser, even though the GL_ARB_vertex_blend and GL_EXT_vertex_weighting extensions aren't supported. Allows Warcraft to run.

## Bug fixes

- fixed broken texture border handling for depth textures (bug 6498)
- removed the test for duplicated framebuffer attachments, per version 117 of the GL_EXT_framebuffer_object specification
- fixed a few render-to-texture bugs, including render to depth texture
- clipping of lines against user-defined clip planes was broken (6512)
- assembly language dispatch for SPARC was broken (bug 6484)
- assorted compilation fixes on various Unix platforms (Dan Schikore)
- glPopAttrib could restore an invalid value for GL_DRAW_BUFFER
- assorted minor fixes for 16 and 32 bit/channel modes
- fixed assorted bugs in texture compression paths
- fixed indirect rendering vertex array crashes (bug 6863)
- glDrawPixels GL_INDEX_OFFSET didn't always work
- fixed convolution memory leak (bug 7077)
- rectangular depth textures didn't work
- invalid mode to glBegin didn't generate an error (bug 7142)
- 'normalized' parameter to glVertexAttribPointerARB didn't work
- disable bogus GLX_SGI_video_sync extension in xlib driver
- fixed R128 driver locking bug (Martijn van Oosterhout)
- using evaluators with vertex programs caused crashes (bug 7564)
- fragment.position wasn't set correctly for point/line primitives
- fixed parser bug for scalar sources for GL_NV_fragment_program
- max fragment program length was incorrectly 128, now 1024
- writes to result.depth in fragment programs weren't clamped to [0,1]
- fixed potential dangling pointer bug in glBindProgram()
- fixed some memory leaks (and potential crashes) in Xlib driver
- fixed a number of build issues on HP-UX (Christopher Bell)
- accum buffer didn't work with OSMesa interface

## Internal code changes

A number of Mesa program-related structs were renamed. For example struct vertex_program is now struct gl_vertex_program. All the effected drivers have been updated.

Ian Romanick updated the GL API dispatch code in a number of ways. First, many old/unused extensions were removed. Second, the static entrypoints for some extensions were removed. This means GL function pointers will have to be used more often (e.g. use glXGetProcAddressARB()).

## To Do (someday) items

- Switch to freeglut
- Increase MAX_DRAWBUFFERS
- Fix linux-glide target/driver.
- Fix lambda calculation for frag progs.

## Driver Status

    Driver			Status
    ----------------------	----------------------
    DRI drivers		varies with the driver
    XMesa/GLX (on Xlib)	implements OpenGL 1.5
    OSMesa (off-screen)	implements OpenGL 1.5
    Glide (3dfx Voodoo1/2)	implements OpenGL 1.3
    SVGA			implements OpenGL 1.3
    Wind River UGL		implements OpenGL 1.3
    Windows/Win32		implements OpenGL 1.5
    DJGPP			implements OpenGL 1.5
    GGI			implements OpenGL 1.3
    BeOS			implements OpenGL 1.5
    Allegro			needs updating
    D3D			needs updating