From 07bec141ac41b61299c9764aa607fd9e79ac4a4d Mon Sep 17 00:00:00 2001
From: Brian Paul
Date: Fri, 3 Nov 2006 17:43:20 +0000
Subject: assorted updates for 6.5.2
---
docs/relnotes-6.5.2.html | 31 +++++++++++++++++++++++++++----
1 file changed, 27 insertions(+), 4 deletions(-)
(limited to 'docs')
diff --git a/docs/relnotes-6.5.2.html b/docs/relnotes-6.5.2.html
index 06a4763c67..7a93ca25d1 100644
--- a/docs/relnotes-6.5.2.html
+++ b/docs/relnotes-6.5.2.html
@@ -18,18 +18,33 @@ Mesa 6.5.2 is a 6.5 follow-on development release mostly consisting of
MD5 checksums
+TBD
-New Features
+New features
+- New DRI memory manager system. Currently used by the i915tex driver.
+Other DRI drivers will be updated to use the new memory manager in coming
+months.
+
+To use the new driver you'll need the most recent DRM library and drivers
+(version 2.2 or later) and a recent xf86-video-intel driver module from X.org.
+
+New features resulting from this work include:
+
+- EXT_framebuffer_objects, render to texture
+
- ARB_pixel_buffer_objects
+
- Accelerated CopyTexSubimage, DrawPixels, ReadPixels, CopyPixels
+
- Accelerated texture uploads from pixel buffer objects
+
- Potentially texturing directly from the pixel buffer object (zero
+copy texturing).
+
+ - New Intel i965 DRI driver
- New
minstall script to replace normal install program
- Faster fragment program execution in software
-Changes
-
-
Bug fixes
- fixed invalid memory read while rendering textured points (bug 8320)
@@ -39,11 +54,19 @@ Mesa 6.5.2 is a 6.5 follow-on development release mostly consisting of
- glDrawPixels into a user-created framebuffer object could crash Xlib driver
- Line clipping was broken in some circumstances
- fragment.fogcoord register didn't always contain the correct value
+
- RGBA logicops didn't work reliably in some DRI drivers
+
- Fixed broken RGBA LogicOps in Intel DRI drivers
+
- Fixed some fragment program bugs in Intel i915 DRI driver
Internal code changes
+
+- The device driver functions ResizeBuffers and GetBufferSize have been
+decprecated.
+
- OpenGL 2.0 and 2.1 support is nearly done.
+
To Do (someday) items
--
cgit v1.2.3
From 466d4a1dd0ec3af1fc689e715bd4fc682d5897b6 Mon Sep 17 00:00:00 2001
From: Ian Romanick
Date: Fri, 10 Nov 2006 21:11:39 +0000
Subject: Added information about added GLX_SGI_make_current_read support
---
docs/relnotes-6.5.2.html | 7 +++++++
1 file changed, 7 insertions(+)
(limited to 'docs')
diff --git a/docs/relnotes-6.5.2.html b/docs/relnotes-6.5.2.html
index 7a93ca25d1..295f5442c3 100644
--- a/docs/relnotes-6.5.2.html
+++ b/docs/relnotes-6.5.2.html
@@ -43,6 +43,13 @@ copy texturing).
New Intel i965 DRI driver
New minstall script to replace normal install program
Faster fragment program execution in software
+Added (or fixed) support for
+ GLX_SGI_make_current_read to the following drivers:
+
+ - radeon
+ - savage
+ - mga
+
Bug fixes
--
cgit v1.2.3
From 222930461f8afef0e130b435a91264a0d4473251 Mon Sep 17 00:00:00 2001
From: Brian Paul
Date: Wed, 15 Nov 2006 14:59:05 +0000
Subject: more bug fixes
---
docs/relnotes-6.5.2.html | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
(limited to 'docs')
diff --git a/docs/relnotes-6.5.2.html b/docs/relnotes-6.5.2.html
index 295f5442c3..1ba936413a 100644
--- a/docs/relnotes-6.5.2.html
+++ b/docs/relnotes-6.5.2.html
@@ -64,6 +64,8 @@ copy texturing).
RGBA logicops didn't work reliably in some DRI drivers
Fixed broken RGBA LogicOps in Intel DRI drivers
Fixed some fragment program bugs in Intel i915 DRI driver
+Fixed glGetVertexAttribfvARB bug 8883
+Implemented glGetUniform[fi]vARB() functions
@@ -72,7 +74,8 @@ copy texturing).
- The device driver functions ResizeBuffers and GetBufferSize have been
decprecated.
-
- OpenGL 2.0 and 2.1 support is nearly done.
+
- OpenGL 2.0 and 2.1 support is nearly done. We need to do quite a bit
+more testing of the shading language functions.
--
cgit v1.2.3
From ebe4c893f8c0e80fe474743574a377d460b5f3e8 Mon Sep 17 00:00:00 2001
From: Brian Paul
Date: Thu, 16 Nov 2006 14:44:23 +0000
Subject: fix glDrawPixels(GL_COLOR_INDEX, GL_BITMAP) bug 9044
---
docs/relnotes-6.5.2.html | 1 +
src/mesa/main/image.c | 6 +++---
2 files changed, 4 insertions(+), 3 deletions(-)
(limited to 'docs')
diff --git a/docs/relnotes-6.5.2.html b/docs/relnotes-6.5.2.html
index 1ba936413a..f582c3c593 100644
--- a/docs/relnotes-6.5.2.html
+++ b/docs/relnotes-6.5.2.html
@@ -66,6 +66,7 @@ copy texturing).
Fixed some fragment program bugs in Intel i915 DRI driver
Fixed glGetVertexAttribfvARB bug 8883
Implemented glGetUniform[fi]vARB() functions
+Fixed glDrawPixels(GL_COLOR_INDEX, GL_BITMAP) segfault (bug 9044)
diff --git a/src/mesa/main/image.c b/src/mesa/main/image.c
index 695aab5227..6ff4089f0e 100644
--- a/src/mesa/main/image.c
+++ b/src/mesa/main/image.c
@@ -1168,7 +1168,7 @@ _mesa_pack_rgba_span_float(GLcontext *ctx, GLuint n, GLfloat rgba[][4],
const GLint comps = _mesa_components_in_format(dstFormat);
GLuint i;
- if (dstType != GL_FLOAT) {
+ if (dstType != GL_FLOAT || ctx->Color.ClampReadColor == GL_TRUE) {
/* need to clamp to [0, 1] */
transferOps |= IMAGE_CLAMP_BIT;
}
@@ -1182,7 +1182,7 @@ _mesa_pack_rgba_span_float(GLcontext *ctx, GLuint n, GLfloat rgba[][4],
if (dstFormat == GL_LUMINANCE || dstFormat == GL_LUMINANCE_ALPHA) {
/* compute luminance values */
- if (ctx->Color.ClampReadColor == GL_TRUE || dstType != GL_FLOAT) {
+ if (dstType != GL_FLOAT || ctx->Color.ClampReadColor == GL_TRUE) {
for (i = 0; i < n; i++) {
GLfloat sum = rgba[i][RCOMP] + rgba[i][GCOMP] + rgba[i][BCOMP];
luminance[i] = CLAMP(sum, 0.0F, 1.0F);
@@ -4173,7 +4173,7 @@ _mesa_unpack_image( GLuint dimensions,
if (width <= 0 || height <= 0 || depth <= 0)
return NULL; /* generate error later */
- if (format == GL_BITMAP) {
+ if (type == GL_BITMAP) {
bytesPerRow = (width + 7) >> 3;
flipBytes = !unpack->LsbFirst;
swap2 = swap4 = GL_FALSE;
--
cgit v1.2.3
From c15f6a991d4e96f3b9dcde655dd3a65be610f4f6 Mon Sep 17 00:00:00 2001
From: Brian Paul
Date: Fri, 17 Nov 2006 15:59:19 +0000
Subject: gluBuild2DMipmaps() fixes
---
docs/relnotes-6.5.2.html | 1 +
1 file changed, 1 insertion(+)
(limited to 'docs')
diff --git a/docs/relnotes-6.5.2.html b/docs/relnotes-6.5.2.html
index f582c3c593..7329a51711 100644
--- a/docs/relnotes-6.5.2.html
+++ b/docs/relnotes-6.5.2.html
@@ -67,6 +67,7 @@ copy texturing).
Fixed glGetVertexAttribfvARB bug 8883
Implemented glGetUniform[fi]vARB() functions
Fixed glDrawPixels(GL_COLOR_INDEX, GL_BITMAP) segfault (bug 9044)
+Fixed some gluBuild2DMipmaps() bugs (Greg McGarragh)
--
cgit v1.2.3
From c478f0d25b96fc8992e6de3d6df27783a9418523 Mon Sep 17 00:00:00 2001
From: Brian Paul
Date: Sat, 18 Nov 2006 16:44:30 +0000
Subject: name mangling update/fix
---
docs/mangling.html | 4 ++++
docs/relnotes-6.5.2.html | 1 +
2 files changed, 5 insertions(+)
(limited to 'docs')
diff --git a/docs/mangling.html b/docs/mangling.html
index 3f550ba5ec..55071544fa 100644
--- a/docs/mangling.html
+++ b/docs/mangling.html
@@ -19,6 +19,10 @@ This results in all the Mesa functions being prefixed with
To do this, recompile Mesa with the compiler flag -DUSE_MGL_NAMESPACE.
Add the flag to CFLAGS in the configuration file which you want to use.
+For example:
+
+CFLAGS += -DUSE_MGL_NAMESPACE
+
diff --git a/docs/relnotes-6.5.2.html b/docs/relnotes-6.5.2.html
index 7329a51711..ba99420d7d 100644
--- a/docs/relnotes-6.5.2.html
+++ b/docs/relnotes-6.5.2.html
@@ -68,6 +68,7 @@ copy texturing).
Implemented glGetUniform[fi]vARB() functions
Fixed glDrawPixels(GL_COLOR_INDEX, GL_BITMAP) segfault (bug 9044)
Fixed some gluBuild2DMipmaps() bugs (Greg McGarragh)
+Fixed broken "mgl" name mangling
--
cgit v1.2.3
From b0d8b137771e51920ead94191ac9e6425fbfc2e3 Mon Sep 17 00:00:00 2001
From: Ian Romanick
Date: Wed, 22 Nov 2006 19:05:20 +0000
Subject: Add tdfx updates to release notes.
---
docs/relnotes-6.5.2.html | 3 +++
1 file changed, 3 insertions(+)
(limited to 'docs')
diff --git a/docs/relnotes-6.5.2.html b/docs/relnotes-6.5.2.html
index ba99420d7d..27f9da6afb 100644
--- a/docs/relnotes-6.5.2.html
+++ b/docs/relnotes-6.5.2.html
@@ -49,7 +49,10 @@ copy texturing).
radeon
savage
mga
+ tdfx
+Added support for ARB_occlusion_query to the tdfx driver (Ian
+Romanick).
Bug fixes
--
cgit v1.2.3
From ba02b07c754f8c7df834e8ebcb55f784a58889ea Mon Sep 17 00:00:00 2001
From: Brian Paul
Date: Thu, 23 Nov 2006 00:43:23 +0000
Subject: fix indirect glMap* bugs
---
docs/relnotes-6.5.2.html | 1 +
1 file changed, 1 insertion(+)
(limited to 'docs')
diff --git a/docs/relnotes-6.5.2.html b/docs/relnotes-6.5.2.html
index 27f9da6afb..a8eb970cd2 100644
--- a/docs/relnotes-6.5.2.html
+++ b/docs/relnotes-6.5.2.html
@@ -72,6 +72,7 @@ Romanick).
Fixed glDrawPixels(GL_COLOR_INDEX, GL_BITMAP) segfault (bug 9044)
Fixed some gluBuild2DMipmaps() bugs (Greg McGarragh)
Fixed broken "mgl" name mangling
+Indirect rending was broken for glMap* functions (bug 8899)
--
cgit v1.2.3
From 73fdecca9fdd9e63aa5e57bcd67911fbb761d318 Mon Sep 17 00:00:00 2001
From: Claudio Ciccani
Date: Fri, 1 Dec 2006 14:12:05 +0000
Subject: Remove DirectFBGL header from Mesa bacause since 1.0.0 DirectFB
installs its own header.
Updated to the current DirectFBGL interface (i.e. added GetProcAddress()).
---
docs/README.directfb | 2 +-
progs/directfb/df_gears.c | 2 +-
progs/directfb/df_morph3d.c | 2 +-
progs/directfb/df_reflect.c | 2 +-
src/glut/directfb/ext.c | 7 +++
src/glut/directfb/internal.h | 3 +-
src/mesa/drivers/directfb/idirectfbgl_mesa.c | 80 ++++++++++++++++++----------
7 files changed, 65 insertions(+), 33 deletions(-)
(limited to 'docs')
diff --git a/docs/README.directfb b/docs/README.directfb
index 169ebe486e..e3bada4888 100644
--- a/docs/README.directfb
+++ b/docs/README.directfb
@@ -6,7 +6,7 @@ Requirements
============
To build Mesa with DirectFB (DirectFBGL) support you need:
- - DirectFB at least 0.9.21 (http://directfb.org)
+ - DirectFB at least 1.0.0 (http://directfb.org)
- pkg-config at least 0.9 (http://pkgconfig.sf.net)
diff --git a/progs/directfb/df_gears.c b/progs/directfb/df_gears.c
index 27df900115..c480767bd3 100644
--- a/progs/directfb/df_gears.c
+++ b/progs/directfb/df_gears.c
@@ -27,9 +27,9 @@
#include
#include
+#include
#include
-#include
/* the super interface */
diff --git a/progs/directfb/df_morph3d.c b/progs/directfb/df_morph3d.c
index f7f143447f..2730fa6156 100644
--- a/progs/directfb/df_morph3d.c
+++ b/progs/directfb/df_morph3d.c
@@ -159,9 +159,9 @@ So the angle is:
#include
#include
+#include
#include
-#include
/* the super interface */
diff --git a/progs/directfb/df_reflect.c b/progs/directfb/df_reflect.c
index ce4d12f749..a0e789c387 100644
--- a/progs/directfb/df_reflect.c
+++ b/progs/directfb/df_reflect.c
@@ -27,9 +27,9 @@
#include
#include
+#include
#include
-#include
#include "util/showbuffer.c"
#include "util/readtex.c"
diff --git a/src/glut/directfb/ext.c b/src/glut/directfb/ext.c
index d7338ce5f7..e37ecf5afa 100644
--- a/src/glut/directfb/ext.c
+++ b/src/glut/directfb/ext.c
@@ -156,6 +156,13 @@ glutGetProcAddress( const char *name )
return glut_functions[i].address;
}
+#if DIRECTFBGL_INTERFACE_VERSION >= 1
+ if (g_current) {
+ void *address = NULL;
+ g_current->gl->GetProcAddress( g_current->gl, name, &address );
+ return address;
+ }
+#endif
return NULL;
}
diff --git a/src/glut/directfb/internal.h b/src/glut/directfb/internal.h
index 2e986c9f28..bc3e20e93e 100644
--- a/src/glut/directfb/internal.h
+++ b/src/glut/directfb/internal.h
@@ -26,8 +26,9 @@
#include
#include
+#include
+
#include "GL/glut.h"
-#include "GL/directfbgl.h"
#define VERSION_CODE( M, m, r ) (((M) << 16) | ((m) << 8) | ((r)))
diff --git a/src/mesa/drivers/directfb/idirectfbgl_mesa.c b/src/mesa/drivers/directfb/idirectfbgl_mesa.c
index eefc964889..f5bbd127c2 100644
--- a/src/mesa/drivers/directfb/idirectfbgl_mesa.c
+++ b/src/mesa/drivers/directfb/idirectfbgl_mesa.c
@@ -25,24 +25,16 @@
#include
-#include
-#include
-#include
-
#include
#include
-#define VERSION_CODE( M, m, r ) (((M) * 1000) + ((m) * 100) + ((r)))
-#define DIRECTFB_VERSION_CODE VERSION_CODE( DIRECTFB_MAJOR_VERSION, \
- DIRECTFB_MINOR_VERSION, \
- DIRECTFB_MICRO_VERSION )
-
+#include
-#ifdef CLAMP
-# undef CLAMP
-#endif
+#include
+#include
+#include
-#include "GL/directfbgl.h"
+#undef CLAMP
#include "glheader.h"
#include "buffers.h"
#include "context.h"
@@ -62,6 +54,12 @@
#include "drivers/common/driverfuncs.h"
+#define VERSION_CODE( M, m, r ) (((M) * 1000) + ((m) * 100) + ((r)))
+#define DIRECTFB_VERSION_CODE VERSION_CODE( DIRECTFB_MAJOR_VERSION, \
+ DIRECTFB_MINOR_VERSION, \
+ DIRECTFB_MICRO_VERSION )
+
+
static DFBResult
Probe( void *data );
@@ -79,7 +77,7 @@ DIRECT_INTERFACE_IMPLEMENTATION( IDirectFBGL, Mesa )
typedef struct {
int ref; /* reference counter */
- DFBBoolean locked;
+ int locked;
IDirectFBSurface *surface;
DFBSurfacePixelFormat format;
@@ -189,8 +187,10 @@ IDirectFBGL_Mesa_Lock( IDirectFBGL *thiz )
DIRECT_INTERFACE_GET_DATA( IDirectFBGL );
- if (data->locked)
- return DFB_LOCKED;
+ if (data->locked) {
+ data->locked++;
+ return DFB_OK;
+ }
if (directfbgl_lock())
return DFB_LOCKED;
@@ -202,6 +202,7 @@ IDirectFBGL_Mesa_Lock( IDirectFBGL *thiz )
(void*)&data->video.start, &data->video.pitch );
if (ret) {
D_ERROR( "DirectFBGL/Mesa: couldn't lock surface.\n" );
+ directfbgl_unlock();
return ret;
}
data->video.end = data->video.start + (height-1) * data->video.pitch;
@@ -218,7 +219,7 @@ IDirectFBGL_Mesa_Lock( IDirectFBGL *thiz )
&data->framebuffer, width, height);
}
- data->locked = DFB_TRUE;
+ data->locked++;
return DFB_OK;
}
@@ -230,14 +231,14 @@ IDirectFBGL_Mesa_Unlock( IDirectFBGL *thiz )
if (!data->locked)
return DFB_OK;
-
- _mesa_make_current( NULL, NULL, NULL );
+
+ if (--data->locked == 0) {
+ _mesa_make_current( NULL, NULL, NULL );
- data->surface->Unlock( data->surface );
-
- directfbgl_unlock();
+ data->surface->Unlock( data->surface );
- data->locked = DFB_FALSE;
+ directfbgl_unlock();
+ }
return DFB_OK;
}
@@ -276,6 +277,26 @@ IDirectFBGL_Mesa_GetAttributes( IDirectFBGL *thiz,
return DFB_OK;
}
+#if DIRECTFBGL_INTERFACE_VERSION >= 1
+static DFBResult
+IDirectFBGL_Mesa_GetProcAddress( IDirectFBGL *thiz,
+ const char *name,
+ void **ret_address )
+{
+ DIRECT_INTERFACE_GET_DATA( IDirectFBGL );
+
+ if (!name)
+ return DFB_INVARG;
+
+ if (!ret_address)
+ return DFB_INVARG;
+
+ *ret_address = _glapi_get_proc_address( name );
+
+ return (*ret_address) ? DFB_OK : DFB_UNSUPPORTED;
+}
+#endif
+
/* exported symbols */
@@ -326,11 +347,14 @@ Construct( IDirectFBGL *thiz, IDirectFBSurface *surface )
}
/* Assign interface pointers. */
- thiz->AddRef = IDirectFBGL_Mesa_AddRef;
- thiz->Release = IDirectFBGL_Mesa_Release;
- thiz->Lock = IDirectFBGL_Mesa_Lock;
- thiz->Unlock = IDirectFBGL_Mesa_Unlock;
- thiz->GetAttributes = IDirectFBGL_Mesa_GetAttributes;
+ thiz->AddRef = IDirectFBGL_Mesa_AddRef;
+ thiz->Release = IDirectFBGL_Mesa_Release;
+ thiz->Lock = IDirectFBGL_Mesa_Lock;
+ thiz->Unlock = IDirectFBGL_Mesa_Unlock;
+ thiz->GetAttributes = IDirectFBGL_Mesa_GetAttributes;
+#if DIRECTFBGL_INTERFACE_VERSION >= 1
+ thiz->GetProcAddress = IDirectFBGL_Mesa_GetProcAddress;
+#endif
return DFB_OK;
}
--
cgit v1.2.3
From f10acf8b7890e6cfc4c2c2c8b778cad66f5ab0e4 Mon Sep 17 00:00:00 2001
From: Brian Paul
Date: Sat, 2 Dec 2006 18:18:41 +0000
Subject: 6.5.2 release updates
---
docs/news.html | 8 +++++++-
docs/relnotes-6.5.2.html | 6 +++---
2 files changed, 10 insertions(+), 4 deletions(-)
(limited to 'docs')
diff --git a/docs/news.html b/docs/news.html
index 9cd622fe22..c5f68a6e23 100644
--- a/docs/news.html
+++ b/docs/news.html
@@ -11,6 +11,12 @@
News
+December 2, 2006
+
+Mesa 6.5.2 has been released.
+This is a new development release.
+
+
September 15, 2006
Mesa 6.5.1 has been released.
@@ -1070,6 +1076,6 @@ source code.
-$Id: news.html,v 3.32 2006/09/21 22:51:16 brianp Exp $
+$Id: news.html,v 3.33 2006/12/02 18:18:41 brianp Exp $