merge most of XFree86 RC3 (4.3.99.903) from vendor branch. bug #214
This commit is contained in:
		
							parent
							
								
									30ac3efde2
								
							
						
					
					
						commit
						03d893bff9
					
				|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/g_disptab.c,v 1.4 2003/09/28 20:15:41 alanh Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/g_disptab.c,v 1.6 2004/02/12 02:25:00 torrey Exp $ */ | ||||||
| /* DO NOT EDIT - THIS FILE IS AUTOMATICALLY GENERATED */ | /* DO NOT EDIT - THIS FILE IS AUTOMATICALLY GENERATED */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
|  | @ -425,8 +425,12 @@ __GLXdispatchRenderProcPtr __glXRenderTable[] = { | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDisp_SampleCoverageARB, | ||||||
|  | #ifndef MISSING_GL_EXTS | ||||||
| 	__glXDisp_WindowPos3fARB /* 230 */ | 	__glXDisp_WindowPos3fARB /* 230 */ | ||||||
|  | #else | ||||||
|  | 	__glXNoSuchRenderOpcode | ||||||
|  | #endif | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| __GLXdispatchSingleProcPtr __glXSwapSingleTable[__GLX_SINGLE_TABLE_SIZE] = { | __GLXdispatchSingleProcPtr __glXSwapSingleTable[__GLX_SINGLE_TABLE_SIZE] = { | ||||||
|  | @ -822,6 +826,10 @@ __GLXdispatchRenderProcPtr __glXSwapRenderTable[__GLX_RENDER_TABLE_SIZE] = { | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDispSwap_SampleCoverageARB, | ||||||
|  | #ifndef MISSING_GL_EXTS | ||||||
| 	__glXDispSwap_WindowPos3fARB /* 230 */ | 	__glXDispSwap_WindowPos3fARB /* 230 */ | ||||||
|  | #else | ||||||
|  | 	__glXNoSuchRenderOpcode | ||||||
|  | #endif | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/g_disptab.h,v 1.4 2003/09/28 20:15:42 alanh Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/g_disptab.h,v 1.5 2004/01/28 18:11:50 alanh Exp $ */ | ||||||
| /* DO NOT EDIT - THIS FILE IS AUTOMATICALLY GENERATED */ | /* DO NOT EDIT - THIS FILE IS AUTOMATICALLY GENERATED */ | ||||||
| #ifndef _GLX_g_disptab_h_ | #ifndef _GLX_g_disptab_h_ | ||||||
| #define _GLX_g_disptab_h_ | #define _GLX_g_disptab_h_ | ||||||
|  | @ -325,6 +325,7 @@ extern void __glXDisp_MultiTexCoord4dvARB(GLbyte*); | ||||||
| extern void __glXDisp_MultiTexCoord4fvARB(GLbyte*); | extern void __glXDisp_MultiTexCoord4fvARB(GLbyte*); | ||||||
| extern void __glXDisp_MultiTexCoord4ivARB(GLbyte*); | extern void __glXDisp_MultiTexCoord4ivARB(GLbyte*); | ||||||
| extern void __glXDisp_MultiTexCoord4svARB(GLbyte*); | extern void __glXDisp_MultiTexCoord4svARB(GLbyte*); | ||||||
|  | extern void __glXDisp_SampleCoverageARB(GLbyte *); | ||||||
| extern void __glXDisp_WindowPos3fARB(GLbyte *); | extern void __glXDisp_WindowPos3fARB(GLbyte *); | ||||||
| 
 | 
 | ||||||
| extern int __glXSwapRender(__GLXclientState*, GLbyte*); | extern int __glXSwapRender(__GLXclientState*, GLbyte*); | ||||||
|  | @ -621,6 +622,7 @@ extern void __glXDispSwap_MultiTexCoord4dvARB(GLbyte*); | ||||||
| extern void __glXDispSwap_MultiTexCoord4fvARB(GLbyte*); | extern void __glXDispSwap_MultiTexCoord4fvARB(GLbyte*); | ||||||
| extern void __glXDispSwap_MultiTexCoord4ivARB(GLbyte*); | extern void __glXDispSwap_MultiTexCoord4ivARB(GLbyte*); | ||||||
| extern void __glXDispSwap_MultiTexCoord4svARB(GLbyte*); | extern void __glXDispSwap_MultiTexCoord4svARB(GLbyte*); | ||||||
|  | extern void __glXDispSwap_SampleCoverageARB(GLbyte *); | ||||||
| extern void __glXDispSwap_WindowPos3fARB(GLbyte *); | extern void __glXDispSwap_WindowPos3fARB(GLbyte *); | ||||||
| 
 | 
 | ||||||
| #define __GLX_MIN_GLXCMD_OPCODE 1 | #define __GLX_MIN_GLXCMD_OPCODE 1 | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/g_disptab_EXT.c,v 1.4 2003/09/28 20:15:42 alanh Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/g_disptab_EXT.c,v 1.6 2004/02/12 02:25:00 torrey Exp $ */ | ||||||
| /* DO NOT EDIT - THIS FILE IS AUTOMATICALLY GENERATED */ | /* DO NOT EDIT - THIS FILE IS AUTOMATICALLY GENERATED */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
|  | @ -45,8 +45,13 @@ __GLXdispatchRenderProcPtr __glXRenderTable_EXT[__GLX_MAX_RENDER_OPCODE_EXT - __ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
|  | #ifndef MISSING_GL_EXTS | ||||||
| 	__glXDisp_PointParameterfARB, /* 2065 */ | 	__glXDisp_PointParameterfARB, /* 2065 */ | ||||||
| 	__glXDisp_PointParameterfvARB, /* 2066 */ | 	__glXDisp_PointParameterfvARB, /* 2066 */ | ||||||
|  | #else | ||||||
|  | 	__glXNoSuchRenderOpcode, | ||||||
|  | 	__glXNoSuchRenderOpcode, | ||||||
|  | #endif | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
|  | @ -2104,22 +2109,36 @@ __GLXdispatchRenderProcPtr __glXRenderTable_EXT[__GLX_MAX_RENDER_OPCODE_EXT - __ | ||||||
| 	__glXDisp_CopyTexSubImage1D,  /* 4121 */ | 	__glXDisp_CopyTexSubImage1D,  /* 4121 */ | ||||||
| 	__glXDisp_CopyTexSubImage2D,  /* 4122 */ | 	__glXDisp_CopyTexSubImage2D,  /* 4122 */ | ||||||
| 	__glXDisp_CopyTexSubImage3D,  /* 4123 */ | 	__glXDisp_CopyTexSubImage3D,  /* 4123 */ | ||||||
| 	__glXNoSuchRenderOpcode, /* 4124 */ | #ifndef MISSING_GL_EXTS | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDisp_FogCoordfv,         /* 4124 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDisp_FogCoorddv,         /* 4125 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDisp_SecondaryColor3bv,  /* 4126 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDisp_SecondaryColor3sv,  /* 4127 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDisp_SecondaryColor3iv,  /* 4128 */ | ||||||
| 	__glXNoSuchRenderOpcode, /* 4130 */ | 	__glXDisp_SecondaryColor3fv,  /* 4129 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDisp_SecondaryColor3dv,  /* 4130 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDisp_SecondaryColor3ubv, /* 4131 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDisp_SecondaryColor3usv, /* 4132 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDisp_SecondaryColor3uiv, /* 4133 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDisp_BlendFuncSeparate,  /* 4134 */ | ||||||
| 	__glXNoSuchRenderOpcode, | #else | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode,      /* 4124 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode,      /* 4125 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode,      /* 4126 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,      /* 4127 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,      /* 4128 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,      /* 4129 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,      /* 4130 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,      /* 4131 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,      /* 4132 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,      /* 4133 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,      /* 4134 */ | ||||||
|  | #endif | ||||||
|  | 	__glXNoSuchRenderOpcode,      /* 4135 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,      /* 4136 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,      /* 4137 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,      /* 4138 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,      /* 4139 */ | ||||||
| 	__glXNoSuchRenderOpcode, /* 4140 */ | 	__glXNoSuchRenderOpcode, /* 4140 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
|  | @ -2200,7 +2219,20 @@ __GLXdispatchRenderProcPtr __glXRenderTable_EXT[__GLX_MAX_RENDER_OPCODE_EXT - __ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, /* 4219 */ | 	__glXNoSuchRenderOpcode, /* 4219 */ | ||||||
|  | #ifndef MISSING_GL_EXTS | ||||||
| 	__glXDisp_ActiveStencilFaceEXT, /* 4220 */ | 	__glXDisp_ActiveStencilFaceEXT, /* 4220 */ | ||||||
|  | # ifndef __DARWIN__ | ||||||
|  | 	__glXDisp_PointParameteri,      /* 4221 */ | ||||||
|  | 	__glXDisp_PointParameteriv,     /* 4222 */ | ||||||
|  | # else | ||||||
|  | 	__glXDisp_PointParameteriNV,    /* 4221 */ | ||||||
|  | 	__glXDisp_PointParameterivNV,   /* 4222 */ | ||||||
|  | # endif | ||||||
|  | #else | ||||||
|  | 	__glXNoSuchRenderOpcode, | ||||||
|  | 	__glXNoSuchRenderOpcode, | ||||||
|  | 	__glXNoSuchRenderOpcode, | ||||||
|  | #endif | ||||||
| }; | }; | ||||||
| __GLXdispatchVendorPrivProcPtr __glXVendorPrivTable_EXT[__GLX_MAX_VENDPRIV_OPCODE_EXT - __GLX_MIN_VENDPRIV_OPCODE_EXT + 1] = { | __GLXdispatchVendorPrivProcPtr __glXVendorPrivTable_EXT[__GLX_MAX_VENDPRIV_OPCODE_EXT - __GLX_MIN_VENDPRIV_OPCODE_EXT + 1] = { | ||||||
| 	__glXDisp_AreTexturesResidentEXT, /* 11 */ | 	__glXDisp_AreTexturesResidentEXT, /* 11 */ | ||||||
|  | @ -2223,8 +2255,13 @@ __GLXdispatchRenderProcPtr __glXSwapRenderTable_EXT[__GLX_MAX_RENDER_OPCODE_EXT | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
|  | #ifndef MISSING_GL_EXTS | ||||||
| 	__glXDispSwap_PointParameterfARB, /* 2065 */ | 	__glXDispSwap_PointParameterfARB, /* 2065 */ | ||||||
| 	__glXDispSwap_PointParameterfvARB, /* 2066 */ | 	__glXDispSwap_PointParameterfvARB, /* 2066 */ | ||||||
|  | #else | ||||||
|  | 	__glXNoSuchRenderOpcode, | ||||||
|  | 	__glXNoSuchRenderOpcode, | ||||||
|  | #endif | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
|  | @ -4282,22 +4319,36 @@ __GLXdispatchRenderProcPtr __glXSwapRenderTable_EXT[__GLX_MAX_RENDER_OPCODE_EXT | ||||||
| 	__glXDispSwap_CopyTexSubImage1D,  /* 4121 */ | 	__glXDispSwap_CopyTexSubImage1D,  /* 4121 */ | ||||||
| 	__glXDispSwap_CopyTexSubImage2D,  /* 4122 */ | 	__glXDispSwap_CopyTexSubImage2D,  /* 4122 */ | ||||||
| 	__glXDispSwap_CopyTexSubImage3D,  /* 4123 */ | 	__glXDispSwap_CopyTexSubImage3D,  /* 4123 */ | ||||||
| 	__glXNoSuchRenderOpcode, /* 4124 */ | #ifndef MISSING_GL_EXTS | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDispSwap_FogCoordfv,         /* 4124 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDispSwap_FogCoorddv,         /* 4125 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDispSwap_SecondaryColor3bv,  /* 4126 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDispSwap_SecondaryColor3sv,  /* 4127 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDispSwap_SecondaryColor3iv,  /* 4128 */ | ||||||
| 	__glXNoSuchRenderOpcode, /* 4130 */ | 	__glXDispSwap_SecondaryColor3fv,  /* 4129 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDispSwap_SecondaryColor3dv,  /* 4130 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDispSwap_SecondaryColor3ubv, /* 4131 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDispSwap_SecondaryColor3usv, /* 4132 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDispSwap_SecondaryColor3uiv, /* 4133 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXDisp_BlendFuncSeparate,      /* 4134 */ | ||||||
| 	__glXNoSuchRenderOpcode, | #else | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode,          /* 4124 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode,          /* 4125 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode,          /* 4126 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,          /* 4127 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,          /* 4128 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,          /* 4129 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,          /* 4130 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,          /* 4131 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,          /* 4132 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,          /* 4133 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,          /* 4134 */ | ||||||
|  | #endif | ||||||
|  | 	__glXNoSuchRenderOpcode,          /* 4135 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,          /* 4136 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,          /* 4137 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,          /* 4138 */ | ||||||
|  | 	__glXNoSuchRenderOpcode,          /* 4139 */ | ||||||
| 	__glXNoSuchRenderOpcode, /* 4140 */ | 	__glXNoSuchRenderOpcode, /* 4140 */ | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
|  | @ -4378,7 +4429,20 @@ __GLXdispatchRenderProcPtr __glXSwapRenderTable_EXT[__GLX_MAX_RENDER_OPCODE_EXT | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, | 	__glXNoSuchRenderOpcode, | ||||||
| 	__glXNoSuchRenderOpcode, /* 4219 */ | 	__glXNoSuchRenderOpcode, /* 4219 */ | ||||||
|  | #ifndef MISSING_GL_EXTS | ||||||
| 	__glXDispSwap_ActiveStencilFaceEXT, /* 4220 */ | 	__glXDispSwap_ActiveStencilFaceEXT, /* 4220 */ | ||||||
|  | # ifndef __DARWIN__ | ||||||
|  | 	__glXDispSwap_PointParameteri,      /* 4221 */ | ||||||
|  | 	__glXDispSwap_PointParameteriv,     /* 4222 */ | ||||||
|  | # else | ||||||
|  | 	__glXDispSwap_PointParameteriNV,    /* 4221 */ | ||||||
|  | 	__glXDispSwap_PointParameterivNV,   /* 4222 */ | ||||||
|  | # endif | ||||||
|  | #else | ||||||
|  | 	__glXNoSuchRenderOpcode, | ||||||
|  | 	__glXNoSuchRenderOpcode, | ||||||
|  | 	__glXNoSuchRenderOpcode, | ||||||
|  | #endif | ||||||
| }; | }; | ||||||
| __GLXdispatchVendorPrivProcPtr __glXSwapVendorPrivTable_EXT[__GLX_MAX_VENDPRIV_OPCODE_EXT - __GLX_MIN_VENDPRIV_OPCODE_EXT + 1] = { | __GLXdispatchVendorPrivProcPtr __glXSwapVendorPrivTable_EXT[__GLX_MAX_VENDPRIV_OPCODE_EXT - __GLX_MIN_VENDPRIV_OPCODE_EXT + 1] = { | ||||||
| 	__glXDispSwap_AreTexturesResidentEXT, /* 11 */ | 	__glXDispSwap_AreTexturesResidentEXT, /* 11 */ | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/g_disptab_EXT.h,v 1.4 2003/09/28 20:15:42 alanh Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/g_disptab_EXT.h,v 1.6 2004/02/12 02:25:01 torrey Exp $ */ | ||||||
| /* DO NOT EDIT - THIS FILE IS AUTOMATICALLY GENERATED */ | /* DO NOT EDIT - THIS FILE IS AUTOMATICALLY GENERATED */ | ||||||
| #ifndef _GLX_g_disptab_EXT_h_ | #ifndef _GLX_g_disptab_EXT_h_ | ||||||
| #define _GLX_g_disptab_EXT_h_ | #define _GLX_g_disptab_EXT_h_ | ||||||
|  | @ -69,6 +69,44 @@ extern void __glXDisp_CopyTexSubImage2D(GLbyte*); | ||||||
| extern void __glXDisp_CopyTexSubImage3D(GLbyte*); | extern void __glXDisp_CopyTexSubImage3D(GLbyte*); | ||||||
| extern void __glXDisp_PointParameterfARB(GLbyte*); | extern void __glXDisp_PointParameterfARB(GLbyte*); | ||||||
| extern void __glXDisp_PointParameterfvARB(GLbyte*); | extern void __glXDisp_PointParameterfvARB(GLbyte*); | ||||||
|  | 
 | ||||||
|  | extern void __glXDisp_FogCoordfv(GLbyte *); | ||||||
|  | extern void __glXDisp_FogCoorddv(GLbyte *); | ||||||
|  | extern void __glXDispSwap_FogCoordfv(GLbyte *); | ||||||
|  | extern void __glXDispSwap_FogCoorddv(GLbyte *); | ||||||
|  | 
 | ||||||
|  | extern void __glXDisp_SecondaryColor3bv(GLbyte *); | ||||||
|  | extern void __glXDisp_SecondaryColor3sv(GLbyte *); | ||||||
|  | extern void __glXDisp_SecondaryColor3iv(GLbyte *); | ||||||
|  | extern void __glXDisp_SecondaryColor3ubv(GLbyte *); | ||||||
|  | extern void __glXDisp_SecondaryColor3usv(GLbyte *); | ||||||
|  | extern void __glXDisp_SecondaryColor3uiv(GLbyte *); | ||||||
|  | extern void __glXDisp_SecondaryColor3fv(GLbyte *); | ||||||
|  | extern void __glXDisp_SecondaryColor3dv(GLbyte *); | ||||||
|  | extern void __glXDispSwap_SecondaryColor3bv(GLbyte *); | ||||||
|  | extern void __glXDispSwap_SecondaryColor3sv(GLbyte *); | ||||||
|  | extern void __glXDispSwap_SecondaryColor3iv(GLbyte *); | ||||||
|  | extern void __glXDispSwap_SecondaryColor3ubv(GLbyte *); | ||||||
|  | extern void __glXDispSwap_SecondaryColor3usv(GLbyte *); | ||||||
|  | extern void __glXDispSwap_SecondaryColor3uiv(GLbyte *); | ||||||
|  | extern void __glXDispSwap_SecondaryColor3fv(GLbyte *); | ||||||
|  | extern void __glXDispSwap_SecondaryColor3dv(GLbyte *); | ||||||
|  | 
 | ||||||
|  | extern void __glXDisp_BlendFuncSeparate(GLbyte *); | ||||||
|  | extern void __glXDispSwap_BlendFuncSeparate(GLbyte *); | ||||||
|  | 
 | ||||||
|  | #ifdef __DARWIN__ | ||||||
|  | extern void __glXDisp_PointParameteriNV(GLbyte *); | ||||||
|  | extern void __glXDisp_PointParameterivNV(GLbyte *); | ||||||
|  | extern void __glXDispSwap_PointParameteriNV(GLbyte *); | ||||||
|  | extern void __glXDispSwap_PointParameterivNV(GLbyte *); | ||||||
|  | #else | ||||||
|  | extern void __glXDisp_PointParameteri(GLbyte *); | ||||||
|  | extern void __glXDisp_PointParameteriv(GLbyte *); | ||||||
|  | extern void __glXDispSwap_PointParameteri(GLbyte *); | ||||||
|  | extern void __glXDispSwap_PointParameteriv(GLbyte *); | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
| extern void __glXDisp_ActiveStencilFaceEXT(GLbyte*); | extern void __glXDisp_ActiveStencilFaceEXT(GLbyte*); | ||||||
| 
 | 
 | ||||||
| extern int __glXDispSwap_AreTexturesResidentEXT(__GLXclientState*, GLbyte*); | extern int __glXDispSwap_AreTexturesResidentEXT(__GLXclientState*, GLbyte*); | ||||||
|  | @ -112,7 +150,7 @@ extern void __glXDispSwap_PointParameterfvARB(GLbyte*); | ||||||
| extern void __glXDispSwap_ActiveStencilFaceEXT(GLbyte*); | extern void __glXDispSwap_ActiveStencilFaceEXT(GLbyte*); | ||||||
| 
 | 
 | ||||||
| #define __GLX_MIN_RENDER_OPCODE_EXT 2053 | #define __GLX_MIN_RENDER_OPCODE_EXT 2053 | ||||||
| #define __GLX_MAX_RENDER_OPCODE_EXT 4220 | #define __GLX_MAX_RENDER_OPCODE_EXT 4222 | ||||||
| #define __GLX_MIN_VENDPRIV_OPCODE_EXT 11 | #define __GLX_MIN_VENDPRIV_OPCODE_EXT 11 | ||||||
| #define __GLX_MAX_VENDPRIV_OPCODE_EXT 14 | #define __GLX_MAX_VENDPRIV_OPCODE_EXT 14 | ||||||
| #define __GLX_VENDPRIV_TABLE_SIZE_EXT (__GLX_MAX_VENDPRIV_OPCODE_EXT - __GLX_MIN_VENDPRIV_OPCODE_EXT + 1) | #define __GLX_VENDPRIV_TABLE_SIZE_EXT (__GLX_MAX_VENDPRIV_OPCODE_EXT - __GLX_MIN_VENDPRIV_OPCODE_EXT + 1) | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/g_render.c,v 1.6 2003/10/28 22:50:17 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/g_render.c,v 1.9 2004/02/12 02:25:01 torrey Exp $ */ | ||||||
| /* DO NOT EDIT - THIS FILE IS AUTOMATICALLY GENERATED */ | /* DO NOT EDIT - THIS FILE IS AUTOMATICALLY GENERATED */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
|  | @ -59,6 +59,157 @@ void __glXDisp_Begin(GLbyte *pc) | ||||||
| 	); | 	); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | #define __GLX_SWAP_GLbyte(ptr) | ||||||
|  | #define __GLX_SWAP_GLshort(ptr)  __GLX_SWAP_SHORT(ptr) | ||||||
|  | #define __GLX_SWAP_GLint(ptr)    __GLX_SWAP_INT(ptr) | ||||||
|  | #define __GLX_SWAP_GLubyte(ptr) | ||||||
|  | #define __GLX_SWAP_GLushort(ptr) __GLX_SWAP_SHORT(ptr) | ||||||
|  | #define __GLX_SWAP_GLuint(ptr)   __GLX_SWAP_INT(ptr) | ||||||
|  | #define __GLX_SWAP_GLdouble(ptr) __GLX_SWAP_DOUBLE(ptr) | ||||||
|  | #define __GLX_SWAP_GLfloat(ptr)  __GLX_SWAP_FLOAT(ptr) | ||||||
|  | 
 | ||||||
|  | #define __GLX_SWAP_GLbyte_ARRAY(ptr,count)   (void) swapEnd; (void) swapPC; (void) sw; | ||||||
|  | #define __GLX_SWAP_GLshort_ARRAY(ptr,count)  __GLX_SWAP_SHORT_ARRAY(ptr,count) | ||||||
|  | #define __GLX_SWAP_GLint_ARRAY(ptr,count)    __GLX_SWAP_INT_ARRAY(ptr,count) | ||||||
|  | #define __GLX_SWAP_GLenum_ARRAY(ptr,count)   __GLX_SWAP_INT_ARRAY(ptr,count) | ||||||
|  | #define __GLX_SWAP_GLubyte_ARRAY(ptr,count)  (void) swapEnd; (void) swapPC; (void) sw; | ||||||
|  | #define __GLX_SWAP_GLushort_ARRAY(ptr,count) __GLX_SWAP_SHORT_ARRAY(ptr,count) | ||||||
|  | #define __GLX_SWAP_GLuint_ARRAY(ptr,count)   __GLX_SWAP_INT_ARRAY(ptr,count) | ||||||
|  | #define __GLX_SWAP_GLdouble_ARRAY(ptr,count) __GLX_SWAP_DOUBLE_ARRAY(ptr,count) | ||||||
|  | #define __GLX_SWAP_GLfloat_ARRAY(ptr,count)  __GLX_SWAP_FLOAT_ARRAY(ptr,count) | ||||||
|  | 
 | ||||||
|  | #ifdef __GLX_ALIGN64 | ||||||
|  | /* If type is not GLdouble, the compiler should optimize this away.
 | ||||||
|  |  */ | ||||||
|  | # define GLX_DO_ALIGN_MAGIC(count, type) \ | ||||||
|  | 	do { \ | ||||||
|  | 	    if ( (sizeof(type) == 8) && ((unsigned long)(pc) & 7)) \ | ||||||
|  | 	    { \ | ||||||
|  | 	       	__GLX_MEM_COPY(pc-4, pc, (count * sizeof( type ) )); \ | ||||||
|  | 	    	pc -= 4; \ | ||||||
|  | 	    } \ | ||||||
|  | 	} while( 0 ) | ||||||
|  | #else | ||||||
|  | # define GLX_DO_ALIGN_MAGIC(count, type) | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | #define dispatch_template_1( name, type ) \ | ||||||
|  |     void __glXDisp_ ## name ( GLbyte * pc ) \ | ||||||
|  |     { \ | ||||||
|  | 	GLX_DO_ALIGN_MAGIC( 1, type ); \ | ||||||
|  | 	gl ## name ( (type *) pc ); \ | ||||||
|  |     } \ | ||||||
|  |     void __glXDispSwap_ ## name ( GLbyte * pc ) \ | ||||||
|  |     { \ | ||||||
|  | 	__GLX_DECLARE_SWAP_VARIABLES; \ | ||||||
|  | 	GLX_DO_ALIGN_MAGIC( 1, type ); \ | ||||||
|  | 	__GLX_SWAP_ ## type ( pc ); \ | ||||||
|  | 	gl ## name ( (type *) pc ); \ | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  | #define dispatch_template_3( name, type ) \ | ||||||
|  |     void __glXDisp_ ## name ( GLbyte * pc ) \ | ||||||
|  |     { \ | ||||||
|  | 	GLX_DO_ALIGN_MAGIC( 3, type ); \ | ||||||
|  | 	gl ## name ( (type *) pc ); \ | ||||||
|  |     } \ | ||||||
|  |     void __glXDispSwap_ ## name ( GLbyte * pc ) \ | ||||||
|  |     { \ | ||||||
|  | 	__GLX_DECLARE_SWAP_VARIABLES; \ | ||||||
|  | 	__GLX_DECLARE_SWAP_ARRAY_VARIABLES; \ | ||||||
|  | 	GLX_DO_ALIGN_MAGIC( 3, type ); \ | ||||||
|  | 	__GLX_SWAP_ ## type ## _ARRAY(pc, 3); \ | ||||||
|  | 	gl ## name ( (type *) pc ); \ | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  | #define dispatch_template_4( name, type ) \ | ||||||
|  |     void __glXDisp_ ## name ( GLbyte * pc ) \ | ||||||
|  |     { \ | ||||||
|  | 	GLX_DO_ALIGN_MAGIC( 4, type ); \ | ||||||
|  | 	gl ## name ( (type *) pc ); \ | ||||||
|  |     } \ | ||||||
|  |     void __glXDispSwap_ ## name ( GLbyte * pc ) \ | ||||||
|  |     { \ | ||||||
|  | 	__GLX_DECLARE_SWAP_VARIABLES; \ | ||||||
|  | 	__GLX_DECLARE_SWAP_ARRAY_VARIABLES; \ | ||||||
|  | 	GLX_DO_ALIGN_MAGIC( 4, type ); \ | ||||||
|  | 	__GLX_SWAP_ ## type ## _ARRAY(pc, 4); \ | ||||||
|  | 	gl ## name ( (type *) pc ); \ | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  | #define dispatch_template_4s( name, type ) \ | ||||||
|  |     void __glXDisp_ ## name ( GLbyte * pc ) \ | ||||||
|  |     { \ | ||||||
|  | 	GLX_DO_ALIGN_MAGIC( 4, type ); \ | ||||||
|  | 	gl ## name ( ((type *) pc)[0], ((type *) pc)[1], \ | ||||||
|  | 		     ((type *) pc)[2], ((type *) pc)[3] ); \ | ||||||
|  |     } \ | ||||||
|  |     void __glXDispSwap_ ## name ( GLbyte * pc ) \ | ||||||
|  |     { \ | ||||||
|  | 	__GLX_DECLARE_SWAP_VARIABLES; \ | ||||||
|  | 	__GLX_DECLARE_SWAP_ARRAY_VARIABLES; \ | ||||||
|  | 	GLX_DO_ALIGN_MAGIC( 4, type ); \ | ||||||
|  | 	__GLX_SWAP_ ## type ## _ARRAY(pc, 4); \ | ||||||
|  | 	gl ## name ( ((type *) pc)[0], ((type *) pc)[1], \ | ||||||
|  | 		     ((type *) pc)[2], ((type *) pc)[3] ); \ | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  | /**
 | ||||||
|  |  * \bug All of the enum1 templates need to be updated to handle the case where | ||||||
|  |  * \c type is \c GLdouble.  When the type is a double, the data comes before | ||||||
|  |  * the enum.  This is also the reason the invocation of the | ||||||
|  |  * \c GLX_DO_ALIGN_MAGIC macro was removed. | ||||||
|  |  */ | ||||||
|  | #define dispatch_template_enum1_1s( name, type ) \ | ||||||
|  |     void __glXDisp_ ## name ( GLbyte * pc ) \ | ||||||
|  |     { \ | ||||||
|  | 	gl ## name ( *(GLenum *) (pc + 0), \ | ||||||
|  | 		     *(type *)   (pc + 4) ); \ | ||||||
|  |     } \ | ||||||
|  |     void __glXDispSwap_ ## name ( GLbyte * pc ) \ | ||||||
|  |     { \ | ||||||
|  | 	__GLX_DECLARE_SWAP_VARIABLES; \ | ||||||
|  | 	__GLX_SWAP_INT      (pc + 0); \ | ||||||
|  | 	__GLX_SWAP_ ## type (pc + 4); \ | ||||||
|  | 	gl ## name ( *(GLenum *) (pc + 0), \ | ||||||
|  | 		     *(type *)   (pc + 4) ); \ | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  | #define dispatch_template_enum1_Vv( name, type ) \ | ||||||
|  |     void __glXDisp_ ## name ( GLbyte * pc ) \ | ||||||
|  |     { \ | ||||||
|  | 	gl ## name ( *(GLenum *) (pc + 0), \ | ||||||
|  | 		      (type *)   (pc + 4) ); \ | ||||||
|  |     } \ | ||||||
|  |     void __glXDispSwap_ ## name ( GLbyte * pc ) \ | ||||||
|  |     { \ | ||||||
|  | 	GLenum pname; GLint compsize; \ | ||||||
|  | 	__GLX_DECLARE_SWAP_VARIABLES; \ | ||||||
|  | 	__GLX_DECLARE_SWAP_ARRAY_VARIABLES; \ | ||||||
|  | 	__GLX_SWAP_INT(pc + 0); \ | ||||||
|  | 	pname = *(GLenum *)(pc + 0); \ | ||||||
|  | 	compsize = __gl ## name ## _size(pname); \ | ||||||
|  | 	if (compsize < 0) compsize = 0; \ | ||||||
|  | 	__GLX_SWAP_ ## type ## _ARRAY(pc + 4, compsize); \ | ||||||
|  | 	gl ## name ( *(GLenum *) (pc + 0), \ | ||||||
|  | 		      (type *)   (pc + 4) ); \ | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  | #ifndef MISSING_GL_EXTS | ||||||
|  | dispatch_template_1( FogCoordfv,         GLfloat ) | ||||||
|  | dispatch_template_1( FogCoorddv,         GLdouble ) | ||||||
|  | dispatch_template_3( SecondaryColor3bv,  GLbyte ) | ||||||
|  | dispatch_template_3( SecondaryColor3sv,  GLshort ) | ||||||
|  | dispatch_template_3( SecondaryColor3iv,  GLint ) | ||||||
|  | dispatch_template_3( SecondaryColor3ubv, GLubyte ) | ||||||
|  | dispatch_template_3( SecondaryColor3usv, GLushort ) | ||||||
|  | dispatch_template_3( SecondaryColor3uiv, GLuint ) | ||||||
|  | dispatch_template_3( SecondaryColor3fv,  GLfloat ) | ||||||
|  | dispatch_template_3( SecondaryColor3dv,  GLdouble ) | ||||||
|  | 
 | ||||||
|  | dispatch_template_4s( BlendFuncSeparate,  GLenum ) | ||||||
|  | #endif /* !MISSING_GL_EXTS */ | ||||||
|  | 
 | ||||||
| void __glXDisp_Color3bv(GLbyte *pc) | void __glXDisp_Color3bv(GLbyte *pc) | ||||||
| { | { | ||||||
| 	glColor3bv(  | 	glColor3bv(  | ||||||
|  | @ -2079,6 +2230,8 @@ void __glXDisp_MultiTexCoord4svARB(GLbyte *pc) | ||||||
|  * Extensions |  * Extensions | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
|  | #ifndef MISSING_GL_EXTS | ||||||
|  | 
 | ||||||
| void __glXDisp_PointParameterfARB(GLbyte *pc) | void __glXDisp_PointParameterfARB(GLbyte *pc) | ||||||
| { | { | ||||||
| 	glPointParameterfARB( | 	glPointParameterfARB( | ||||||
|  | @ -2096,6 +2249,15 @@ void __glXDisp_PointParameterfvARB(GLbyte *pc) | ||||||
| 	); | 	); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | #ifdef __DARWIN__ | ||||||
|  | #define __glPointParameterivNV_size __glPointParameteriv_size | ||||||
|  | dispatch_template_enum1_1s(PointParameteriNV,  GLint) | ||||||
|  | dispatch_template_enum1_Vv(PointParameterivNV, GLint) | ||||||
|  | #else | ||||||
|  | dispatch_template_enum1_1s(PointParameteri,  GLint) | ||||||
|  | dispatch_template_enum1_Vv(PointParameteriv, GLint) | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
| void __glXDisp_ActiveStencilFaceEXT(GLbyte *pc) | void __glXDisp_ActiveStencilFaceEXT(GLbyte *pc) | ||||||
| { | { | ||||||
| 	glActiveStencilFaceEXT( | 	glActiveStencilFaceEXT( | ||||||
|  | @ -2111,3 +2273,13 @@ void __glXDisp_WindowPos3fARB(GLbyte *pc) | ||||||
| 		*(GLfloat *)(pc + 8) | 		*(GLfloat *)(pc + 8) | ||||||
| 	); | 	); | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | #endif /* !MISSING_GL_EXTS */ | ||||||
|  | 
 | ||||||
|  | void __glXDisp_SampleCoverageARB(GLbyte *pc) | ||||||
|  | { | ||||||
|  | 	glSampleCoverageARB( | ||||||
|  | 		*(GLfloat *)(pc + 0), | ||||||
|  | 		*(GLboolean *)(pc + 4) | ||||||
|  | 	); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/g_renderswap.c,v 1.7 2003/10/28 22:50:17 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/g_renderswap.c,v 1.9 2004/02/12 02:25:01 torrey Exp $ */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
| ** made subject to an alternative license as permitted in the SGI Free | ** made subject to an alternative license as permitted in the SGI Free | ||||||
|  | @ -3313,6 +3313,8 @@ void __glXDispSwap_MultiTexCoord4svARB(GLbyte *pc) | ||||||
|  * Extensions |  * Extensions | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
|  | #ifndef MISSING_GL_EXTS | ||||||
|  | 
 | ||||||
| void __glXDispSwap_PointParameterfARB(GLbyte *pc) | void __glXDispSwap_PointParameterfARB(GLbyte *pc) | ||||||
| { | { | ||||||
| 	__GLX_DECLARE_SWAP_VARIABLES; | 	__GLX_DECLARE_SWAP_VARIABLES; | ||||||
|  | @ -3366,3 +3368,17 @@ void __glXDispSwap_WindowPos3fARB(GLbyte *pc) | ||||||
| 		*(GLfloat *)(pc + 8) | 		*(GLfloat *)(pc + 8) | ||||||
| 	); | 	); | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | #endif /* !MISSING_GL_EXTS */ | ||||||
|  | 
 | ||||||
|  | void __glXDispSwap_SampleCoverageARB(GLbyte *pc) | ||||||
|  | { | ||||||
|  | 	__GLX_DECLARE_SWAP_VARIABLES; | ||||||
|  | 	__GLX_SWAP_FLOAT(pc + 0); | ||||||
|  | 	__GLX_SWAP_INT(pc + 4); | ||||||
|  | 
 | ||||||
|  | 	glSampleCoverageARB( | ||||||
|  | 		*(GLfloat *)(pc + 0), | ||||||
|  | 		*(GLboolean *)(pc + 4) | ||||||
|  | 	); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/glxcmds.c,v 1.11 2003/10/28 22:50:17 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/glxcmds.c,v 1.13 2004/02/12 02:25:01 torrey Exp $ */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
| ** made subject to an alternative license as permitted in the SGI Free | ** made subject to an alternative license as permitted in the SGI Free | ||||||
|  | @ -1554,6 +1554,18 @@ int __glXVendorPrivate(__GLXclientState *cl, GLbyte *pc) | ||||||
|     req = (xGLXVendorPrivateReq *) pc; |     req = (xGLXVendorPrivateReq *) pc; | ||||||
|     vendorcode = req->vendorCode; |     vendorcode = req->vendorCode; | ||||||
| 
 | 
 | ||||||
|  | #ifndef __DARWIN__ | ||||||
|  |     switch( vendorcode ) { | ||||||
|  |     case X_GLvop_SampleMaskSGIS: | ||||||
|  | 	glSampleMaskSGIS(*(GLfloat *)(pc + 4), | ||||||
|  | 			 *(GLboolean *)(pc + 8)); | ||||||
|  | 	return Success; | ||||||
|  |     case X_GLvop_SamplePatternSGIS: | ||||||
|  | 	glSamplePatternSGIS( *(GLenum *)(pc + 4)); | ||||||
|  | 	return Success; | ||||||
|  |     } | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|     if ((vendorcode >= __GLX_MIN_VENDPRIV_OPCODE_EXT) && |     if ((vendorcode >= __GLX_MIN_VENDPRIV_OPCODE_EXT) && | ||||||
|           (vendorcode <= __GLX_MAX_VENDPRIV_OPCODE_EXT))  { |           (vendorcode <= __GLX_MAX_VENDPRIV_OPCODE_EXT))  { | ||||||
| 	(*__glXVendorPrivTable_EXT[vendorcode-__GLX_MIN_VENDPRIV_OPCODE_EXT]) | 	(*__glXVendorPrivTable_EXT[vendorcode-__GLX_MIN_VENDPRIV_OPCODE_EXT]) | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/glxcmdsswap.c,v 1.9 2003/10/28 22:50:17 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/glxcmdsswap.c,v 1.11 2004/02/12 02:25:01 torrey Exp $ */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
| ** made subject to an alternative license as permitted in the SGI Free | ** made subject to an alternative license as permitted in the SGI Free | ||||||
|  | @ -791,6 +791,21 @@ int __glXSwapVendorPrivate(__GLXclientState *cl, GLbyte *pc) | ||||||
| 
 | 
 | ||||||
|     vendorcode = req->vendorCode; |     vendorcode = req->vendorCode; | ||||||
| 
 | 
 | ||||||
|  | #ifndef __DARWIN__ | ||||||
|  |     switch( vendorcode ) { | ||||||
|  |     case X_GLvop_SampleMaskSGIS: | ||||||
|  | 	__GLX_SWAP_FLOAT(pc + 4); | ||||||
|  | 	__GLX_SWAP_INT(pc + 8); | ||||||
|  | 	glSampleMaskSGIS(*(GLfloat *)(pc + 4), | ||||||
|  | 			 *(GLboolean *)(pc + 8)); | ||||||
|  | 	return Success; | ||||||
|  |     case X_GLvop_SamplePatternSGIS: | ||||||
|  | 	__GLX_SWAP_INT(pc + 4); | ||||||
|  | 	glSamplePatternSGIS( *(GLenum *)(pc + 4)); | ||||||
|  | 	return Success; | ||||||
|  |     } | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|     if ((vendorcode >= __GLX_MIN_VENDPRIV_OPCODE_EXT) && |     if ((vendorcode >= __GLX_MIN_VENDPRIV_OPCODE_EXT) && | ||||||
|           (vendorcode <= __GLX_MAX_VENDPRIV_OPCODE_EXT))  { |           (vendorcode <= __GLX_MAX_VENDPRIV_OPCODE_EXT))  { | ||||||
| 	(*__glXSwapVendorPrivTable_EXT[vendorcode-__GLX_MIN_VENDPRIV_OPCODE_EXT])(cl, (GLbyte*)req); | 	(*__glXSwapVendorPrivTable_EXT[vendorcode-__GLX_MIN_VENDPRIV_OPCODE_EXT])(cl, (GLbyte*)req); | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/glxext.c,v 1.9 2003/09/28 20:15:43 alanh Exp $
 | /* $XFree86: xc/programs/Xserver/GL/glx/glxext.c,v 1.10 2004/01/28 22:36:05 alanh Exp $
 | ||||||
| ** The contents of this file are subject to the GLX Public License Version 1.0 | ** The contents of this file are subject to the GLX Public License Version 1.0 | ||||||
| ** (the "License"). You may not use this file except in compliance with the | ** (the "License"). You may not use this file except in compliance with the | ||||||
| ** License. You may obtain a copy of the License at Silicon Graphics, Inc., | ** License. You may obtain a copy of the License at Silicon Graphics, Inc., | ||||||
|  | @ -31,6 +31,9 @@ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| extern __GLXextensionInfo __glDDXExtensionInfo; | extern __GLXextensionInfo __glDDXExtensionInfo; | ||||||
|  | void GlxWrapInitVisuals(miInitVisualsProcPtr *); | ||||||
|  | void GlxSetVisualConfigs(int nconfigs,  | ||||||
|  |                          __GLXvisualConfig *configs, void **privates); | ||||||
| 
 | 
 | ||||||
| __GLXextensionInfo *__glXExt = &__glDDXExtensionInfo; | __GLXextensionInfo *__glXExt = &__glDDXExtensionInfo; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/glxext.h,v 1.7 2003/11/17 22:20:26 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/glxext.h,v 1.8 2004/02/09 23:46:31 alanh Exp $ */ | ||||||
| #ifndef _glxext_h_ | #ifndef _glxext_h_ | ||||||
| #define _glxext_h_ | #define _glxext_h_ | ||||||
| 
 | 
 | ||||||
|  | @ -80,6 +80,9 @@ extern void GlxExtensionInit(void); | ||||||
| 
 | 
 | ||||||
| extern Bool __glXCoreType(void); | extern Bool __glXCoreType(void); | ||||||
| 
 | 
 | ||||||
|  | extern const char GLServerVersion[]; | ||||||
|  | extern int DoGetString(__GLXclientState *cl, GLbyte *pc, GLboolean need_swap); | ||||||
|  | 
 | ||||||
| extern int GlxInitVisuals( | extern int GlxInitVisuals( | ||||||
|     VisualPtr *       visualp, |     VisualPtr *       visualp, | ||||||
|     DepthPtr *        depthp, |     DepthPtr *        depthp, | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/glxscreens.c,v 1.12 2003/09/28 20:15:43 alanh Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/glxscreens.c,v 1.15 2004/02/12 02:25:01 torrey Exp $ */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
| ** made subject to an alternative license as permitted in the SGI Free | ** made subject to an alternative license as permitted in the SGI Free | ||||||
|  | @ -46,11 +46,13 @@ | ||||||
| #include "glxserver.h" | #include "glxserver.h" | ||||||
| #include "glxutil.h" | #include "glxutil.h" | ||||||
| 
 | 
 | ||||||
|  | const char GLServerVersion[] = "1.2"; | ||||||
| static const char GLServerExtensions[] =  | static const char GLServerExtensions[] =  | ||||||
| 			"GL_ARB_depth_texture " | 			"GL_ARB_depth_texture " | ||||||
| 			"GL_ARB_imaging " | 			"GL_ARB_imaging " | ||||||
| 			"GL_ARB_multitexture " | 			"GL_ARB_multitexture " | ||||||
| 			"GL_ARB_point_parameters " | 			"GL_ARB_point_parameters " | ||||||
|  | 			"GL_ARB_point_sprite " | ||||||
| 			"GL_ARB_shadow " | 			"GL_ARB_shadow " | ||||||
| 			"GL_ARB_shadow_ambient " | 			"GL_ARB_shadow_ambient " | ||||||
| 			"GL_ARB_texture_border_clamp " | 			"GL_ARB_texture_border_clamp " | ||||||
|  | @ -108,6 +110,7 @@ static const char GLServerExtensions[] = | ||||||
| 			"GL_MESA_pack_invert " | 			"GL_MESA_pack_invert " | ||||||
| 			"GL_MESA_ycbcr_texture " | 			"GL_MESA_ycbcr_texture " | ||||||
| 			"GL_NV_blend_square " | 			"GL_NV_blend_square " | ||||||
|  | 			"GL_NV_point_sprite " | ||||||
| 			"GL_NV_texgen_reflection " | 			"GL_NV_texgen_reflection " | ||||||
| 			"GL_NV_texture_rectangle " | 			"GL_NV_texture_rectangle " | ||||||
| 			"GL_SGIS_generate_mipmap " | 			"GL_SGIS_generate_mipmap " | ||||||
|  | @ -126,10 +129,14 @@ static const char GLServerExtensions[] = | ||||||
| static char GLXServerVendorName[] = "SGI"; | static char GLXServerVendorName[] = "SGI"; | ||||||
| static char GLXServerVersion[] = "1.2"; | static char GLXServerVersion[] = "1.2"; | ||||||
| static char GLXServerExtensions[] = | static char GLXServerExtensions[] = | ||||||
|  | 			"GLX_ARB_multisample " | ||||||
| 			"GLX_EXT_visual_info " | 			"GLX_EXT_visual_info " | ||||||
| 			"GLX_EXT_visual_rating " | 			"GLX_EXT_visual_rating " | ||||||
| 			"GLX_EXT_import_context " | 			"GLX_EXT_import_context " | ||||||
| 			"GLX_SGI_make_current_read " | 			"GLX_SGI_make_current_read " | ||||||
|  | #ifndef __DARWIN__ | ||||||
|  | 			"GLX_SGIS_multisample " | ||||||
|  | #endif | ||||||
| 			; | 			; | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/glxserver.h,v 1.5 2003/09/28 20:15:43 alanh Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/glxserver.h,v 1.6 2004/01/28 18:11:50 alanh Exp $ */ | ||||||
| #ifndef _GLX_server_h_ | #ifndef _GLX_server_h_ | ||||||
| #define _GLX_server_h_ | #define _GLX_server_h_ | ||||||
| 
 | 
 | ||||||
|  | @ -280,5 +280,6 @@ extern int __glXColorTableParameterfvSize(GLenum pname); | ||||||
| extern int __glXColorTableParameterivSize(GLenum pname); | extern int __glXColorTableParameterivSize(GLenum pname); | ||||||
| 
 | 
 | ||||||
| extern int __glXPointParameterfvARBReqSize(GLbyte *pc, Bool swap); | extern int __glXPointParameterfvARBReqSize(GLbyte *pc, Bool swap); | ||||||
|  | extern int __glXPointParameterivReqSize(GLbyte *pc, Bool swap); | ||||||
| 
 | 
 | ||||||
| #endif /* !__GLX_server_h__ */ | #endif /* !__GLX_server_h__ */ | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/impsize.h,v 1.4 2003/09/28 20:15:43 alanh Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/impsize.h,v 1.5 2004/01/28 18:11:50 alanh Exp $ */ | ||||||
| #ifndef _impsize_h_ | #ifndef _impsize_h_ | ||||||
| #define _impsize_h_ | #define _impsize_h_ | ||||||
| 
 | 
 | ||||||
|  | @ -67,6 +67,7 @@ extern int __glTexParameterfv_size(GLenum e); | ||||||
| extern int __glTexParameteriv_size(GLenum e); | extern int __glTexParameteriv_size(GLenum e); | ||||||
| extern int __glEvalComputeK(GLenum target); | extern int __glEvalComputeK(GLenum target); | ||||||
| 
 | 
 | ||||||
| extern int __glPointParameterfvARB_size(GLenum pname); | extern int __glPointParameterfvARB_size(GLenum e); | ||||||
|  | extern int __glPointParameteriv_size(GLenum e); | ||||||
| 
 | 
 | ||||||
| #endif /* _impsize_h_ */ | #endif /* _impsize_h_ */ | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/render2.c,v 1.6 2003/10/28 22:50:18 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/render2.c,v 1.9 2004/02/12 02:25:01 torrey Exp $ */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
| ** made subject to an alternative license as permitted in the SGI Free | ** made subject to an alternative license as permitted in the SGI Free | ||||||
|  | @ -234,6 +234,16 @@ void __glXDisp_DrawArrays(GLbyte *pc) | ||||||
| 	    glEnableClientState(GL_EDGE_FLAG_ARRAY); | 	    glEnableClientState(GL_EDGE_FLAG_ARRAY); | ||||||
| 	    glEdgeFlagPointer(stride, (const GLboolean *)pc); | 	    glEdgeFlagPointer(stride, (const GLboolean *)pc); | ||||||
| 	    break; | 	    break; | ||||||
|  | #ifndef MISSING_GL_EXTS | ||||||
|  | 	  case GL_SECONDARY_COLOR_ARRAY: | ||||||
|  | 	    glEnableClientState(GL_SECONDARY_COLOR_ARRAY); | ||||||
|  | 	    glSecondaryColorPointer(numVals, datatype, stride, pc); | ||||||
|  | 	    break; | ||||||
|  | 	  case GL_FOG_COORDINATE_ARRAY: | ||||||
|  | 	    glEnableClientState(GL_FOG_COORDINATE_ARRAY); | ||||||
|  | 	    glFogCoordPointer(datatype, stride, pc); | ||||||
|  | 	    break; | ||||||
|  | #endif | ||||||
| 	  default: | 	  default: | ||||||
| 	    break; | 	    break; | ||||||
| 	} | 	} | ||||||
|  | @ -250,10 +260,11 @@ void __glXDisp_DrawArrays(GLbyte *pc) | ||||||
|     glDisableClientState(GL_INDEX_ARRAY); |     glDisableClientState(GL_INDEX_ARRAY); | ||||||
|     glDisableClientState(GL_TEXTURE_COORD_ARRAY); |     glDisableClientState(GL_TEXTURE_COORD_ARRAY); | ||||||
|     glDisableClientState(GL_EDGE_FLAG_ARRAY); |     glDisableClientState(GL_EDGE_FLAG_ARRAY); | ||||||
|  |     glDisableClientState(GL_SECONDARY_COLOR_ARRAY); | ||||||
|  |     glDisableClientState(GL_FOG_COORDINATE_ARRAY); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void __glXDisp_DrawArraysEXT(GLbyte *pc) | void __glXDisp_DrawArraysEXT(GLbyte *pc) | ||||||
| { | { | ||||||
| #ifdef XXX_STUB |    __glXDisp_DrawArrays(pc); | ||||||
| #endif /*XXX_STUB*/ |  | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/render2swap.c,v 1.6 2002/01/14 22:47:08 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/render2swap.c,v 1.7 2004/02/03 23:04:08 alanh Exp $ */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
| ** made subject to an alternative license as permitted in the SGI Free | ** made subject to an alternative license as permitted in the SGI Free | ||||||
|  | @ -386,6 +386,5 @@ void __glXDispSwap_DrawArrays(GLbyte *pc) | ||||||
| 
 | 
 | ||||||
| void __glXDispSwap_DrawArraysEXT(GLbyte *pc) | void __glXDispSwap_DrawArraysEXT(GLbyte *pc) | ||||||
| { | { | ||||||
| #ifdef XXX_STUB |    __glXDispSwap_DrawArrays(pc); | ||||||
| #endif /*XXX_STUB*/ |  | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/rensize.c,v 1.6 2003/09/28 20:15:43 alanh Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/rensize.c,v 1.7 2004/01/28 18:11:53 alanh Exp $ */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
| ** made subject to an alternative license as permitted in the SGI Free | ** made subject to an alternative license as permitted in the SGI Free | ||||||
|  | @ -551,12 +551,14 @@ int __glXDrawArraysSize( GLbyte *pc, Bool swap ) | ||||||
| 	  case GL_COLOR_ARRAY: | 	  case GL_COLOR_ARRAY: | ||||||
| 	  case GL_TEXTURE_COORD_ARRAY: | 	  case GL_TEXTURE_COORD_ARRAY: | ||||||
| 	    break; | 	    break; | ||||||
|  | 	  case GL_SECONDARY_COLOR_ARRAY: | ||||||
| 	  case GL_NORMAL_ARRAY: | 	  case GL_NORMAL_ARRAY: | ||||||
| 	    if (numVals != 3) { | 	    if (numVals != 3) { | ||||||
| 		/* bad size */ | 		/* bad size */ | ||||||
| 		return -1; | 		return -1; | ||||||
| 	    } | 	    } | ||||||
| 	    break; | 	    break; | ||||||
|  | 	  case GL_FOG_COORDINATE_ARRAY: | ||||||
| 	  case GL_INDEX_ARRAY: | 	  case GL_INDEX_ARRAY: | ||||||
| 	    if (numVals != 1) { | 	    if (numVals != 1) { | ||||||
| 		/* bad size */ | 		/* bad size */ | ||||||
|  | @ -918,3 +920,9 @@ int __glXPointParameterfvARBReqSize(GLbyte *pc, Bool swap ) | ||||||
|     } |     } | ||||||
|     return 4 * __glPointParameterfvARB_size( pname ); |     return 4 * __glPointParameterfvARB_size( pname ); | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | int __glXPointParameterivReqSize(GLbyte *pc, Bool swap ) | ||||||
|  | { | ||||||
|  |     /* no difference between fv and iv versions */ | ||||||
|  |     return __glXPointParameterfvARBReqSize(pc, swap); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/rensizetab.c,v 1.4 2003/09/28 20:15:43 alanh Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/rensizetab.c,v 1.6 2004/02/03 23:04:08 alanh Exp $ */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
| ** made subject to an alternative license as permitted in the SGI Free | ** made subject to an alternative license as permitted in the SGI Free | ||||||
|  | @ -231,9 +231,9 @@ __GLXrenderSizeData __glXRenderSizeTable[__GLX_MAX_RENDER_OPCODE_EXT - __GLX_MIN | ||||||
| 	/* Translatef          */	{  16, 	0                         }, | 	/* Translatef          */	{  16, 	0                         }, | ||||||
| 	/* Viewport            */	{  20, 	0                         }, | 	/* Viewport            */	{  20, 	0                         }, | ||||||
| 	/* PolygonOffset       */	{  12, 	0                         }, | 	/* PolygonOffset       */	{  12, 	0                         }, | ||||||
| 	/* no such opcode      */	{  0, 	0                         }, | 	/* DrawArrays          */	{  16, 	__glXDrawArraysSize       }, | ||||||
| 	/* Indexubv            */	{  8, 	0                         }, | 	/* Indexubv            */	{  8, 	0                         }, | ||||||
| 	/* ColorSubTable       */       {  44,  __glXColorSubTableReqSize         }, | 	/* ColorSubTable       */       {  44,  __glXColorSubTableReqSize }, | ||||||
| 	/* CopyColorSubTable   */       {  24,  0                         }, | 	/* CopyColorSubTable   */       {  24,  0                         }, | ||||||
| 	/* ActiveTextureARB    */       {  8,   0                         }, | 	/* ActiveTextureARB    */       {  8,   0                         }, | ||||||
| 	/* MultiTexCoord1dvARB */       {  16,  0                         }, | 	/* MultiTexCoord1dvARB */       {  16,  0                         }, | ||||||
|  | @ -2342,17 +2342,17 @@ __GLXrenderSizeData __glXRenderSizeTable_EXT[__GLX_MAX_RENDER_OPCODE_EXT - __GLX | ||||||
| 	/* CopyTexSubImage1D   */	{  28, 	0 }, | 	/* CopyTexSubImage1D   */	{  28, 	0 }, | ||||||
| 	/* CopyTexSubImage2D   */	{  36, 	0 }, | 	/* CopyTexSubImage2D   */	{  36, 	0 }, | ||||||
| 	/* CopyTexSubImage3D    4123 */ {  40,  0 }, | 	/* CopyTexSubImage3D    4123 */ {  40,  0 }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* FogCoordfv           4124 */	{   8, 	0 }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* FogCoorddv           4125 */	{  12, 	0 }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* SecondaryColor3bv    4126 */	{   8, 	0 }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* SecondaryColor3sv    4127 */	{  12, 	0 }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* SecondaryColor3iv    4128 */	{  16, 	0 }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* SecondaryColor3fv    4129 */	{  16, 	0 }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* SecondaryColor3dv    4130 */	{  28, 	0 }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* SecondaryColor3ubv   4131 */	{   8, 	0 }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* SecondaryColor3usv   4132 */	{  12, 	0 }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* SecondaryColor3uiv   4133 */	{  16, 	0 }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* BlendFuncSeparate    4134 */	{  20, 	0 }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* no such opcode      */	{   0, 	0                         }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* no such opcode      */	{   0, 	0                         }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* no such opcode      */	{   0, 	0                         }, | ||||||
|  | @ -2439,4 +2439,6 @@ __GLXrenderSizeData __glXRenderSizeTable_EXT[__GLX_MAX_RENDER_OPCODE_EXT - __GLX | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* no such opcode      */	{   0, 	0                         }, | ||||||
| 	/* no such opcode      */	{   0, 	0                         }, | 	/* no such opcode      */	{   0, 	0                         }, | ||||||
| 	/* ActiveStencilFaceEXT 4220 */ {   8,  0 }, | 	/* ActiveStencilFaceEXT 4220 */ {   8,  0 }, | ||||||
|  | 	/* PointParameteri      4221 */	{  12, 	0 }, | ||||||
|  | 	/* PointParameteriv     4222 */	{   8, 	__glXPointParameterivReqSize }, | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/single2.c,v 1.6 2001/06/06 19:00:15 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/single2.c,v 1.9 2004/02/11 09:18:15 alanh Exp $ */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
| ** made subject to an alternative license as permitted in the SGI Free | ** made subject to an alternative license as permitted in the SGI Free | ||||||
|  | @ -296,16 +296,25 @@ char *__glXcombine_strings(const char *cext_string, const char *sext_string) | ||||||
|    return combo_string; |    return combo_string; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| int __glXDisp_GetString(__GLXclientState *cl, GLbyte *pc) | int DoGetString(__GLXclientState *cl, GLbyte *pc, GLboolean need_swap) | ||||||
| { | { | ||||||
|     ClientPtr client; |     ClientPtr client; | ||||||
|     __GLXcontext *cx; |     __GLXcontext *cx; | ||||||
|     GLenum name; |     GLenum name; | ||||||
|     const char *string; |     const char *string; | ||||||
|  |     __GLX_DECLARE_SWAP_VARIABLES; | ||||||
|     int error; |     int error; | ||||||
|     char *buf = NULL, *buf1 = NULL; |     char *buf = NULL, *buf1 = NULL; | ||||||
|     GLint length = 0; |     GLint length = 0; | ||||||
| 
 | 
 | ||||||
|  |     /* If the client has the opposite byte order, swap the contextTag and
 | ||||||
|  |      * the name. | ||||||
|  |      */ | ||||||
|  |     if ( need_swap ) { | ||||||
|  | 	__GLX_SWAP_INT(pc + 4); | ||||||
|  | 	__GLX_SWAP_INT(pc + __GLX_SINGLE_HDR_SIZE); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error); |     cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error); | ||||||
|     if (!cx) { |     if (!cx) { | ||||||
| 	return error; | 	return error; | ||||||
|  | @ -331,12 +340,32 @@ int __glXDisp_GetString(__GLXclientState *cl, GLbyte *pc) | ||||||
| 	} | 	} | ||||||
| 	string = buf; | 	string = buf; | ||||||
|     } |     } | ||||||
|  |     else if ( name == GL_VERSION ) { | ||||||
|  | 	if ( atof( string ) > atof( GLServerVersion ) ) { | ||||||
|  | 	    buf = __glXMalloc( __glXStrlen( string )  | ||||||
|  | 			       + __glXStrlen( GLServerVersion ) | ||||||
|  | 			       + 3 ); | ||||||
|  | 	    if ( buf == NULL ) { | ||||||
|  | 		string = GLServerVersion; | ||||||
|  | 	    } | ||||||
|  | 	    else { | ||||||
|  | 		__glXSprintf( buf, "%s (%s)", GLServerVersion, string ); | ||||||
|  | 		string = buf; | ||||||
|  | 	    } | ||||||
|  | 	} | ||||||
|  |     } | ||||||
|     if (string) { |     if (string) { | ||||||
| 	length = __glXStrlen((const char *) string) + 1; | 	length = __glXStrlen((const char *) string) + 1; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     __GLX_BEGIN_REPLY(length); |     __GLX_BEGIN_REPLY(length); | ||||||
|     __GLX_PUT_SIZE(length); |     __GLX_PUT_SIZE(length); | ||||||
|  | 
 | ||||||
|  |     if ( need_swap ) { | ||||||
|  | 	__GLX_SWAP_REPLY_SIZE(); | ||||||
|  | 	__GLX_SWAP_REPLY_HEADER(); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     __GLX_SEND_HEADER(); |     __GLX_SEND_HEADER(); | ||||||
|     WriteToClient(client, length, (char *) string);  |     WriteToClient(client, length, (char *) string);  | ||||||
|     if (buf != NULL) { |     if (buf != NULL) { | ||||||
|  | @ -345,6 +374,11 @@ int __glXDisp_GetString(__GLXclientState *cl, GLbyte *pc) | ||||||
|     return Success; |     return Success; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | int __glXDisp_GetString(__GLXclientState *cl, GLbyte *pc) | ||||||
|  | { | ||||||
|  |     return DoGetString(cl, pc, GL_FALSE); | ||||||
|  | } | ||||||
|  | 
 | ||||||
| int __glXDisp_GetClipPlane(__GLXclientState *cl, GLbyte *pc) | int __glXDisp_GetClipPlane(__GLXclientState *cl, GLbyte *pc) | ||||||
| { | { | ||||||
|     __GLXcontext *cx; |     __GLXcontext *cx; | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/single2swap.c,v 1.7 2002/01/14 22:47:08 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/single2swap.c,v 1.8 2004/02/09 23:46:31 alanh Exp $ */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
| ** made subject to an alternative license as permitted in the SGI Free | ** made subject to an alternative license as permitted in the SGI Free | ||||||
|  | @ -262,58 +262,7 @@ int __glXDispSwap_Finish(__GLXclientState *cl, GLbyte *pc) | ||||||
| 
 | 
 | ||||||
| int __glXDispSwap_GetString(__GLXclientState *cl, GLbyte *pc) | int __glXDispSwap_GetString(__GLXclientState *cl, GLbyte *pc) | ||||||
| { | { | ||||||
|     ClientPtr client; |     return DoGetString(cl, pc, GL_TRUE); | ||||||
|     __GLXcontext *cx; |  | ||||||
|     GLenum name; |  | ||||||
|     const char *string; |  | ||||||
|     __GLX_DECLARE_SWAP_VARIABLES; |  | ||||||
|     int error; |  | ||||||
|     char *buf = NULL, *buf1 = NULL; |  | ||||||
|     GLint length = 0; |  | ||||||
| 
 |  | ||||||
|     __GLX_SWAP_INT(&((xGLXSingleReq *)pc)->contextTag); |  | ||||||
|     cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error); |  | ||||||
|     if (!cx) { |  | ||||||
| 	return error; |  | ||||||
|     } |  | ||||||
| 
 |  | ||||||
|     pc += __GLX_SINGLE_HDR_SIZE; |  | ||||||
|     __GLX_SWAP_INT(pc + 0); |  | ||||||
|     name = *(GLenum *)(pc + 0); |  | ||||||
|     string = (const char *)glGetString(name); |  | ||||||
|     client = cl->client; |  | ||||||
| 
 |  | ||||||
|     /*
 |  | ||||||
|     ** Restrict extensions to those that are supported by both the |  | ||||||
|     ** implementation and the connection.  That is, return the |  | ||||||
|     ** intersection of client, server, and core extension strings. |  | ||||||
|     */ |  | ||||||
|     if (name == GL_EXTENSIONS) { |  | ||||||
| 	buf1 = __glXcombine_strings(string, |  | ||||||
| 				      cl->GLClientextensions); |  | ||||||
| 	buf = __glXcombine_strings(buf1, |  | ||||||
| 				      cx->pGlxScreen->GLextensions); |  | ||||||
| 	if (buf1 != NULL) { |  | ||||||
| 	    __glXFree(buf1); |  | ||||||
| 	} |  | ||||||
| 	string = buf; |  | ||||||
|     } |  | ||||||
|     if (string) { |  | ||||||
| 	length = __glXStrlen((const char *) string) + 1; |  | ||||||
|     } |  | ||||||
| 
 |  | ||||||
|     __GLX_BEGIN_REPLY(length); |  | ||||||
|     __GLX_PUT_SIZE(length); |  | ||||||
| 
 |  | ||||||
|     __GLX_SWAP_REPLY_SIZE(); |  | ||||||
|     __GLX_SWAP_REPLY_HEADER(); |  | ||||||
|     __GLX_SEND_HEADER(); |  | ||||||
|     WriteToClient(client, length, (char *) string);  |  | ||||||
|     if (buf != NULL) { |  | ||||||
| 	__glXFree(buf); |  | ||||||
|     } |  | ||||||
| 
 |  | ||||||
|     return Success; |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| int __glXDispSwap_GetClipPlane(__GLXclientState *cl, GLbyte *pc) | int __glXDispSwap_GetClipPlane(__GLXclientState *cl, GLbyte *pc) | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/glx/singlesize.c,v 1.6 2003/11/06 18:37:56 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/glx/singlesize.c,v 1.8 2004/02/09 19:51:32 tsi Exp $ */ | ||||||
| /*
 | /*
 | ||||||
| ** License Applicability. Except to the extent portions of this file are | ** License Applicability. Except to the extent portions of this file are | ||||||
| ** made subject to an alternative license as permitted in the SGI Free | ** made subject to an alternative license as permitted in the SGI Free | ||||||
|  | @ -50,32 +50,48 @@ GLint __glReadPixels_size(GLenum format, GLenum type, GLint w, GLint h) | ||||||
|     return __glXImage3DSize( format, type, w, h, 1, 0, 0, 0, 0, 4 ); |     return __glXImage3DSize( format, type, w, h, 1, 0, 0, 0, 0, 4 ); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | /**
 | ||||||
|  |  * Determine the number of data elements that go with the specified \c pname | ||||||
|  |  * to a \c glGetTexEnvfv or \c glGetTexEnviv call. | ||||||
|  |  *  | ||||||
|  |  * \todo | ||||||
|  |  * Replace this function with a call to \c __glTexEnvfv_size.  Make that there | ||||||
|  |  * aren't any values of \c pname that are valid for one but not the other. | ||||||
|  |  */ | ||||||
| GLint __glGetTexEnvfv_size(GLenum pname) | GLint __glGetTexEnvfv_size(GLenum pname) | ||||||
| { | { | ||||||
|     switch (pname) { |     switch (pname) { | ||||||
|       case GL_TEXTURE_ENV_MODE: |       case GL_TEXTURE_ENV_MODE: | ||||||
|  |       case GL_TEXTURE_LOD_BIAS: | ||||||
|  |       case GL_COMBINE_RGB: | ||||||
|  |       case GL_COMBINE_ALPHA: | ||||||
|  |       case GL_SOURCE0_RGB: | ||||||
|  |       case GL_SOURCE1_RGB: | ||||||
|  |       case GL_SOURCE2_RGB: | ||||||
|  |       case GL_SOURCE0_ALPHA: | ||||||
|  |       case GL_SOURCE1_ALPHA: | ||||||
|  |       case GL_SOURCE2_ALPHA: | ||||||
|  |       case GL_OPERAND0_RGB: | ||||||
|  |       case GL_OPERAND1_RGB: | ||||||
|  |       case GL_OPERAND2_RGB: | ||||||
|  |       case GL_OPERAND0_ALPHA: | ||||||
|  |       case GL_OPERAND1_ALPHA: | ||||||
|  |       case GL_OPERAND2_ALPHA: | ||||||
|  |       case GL_RGB_SCALE: | ||||||
|  |       case GL_ALPHA_SCALE: | ||||||
|  | 	 | ||||||
|  |       /* GL_ARB_point_sprite / GL_NV_point_sprite */ | ||||||
|  |       case GL_COORD_REPLACE_NV: | ||||||
|  | 
 | ||||||
|  |       /* GL_NV_texture_env_combine4 */ | ||||||
|  |       case GL_SOURCE3_RGB_NV: | ||||||
|  |       case GL_SOURCE3_ALPHA_NV: | ||||||
|  |       case GL_OPERAND3_RGB_NV: | ||||||
|  |       case GL_OPERAND3_ALPHA_NV: | ||||||
| 	return 1; | 	return 1; | ||||||
|  | 
 | ||||||
|       case GL_TEXTURE_ENV_COLOR: |       case GL_TEXTURE_ENV_COLOR: | ||||||
| 	return 4; | 	return 4; | ||||||
|       case GL_TEXTURE_LOD_BIAS_EXT: |  | ||||||
| 	return 1; |  | ||||||
|       case GL_COMBINE_RGB_ARB: |  | ||||||
|       case GL_COMBINE_ALPHA_ARB: |  | ||||||
|       case GL_SOURCE0_RGB_ARB: |  | ||||||
|       case GL_SOURCE1_RGB_ARB: |  | ||||||
|       case GL_SOURCE2_RGB_ARB: |  | ||||||
|       case GL_SOURCE0_ALPHA_ARB: |  | ||||||
|       case GL_SOURCE1_ALPHA_ARB: |  | ||||||
|       case GL_SOURCE2_ALPHA_ARB: |  | ||||||
|       case GL_OPERAND0_RGB_ARB: |  | ||||||
|       case GL_OPERAND1_RGB_ARB: |  | ||||||
|       case GL_OPERAND2_RGB_ARB: |  | ||||||
|       case GL_OPERAND0_ALPHA_ARB: |  | ||||||
|       case GL_OPERAND1_ALPHA_ARB: |  | ||||||
|       case GL_OPERAND2_ALPHA_ARB: |  | ||||||
|       case GL_RGB_SCALE_ARB: |  | ||||||
|       case GL_ALPHA_SCALE: |  | ||||||
| 	return 1; |  | ||||||
|       default: |       default: | ||||||
| 	return -1; | 	return -1; | ||||||
|     } |     } | ||||||
|  | @ -140,6 +156,15 @@ GLint __glGetTexParameterfv_size(GLenum pname) | ||||||
|       case GL_TEXTURE_COMPARE_MODE: |       case GL_TEXTURE_COMPARE_MODE: | ||||||
|       case GL_TEXTURE_COMPARE_FUNC: |       case GL_TEXTURE_COMPARE_FUNC: | ||||||
| 
 | 
 | ||||||
|  |       /* GL_SGIS_generate_mipmap / GL 1.4 */ | ||||||
|  |       case GL_GENERATE_MIPMAP: | ||||||
|  | 
 | ||||||
|  |       /* GL_ARB_depth_texture / GL 1.4 */ | ||||||
|  |       case GL_DEPTH_TEXTURE_MODE: | ||||||
|  | 
 | ||||||
|  |       /* GL_EXT_texture_lod_bias / GL 1.4 */ | ||||||
|  |       case GL_TEXTURE_LOD_BIAS: | ||||||
|  | 
 | ||||||
|       /* GL_SGIX_shadow_ambient / GL_ARB_shadow_ambient */ |       /* GL_SGIX_shadow_ambient / GL_ARB_shadow_ambient */ | ||||||
|       case GL_TEXTURE_COMPARE_FAIL_VALUE_ARB: |       case GL_TEXTURE_COMPARE_FAIL_VALUE_ARB: | ||||||
| 
 | 
 | ||||||
|  | @ -151,6 +176,9 @@ GLint __glGetTexParameterfv_size(GLenum pname) | ||||||
|       case GL_TEXTURE_MAX_CLAMP_S_SGIX: |       case GL_TEXTURE_MAX_CLAMP_S_SGIX: | ||||||
|       case GL_TEXTURE_MAX_CLAMP_T_SGIX: |       case GL_TEXTURE_MAX_CLAMP_T_SGIX: | ||||||
|       case GL_TEXTURE_MAX_CLAMP_R_SGIX: |       case GL_TEXTURE_MAX_CLAMP_R_SGIX: | ||||||
|  | 
 | ||||||
|  |       /* GL_EXT_texture_filter_anisotropic */ | ||||||
|  |       case GL_TEXTURE_MAX_ANISOTROPY_EXT: | ||||||
| 	return 1; | 	return 1; | ||||||
| 
 | 
 | ||||||
|       default: |       default: | ||||||
|  | @ -834,10 +862,6 @@ GLint __glGet_size(GLenum sq) | ||||||
|       case GL_MAX_CONVOLUTION_WIDTH: |       case GL_MAX_CONVOLUTION_WIDTH: | ||||||
|       case GL_MAX_CONVOLUTION_HEIGHT: |       case GL_MAX_CONVOLUTION_HEIGHT: | ||||||
| 	return 1; | 	return 1; | ||||||
|       case GL_TEXTURE_CUBE_MAP_ARB: |  | ||||||
|       case GL_TEXTURE_BINDING_CUBE_MAP_ARB: |  | ||||||
|       case GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB: |  | ||||||
| 	return 1; |  | ||||||
|       case GL_OCCLUSION_TEST_RESULT_HP: |       case GL_OCCLUSION_TEST_RESULT_HP: | ||||||
|       case GL_OCCLUSION_TEST_HP: |       case GL_OCCLUSION_TEST_HP: | ||||||
| 	return 1; | 	return 1; | ||||||
|  | @ -847,6 +871,183 @@ GLint __glGet_size(GLenum sq) | ||||||
| 	return 1; | 	return 1; | ||||||
|       case GL_RASTER_POSITION_UNCLIPPED_IBM: |       case GL_RASTER_POSITION_UNCLIPPED_IBM: | ||||||
| 	return 1; | 	return 1; | ||||||
|  | 
 | ||||||
|  |       /* GL_ARB_texture_cube_map / GL 1.3 */ | ||||||
|  |       case GL_TEXTURE_CUBE_MAP: | ||||||
|  |       case GL_TEXTURE_BINDING_CUBE_MAP: | ||||||
|  |       case GL_MAX_CUBE_MAP_TEXTURE_SIZE: | ||||||
|  | 
 | ||||||
|  |       /* GL_ARB_multisample / GL 1.3 */ | ||||||
|  |       case GL_MULTISAMPLE: | ||||||
|  |       case GL_SAMPLE_ALPHA_TO_COVERAGE: | ||||||
|  |       case GL_SAMPLE_ALPHA_TO_ONE: | ||||||
|  |       case GL_SAMPLE_COVERAGE: | ||||||
|  |       case GL_SAMPLE_BUFFERS: | ||||||
|  |       case GL_SAMPLES: | ||||||
|  |       case GL_SAMPLE_COVERAGE_VALUE: | ||||||
|  |       case GL_SAMPLE_COVERAGE_INVERT: | ||||||
|  | 
 | ||||||
|  |       /* GL_ARB_texture_comrpession / GL 1.3 */ | ||||||
|  |       case GL_TEXTURE_COMPRESSION_HINT: | ||||||
|  |       case GL_NUM_COMPRESSED_TEXTURE_FORMATS: | ||||||
|  | 	 | ||||||
|  |       /* GL_EXT_blend_func_separate / GL 1.4 */ | ||||||
|  |       case GL_BLEND_DST_RGB: | ||||||
|  |       case GL_BLEND_SRC_RGB: | ||||||
|  |       case GL_BLEND_DST_ALPHA: | ||||||
|  |       case GL_BLEND_SRC_ALPHA: | ||||||
|  | 
 | ||||||
|  |       /* GL_EXT_fog_coord / GL 1.4 */ | ||||||
|  |       case GL_CURRENT_FOG_COORDINATE: | ||||||
|  |       case GL_FOG_COORDINATE_ARRAY_TYPE: | ||||||
|  |       case GL_FOG_COORDINATE_ARRAY_STRIDE: | ||||||
|  |       case GL_FOG_COORDINATE_ARRAY: | ||||||
|  |       case GL_FOG_COORDINATE_SOURCE: | ||||||
|  | 
 | ||||||
|  |       /* GL_EXT_secondary_color / GL 1.4 */ | ||||||
|  |       case GL_COLOR_SUM: | ||||||
|  |       case GL_SECONDARY_COLOR_ARRAY_SIZE: | ||||||
|  |       case GL_SECONDARY_COLOR_ARRAY_TYPE: | ||||||
|  |       case GL_SECONDARY_COLOR_ARRAY_STRIDE: | ||||||
|  |       case GL_SECONDARY_COLOR_ARRAY: | ||||||
|  | 
 | ||||||
|  |       /* GL_EXT_texture_lod_bias / GL 1.4 */ | ||||||
|  |       case GL_MAX_TEXTURE_LOD_BIAS: | ||||||
|  | 
 | ||||||
|  |       /* GL_ARB_point_sprite */ | ||||||
|  |       case GL_POINT_SPRITE_NV: | ||||||
|  | 
 | ||||||
|  |       /* GL_ARB_vertex_blend */ | ||||||
|  |       case GL_MAX_VERTEX_UNITS_ARB: | ||||||
|  |       case GL_ACTIVE_VERTEX_UNITS_ARB: | ||||||
|  |       case GL_WEIGHT_SUM_UNITY_ARB: | ||||||
|  |       case GL_VERTEX_BLEND_ARB: | ||||||
|  |       case GL_CURRENT_WEIGHT_ARB: | ||||||
|  |       case GL_WEIGHT_ARRAY_ARB: | ||||||
|  |       case GL_WEIGHT_ARRAY_TYPE_ARB: | ||||||
|  |       case GL_WEIGHT_ARRAY_STRIDE_ARB: | ||||||
|  |       case GL_WEIGHT_ARRAY_SIZE_ARB: | ||||||
|  | 
 | ||||||
|  |       /* GL_ARB_matrix_palette */ | ||||||
|  |       case GL_MATRIX_PALETTE_ARB: | ||||||
|  |       case GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB: | ||||||
|  |       case GL_MAX_PALETTE_MATRICES_ARB: | ||||||
|  |       case GL_CURRENT_PALETTE_MATRIX_ARB: | ||||||
|  |       case GL_CURRENT_MATRIX_INDEX_ARB: | ||||||
|  |       case GL_MATRIX_INDEX_ARRAY_ARB: | ||||||
|  |       case GL_MATRIX_INDEX_ARRAY_SIZE_ARB: | ||||||
|  |       case GL_MATRIX_INDEX_ARRAY_TYPE_ARB: | ||||||
|  |       case GL_MATRIX_INDEX_ARRAY_STRIDE_ARB: | ||||||
|  | 
 | ||||||
|  |       /* GL_EXT_clip_volume_hint */ | ||||||
|  |       case GL_CLIP_VOLUME_CLIPPING_HINT_EXT: | ||||||
|  | 
 | ||||||
|  |       /* GL_EXT_stencil_two_size */ | ||||||
|  |       case GL_STENCIL_TEST_TWO_SIDE_EXT: | ||||||
|  |       case GL_ACTIVE_STENCIL_FACE_EXT: | ||||||
|  | 
 | ||||||
|  |       /* GL_EXT_vertex_weighting */ | ||||||
|  |       case GL_VERTEX_WEIGHTING_EXT: | ||||||
|  |       case GL_MODELVIEW0_EXT: | ||||||
|  |       case GL_MODELVIEW1_EXT: | ||||||
|  |       case GL_CURRENT_VERTEX_WEIGHT_EXT: | ||||||
|  |       case GL_VERTEX_WEIGHT_ARRAY_EXT: | ||||||
|  |       case GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT: | ||||||
|  |       case GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT: | ||||||
|  |       case GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT: | ||||||
|  |       /* case GL_MODELVIEW0_STACK_DEPTH_EXT: */ /* alias */ | ||||||
|  |       case GL_MODELVIEW1_STACK_DEPTH_EXT: | ||||||
|  | 
 | ||||||
|  |       /* GL_ATI_vertex_streams */ | ||||||
|  |       case GL_MAX_VERTEX_STREAMS_ATI: | ||||||
|  | 
 | ||||||
|  |       /* GL_NV_depth_clamp */ | ||||||
|  |       case GL_DEPTH_CLAMP_NV: | ||||||
|  | 
 | ||||||
|  |       /* GL_NV_fog_distance */ | ||||||
|  |       case GL_FOG_DISTANCE_MODE_NV: | ||||||
|  | 
 | ||||||
|  |       /* GL_NV_light_max_exponent */ | ||||||
|  |       case GL_MAX_SHININESS_NV: | ||||||
|  |       case GL_MAX_SPOT_EXPONENT_NV: | ||||||
|  | 
 | ||||||
|  |       /* GL_NV_multisample_filter_hint */ | ||||||
|  |       case GL_MULTISAMPLE_FILTER_HINT_NV: | ||||||
|  | 
 | ||||||
|  |       /* GL_NV_point_sprite */ | ||||||
|  |       /* case GL_POINT_SPRITE_NV: */ /* alias */ | ||||||
|  |       case GL_POINT_SPRITE_R_MODE_NV: | ||||||
|  | 
 | ||||||
|  |       /* GL_NV_register_combiners */ | ||||||
|  |       case GL_REGISTER_COMBINERS_NV: | ||||||
|  |       case GL_NUM_GENERAL_COMBINERS_NV: | ||||||
|  |       case GL_COLOR_SUM_CLAMP_NV: | ||||||
|  |       case GL_MAX_GENERAL_COMBINERS_NV: | ||||||
|  | 
 | ||||||
|  |       /* GL_NV_register_combiners2 */ | ||||||
|  |       case GL_PER_STAGE_CONSTANTS_NV: | ||||||
|  | 
 | ||||||
|  |       /* GL_NV_texture_rectangle */ | ||||||
|  |       case GL_TEXTURE_RECTANGLE_NV: | ||||||
|  |       case GL_TEXTURE_BINDING_RECTANGLE_NV: | ||||||
|  |       case GL_MAX_RECTANGLE_TEXTURE_SIZE_NV: | ||||||
|  | 	return 1; | ||||||
|  | 
 | ||||||
|  |       /* GL_EXT_secondary_color / GL 1.4 */ | ||||||
|  |       case GL_CURRENT_SECONDARY_COLOR: | ||||||
|  | 
 | ||||||
|  |       /* GL_NV_register_combiners */ | ||||||
|  |       case GL_CONSTANT_COLOR0_NV: | ||||||
|  |       case GL_CONSTANT_COLOR1_NV: | ||||||
|  | 	return 4; | ||||||
|  | 
 | ||||||
|  |       /* GL_ARB_vertex_blend */ | ||||||
|  |       /* case GL_MODELVIEW0_ARB: */ /* alias */ | ||||||
|  |       /* case GL_MODELVIEW1_ARB: */ /* alias */ | ||||||
|  |       case GL_MODELVIEW2_ARB: | ||||||
|  |       case GL_MODELVIEW3_ARB: | ||||||
|  |       case GL_MODELVIEW4_ARB: | ||||||
|  |       case GL_MODELVIEW5_ARB: | ||||||
|  |       case GL_MODELVIEW6_ARB: | ||||||
|  |       case GL_MODELVIEW7_ARB: | ||||||
|  |       case GL_MODELVIEW8_ARB: | ||||||
|  |       case GL_MODELVIEW9_ARB: | ||||||
|  |       case GL_MODELVIEW10_ARB: | ||||||
|  |       case GL_MODELVIEW11_ARB: | ||||||
|  |       case GL_MODELVIEW12_ARB: | ||||||
|  |       case GL_MODELVIEW13_ARB: | ||||||
|  |       case GL_MODELVIEW14_ARB: | ||||||
|  |       case GL_MODELVIEW15_ARB: | ||||||
|  |       case GL_MODELVIEW16_ARB: | ||||||
|  |       case GL_MODELVIEW17_ARB: | ||||||
|  |       case GL_MODELVIEW18_ARB: | ||||||
|  |       case GL_MODELVIEW19_ARB: | ||||||
|  |       case GL_MODELVIEW20_ARB: | ||||||
|  |       case GL_MODELVIEW21_ARB: | ||||||
|  |       case GL_MODELVIEW22_ARB: | ||||||
|  |       case GL_MODELVIEW23_ARB: | ||||||
|  |       case GL_MODELVIEW24_ARB: | ||||||
|  |       case GL_MODELVIEW25_ARB: | ||||||
|  |       case GL_MODELVIEW26_ARB: | ||||||
|  |       case GL_MODELVIEW27_ARB: | ||||||
|  |       case GL_MODELVIEW28_ARB: | ||||||
|  |       case GL_MODELVIEW29_ARB: | ||||||
|  |       case GL_MODELVIEW30_ARB: | ||||||
|  |       case GL_MODELVIEW31_ARB: | ||||||
|  | 
 | ||||||
|  |       /* GL_EXT_vertex_weighting */ | ||||||
|  |       /* case GL_MODELVIEW0_MATRIX_EXT: */ /* alias */ | ||||||
|  |       case GL_MODELVIEW1_MATRIX_EXT: | ||||||
|  | 	return 32; | ||||||
|  | 
 | ||||||
|  |       /* GL_ARB_texture_comrpession / GL 1.3 */ | ||||||
|  |       case GL_COMPRESSED_TEXTURE_FORMATS: { | ||||||
|  | 	  GLint temp; | ||||||
|  | 	   | ||||||
|  | 	  glGetIntegerv( GL_NUM_COMPRESSED_TEXTURE_FORMATS, & temp ); | ||||||
|  | 	  return temp; | ||||||
|  |       } | ||||||
|  | 
 | ||||||
|       default: |       default: | ||||||
| 	return -1; | 	return -1; | ||||||
|     } |     } | ||||||
|  | @ -886,7 +1087,15 @@ GLint __glGetTexLevelParameterfv_size(GLenum pname) | ||||||
|       case GL_TEXTURE_ALPHA_SIZE: |       case GL_TEXTURE_ALPHA_SIZE: | ||||||
|       case GL_TEXTURE_LUMINANCE_SIZE: |       case GL_TEXTURE_LUMINANCE_SIZE: | ||||||
|       case GL_TEXTURE_INTENSITY_SIZE: |       case GL_TEXTURE_INTENSITY_SIZE: | ||||||
|  | 
 | ||||||
|  |       /* GL_ARB_texture_compression / GL 1.3 */ | ||||||
|  |       case GL_TEXTURE_COMPRESSED_IMAGE_SIZE: | ||||||
|  |       case GL_TEXTURE_COMPRESSED: | ||||||
|  | 
 | ||||||
|  |       /* GL_ARB_depth_texture / GL 1.4 */ | ||||||
|  |       case GL_TEXTURE_DEPTH_SIZE: | ||||||
| 	return 1; | 	return 1; | ||||||
|  | 
 | ||||||
|       default: |       default: | ||||||
| 	return -1; | 	return -1; | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  | @ -45,7 +45,7 @@ not be used in advertising or otherwise to promote the sale, use or other | ||||||
| dealings in this Software without prior written authorization from said | dealings in this Software without prior written authorization from said | ||||||
| copyright holders. | copyright holders. | ||||||
| */ | */ | ||||||
| /* $XFree86: xc/programs/Xserver/Xprint/pcl/PclSFonts.c,v 1.7 2003/10/29 22:11:00 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/Xprint/pcl/PclSFonts.c,v 1.8 2003/12/22 17:48:05 tsi Exp $ */ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| #include <stdio.h> | #include <stdio.h> | ||||||
|  | @ -58,7 +58,6 @@ static short tmp2; | ||||||
| 
 | 
 | ||||||
| #define ESC 0x1b | #define ESC 0x1b | ||||||
| #define SYMBOL_SET 277 | #define SYMBOL_SET 277 | ||||||
| #define MAX_CINDEX 255 |  | ||||||
| 
 | 
 | ||||||
| static unsigned int PclDownloadChar(FILE *,PclCharDataPtr,unsigned short,unsigned char); | static unsigned int PclDownloadChar(FILE *,PclCharDataPtr,unsigned short,unsigned char); | ||||||
| static unsigned int PclDownloadHeader(FILE *, PclFontDescPtr, unsigned short); | static unsigned int PclDownloadHeader(FILE *, PclFontDescPtr, unsigned short); | ||||||
|  | @ -117,8 +116,6 @@ PclDownloadSoftFont16( | ||||||
|     } |     } | ||||||
|     pfh->index[row][col].fid = pfh->cur_fid; |     pfh->index[row][col].fid = pfh->cur_fid; | ||||||
|     pfh->index[row][col].cindex = pfh->cur_cindex++; |     pfh->index[row][col].cindex = pfh->cur_cindex++; | ||||||
|     if ( pfh->cur_cindex > MAX_CINDEX ) |  | ||||||
| 	pfh->cur_cindex = 0; |  | ||||||
| 
 | 
 | ||||||
|     PclDownloadChar(fp, pcd, pfh->index[row][col].fid, pfh->index[row][col].cindex); |     PclDownloadChar(fp, pcd, pfh->index[row][col].fid, pfh->index[row][col].cindex); | ||||||
| } | } | ||||||
|  |  | ||||||
							
								
								
									
										29
									
								
								dix/events.c
								
								
								
								
							
							
						
						
									
										29
									
								
								dix/events.c
								
								
								
								
							|  | @ -1,5 +1,4 @@ | ||||||
| /* $XdotOrg: xc/programs/Xserver/dix/events.c,v 3.50 2003/11/17 22:20:34 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/dix/events.c,v 3.52 2004/01/23 07:23:34 herrb Exp $ */ | ||||||
| /* $XFree86: xc/programs/Xserver/dix/events.c,v 3.50 2003/11/17 22:20:34 dawes Exp $ */ |  | ||||||
| /************************************************************
 | /************************************************************
 | ||||||
| 
 | 
 | ||||||
| Copyright 1987, 1998  The Open Group | Copyright 1987, 1998  The Open Group | ||||||
|  | @ -949,7 +948,8 @@ EnqueueEvent(xE, device, count) | ||||||
| 
 | 
 | ||||||
| #ifdef XKB | #ifdef XKB | ||||||
|     /* Fix for key repeating bug. */ |     /* Fix for key repeating bug. */ | ||||||
|     if (xE->u.u.type == KeyRelease) |     if (device->key != NULL && device->key->xkbInfo != NULL &&  | ||||||
|  | 	xE->u.u.type == KeyRelease) | ||||||
| 	AccessXCancelRepeatKey(device->key->xkbInfo, xE->u.u.detail); | 	AccessXCancelRepeatKey(device->key->xkbInfo, xE->u.u.detail); | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  | @ -1652,8 +1652,11 @@ DeliverEventsToWindow(pWin, pEvents, count, filter, grab, mskidx) | ||||||
| #ifdef XINPUT | #ifdef XINPUT | ||||||
|     else |     else | ||||||
|     { |     { | ||||||
| 	if (((type == DeviceMotionNotify) || (type == DeviceButtonPress)) && | 	if (((type == DeviceMotionNotify) | ||||||
| 	    deliveries) | #ifdef XKB | ||||||
|  | 	     || (type == DeviceButtonPress) | ||||||
|  | #endif | ||||||
|  | 	    ) && deliveries) | ||||||
| 	    CheckDeviceGrabAndHintWindow (pWin, type, | 	    CheckDeviceGrabAndHintWindow (pWin, type, | ||||||
| 					  (deviceKeyButtonPointer*) pEvents, | 					  (deviceKeyButtonPointer*) pEvents, | ||||||
| 					  grab, client, deliveryMask); | 					  grab, client, deliveryMask); | ||||||
|  | @ -2381,10 +2384,10 @@ CheckPassiveGrabsOnWindow( | ||||||
| 	xkbi= gdev->key->xkbInfo; | 	xkbi= gdev->key->xkbInfo; | ||||||
| #endif | #endif | ||||||
| 	tempGrab.modifierDevice = grab->modifierDevice; | 	tempGrab.modifierDevice = grab->modifierDevice; | ||||||
| 	if (device == grab->modifierDevice && | 	if ((device == grab->modifierDevice) && | ||||||
| 	    (xE->u.u.type == KeyPress | 	    ((xE->u.u.type == KeyPress) | ||||||
| #ifdef XINPUT | #if defined(XINPUT) && defined(XKB) | ||||||
| 	     || xE->u.u.type == DeviceKeyPress | 	     || (xE->u.u.type == DeviceKeyPress) | ||||||
| #endif | #endif | ||||||
| 	     )) | 	     )) | ||||||
| 	    tempGrab.modifiersDetail.exact = | 	    tempGrab.modifiersDetail.exact = | ||||||
|  | @ -2474,11 +2477,11 @@ CheckDeviceGrabs(device, xE, checkFirst, count) | ||||||
|     register WindowPtr pWin = NULL; |     register WindowPtr pWin = NULL; | ||||||
|     register FocusClassPtr focus = device->focus; |     register FocusClassPtr focus = device->focus; | ||||||
| 
 | 
 | ||||||
|     if ((xE->u.u.type == ButtonPress |     if (((xE->u.u.type == ButtonPress) | ||||||
| #ifdef XINPUT | #if defined(XINPUT) && defined(XKB) | ||||||
| 	 || xE->u.u.type == DeviceButtonPress | 	 || (xE->u.u.type == DeviceButtonPress) | ||||||
| #endif | #endif | ||||||
| 	 ) && device->button->buttonsDown != 1) | 	 ) && (device->button->buttonsDown != 1)) | ||||||
| 	return FALSE; | 	return FALSE; | ||||||
| 
 | 
 | ||||||
|     i = checkFirst; |     i = checkFirst; | ||||||
|  |  | ||||||
|  | @ -22,7 +22,7 @@ | ||||||
| .\" not be used in advertising or otherwise to promote the sale, use or | .\" not be used in advertising or otherwise to promote the sale, use or | ||||||
| .\" other dealings in this Software without prior written authorization | .\" other dealings in this Software without prior written authorization | ||||||
| .\" from The Open Group. | .\" from The Open Group. | ||||||
| .\" $XFree86: xc/programs/Xserver/Xserver.man,v 3.29 2003/09/08 14:25:26 eich Exp $ | .\" $XFree86: xc/programs/Xserver/Xserver.man,v 3.32 2004/01/12 21:43:19 herrb Exp $ | ||||||
| .\" shorthand for double quote that works everywhere. | .\" shorthand for double quote that works everywhere. | ||||||
| .ds q \N'34' | .ds q \N'34' | ||||||
| .TH XSERVER 1 __xorgversion__ | .TH XSERVER 1 __xorgversion__ | ||||||
|  | @ -37,16 +37,17 @@ is the generic name for the X Window System display server.  It is | ||||||
| frequently a link or a copy of the appropriate server binary for | frequently a link or a copy of the appropriate server binary for | ||||||
| driving the most frequently used server on a given machine. | driving the most frequently used server on a given machine. | ||||||
| .SH "STARTING THE SERVER" | .SH "STARTING THE SERVER" | ||||||
| The X server is usually started from the X Display Manager program \fIxdm\fP(1). | The X server is usually started from the X Display Manager program  | ||||||
|  | \fIxdm\fP(1) or a similar display manager program. | ||||||
| This utility is run from the system boot files and takes care of keeping | This utility is run from the system boot files and takes care of keeping | ||||||
| the server running, prompting for usernames and passwords, and starting up | the server running, prompting for usernames and passwords, and starting up | ||||||
| the user sessions. | the user sessions. | ||||||
| .PP | .PP | ||||||
| Installations that run more than one window system may need to use the | Installations that run more than one window system may need to use the | ||||||
| \fIxinit\fP(1) utility instead of \fIxdm\fP.  However, \fIxinit\fP is | \fIxinit\fP(1) utility instead of a display manager.  However, \fIxinit\fP is | ||||||
| to be considered a tool for building startup scripts and is not | to be considered a tool for building startup scripts and is not | ||||||
| intended for use by end users.  Site administrators are \fBstrongly\fP | intended for use by end users.  Site administrators are \fBstrongly\fP | ||||||
| urged to use \fIxdm\fP, or build other interfaces for novice users. | urged to use a display manager, or build other interfaces for novice users. | ||||||
| .PP | .PP | ||||||
| The X server may also be started directly by the user, though this | The X server may also be started directly by the user, though this | ||||||
| method is usually reserved for testing and is not recommended for | method is usually reserved for testing and is not recommended for | ||||||
|  | @ -95,8 +96,8 @@ Audit lines are sent as standard error output. | ||||||
| .TP 8 | .TP 8 | ||||||
| .B \-auth \fIauthorization-file\fP | .B \-auth \fIauthorization-file\fP | ||||||
| specifies a file which contains a collection of authorization records used | specifies a file which contains a collection of authorization records used | ||||||
| to authenticate access.  See also the \fIxdm\fP and \fIXsecurity\fP manual | to authenticate access.  See also the \fIxdm\fP(1) and  | ||||||
| pages. | \fIXsecurity\fP(__miscmansuffix__) manual pages. | ||||||
| .TP 8 | .TP 8 | ||||||
| .B bc | .B bc | ||||||
| disables certain kinds of error checking, for bug compatibility with | disables certain kinds of error checking, for bug compatibility with | ||||||
|  | @ -139,15 +140,23 @@ different from the user's real uid. | ||||||
| .B \-core | .B \-core | ||||||
| causes the server to generate a core dump on fatal errors. | causes the server to generate a core dump on fatal errors. | ||||||
| .TP 8 | .TP 8 | ||||||
|  | .B \-deferglyphs \fIwhichfonts\fP | ||||||
|  | specifies the types of fonts for which the server should attempt to use | ||||||
|  | deferred glyph loading.  \fIwhichfonts\fP can be all (all fonts), | ||||||
|  | none (no fonts), or 16 (16 bit fonts only). | ||||||
|  | .TP 8 | ||||||
| .B \-dpi \fIresolution\fP | .B \-dpi \fIresolution\fP | ||||||
| sets the resolution for all screens, in dots per inch. | sets the resolution for all screens, in dots per inch. | ||||||
| To be used when the server cannot determine the screen size(s) from the | To be used when the server cannot determine the screen size(s) from the | ||||||
| hardware. | hardware. | ||||||
| .TP 8 | .TP 8 | ||||||
| .B \-deferglyphs \fIwhichfonts\fP | .B dpms | ||||||
| specifies the types of fonts for which the server should attempt to use | enables DPMS (display power management services), where supported.  The | ||||||
| deferred glyph loading.  \fIwhichfonts\fP can be all (all fonts), | default state is platform and configuration specific. | ||||||
| none (no fonts), or 16 (16 bit fonts only). | .TP 8 | ||||||
|  | .B \-dpms | ||||||
|  | disables DPMS (display power management services).  The default state | ||||||
|  | is platform and configuration specific. | ||||||
| .TP 8 | .TP 8 | ||||||
| .B \-f \fIvolume\fP | .B \-f \fIvolume\fP | ||||||
| sets feep (bell) volume (allowable range: 0-100). | sets feep (bell) volume (allowable range: 0-100). | ||||||
|  | @ -161,6 +170,8 @@ sets the default font. | ||||||
| .B \-fp \fIfontPath\fP | .B \-fp \fIfontPath\fP | ||||||
| sets the search path for fonts.  This path is a comma separated list | sets the search path for fonts.  This path is a comma separated list | ||||||
| of directories which the X server searches for font databases. | of directories which the X server searches for font databases. | ||||||
|  | See the FONTS section of this manual page for more information and the default | ||||||
|  | list. | ||||||
| .TP 8 | .TP 8 | ||||||
| .B \-help | .B \-help | ||||||
| prints a usage message. | prints a usage message. | ||||||
|  | @ -168,6 +179,11 @@ prints a usage message. | ||||||
| .B \-I | .B \-I | ||||||
| causes all remaining command line arguments to be ignored. | causes all remaining command line arguments to be ignored. | ||||||
| .TP 8 | .TP 8 | ||||||
|  | .B \-maxbigreqsize \fIsize\fP | ||||||
|  | sets the maxmium big request to | ||||||
|  | .I size | ||||||
|  | MB. | ||||||
|  | .TP 8 | ||||||
| .B \-nolisten \fItrans-type\fP | .B \-nolisten \fItrans-type\fP | ||||||
| disables a transport type.  For example, TCP/IP connections can be disabled | disables a transport type.  For example, TCP/IP connections can be disabled | ||||||
| with | with | ||||||
|  | @ -187,7 +203,11 @@ sets screen-saver pattern cycle time in minutes. | ||||||
| .B \-pn | .B \-pn | ||||||
| permits the server to continue running if it fails to establish all of | permits the server to continue running if it fails to establish all of | ||||||
| its well-known sockets (connection points for clients), but | its well-known sockets (connection points for clients), but | ||||||
| establishes at least one. | establishes at least one.  This option is set by default. | ||||||
|  | .TP 8 | ||||||
|  | .B \-nopn | ||||||
|  | causes the server to exit if it fails to establish all of its well-known | ||||||
|  | sockets (connection points for clients). | ||||||
| .TP 8 | .TP 8 | ||||||
| .B \-r | .B \-r | ||||||
| turns off auto-repeat. | turns off auto-repeat. | ||||||
|  | @ -243,7 +263,7 @@ This is a no-op for most implementations. | ||||||
| .TP 8 | .TP 8 | ||||||
| .B [+-]xinerama | .B [+-]xinerama | ||||||
| enables(+) or disables(-) the XINERAMA extension.  The default state is | enables(+) or disables(-) the XINERAMA extension.  The default state is | ||||||
| disabled. | platform and configuration specific. | ||||||
| .SH SERVER DEPENDENT OPTIONS | .SH SERVER DEPENDENT OPTIONS | ||||||
| Some X servers accept the following options: | Some X servers accept the following options: | ||||||
| .TP 8 | .TP 8 | ||||||
|  | @ -288,6 +308,14 @@ use a gray map of 13 color cells for the X render extension. | ||||||
| .I color | .I color | ||||||
| use a color cube of at most 4*4*4 colors (that is 64 color cells). | use a color cube of at most 4*4*4 colors (that is 64 color cells). | ||||||
| .RE | .RE | ||||||
|  | .TP 8 | ||||||
|  | .B \-dumbSched | ||||||
|  | disables smart scheduling on platforms that support the smart scheduler. | ||||||
|  | .TP | ||||||
|  | .B \-schedInterval \fIinterval\fP | ||||||
|  | sets the smart scheduler's scheduling interval to | ||||||
|  | .I interval | ||||||
|  | milliseconds. | ||||||
| .SH XDMCP OPTIONS | .SH XDMCP OPTIONS | ||||||
| X servers that support XDMCP have the following options. | X servers that support XDMCP have the following options. | ||||||
| See the \fIX Display Manager Control Protocol\fP specification for more | See the \fIX Display Manager Control Protocol\fP specification for more | ||||||
|  | @ -300,6 +328,7 @@ enables XDMCP and sends Query packets to the specified | ||||||
| .B \-broadcast | .B \-broadcast | ||||||
| enable XDMCP and broadcasts BroadcastQuery packets to the network.  The | enable XDMCP and broadcasts BroadcastQuery packets to the network.  The | ||||||
| first responding display manager will be chosen for the session. | first responding display manager will be chosen for the session. | ||||||
|  | .TP 8 | ||||||
| .B \-multicast [\fIaddress\fP [\fIhop count\fP]] | .B \-multicast [\fIaddress\fP [\fIhop count\fP]] | ||||||
| Enable XDMCP and multicast BroadcastQuery packets to the  network.    | Enable XDMCP and multicast BroadcastQuery packets to the  network.    | ||||||
| The first responding display manager is chosen for the session.  If an  | The first responding display manager is chosen for the session.  If an  | ||||||
|  | @ -316,8 +345,8 @@ enables XDMCP and send IndirectQuery packets to the specified | ||||||
| .TP 8 | .TP 8 | ||||||
| .B \-port \fIport-number\fP | .B \-port \fIport-number\fP | ||||||
| uses the specified \fIport-number\fP for XDMCP packets, instead of the | uses the specified \fIport-number\fP for XDMCP packets, instead of the | ||||||
| default.  This option must be specified before any \-query, \-broadcast or | default.  This option must be specified before any \-query, \-broadcast, | ||||||
| \-indirect options. | \-multicast, or \-indirect options. | ||||||
| .TP 8 | .TP 8 | ||||||
| .B \-from \fIlocal-address\fP | .B \-from \fIlocal-address\fP | ||||||
| specifies the local address to connect from (useful if the connecting host | specifies the local address to connect from (useful if the connecting host | ||||||
|  | @ -344,7 +373,10 @@ Yet another XDMCP specific value, this one allows the display manager to | ||||||
| identify each display so that it can locate the shared key. | identify each display so that it can locate the shared key. | ||||||
| .SH XKEYBOARD OPTIONS | .SH XKEYBOARD OPTIONS | ||||||
| X servers that support the XKEYBOARD (a.k.a. \*qXKB\*q) extension accept the | X servers that support the XKEYBOARD (a.k.a. \*qXKB\*q) extension accept the | ||||||
| following options: | following options.  All layout files specified on the command line must be  | ||||||
|  | located in the XKB base directory or a subdirectory, and specified as the | ||||||
|  | relative path from the XKB base directory.  The default XKB base directory is | ||||||
|  | .IR __projectroot__/lib/X11/xkb . | ||||||
| .TP 8 | .TP 8 | ||||||
| .B [+-]kb | .B [+-]kb | ||||||
| enables(+) or disables(-) the XKEYBOARD extension. | enables(+) or disables(-) the XKEYBOARD extension. | ||||||
|  | @ -599,13 +631,14 @@ property Woo-Hoo	OhBoy = "*son"	ad | ||||||
| The X server supports client connections via a platform-dependent subset of | The X server supports client connections via a platform-dependent subset of | ||||||
| the following transport types: TCP\/IP, Unix Domain sockets, DECnet, | the following transport types: TCP\/IP, Unix Domain sockets, DECnet, | ||||||
| and several varieties of SVR4 local connections.  See the DISPLAY | and several varieties of SVR4 local connections.  See the DISPLAY | ||||||
| NAMES section of the \fIX(__miscmansuffix__)\fP manual page to learn how to | NAMES section of the \fIX\fP(__miscmansuffix__) manual page to learn how to | ||||||
| specify which transport type clients should try to use. | specify which transport type clients should try to use. | ||||||
| .SH GRANTING ACCESS | .SH GRANTING ACCESS | ||||||
| The X server implements a platform-dependent subset of the following | The X server implements a platform-dependent subset of the following | ||||||
| authorization protocols: MIT-MAGIC-COOKIE-1, XDM-AUTHORIZATION-1, | authorization protocols: MIT-MAGIC-COOKIE-1, XDM-AUTHORIZATION-1, | ||||||
| SUN-DES-1, and MIT-KERBEROS-5.  See the \fIXsecurity\fP(__miscmansuffix__) | XDM-AUTHORIZATION-2, SUN-DES-1, and MIT-KERBEROS-5.  See the  | ||||||
| manual page for information on the operation of these protocols. | \fIXsecurity\fP(__miscmansuffix__) manual page for information on the  | ||||||
|  | operation of these protocols. | ||||||
| .PP | .PP | ||||||
| Authorization data required by the above protocols is passed to the | Authorization data required by the above protocols is passed to the | ||||||
| server in a private file named with the \fB\-auth\fP command line | server in a private file named with the \fB\-auth\fP command line | ||||||
|  | @ -626,15 +659,17 @@ this list initially consists of the host on which the server is running as | ||||||
| well as any machines listed in the file \fI/etc/X\fBn\fI.hosts\fR, where | well as any machines listed in the file \fI/etc/X\fBn\fI.hosts\fR, where | ||||||
| \fBn\fP is the display number of the server.  Each line of the file should | \fBn\fP is the display number of the server.  Each line of the file should | ||||||
| contain either an Internet hostname (e.g. expo.lcs.mit.edu) or a DECnet | contain either an Internet hostname (e.g. expo.lcs.mit.edu) or a DECnet | ||||||
| hostname in double colon format (e.g. hydra::).  There should be no leading | hostname in double colon format (e.g. hydra::) or a complete name in the format | ||||||
| or trailing spaces on any lines.  For example: | \fIfamily\fP:\fIname\fP as described in the \fIxhost\fP(1) manual page. | ||||||
|  | There should be no leading or trailing spaces on any lines.  For example: | ||||||
| .sp | .sp | ||||||
| .in +8 | .in +8 | ||||||
| .nf | .nf | ||||||
| joesworkstation | joesworkstation | ||||||
| corporate.company.com | corporate.company.com | ||||||
| star:: | star:: | ||||||
| bigcpu:: | inet:bigcpu | ||||||
|  | local: | ||||||
| .fi | .fi | ||||||
| .in -8 | .in -8 | ||||||
| .PP | .PP | ||||||
|  | @ -691,11 +726,7 @@ the X server uses when trying to open a font is controlled | ||||||
| by the \fIfont path\fP.   | by the \fIfont path\fP.   | ||||||
| .LP | .LP | ||||||
| The default font path is | The default font path is | ||||||
| __projectroot__/lib/X11/fonts/misc/, | __default_font_path__ . | ||||||
| __projectroot__/lib/X11/fonts/Speedo/, |  | ||||||
| __projectroot__/lib/X11/fonts/Type1/, |  | ||||||
| __projectroot__/lib/X11/fonts/75dpi/, |  | ||||||
| __projectroot__/lib/X11/fonts/100dpi/" . |  | ||||||
| .LP | .LP | ||||||
| The font path can be set with the \fB\-fp\fP option or by \fIxset\fP(1) | The font path can be set with the \fB\-fp\fP option or by \fIxset\fP(1) | ||||||
| after the server has started. | after the server has started. | ||||||
|  | @ -707,7 +738,7 @@ Initial access control list for display number \fBn\fP | ||||||
| .IR __projectroot__/lib/X11/fonts/misc , __projectroot__/lib/X11/fonts/75dpi , __projectroot__/lib/X11/fonts/100dpi | .IR __projectroot__/lib/X11/fonts/misc , __projectroot__/lib/X11/fonts/75dpi , __projectroot__/lib/X11/fonts/100dpi | ||||||
| Bitmap font directories | Bitmap font directories | ||||||
| .TP 30 | .TP 30 | ||||||
| .IR __projectroot__/lib/X11/fonts/Speedo , __projectroot__/lib/X11/fonts/Type1 | .IR __projectroot__/lib/X11/fonts/TTF , __projectroot__/lib/X11/fonts/Speedo , __projectroot__/lib/X11/fonts/Type1 | ||||||
| Outline font directories | Outline font directories | ||||||
| .TP 30 | .TP 30 | ||||||
| .I __projectroot__/lib/X11/rgb.txt | .I __projectroot__/lib/X11/rgb.txt | ||||||
|  | @ -720,7 +751,7 @@ Unix domain socket for display number \fBn\fP | ||||||
| Kerberos 5 replay cache for display number \fBn\fP | Kerberos 5 replay cache for display number \fBn\fP | ||||||
| .TP 30 | .TP 30 | ||||||
| .I /usr/adm/X\fBn\fPmsgs | .I /usr/adm/X\fBn\fPmsgs | ||||||
| Error log file for display number \fBn\fP if run from \fIinit\fP(8) | Error log file for display number \fBn\fP if run from \fIinit\fP(__adminmansuffix__) | ||||||
| .TP 30 | .TP 30 | ||||||
| .I __projectroot__/lib/X11/xdm/xdm-errors | .I __projectroot__/lib/X11/xdm/xdm-errors | ||||||
| Default error log file if the server is run from \fIxdm\fP(1) | Default error log file if the server is run from \fIxdm\fP(1) | ||||||
|  | @ -732,15 +763,15 @@ Protocols: | ||||||
| .I "The X Font Service Protocol," | .I "The X Font Service Protocol," | ||||||
| .I "X Display Manager Control Protocol" | .I "X Display Manager Control Protocol" | ||||||
| .PP | .PP | ||||||
| Fonts: \fIbdftopcf\fP(1), \fImkfontdir\fP(1), \fIxfs\fP(1),  | Fonts: \fIbdftopcf\fP(1), \fImkfontdir\fP(1), \fImkfontscale\fP(1), | ||||||
| \fIxlsfonts\fP(1), \fIxfontsel\fP(1), \fIxfd\fP(1), | \fIxfs\fP(1), \fIxlsfonts\fP(1), \fIxfontsel\fP(1), \fIxfd\fP(1), | ||||||
| .I "X Logical Font Description Conventions" | .I "X Logical Font Description Conventions" | ||||||
| .PP | .PP | ||||||
| Security: \fIXsecurity\fP(__miscmansuffix__), \fIxauth\fP(1), \fIXau\fP(1),  | Security: \fIXsecurity\fP(__miscmansuffix__), \fIxauth\fP(1), \fIXau\fP(1),  | ||||||
| \fIxdm\fP(1), \fIxhost\fP(1), \fIxfwp\fP(1) | \fIxdm\fP(1), \fIxhost\fP(1), \fIxfwp\fP(1), | ||||||
| .I "Security Extension Specification" | .I "Security Extension Specification" | ||||||
| .PP | .PP | ||||||
| Starting the server: \fIxdm(1)\fP, \fIxinit\fP(1) | Starting the server: \fIxdm\fP(1), \fIxinit\fP(1) | ||||||
| .PP | .PP | ||||||
| Controlling the server once started: \fIxset\fP(1), \fIxsetroot\fP(1), | Controlling the server once started: \fIxset\fP(1), \fIxsetroot\fP(1), | ||||||
| \fIxhost\fP(1) | \fIxhost\fP(1) | ||||||
|  |  | ||||||
							
								
								
									
										54
									
								
								fb/fbcopy.c
								
								
								
								
							
							
						
						
									
										54
									
								
								fb/fbcopy.c
								
								
								
								
							|  | @ -21,7 +21,7 @@ | ||||||
|  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR |  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | ||||||
|  * PERFORMANCE OF THIS SOFTWARE. |  * PERFORMANCE OF THIS SOFTWARE. | ||||||
|  */ |  */ | ||||||
| /* $XFree86: xc/programs/Xserver/fb/fbcopy.c,v 1.13 2003/11/10 18:21:47 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/fb/fbcopy.c,v 1.14 2003/12/28 17:22:25 alanh Exp $ */ | ||||||
| 
 | 
 | ||||||
| #include "fb.h" | #include "fb.h" | ||||||
| #ifdef IN_MODULE | #ifdef IN_MODULE | ||||||
|  | @ -398,7 +398,10 @@ fbDoCopy (DrawablePtr	pSrcDrawable, | ||||||
|     int		dx; |     int		dx; | ||||||
|     int		dy; |     int		dy; | ||||||
|     int		numRects; |     int		numRects; | ||||||
|     BoxRec	box; |     int         box_x1; | ||||||
|  |     int         box_y1; | ||||||
|  |     int         box_x2; | ||||||
|  |     int         box_y2; | ||||||
|     Bool	fastSrc = FALSE;    /* for fast clipping with pixmap source */ |     Bool	fastSrc = FALSE;    /* for fast clipping with pixmap source */ | ||||||
|     Bool	fastDst = FALSE;    /* for fast clipping with one rect dest */ |     Bool	fastDst = FALSE;    /* for fast clipping with one rect dest */ | ||||||
|     Bool	fastExpose = FALSE; /* for fast exposures with pixmap source */ |     Bool	fastExpose = FALSE; /* for fast exposures with pixmap source */ | ||||||
|  | @ -466,10 +469,10 @@ fbDoCopy (DrawablePtr	pSrcDrawable, | ||||||
|     xOut += pDstDrawable->x; |     xOut += pDstDrawable->x; | ||||||
|     yOut += pDstDrawable->y; |     yOut += pDstDrawable->y; | ||||||
| 
 | 
 | ||||||
|     box.x1 = xIn; |     box_x1 = xIn; | ||||||
|     box.y1 = yIn; |     box_y1 = yIn; | ||||||
|     box.x2 = xIn + widthSrc; |     box_x2 = xIn + widthSrc; | ||||||
|     box.y2 = yIn + heightSrc; |     box_y2 = yIn + heightSrc; | ||||||
| 
 | 
 | ||||||
|     dx = xIn - xOut; |     dx = xIn - xOut; | ||||||
|     dy = yIn - yOut; |     dy = yIn - yOut; | ||||||
|  | @ -484,32 +487,32 @@ fbDoCopy (DrawablePtr	pSrcDrawable, | ||||||
| 	 * clip the source; if regions extend beyond the source size, | 	 * clip the source; if regions extend beyond the source size, | ||||||
|  	 * make sure exposure events get sent |  	 * make sure exposure events get sent | ||||||
| 	 */ | 	 */ | ||||||
| 	if (box.x1 < pSrcDrawable->x) | 	if (box_x1 < pSrcDrawable->x) | ||||||
| 	{ | 	{ | ||||||
| 	    box.x1 = pSrcDrawable->x; | 	    box_x1 = pSrcDrawable->x; | ||||||
| 	    fastExpose = FALSE; | 	    fastExpose = FALSE; | ||||||
| 	} | 	} | ||||||
| 	if (box.y1 < pSrcDrawable->y) | 	if (box_y1 < pSrcDrawable->y) | ||||||
| 	{ | 	{ | ||||||
| 	    box.y1 = pSrcDrawable->y; | 	    box_y1 = pSrcDrawable->y; | ||||||
| 	    fastExpose = FALSE; | 	    fastExpose = FALSE; | ||||||
| 	} | 	} | ||||||
| 	if (box.x2 > pSrcDrawable->x + (int) pSrcDrawable->width) | 	if (box_x2 > pSrcDrawable->x + (int) pSrcDrawable->width) | ||||||
| 	{ | 	{ | ||||||
| 	    box.x2 = pSrcDrawable->x + (int) pSrcDrawable->width; | 	    box_x2 = pSrcDrawable->x + (int) pSrcDrawable->width; | ||||||
| 	    fastExpose = FALSE; | 	    fastExpose = FALSE; | ||||||
| 	} | 	} | ||||||
| 	if (box.y2 > pSrcDrawable->y + (int) pSrcDrawable->height) | 	if (box_y2 > pSrcDrawable->y + (int) pSrcDrawable->height) | ||||||
| 	{ | 	{ | ||||||
| 	    box.y2 = pSrcDrawable->y + (int) pSrcDrawable->height; | 	    box_y2 = pSrcDrawable->y + (int) pSrcDrawable->height; | ||||||
| 	    fastExpose = FALSE; | 	    fastExpose = FALSE; | ||||||
| 	} | 	} | ||||||
| 	 | 	 | ||||||
| 	/* Translate and clip the dst to the destination composite clip */ | 	/* Translate and clip the dst to the destination composite clip */ | ||||||
|         box.x1 -= dx; |         box_x1 -= dx; | ||||||
|         box.x2 -= dx; |         box_x2 -= dx; | ||||||
|         box.y1 -= dy; |         box_y1 -= dy; | ||||||
|         box.y2 -= dy; |         box_y2 -= dy; | ||||||
| 
 | 
 | ||||||
| 	/* If the destination composite clip is one rectangle we can
 | 	/* If the destination composite clip is one rectangle we can
 | ||||||
| 	   do the clip directly.  Otherwise we have to create a full | 	   do the clip directly.  Otherwise we have to create a full | ||||||
|  | @ -520,21 +523,26 @@ fbDoCopy (DrawablePtr	pSrcDrawable, | ||||||
|         { |         { | ||||||
| 	    BoxPtr pBox = REGION_RECTS(cclip); | 	    BoxPtr pBox = REGION_RECTS(cclip); | ||||||
| 
 | 
 | ||||||
| 	    if (box.x1 < pBox->x1) box.x1 = pBox->x1; | 	    if (box_x1 < pBox->x1) box_x1 = pBox->x1; | ||||||
| 	    if (box.x2 > pBox->x2) box.x2 = pBox->x2; | 	    if (box_x2 > pBox->x2) box_x2 = pBox->x2; | ||||||
| 	    if (box.y1 < pBox->y1) box.y1 = pBox->y1; | 	    if (box_y1 < pBox->y1) box_y1 = pBox->y1; | ||||||
| 	    if (box.y2 > pBox->y2) box.y2 = pBox->y2; | 	    if (box_y2 > pBox->y2) box_y2 = pBox->y2; | ||||||
| 	    fastDst = TRUE; | 	    fastDst = TRUE; | ||||||
| 	} | 	} | ||||||
|     } |     } | ||||||
|      |      | ||||||
|     /* Check to see if the region is empty */ |     /* Check to see if the region is empty */ | ||||||
|     if (box.x1 >= box.x2 || box.y1 >= box.y2) |     if (box_x1 >= box_x2 || box_y1 >= box_y2) | ||||||
|     { |     { | ||||||
| 	REGION_NULL(pGC->pScreen, &rgnDst); | 	REGION_NULL(pGC->pScreen, &rgnDst); | ||||||
|     } |     } | ||||||
|     else |     else | ||||||
|     { |     { | ||||||
|  |         BoxRec	box; | ||||||
|  | 	box.x1 = box_x1; | ||||||
|  | 	box.y1 = box_y1; | ||||||
|  | 	box.x2 = box_x2; | ||||||
|  | 	box.y2 = box_y2; | ||||||
| 	REGION_INIT(pGC->pScreen, &rgnDst, &box, 1); | 	REGION_INIT(pGC->pScreen, &rgnDst, &box, 1); | ||||||
|     } |     } | ||||||
|      |      | ||||||
|  |  | ||||||
										
											Binary file not shown.
										
									
								
							|  | @ -32,9 +32,7 @@ | ||||||
|    promote the sale, use or other dealings in this Software without |    promote the sale, use or other dealings in this Software without | ||||||
|    prior written authorization. |    prior written authorization. | ||||||
| */ | */ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/darwin/quartz/quartzKeyboard.c,v 1.1 2003/11/01 08:13:08 torrey Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/darwin/quartz/quartzKeyboard.c,v 1.2 2004/01/19 01:22:47 torrey Exp $ */ | ||||||
| 
 |  | ||||||
| #ifdef HAS_KL_API |  | ||||||
| 
 | 
 | ||||||
| #include "quartzCommon.h" | #include "quartzCommon.h" | ||||||
| 
 | 
 | ||||||
|  | @ -45,6 +43,8 @@ | ||||||
| #include "keysym.h" | #include "keysym.h" | ||||||
| #include "keysym2ucs.h" | #include "keysym2ucs.h" | ||||||
| 
 | 
 | ||||||
|  | #ifdef HAS_KL_API | ||||||
|  | 
 | ||||||
| #define HACK_MISSING 1 | #define HACK_MISSING 1 | ||||||
| #define HACK_KEYPAD 1 | #define HACK_KEYPAD 1 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| /* $XdotOrg: xc/programs/Xserver/hw/xfree86/common/compiler.h,v 1.1.4.3 2003/12/20 00:28:26 kaleb Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/common/compiler.h,v 3.106 2004/02/02 03:55:28 dawes Exp $ */ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/common/compiler.h,v 3.105 2003/12/18 21:56:37 dawes Exp $ */ |  | ||||||
| /*
 | /*
 | ||||||
|  * Copyright 1990,91 by Thomas Roell, Dinkelscherben, Germany. |  * Copyright 1990,91 by Thomas Roell, Dinkelscherben, Germany. | ||||||
|  * |  * | ||||||
|  | @ -59,6 +58,10 @@ | ||||||
| 
 | 
 | ||||||
| # define _COMPILER_H | # define _COMPILER_H | ||||||
| 
 | 
 | ||||||
|  | #if defined(__SUNPRO_C) | ||||||
|  | # define DO_PROTOTYPES | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
| /* Allow drivers to use the GCC-supported __inline__ and/or __inline. */ | /* Allow drivers to use the GCC-supported __inline__ and/or __inline. */ | ||||||
| # ifndef __inline__ | # ifndef __inline__ | ||||||
| #  if defined(__GNUC__) | #  if defined(__GNUC__) | ||||||
|  | @ -1301,6 +1304,7 @@ inl(unsigned short port) | ||||||
| #    define mem_barrier()   /* NOP */ | #    define mem_barrier()   /* NOP */ | ||||||
| #    define write_mem_barrier()   /* NOP */ | #    define write_mem_barrier()   /* NOP */ | ||||||
| 
 | 
 | ||||||
|  | #    if !defined(__SUNPRO_C) | ||||||
| #    if !defined(FAKEIT) && !defined(__mc68000__) && !defined(__arm__) && !defined(__sh__) && !defined(__hppa__) | #    if !defined(FAKEIT) && !defined(__mc68000__) && !defined(__arm__) && !defined(__sh__) && !defined(__hppa__) | ||||||
| #     ifdef GCCUSESGAS | #     ifdef GCCUSESGAS | ||||||
| 
 | 
 | ||||||
|  | @ -1446,6 +1450,7 @@ inl(unsigned short port) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| #    endif /* FAKEIT */ | #    endif /* FAKEIT */ | ||||||
|  | #    endif /* __SUNPRO_C */ | ||||||
| 
 | 
 | ||||||
| #   endif /* ix86 */ | #   endif /* ix86 */ | ||||||
| 
 | 
 | ||||||
|  | @ -1541,8 +1546,8 @@ extern void outl(unsigned int a, unsigned int l); | ||||||
| #if 0 | #if 0 | ||||||
| #     include <sys/types.h> | #     include <sys/types.h> | ||||||
| #endif | #endif | ||||||
| #     if !defined(__HIGHC__) && !defined(__SUNPRO_C) | #     ifndef __HIGHC__ | ||||||
| #      ifndef __USLC__ | #      if !defined(__USLC__) && !defined(__SUNPRO_C) | ||||||
| #       define __USLC__ | #       define __USLC__ | ||||||
| #      endif | #      endif | ||||||
| #     endif | #     endif | ||||||
|  | @ -1561,8 +1566,8 @@ extern void outl(unsigned int a, unsigned int l); | ||||||
| #       include <sys/types.h> | #       include <sys/types.h> | ||||||
| #      endif /* IN_MODULE */ | #      endif /* IN_MODULE */ | ||||||
| #     endif /* USL */ | #     endif /* USL */ | ||||||
| #     ifndef sgi | #     if !defined(sgi) && !defined(__SUNPRO_C) | ||||||
| #     include <sys/inline.h> | #      include <sys/inline.h> | ||||||
| #     endif | #     endif | ||||||
| #    else | #    else | ||||||
| #     include "scoasm.h" | #     include "scoasm.h" | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86.h,v 3.172 2003/09/24 02:43:16 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86.h,v 3.173 2004/01/27 01:31:44 dawes Exp $ */ | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * Copyright (c) 1997-2003 by The XFree86 Project, Inc. |  * Copyright (c) 1997-2003 by The XFree86 Project, Inc. | ||||||
|  | @ -57,7 +57,6 @@ extern int xf86PixmapIndex; | ||||||
| extern Bool xf86ResAccessEnter; | extern Bool xf86ResAccessEnter; | ||||||
| extern ScrnInfoPtr *xf86Screens;	/* List of pointers to ScrnInfoRecs */ | extern ScrnInfoPtr *xf86Screens;	/* List of pointers to ScrnInfoRecs */ | ||||||
| extern const unsigned char byte_reversed[256]; | extern const unsigned char byte_reversed[256]; | ||||||
| extern PropertyPtr *xf86RegisteredPropertiesTable; |  | ||||||
| extern ScrnInfoPtr xf86CurrentScreen; | extern ScrnInfoPtr xf86CurrentScreen; | ||||||
| extern Bool pciSlotClaimed; | extern Bool pciSlotClaimed; | ||||||
| extern Bool isaSlotClaimed; | extern Bool isaSlotClaimed; | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86Bus.c,v 1.79 2003/11/03 05:11:01 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86Bus.c,v 1.80 2004/02/05 18:24:59 eich Exp $ */ | ||||||
| /* $XdotOrg$ */ |  | ||||||
| /*
 | /*
 | ||||||
|  * Copyright (c) 1997-2003 by The XFree86 Project, Inc. |  * Copyright (c) 1997-2003 by The XFree86 Project, Inc. | ||||||
|  * |  * | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86Helper.c,v 1.135 2003/10/08 14:58:27 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86Helper.c,v 1.136 2004/01/27 01:31:45 dawes Exp $ */ | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * Copyright (c) 1997-2003 by The XFree86 Project, Inc. |  * Copyright (c) 1997-2003 by The XFree86 Project, Inc. | ||||||
|  | @ -2888,11 +2888,12 @@ int | ||||||
| xf86RegisterRootWindowProperty(int ScrnIndex, Atom property, Atom type, | xf86RegisterRootWindowProperty(int ScrnIndex, Atom property, Atom type, | ||||||
| 			       int format, unsigned long len, pointer value ) | 			       int format, unsigned long len, pointer value ) | ||||||
| { | { | ||||||
|     PropertyPtr pNewProp, pRegProp; |     RootWinPropPtr pNewProp = NULL, pRegProp; | ||||||
|     int i; |     int i; | ||||||
|  |     Bool existing = FALSE; | ||||||
| 
 | 
 | ||||||
| #ifdef DEBUG | #ifdef DEBUG | ||||||
|     ErrorF("xf86RegisterRootWindowProperty(%d, %d, %d, %d, %d, %p)\n", |     ErrorF("xf86RegisterRootWindowProperty(%d, %ld, %ld, %d, %ld, %p)\n", | ||||||
| 	   ScrnIndex, property, type, format, len, value); | 	   ScrnIndex, property, type, format, len, value); | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  | @ -2900,19 +2901,35 @@ xf86RegisterRootWindowProperty(int ScrnIndex, Atom property, Atom type, | ||||||
|       return(BadMatch); |       return(BadMatch); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     if ( (pNewProp = (PropertyPtr)xalloc(sizeof(PropertyRec)))==NULL ) { |     if (xf86RegisteredPropertiesTable && | ||||||
|       return(BadAlloc); | 	xf86RegisteredPropertiesTable[ScrnIndex]) { | ||||||
|  |       for (pNewProp = xf86RegisteredPropertiesTable[ScrnIndex]; | ||||||
|  | 	   pNewProp; pNewProp = pNewProp->next) { | ||||||
|  | 	if (strcmp(pNewProp->name, NameForAtom(property)) == 0) | ||||||
|  | 	  break; | ||||||
|  |       } | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     pNewProp->propertyName = property; |     if (!pNewProp) { | ||||||
|  |       if ((pNewProp = (RootWinPropPtr)xalloc(sizeof(RootWinProp))) == NULL) { | ||||||
|  | 	return(BadAlloc); | ||||||
|  |       } | ||||||
|  |       /*
 | ||||||
|  |        * We will put this property at the end of the list so that | ||||||
|  |        * the changes are made in the order they were requested. | ||||||
|  |        */ | ||||||
|  |       pNewProp->next = NULL; | ||||||
|  |     } else { | ||||||
|  |       if (pNewProp->name) | ||||||
|  | 	xfree(pNewProp->name); | ||||||
|  |       existing = TRUE; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     pNewProp->name = xnfstrdup(NameForAtom(property)); | ||||||
|     pNewProp->type = type; |     pNewProp->type = type; | ||||||
|     pNewProp->format = format; |     pNewProp->format = format; | ||||||
|     pNewProp->size = len; |     pNewProp->size = len; | ||||||
|     pNewProp->data = value; |     pNewProp->data = value; | ||||||
|     /* We will put this property at the end of the list so that
 |  | ||||||
|      * the changes are made in the order they were requested. |  | ||||||
|      */ |  | ||||||
|     pNewProp->next = NULL; |  | ||||||
|   |   | ||||||
| #ifdef DEBUG | #ifdef DEBUG | ||||||
|     ErrorF("new property filled\n"); |     ErrorF("new property filled\n"); | ||||||
|  | @ -2923,7 +2940,7 @@ xf86RegisterRootWindowProperty(int ScrnIndex, Atom property, Atom type, | ||||||
|       ErrorF("creating xf86RegisteredPropertiesTable[] size %d\n", |       ErrorF("creating xf86RegisteredPropertiesTable[] size %d\n", | ||||||
| 	     xf86NumScreens); | 	     xf86NumScreens); | ||||||
| #endif | #endif | ||||||
|       if ( NULL==(xf86RegisteredPropertiesTable=(PropertyPtr*)xnfcalloc(sizeof(PropertyPtr),xf86NumScreens) )) { |       if ( NULL==(xf86RegisteredPropertiesTable=(RootWinPropPtr*)xnfcalloc(sizeof(RootWinProp),xf86NumScreens) )) { | ||||||
| 	return(BadAlloc); | 	return(BadAlloc); | ||||||
|       } |       } | ||||||
|       for (i=0; i<xf86NumScreens; i++) { |       for (i=0; i<xf86NumScreens; i++) { | ||||||
|  | @ -2933,22 +2950,24 @@ xf86RegisterRootWindowProperty(int ScrnIndex, Atom property, Atom type, | ||||||
| 
 | 
 | ||||||
| #ifdef DEBUG | #ifdef DEBUG | ||||||
|     ErrorF("xf86RegisteredPropertiesTable %p\n", |     ErrorF("xf86RegisteredPropertiesTable %p\n", | ||||||
| 	   xf86RegisteredPropertiesTable); | 	   (void *)xf86RegisteredPropertiesTable); | ||||||
|     ErrorF("xf86RegisteredPropertiesTable[%d] %p\n", |     ErrorF("xf86RegisteredPropertiesTable[%d] %p\n", | ||||||
| 	   ScrnIndex, xf86RegisteredPropertiesTable[ScrnIndex]); | 	   ScrnIndex, (void *)xf86RegisteredPropertiesTable[ScrnIndex]); | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|     if ( xf86RegisteredPropertiesTable[ScrnIndex] == NULL) { |     if (!existing) { | ||||||
|       xf86RegisteredPropertiesTable[ScrnIndex] = pNewProp; |       if ( xf86RegisteredPropertiesTable[ScrnIndex] == NULL) { | ||||||
|     } else { | 	xf86RegisteredPropertiesTable[ScrnIndex] = pNewProp; | ||||||
|       pRegProp = xf86RegisteredPropertiesTable[ScrnIndex]; |       } else { | ||||||
|       while (pRegProp->next != NULL) { | 	pRegProp = xf86RegisteredPropertiesTable[ScrnIndex]; | ||||||
|  | 	while (pRegProp->next != NULL) { | ||||||
| #ifdef DEBUG | #ifdef DEBUG | ||||||
| 	ErrorF("- next %p\n", pRegProp); | 	  ErrorF("- next %p\n", (void *)pRegProp); | ||||||
| #endif | #endif | ||||||
| 	pRegProp = pRegProp->next; | 	  pRegProp = pRegProp->next; | ||||||
|  |         } | ||||||
|  | 	pRegProp->next = pNewProp; | ||||||
|       } |       } | ||||||
|       pRegProp->next = pNewProp; |  | ||||||
|     } |     } | ||||||
| #ifdef DEBUG | #ifdef DEBUG | ||||||
|     ErrorF("xf86RegisterRootWindowProperty succeeded\n"); |     ErrorF("xf86RegisterRootWindowProperty succeeded\n"); | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86Init.c,v 3.211 2003/11/01 00:47:01 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86Init.c,v 3.212 2004/01/27 01:31:45 dawes Exp $ */ | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * Loosely based on code bearing the following copyright: |  * Loosely based on code bearing the following copyright: | ||||||
|  | @ -155,7 +155,7 @@ xf86CreateRootWindow(WindowPtr pWin) | ||||||
|   int ret = TRUE; |   int ret = TRUE; | ||||||
|   int err = Success; |   int err = Success; | ||||||
|   ScreenPtr pScreen = pWin->drawable.pScreen; |   ScreenPtr pScreen = pWin->drawable.pScreen; | ||||||
|   PropertyPtr pRegProp, pOldRegProp; |   RootWinPropPtr pProp; | ||||||
|   CreateWindowProcPtr CreateWindow = |   CreateWindowProcPtr CreateWindow = | ||||||
|     (CreateWindowProcPtr)(pScreen->devPrivates[xf86CreateRootWindowIndex].ptr); |     (CreateWindowProcPtr)(pScreen->devPrivates[xf86CreateRootWindowIndex].ptr); | ||||||
| 
 | 
 | ||||||
|  | @ -181,25 +181,19 @@ xf86CreateRootWindow(WindowPtr pWin) | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   /* Now do our stuff */ |   /* Now do our stuff */ | ||||||
| 
 |  | ||||||
|   if (xf86RegisteredPropertiesTable != NULL) { |   if (xf86RegisteredPropertiesTable != NULL) { | ||||||
|     if (pWin->parent == NULL && xf86RegisteredPropertiesTable != NULL) { |     if (pWin->parent == NULL && xf86RegisteredPropertiesTable != NULL) { | ||||||
|       for (pRegProp = xf86RegisteredPropertiesTable[pScreen->myNum]; |       for (pProp = xf86RegisteredPropertiesTable[pScreen->myNum]; | ||||||
| 	   pRegProp != NULL && err==Success; | 	   pProp != NULL && err==Success; | ||||||
| 	   pRegProp = pRegProp->next ) | 	   pProp = pProp->next ) | ||||||
| 	{ | 	{ | ||||||
| 	  Atom oldNameAtom = pRegProp->propertyName; | 	  Atom prop; | ||||||
| 	  char *nameString; | 
 | ||||||
| 	  /* propertyName was created before the screen existed,
 | 	  prop = MakeAtom(pProp->name, strlen(pProp->name), TRUE); | ||||||
| 	   * so the atom does not belong to any screen; |  | ||||||
| 	   * we need to create a new atom with the same name. |  | ||||||
| 	   */ |  | ||||||
| 	  nameString = NameForAtom(oldNameAtom); |  | ||||||
| 	  pRegProp->propertyName = MakeAtom(nameString, strlen(nameString), TRUE); |  | ||||||
| 	  err = ChangeWindowProperty(pWin, | 	  err = ChangeWindowProperty(pWin, | ||||||
| 				     pRegProp->propertyName, pRegProp->type, | 				     prop, pProp->type, | ||||||
| 				     pRegProp->format, PropModeReplace, | 				     pProp->format, PropModeReplace, | ||||||
| 				     pRegProp->size, pRegProp->data, | 				     pProp->size, pProp->data, | ||||||
| 				     FALSE | 				     FALSE | ||||||
| 				     ); | 				     ); | ||||||
| 	} | 	} | ||||||
|  | @ -207,14 +201,6 @@ xf86CreateRootWindow(WindowPtr pWin) | ||||||
|       /* Look at err */ |       /* Look at err */ | ||||||
|       ret &= (err==Success); |       ret &= (err==Success); | ||||||
|        |        | ||||||
|       /* free memory */ |  | ||||||
|       pOldRegProp = xf86RegisteredPropertiesTable[pScreen->myNum]; |  | ||||||
|       while (pOldRegProp!=NULL) { 	 |  | ||||||
| 	pRegProp = pOldRegProp->next; |  | ||||||
| 	xfree(pOldRegProp); |  | ||||||
| 	pOldRegProp = pRegProp; |  | ||||||
|       }   |  | ||||||
|       xf86RegisteredPropertiesTable[pScreen->myNum] = NULL; |  | ||||||
|     } else { |     } else { | ||||||
|       xf86Msg(X_ERROR, "xf86CreateRootWindow unexpectedly called with " |       xf86Msg(X_ERROR, "xf86CreateRootWindow unexpectedly called with " | ||||||
| 	      "non-root window %p (parent %p)\n", | 	      "non-root window %p (parent %p)\n", | ||||||
|  | @ -303,7 +289,6 @@ InitOutput(ScreenInfo *pScreenInfo, int argc, char **argv) | ||||||
|       xf86ScreenIndex = AllocateScreenPrivateIndex(); |       xf86ScreenIndex = AllocateScreenPrivateIndex(); | ||||||
|       xf86CreateRootWindowIndex = AllocateScreenPrivateIndex(); |       xf86CreateRootWindowIndex = AllocateScreenPrivateIndex(); | ||||||
|       xf86PixmapIndex = AllocatePixmapPrivateIndex(); |       xf86PixmapIndex = AllocatePixmapPrivateIndex(); | ||||||
|       xf86RegisteredPropertiesTable=NULL; |  | ||||||
|       generation = serverGeneration; |       generation = serverGeneration; | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|  | @ -749,6 +734,32 @@ InitOutput(ScreenInfo *pScreenInfo, int argc, char **argv) | ||||||
|     } |     } | ||||||
|     formatsDone = TRUE; |     formatsDone = TRUE; | ||||||
| 
 | 
 | ||||||
|  |     if (xf86Info.vtno >= 0 ) { | ||||||
|  | #define VT_ATOM_NAME         "XFree86_VT" | ||||||
|  |       Atom VTAtom=-1; | ||||||
|  |       CARD32  *VT = NULL; | ||||||
|  |       int  ret; | ||||||
|  | 
 | ||||||
|  |       /* This memory needs to stay available until the screen has been
 | ||||||
|  | 	 initialized, and we can create the property for real. | ||||||
|  |       */ | ||||||
|  |       if ( (VT = xalloc(sizeof(CARD32)))==NULL ) { | ||||||
|  | 	FatalError("Unable to make VT property - out of memory. Exiting...\n"); | ||||||
|  |       } | ||||||
|  |       *VT = xf86Info.vtno; | ||||||
|  |      | ||||||
|  |       VTAtom = MakeAtom(VT_ATOM_NAME, sizeof(VT_ATOM_NAME), TRUE); | ||||||
|  | 
 | ||||||
|  |       for (i = 0, ret = Success; i < xf86NumScreens && ret == Success; i++) { | ||||||
|  | 	ret = xf86RegisterRootWindowProperty(xf86Screens[i]->scrnIndex, | ||||||
|  | 					     VTAtom, XA_INTEGER, 32,  | ||||||
|  | 					     1, VT ); | ||||||
|  | 	if (ret != Success) | ||||||
|  | 	  xf86DrvMsg(xf86Screens[i]->scrnIndex, X_WARNING, | ||||||
|  | 		     "Failed to register VT property\n"); | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     /* If a screen uses depth 24, show what the pixmap format is */ |     /* If a screen uses depth 24, show what the pixmap format is */ | ||||||
|     for (i = 0; i < xf86NumScreens; i++) { |     for (i = 0; i < xf86NumScreens; i++) { | ||||||
| 	if (xf86Screens[i]->depth == 24) { | 	if (xf86Screens[i]->depth == 24) { | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86Priv.h,v 3.82 2003/09/09 03:20:36 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86Priv.h,v 3.83 2004/01/27 01:31:45 dawes Exp $ */ | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * Copyright (c) 1997-2002 by The XFree86 Project, Inc. |  * Copyright (c) 1997-2002 by The XFree86 Project, Inc. | ||||||
|  | @ -113,6 +113,8 @@ extern int xf86LogVerbose;		/* log file verbosity level */ | ||||||
| extern Bool xf86ProbeOnly; | extern Bool xf86ProbeOnly; | ||||||
| extern Bool xf86DoProbe; | extern Bool xf86DoProbe; | ||||||
| 
 | 
 | ||||||
|  | extern RootWinPropPtr *xf86RegisteredPropertiesTable; | ||||||
|  | 
 | ||||||
| #ifndef DEFAULT_VERBOSE | #ifndef DEFAULT_VERBOSE | ||||||
| #define DEFAULT_VERBOSE		0 | #define DEFAULT_VERBOSE		0 | ||||||
| #endif | #endif | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86Privstr.h,v 1.40 2003/10/17 20:02:12 alanh Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86Privstr.h,v 1.41 2004/01/27 01:31:45 dawes Exp $ */ | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * Copyright (c) 1997-2003 by The XFree86 Project, Inc. |  * Copyright (c) 1997-2003 by The XFree86 Project, Inc. | ||||||
|  | @ -198,6 +198,16 @@ typedef struct { | ||||||
| } VidModeRec, *VidModePtr; | } VidModeRec, *VidModePtr; | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  | /* Information for root window properties. */ | ||||||
|  | typedef struct _RootWinProp { | ||||||
|  |     struct _RootWinProp *	next; | ||||||
|  |     char *			name; | ||||||
|  |     Atom			type; | ||||||
|  |     short			format; | ||||||
|  |     long			size; | ||||||
|  |     pointer			data; | ||||||
|  | } RootWinProp, *RootWinPropPtr; | ||||||
|  | 
 | ||||||
| /* private resource types */ | /* private resource types */ | ||||||
| #define ResNoAvoid  ResBios | #define ResNoAvoid  ResBios | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -987,23 +987,28 @@ earlier in this document. | ||||||
| 
 | 
 | ||||||
| The `X-TrueType' backend is a backend based on version 1 of the FreeType | The `X-TrueType' backend is a backend based on version 1 of the FreeType | ||||||
| library.  X-TrueType doesn't use the `fontenc' layer for managing font encod- | library.  X-TrueType doesn't use the `fontenc' layer for managing font encod- | ||||||
| ings, but instead uses its own database of encodings.  Since the functionali- | ings, but instead uses its own database of encodings. | ||||||
| ties for CJKV support introduced by X-TT have been merged into the new | 
 | ||||||
| FreeType backend, the X-TT backend will be removed from XFree86's tree near | Since the functionalities for CJKV support introduced by X-TT have been | ||||||
| the future.  Therefore, the use of FreeType backend is preferred over the X- | merged into the new FreeType backend, the X-TT backend will be removed from | ||||||
| TT backend.  General information on X-TrueType may be found at ." | XFree86's tree near the future.  Therefore, the use of FreeType backend is | ||||||
|  | preferred over the X-TT backend. | ||||||
|  | 
 | ||||||
|  | General information on X-TrueType may be found at the After X-TT Project page | ||||||
|  | <URL:http://x-tt.sourceforge.jp/>. | ||||||
| 
 | 
 | ||||||
| 4.2.3  Delayed glyph rasterisation | 4.2.3  Delayed glyph rasterisation | ||||||
| 
 | 
 | ||||||
| When loading a large character set, the old FreeType delayed glyph rasterisa- | When loading a proportional fonts which contain a huge number of glyphs, the | ||||||
| tion until the time at which the glyph was first used.  The new FreeType | old FreeType delayed glyph rasterisation until the time at which the glyph | ||||||
| (libfreetype-xtt2) has an improved `very lazy' metric calculation method to | was first used.   The new FreeType (libfreetype-xtt2) has an improved `very | ||||||
| speed up the process when loading TrueType or OpenType fonts.   Although the | lazy' metric calculation method to speed up the process when loading TrueType | ||||||
| X-TT module also has this method, the "vl=y" TTCap option must be set if you | or OpenType fonts.   Although the X-TT module also has this method, the | ||||||
| want to use it.  This is the default method for FreeType when it loads multi- | "vl=y" TTCap option must be set if you want to use it.  This is the default | ||||||
| byte fonts.  Even if you use a unicode font which has tens of thousands of | method for FreeType when it loads multi-byte fonts.   Even if you use a uni- | ||||||
| glyphs, this delay will not be worrisome as long as you use the new FreeType | code font which has tens of thousands of glyphs, this delay will not be wor- | ||||||
| backend -- its `very lazy' method is super-fast. | risome as long as you use the new FreeType backend -- its `very lazy' method | ||||||
|  | is super-fast. | ||||||
| 
 | 
 | ||||||
| The maximum error of bitmap position using `very lazy' method is 1 pixel, and | The maximum error of bitmap position using `very lazy' method is 1 pixel, and | ||||||
| is the same as that of a character-cell spacing.  When the X-TT backend is | is the same as that of a character-cell spacing.  When the X-TT backend is | ||||||
|  | @ -1176,7 +1181,7 @@ The IANA RFC documents, available from a number of sites throughout the | ||||||
| world, often provide interesting information about character set issues; see | world, often provide interesting information about character set issues; see | ||||||
| for example RFC 373. | for example RFC 373. | ||||||
| 
 | 
 | ||||||
|      Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/fonts.sgml,v 1.23 dawes Exp $ |      Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/fonts.sgml,v 1.24 dawes Exp $ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| $XFree86: xc/programs/Xserver/hw/xfree86/doc/README.fonts,v 1.27 2003/11/24 01:57:56 dawes Exp $ | $XFree86: xc/programs/Xserver/hw/xfree86/doc/README.fonts,v 1.28 2003/12/20 19:47:28 dawes Exp $ | ||||||
|  |  | ||||||
|  | @ -1,4 +1,259 @@ | ||||||
| XFree86 4.3.99.903 (xx December 2003) | XFree86 4.3.99.904 (xx February 2004) | ||||||
|  | 
 | ||||||
|  | XFree86 4.3.99.903 (15 February 2004) | ||||||
|  |  805. Resync the pci.ids data with pciids.sf.net (2004-02-15 snapshot). | ||||||
|  |  804. Improve X server performance on OS/2 when using TCP transport: | ||||||
|  |        - Let the server set TCP_NODELAY, et al. | ||||||
|  |        - Change the behavior of os2PseudoSelect() on sockets. | ||||||
|  |       (Bugzilla #1175, Frank Giessler). | ||||||
|  |  803. X server on OS/2 doesn't respect AutoRepeat on/off unless XKB is disabled | ||||||
|  |       (Bugzilla #1174, Frank Giessler). | ||||||
|  |  802. Licence update. | ||||||
|  |  801. Optimise SlowBcopy() for ia64 architecture (Marc La France). | ||||||
|  |  800. Simplify vgaHWSaveFonts() and vgaHWRestoreFonts() to fix hangs seen with | ||||||
|  |       certain nVidia boards on ZX1-based systems (Marc La France). | ||||||
|  |  799. Some more font path checks. | ||||||
|  |  798. Don't define X_LOCALE on Panther (Etsushi Kato and Toshimitsu Tanaka). | ||||||
|  |  797. Fix GL_VERSION string for indirect rendering (Bugzilla #1147, DRI Project) | ||||||
|  |  796. Fix the 1024x576 modes in the via driver (Bugzilla #812, Luc Verhaegen, | ||||||
|  |       reported by Julian Cable). | ||||||
|  |  795. Add uz_UZ locale (Bugzilla #1151, Mashrab Kuvatov). | ||||||
|  |  794. Fix font alias overrun. | ||||||
|  |  793. Fix for the way the FreeType backend sets the | ||||||
|  |       _ADOBE_POSTSCRIPT_FONTNAME property for Type1 fonts (Bugzilla #1123, | ||||||
|  |       David Dawes, based on Roland Mainz, reported by David Capshaw). | ||||||
|  |  792. Fix formatting of the XLookupString bytes that xev prints out (Bugzilla | ||||||
|  |       #1153, Noah Levitt). | ||||||
|  |  791. Likely fix for FreeBSD 5.2 libGL build problem (David Dawes, reported by | ||||||
|  |       Terry R. Friedrichsen). | ||||||
|  |  790. Fix typo in bsd_mouse.c (Tyler Retzlaff). | ||||||
|  |  789. Fix off-by-one errors in the emulation of an ix86's BT, BTS, BTR and BTC | ||||||
|  |       instructions (Marc La France). | ||||||
|  |  788. Fixing segfaults that may happen in some corner cases on VT switch | ||||||
|  |       and int10 initialization (Egbert Eich). | ||||||
|  |  787. Increase PCI I/O space size on Linux/PowerPC (Bugzilla #1143, | ||||||
|  |       Paul Mackerras). | ||||||
|  |  786. Fix DRI cleanup at exit and re-enabling on reset for the via driver | ||||||
|  |       (Bugzilla #998, Thomas Hellström). | ||||||
|  |  785. Fix Xv error propagation to the client for the via driver (Bugzilla #998, | ||||||
|  |       Thomas Hellström). | ||||||
|  |  784. Fix a problem when utilizing DrawArrays when indirect rendering | ||||||
|  |       (Bugzilla #1142, DRI Project). | ||||||
|  |  783. Xterm followup fix for Bugzilla #981 (Thomas Dickey). | ||||||
|  |  782. Fix EXT version of vertex arrays (DRI Project). | ||||||
|  |  781. Fix long-standing off-by-one bug in calculating dimensions of single | ||||||
|  |       (private) back cliprect when the window is partially offscreen in | ||||||
|  |       libdri.a (Keith Whitwell) | ||||||
|  |  780. Don't do the MGAISBUSY() loop in MGAStormSync() for Mystique cards | ||||||
|  |       because this reportedly results in an infinite loop (Bugzila #85, | ||||||
|  |       David Dawes, reported by Phil ??? and Stéphane VOLTZ). | ||||||
|  |  779. Make sure the r128 driver enables the hsync and vsync signals after | ||||||
|  |       programming a video mode (Bugzilla #935, Kevin Martin). | ||||||
|  |  778. Fix Multitexture problems with vertex arrays and indirect rendering | ||||||
|  |       (Bugzilla #1092, DRI Project). | ||||||
|  |  777. Fix SecondaryColor & FogColor when indirect rendering (Bugzilla #1091,  | ||||||
|  |       DRI Project). | ||||||
|  |  776. Fix build failures on Mac OS X 10.1.x (Torrey T. Lyons). | ||||||
|  |  775. Fix a timing problem in the nsc driver that prevents the display from | ||||||
|  |       working in some cases (Bugzilla #840, Hansruedi Glauser, Alan Hourihane). | ||||||
|  |  774. Via driver workaround to handle setting WC for the video memory when | ||||||
|  |       initially only part of it has WC set (Bugzilla #1010 Thomas Hellström). | ||||||
|  |  773. Fix the XAA clipping flags for the via driver, which fixes a line | ||||||
|  |       drawing problem seen with OpenOffice Calc (Bugzilla #1026, | ||||||
|  |       Thomas Hellström). | ||||||
|  |  772. HKSCS and GB18030 support for luit (Bugzilla #1048, Zarick Lau). | ||||||
|  |  771. Fix some remaining memory allocation related problems with the via | ||||||
|  |       driver (Bugzilla #998, Thomas Hellström). | ||||||
|  |  770. Add a UseRpath build switch to allow the use of -rpath to be enabled | ||||||
|  |       or disabled from the host.def file.  Implemented for *BSD, Hurd, Linux. | ||||||
|  |       The default settings remains as before (David Dawes). | ||||||
|  |  769. Add a root window property called XFree86_VT that holds the VT number | ||||||
|  |       that the XFree86 server is running on (Andrew Aitcheson, suggested by | ||||||
|  |       Samuel Thibault). | ||||||
|  |  768. Fix a problem where root window properties registered with | ||||||
|  |       xf86RegisterRootWindowProperty() are not re-registered after server | ||||||
|  |       regeneration (David Dawes, reported by Samuel Thibault). | ||||||
|  |  767. Fix xtest failures for the savage driver's zero width lines by | ||||||
|  |       removing the TwoPointLine and using only the Bresenham version | ||||||
|  |       (reported by Nicolas Joly). | ||||||
|  |  766. Fix refresh rate setting for 845G/856G systems that don't support the | ||||||
|  |       Intel-specific refresh rate BIOS calls (Bugzilla #1106, David Dawes, | ||||||
|  |       reported by Lucian Precup). | ||||||
|  |  765. Fixes/build updates for BSD/OS 5.1 and 4.3.1 (Bugzilla #1111, Kurt Lidl). | ||||||
|  |  764. Fix a problem in libXmu's FindChildren() that can cause a crash by | ||||||
|  |       copying memory from outside the bounds of an array (Bugzilla #1109, | ||||||
|  |       John Tillman). | ||||||
|  |  763. Add missing TimerCallback in trident_video.c to shutdown the video. | ||||||
|  |       This could account for many peoples lockups with video on Trident chips. | ||||||
|  |       Also, add a Wait for vsync when programming video modes to avoid lockups. | ||||||
|  |       (Yukun Chen, Alan Hourihane). | ||||||
|  |  762. Fix a lockup problem on Trident Blade3D engines by permanently turning | ||||||
|  |       on PCI Retry. Also sync the engine on CloseScreen and LeaveVT. | ||||||
|  |       (Yukun Chen, Alan Hourihane). | ||||||
|  |  761. Fix getaddrinfo() return value check in SmsGenerateClientID() that was | ||||||
|  |       causing a crash when the current hostname is unresolved, and returning | ||||||
|  |       a NULL id otherwise (Bugzilla #1096, David Dawes). | ||||||
|  |  760. Support automatic configuration of the X server on OpenBSD with  | ||||||
|  |       wsmouse-supported mices. (Matthieu Herrb). | ||||||
|  |  759. Updates for XKB keyboard maps: | ||||||
|  |       - Add Tibetan/Dzongkha keyboard layout (Bugzilla #1082, Gregory Mokhin). | ||||||
|  |       - Add three new Internet/multimedia keyboard descriptions | ||||||
|  |         (Bugzilla #1088, Radics Laszlo). | ||||||
|  |  758. Add overlooked SecondaryColor entries to AppleDRI indirect dispatch | ||||||
|  |       table (Torrey T. Lyons). | ||||||
|  |  757. Allocate pBIOSInfo->UserSetting in the via driver, which fixes a crash | ||||||
|  |       (James Harris). | ||||||
|  |  756. Fix Linux drm kernel modules to handle the nopage() prototype change in | ||||||
|  |       Linux 2.6.1 (Michel Dänzer, from DRI CVS). | ||||||
|  |  755. Fix use of dynamic xcursors on OS/2 (Bugzilla #1087, Frank Giessler). | ||||||
|  |  754. Fix the fbdev driver so that it allows 24-bit pixel size, and disable | ||||||
|  |       the RandR extension when rotation is enabled (Jonathan Thambidurai). | ||||||
|  |  753. Rendition driver fixes: | ||||||
|  |        - Fix the mode size limits so that the set of modes that the driver | ||||||
|  |          accepts isn't unnecessarily restricted. | ||||||
|  |        - Fix color palette refreshing after VT switching. | ||||||
|  |        - Fix a core dump at server exit with the hardware cursor was enabled. | ||||||
|  |        - Add checking for supported depths.  Without this the server could | ||||||
|  |          crash if an unsupported depth was specified. | ||||||
|  |       (Eric Wittry) | ||||||
|  |  752. Update XKB registry file rules/xfree86.xml (Sergey Oudaltsov). | ||||||
|  |  751. Fix some rules in en_US.UTF-8 Compose file (Bugzilla #1071, | ||||||
|  |       Matthew Fischer). | ||||||
|  |  750. Add some content (supported hardware and driver options) to the tdfx(4) | ||||||
|  |       man page (Bugzilla #1068, Nicolas Joly). | ||||||
|  |  749. Make '-pn' (partial network) the default for all X servers, and document | ||||||
|  |       the '-nopn' option (David Dawes). | ||||||
|  |  748. Allow rstartd.real to be installed into a location other than LIBDIR | ||||||
|  |       (#6034, Luke Mewburn). | ||||||
|  |  747. Allow xdm's chooser to be installed into a directory other than LIBDIR | ||||||
|  |       (#6033, Luke Mewburn). | ||||||
|  |  746. Add XKB description for the Logitech Access keyboard (#6026, | ||||||
|  |       Michael Geddes). | ||||||
|  |  745. Fix typo in computing xterm's relative font size (Jess Thrysoee). | ||||||
|  |  744. Fix typo in savage man page (Bugzilla #1065, Nicolas Joly). | ||||||
|  |  743. Fix for xf86Msg() call with swapped arguments (Bugzilla #1064, | ||||||
|  |       Nicolas Joly). | ||||||
|  |  742. Set the dependencies correctly for SCO shared libraries, and use gcc | ||||||
|  |       for linking instead of ld (Bugzilla #1045, Kean Johnston). | ||||||
|  |  741. Some cleanups for the SCO support, and a few changes required for | ||||||
|  |       compilation on UnixWare (Bugzilla #1045, Kean Johnston). | ||||||
|  |  740. Make the X server lock file code treat the display string in the same | ||||||
|  |       way as the local listener code (i.e., convert it to an integer then back | ||||||
|  |       to a string).  This fixes a problem where an non-numeric display | ||||||
|  |       argument could cause a second server to be started on display :0, | ||||||
|  |       replacing the local listener nodes for the original server. | ||||||
|  |       (Bugzilla #1056, David Dawes, reported by Robin Schoonover). | ||||||
|  |  739. Fix xfs and xdm core dumps in BecomeOrphan(), and rework/simplify | ||||||
|  |       the BecomeDaemon() code (Bugzilla #1060, #1074, David Dawes,  | ||||||
|  |       reported by Martin Birgmeier). | ||||||
|  |  738. Add a "VBERestore" option for the i830 part of the i810 driver, to | ||||||
|  |       allow the VBE restore bug workaround to be disabled.  This is needed | ||||||
|  |       for correct text mode restoration on some 830M-based machines | ||||||
|  |       (David Dawes, reported by Martin van Es). | ||||||
|  |  737. Fix memory leak when list of registered renderers are cleared at the | ||||||
|  |       start of each new server generation (Kevin Martin and Rik Faith). | ||||||
|  |  736. Fix memory double freeing at XIM destroying in imLcIm.c (Ivan Pascal, | ||||||
|  |       reported: Bugzilla #1015). | ||||||
|  |  735. Add xkb keymap for Microsoft Mutimedia Keyboard keys (Bugzilla #1052, | ||||||
|  |       Jacques Legare). | ||||||
|  |  734. Update Compose file for en_US.UTF-8 locale (Bugzilla #1053, | ||||||
|  |       Matthew Fischer) and fix wrong comment signs there (Ivan Pascal). | ||||||
|  |  733. VIA driver fixes: | ||||||
|  |        - Restructure the via driver's cache allocation to work with both | ||||||
|  | 	 the VIA and new open DRI module, and remove the now unneeded | ||||||
|  | 	 version check (Thomas Hellström, Alan Cox, bugzilla #998). | ||||||
|  |        - Remove special case lindvd hack (Alan Cox) | ||||||
|  |        - Add support for Xv when unaccelerated (Thomas Hellström) | ||||||
|  |       (Bugzilla #998, #1020, #1021). | ||||||
|  |  732. Check for a NULL argument in XSetICFocus() before dereferencing it. | ||||||
|  |       This fixes crashes with some XIM software (see | ||||||
|  |       http://bugzilla.mozilla.gr.jp/show_bug.cgi?id=2961#c19). | ||||||
|  |  731. Improve the i810 bitblt bug workaround, and re-enable the pixmap cache | ||||||
|  |       at depth 24 (David Dawes). | ||||||
|  |  730. Workaround for lockup at mode switch with an i810 (David Dawes). | ||||||
|  |  729. Fix transparent mono 8x8 pattern fills for the i810 (David Dawes). | ||||||
|  |  728. Disable XKB by default in XDarwin (Torrey T. Lyons). | ||||||
|  |  727. Fix manpage build warnings on Panther (Matthieu Herrb). | ||||||
|  |  726. Make sure that the ring buffer is flushed in I810CloseScreen().  This | ||||||
|  |       fixes unpredictable behaviour that sometimes shows up after server | ||||||
|  |       exit/restart or server reset, including memory corruption, spontaneous | ||||||
|  |       reboots, etc, and some odd xtest behaviour (David Dawes). | ||||||
|  |  725. Xdmcp fixes for IPv6 and mixed IPv6/IPv4 operation. (Mario Klebsch,  | ||||||
|  |       Matthieu Herrb). | ||||||
|  |  724. Update rman by merging XFree86 changes to rman 3.2 (Thomas Dickey). | ||||||
|  |  723. Create fonts.scale and fonts.dir files in the target directories at | ||||||
|  |       'make install' time.  This fixes several problems where some font | ||||||
|  |       entries get left out (David Dawes). | ||||||
|  |  722. Add the Bitstream Vera fonts (Bitstream, Inc and The Gnome Project). | ||||||
|  |  721. Xterm patches #183, #184 (Thomas Dickey). | ||||||
|  |  720. Build fix for the Chips driver on Linux/arm (#6011, Michel Dänzer and | ||||||
|  |       Othmar Pasteka). | ||||||
|  |  719. Change v4l "norm" names to the bttv versions (#5993, | ||||||
|  |       Marco Antonio Alvarez). | ||||||
|  |  718. Fix for symbols/hr map (#5991, Vlatko Kosturjak). | ||||||
|  |  717. The current VIA DRI driver isn't remotely compatible with the current | ||||||
|  |       code, so make sure it isn't loaded by requiring version 2.0.0 or later | ||||||
|  |       (Alan Cox). | ||||||
|  |  716. Fix VIA KM400 memory detection (Luc Verhaegen, Bugzilla #813). | ||||||
|  |  715. Fix a long standing VIA Xv problem with totem/xine and YUV surface | ||||||
|  |       types (Uberto Barbini). | ||||||
|  |  714. VIA driver updates/fixes: | ||||||
|  |        - Remove HARDWARE_NEEDS_PROGRAMMED_ORIGIN (Bugzilla #1011). | ||||||
|  |        - Allocate the UserSetting structure and use it. Changed the names so | ||||||
|  |          its uses can be tracked through the tree (Bugzilla #1006, #1014). | ||||||
|  |        - Remove dead FIFO handling code. | ||||||
|  |        - Clean up formatting in via_bios.h, via_driver.h. | ||||||
|  |        - via_tuner module (1/2 of Bugzilla #1012, #1013): | ||||||
|  |          + Add via_tuner structures and methods. | ||||||
|  |          + Handle the back end work for boards with Philips SAA71xx | ||||||
|  |            devices on the I2C bus providing one or two TV overlays. | ||||||
|  |          + Handle CXA2104S audio decoder if present. | ||||||
|  |          + Handle FI1236 TV tuners if present. | ||||||
|  |        - Remove bogus DriverVersion, DriverName stuff. | ||||||
|  |        - Xv updates (Bugzilla #1013): | ||||||
|  |          + Remove DDR mode tables and compute supported overlay modes properly. | ||||||
|  |          + Remove various bits of dead code. | ||||||
|  |          + Probe for Tuners in the Xv setup. | ||||||
|  | 	 + Don't advertise XvImageMask on the tuner overlays - they can't do it. | ||||||
|  |          + Clean up tuner channel computation. | ||||||
|  |          + Make the property setting code use the via_tuner backend. | ||||||
|  |          + Fix formatting of the various YUV copying loops. | ||||||
|  |       (Alan Cox). | ||||||
|  |  713. Add a missing code for jisx0208.1990-0.enc (Chisato Yamauchi). | ||||||
|  |  712. Xtt2 update: Restore the behaviour of "bw" TTCap option for Netscape 4.x. | ||||||
|  |       (Chisato Yamauchi). | ||||||
|  |  711. Fix neomagic driver default mode selection to match the detected | ||||||
|  |       panel size.  This allows it to work correctly with automatic | ||||||
|  |       configuration (David Dawes). | ||||||
|  |  710. Fixes and updates for XKB keyboard maps: | ||||||
|  |       - Fix Armenian phonetic keymap (Bugzilla #1016, Ani). | ||||||
|  |       - Fix rules for Brasilian ABNT2 keyboard (Ricardo Y. Igarashi). | ||||||
|  |       - Add Shift+CapsLock group switcher (Ivan Pascal, see Bugzilla #1025). | ||||||
|  |       - Update rules/xfree86.lst with missing descriptions (Ivan Pascal). | ||||||
|  |  709. Build fix for Solaris Express (Bugzilla #1032, Alan Coopersmith). | ||||||
|  |  708. Fix warning in lib/Xt/Alloc.c (Bugzilla #1035, Nicolas Joly). | ||||||
|  |  707. Fix short overflow problem with box clipping in fb/fbcopy.c | ||||||
|  |       (Bugzilla #978, Stephen McCamant). | ||||||
|  |  706. Fix logic in xterm's get_pty() for platforms where old-style pty's are | ||||||
|  |       preferred to /dev/ptmx (Bugzilla #997, Kean Johnston, Thomas Dickey). | ||||||
|  |  705. Fix handling of eightBitInput for UTF-8 locales in xterm (Thomas Dickey). | ||||||
|  |  704. Merge recent cygwin-related changes from freedesktop.org's config/cf | ||||||
|  |       (Thomas Dickey). | ||||||
|  |  703. Disable Xv in the via driver when acceleration is disabled (Alan Cox). | ||||||
|  |  702. Fix bugs caused by empty PCI buses on ZX1-based systems (Marc La France). | ||||||
|  |  701. Fix optional save/restore of BIOS area data in int10 module | ||||||
|  |       (Marc La France). | ||||||
|  |  700. Update Swedish localization of XDarwin GUI (Patrik Montgomery). | ||||||
|  |  699. Fixes to build/run on cygwin (Thomas Dickey).  This includes a workaround | ||||||
|  |       for _XtInherit by Ralf Habacker, needed to run applications such as xman. | ||||||
|  |  698. Warning fixes for gcc 3.3.2 (Marc La France). | ||||||
|  |  697. Fix file descriptor leaks in xdm (Marc La France). | ||||||
|  |  696. Fix memory leaks in libFS (Marc La France). | ||||||
|  |  695. Security fix:  change xdm to use mkstemp(), where available, instead of | ||||||
|  |       mktemp() (Marc La France). | ||||||
|  |  694. Update XKB registry file rules/xfree86.xml (Sergey Oudaltsov). | ||||||
|  |  693. Fix for FreeType-related crash when attempting to draw a missing glyph | ||||||
|  |       with constant-width fonts (Chisato Yamauchi). | ||||||
| 
 | 
 | ||||||
| XFree86 4.3.99.902 (18 December 2003) | XFree86 4.3.99.902 (18 December 2003) | ||||||
|  672. Fixes for xterm (Thomas Dickey): |  672. Fixes for xterm (Thomas Dickey): | ||||||
|  | @ -18391,7 +18646,7 @@ XFree86 3.0a (28 April 1994) | ||||||
| XFree86 3.0 (26 April 1994) | XFree86 3.0 (26 April 1994) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| $XFree86: xc/programs/Xserver/hw/xfree86/CHANGELOG,v 3.3043 2003/12/19 04:52:08 dawes Exp $ | $XFree86: xc/programs/Xserver/hw/xfree86/CHANGELOG,v 3.3145 2004/02/16 01:01:45 dawes Exp $ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -25,9 +25,9 @@ | ||||||
| 
 | 
 | ||||||
| <article> | <article> | ||||||
| 
 | 
 | ||||||
| <title>XFree86 X server ``New Design'' (DRAFT) | <title>XFree86 server 4.x Design (DRAFT) | ||||||
| <author>The XFree86 Project, Inc | <author>The XFree86 Project, Inc | ||||||
| <date>Last modified 2003 January 22 | <date>19 December 2003 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | @ -36,7 +36,7 @@ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| <ident> | <ident> | ||||||
| $XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/DESIGN.sgml,v 1.53 2003/08/23 14:10:14 dawes Exp $ | $XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/DESIGN.sgml,v 1.54 2003/12/19 20:38:57 dawes Exp $ | ||||||
| </ident> | </ident> | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| /* $XdotOrg: xc/programs/Xserver/GL/dri/dri.c,v 1.39 2003/11/10 18:21:41 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/GL/dri/dri.c,v 1.40 2004/01/30 14:31:58 alanh Exp $ */ | ||||||
| /* $XFree86: xc/programs/Xserver/GL/dri/dri.c,v 1.39 2003/11/10 18:21:41 tsi Exp $ */ |  | ||||||
| /**************************************************************************
 | /**************************************************************************
 | ||||||
| 
 | 
 | ||||||
| Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas. | Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas. | ||||||
|  | @ -1192,8 +1191,8 @@ DRIGetDrawableInfo(ScreenPtr pScreen, | ||||||
| 
 | 
 | ||||||
| 	       if (x0 < 0) x0 = 0; | 	       if (x0 < 0) x0 = 0; | ||||||
| 	       if (y0 < 0) y0 = 0; | 	       if (y0 < 0) y0 = 0; | ||||||
| 	       if (x1 > pScreen->width-1) x1 = pScreen->width-1; | 	       if (x1 > pScreen->width) x1 = pScreen->width; | ||||||
| 	       if (y1 > pScreen->height-1) y1 = pScreen->height-1; | 	       if (y1 > pScreen->height) y1 = pScreen->height; | ||||||
| 
 | 
 | ||||||
| 	       pDRIPriv->private_buffer_rect.x1 = x0; | 	       pDRIPriv->private_buffer_rect.x1 = x0; | ||||||
| 	       pDRIPriv->private_buffer_rect.y1 = y0; | 	       pDRIPriv->private_buffer_rect.y1 = y0; | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/int10/helper_exec.c,v 1.26 2003/11/06 18:38:12 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/int10/helper_exec.c,v 1.27 2003/12/23 22:32:38 tsi Exp $ */ | ||||||
| /*
 | /*
 | ||||||
|  *                   XFree86 int10 module |  *                   XFree86 int10 module | ||||||
|  *   execute BIOS int 10h calls in x86 real mode environment |  *   execute BIOS int 10h calls in x86 real mode environment | ||||||
|  | @ -56,7 +56,7 @@ setup_int(xf86Int10InfoPtr pInt) | ||||||
|     X86_GS = 0; |     X86_GS = 0; | ||||||
|     X86_EFLAGS = X86_IF_MASK | X86_IOPL_MASK; |     X86_EFLAGS = X86_IF_MASK | X86_IOPL_MASK; | ||||||
| #if defined (_PC) | #if defined (_PC) | ||||||
|     if (pInt->flags & SET_BIOS_SCRATCH) |     if (pInt->Flags & SET_BIOS_SCRATCH) | ||||||
| 	SetResetBIOSVars(pInt, TRUE); | 	SetResetBIOSVars(pInt, TRUE); | ||||||
| #endif | #endif | ||||||
|     return xf86BlockSIGIO(); |     return xf86BlockSIGIO(); | ||||||
|  | @ -76,7 +76,7 @@ finish_int(xf86Int10InfoPtr pInt, int sig) | ||||||
|     pInt->bp = (CARD32) X86_EBP; |     pInt->bp = (CARD32) X86_EBP; | ||||||
|     pInt->flags = (CARD32) X86_FLAGS; |     pInt->flags = (CARD32) X86_FLAGS; | ||||||
| #if defined (_PC) | #if defined (_PC) | ||||||
|     if (pInt->flags & RESTORE_BIOS_SCRATCH) |     if (pInt->Flags & RESTORE_BIOS_SCRATCH) | ||||||
| 	SetResetBIOSVars(pInt, FALSE); | 	SetResetBIOSVars(pInt, FALSE); | ||||||
| #endif | #endif | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/loader/coffloader.c,v 1.21 2003/10/15 17:40:15 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/loader/coffloader.c,v 1.22 2003/12/22 17:48:11 tsi Exp $ */ | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * |  * | ||||||
|  | @ -133,7 +133,9 @@ static COFFCommonPtr COFFAddCOMMON(SYMENT *, int); | ||||||
| static LOOKUP *COFFCreateCOMMON(COFFModulePtr); | static LOOKUP *COFFCreateCOMMON(COFFModulePtr); | ||||||
| static COFFRelocPtr COFFDelayRelocation(COFFModulePtr, int, RELOC *); | static COFFRelocPtr COFFDelayRelocation(COFFModulePtr, int, RELOC *); | ||||||
| static SYMENT *COFFGetSymbol(COFFModulePtr, int); | static SYMENT *COFFGetSymbol(COFFModulePtr, int); | ||||||
|  | #if defined(i386) || defined(__powerpc__) | ||||||
| static unsigned char *COFFGetSymbolValue(COFFModulePtr, int); | static unsigned char *COFFGetSymbolValue(COFFModulePtr, int); | ||||||
|  | #endif | ||||||
| static COFFRelocPtr COFF_RelocateEntry(COFFModulePtr, int, RELOC *); | static COFFRelocPtr COFF_RelocateEntry(COFFModulePtr, int, RELOC *); | ||||||
| static LOOKUP *COFF_GetSymbols(COFFModulePtr); | static LOOKUP *COFF_GetSymbols(COFFModulePtr); | ||||||
| static void COFFCollectSections(COFFModulePtr); | static void COFFCollectSections(COFFModulePtr); | ||||||
|  | @ -298,6 +300,7 @@ COFFGetSymbol(COFFModulePtr file, int index) | ||||||
|     return (SYMENT *) (((unsigned char *)file->symtab) + (index * SYMESZ)); |     return (SYMENT *) (((unsigned char *)file->symtab) + (index * SYMESZ)); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | #if defined(i386) || defined(__powerpc__) | ||||||
| static unsigned char * | static unsigned char * | ||||||
| COFFGetSymbolValue(COFFModulePtr cofffile, int index) | COFFGetSymbolValue(COFFModulePtr cofffile, int index) | ||||||
| { | { | ||||||
|  | @ -323,6 +326,7 @@ COFFGetSymbolValue(COFFModulePtr cofffile, int index) | ||||||
|     xf86loaderfree(symname); |     xf86loaderfree(symname); | ||||||
|     return symval; |     return symval; | ||||||
| } | } | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
| #if defined(__powerpc__) | #if defined(__powerpc__) | ||||||
| /*
 | /*
 | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/loader/fontsym.c,v 1.13 2003/10/15 16:29:04 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/loader/fontsym.c,v 1.14 2003/12/20 20:04:34 dawes Exp $ */ | ||||||
| /*
 | /*
 | ||||||
|  * Copyright (c) 1998-2002 by The XFree86 Project, Inc. |  * Copyright (c) 1998-2002 by The XFree86 Project, Inc. | ||||||
|  * |  * | ||||||
|  | @ -37,8 +37,10 @@ | ||||||
| #include "fntfil.h" | #include "fntfil.h" | ||||||
| #include "fontutil.h" | #include "fontutil.h" | ||||||
| #include "fontxlfd.h" | #include "fontxlfd.h" | ||||||
|  | #ifdef FONTCACHE | ||||||
| #define _FONTCACHE_SERVER_ | #define _FONTCACHE_SERVER_ | ||||||
| #include "fontcache.h" | #include "fontcache.h" | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
| LOOKUP fontLookupTab[] = { | LOOKUP fontLookupTab[] = { | ||||||
| 
 | 
 | ||||||
|  | @ -89,6 +91,7 @@ LOOKUP fontLookupTab[] = { | ||||||
|     SYMFUNC(identifyEncodingFile) |     SYMFUNC(identifyEncodingFile) | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  | #ifdef FONTCACHE | ||||||
|     /* fontcache.c */ |     /* fontcache.c */ | ||||||
|     SYMFUNC(FontCacheGetSettings) |     SYMFUNC(FontCacheGetSettings) | ||||||
|     SYMFUNC(FontCacheGetStatistics) |     SYMFUNC(FontCacheGetStatistics) | ||||||
|  | @ -99,6 +102,7 @@ LOOKUP fontLookupTab[] = { | ||||||
|     SYMFUNC(FontCacheGetEntry) |     SYMFUNC(FontCacheGetEntry) | ||||||
|     SYMFUNC(FontCacheInsertEntry) |     SYMFUNC(FontCacheInsertEntry) | ||||||
|     SYMFUNC(FontCacheGetBitmap) |     SYMFUNC(FontCacheGetBitmap) | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
|     {0, 0} |     {0, 0} | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/bsd/alpha_video.c,v 1.5 2003/04/03 16:50:04 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/bsd/alpha_video.c,v 1.6 2003/12/30 15:18:30 herrb Exp $ */ | ||||||
| /*
 | /*
 | ||||||
|  * Copyright 1992 by Rich Murphey <Rich@Rice.edu> |  * Copyright 1992 by Rich Murphey <Rich@Rice.edu> | ||||||
|  * Copyright 1993 by David Wexelblat <dwex@goblin.org> |  * Copyright 1993 by David Wexelblat <dwex@goblin.org> | ||||||
|  | @ -121,7 +121,7 @@ static struct alpha_bus_window *abw; | ||||||
| static int abw_count = -1; | static int abw_count = -1; | ||||||
| 
 | 
 | ||||||
| static void | static void | ||||||
| init_abw() | init_abw(void) | ||||||
| { | { | ||||||
| 	if (abw_count < 0) { | 	if (abw_count < 0) { | ||||||
| 		abw_count = alpha_bus_getwindows(ALPHA_BUS_TYPE_PCI_MEM, &abw); | 		abw_count = alpha_bus_getwindows(ALPHA_BUS_TYPE_PCI_MEM, &abw); | ||||||
|  | @ -142,7 +142,7 @@ has_bwx(void) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static unsigned long | static unsigned long | ||||||
| dense_base() | dense_base(void) | ||||||
| { | { | ||||||
| 	if (abw_count < 0) | 	if (abw_count < 0) | ||||||
| 		init_abw(); | 		init_abw(); | ||||||
|  | @ -154,7 +154,7 @@ dense_base() | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static unsigned long | static unsigned long | ||||||
| memory_base() | memory_base(void) | ||||||
| { | { | ||||||
| 	if (abw_count < 0) | 	if (abw_count < 0) | ||||||
| 		init_abw(); | 		init_abw(); | ||||||
|  | @ -284,11 +284,13 @@ xf86OSInitVidMem(VidMemInfoPtr pVidMem) | ||||||
| 	    xf86Msg(X_PROBED,"Machine needs sparse mapping\n"); | 	    xf86Msg(X_PROBED,"Machine needs sparse mapping\n"); | ||||||
| 	    pVidMem->mapMem = mapVidMemSparse; | 	    pVidMem->mapMem = mapVidMemSparse; | ||||||
| 	    pVidMem->unmapMem = unmapVidMemSparse; | 	    pVidMem->unmapMem = unmapVidMemSparse; | ||||||
|  | #ifndef __NetBSD__ | ||||||
| 	    if (axpSystem == -1) | 	    if (axpSystem == -1) | ||||||
|                 axpSystem = bsdGetAXP();  |                 axpSystem = bsdGetAXP();  | ||||||
| 	    hae_thresh = xf86AXPParams[axpSystem].hae_thresh; | 	    hae_thresh = xf86AXPParams[axpSystem].hae_thresh; | ||||||
|             hae_mask = xf86AXPParams[axpSystem].hae_mask; |             hae_mask = xf86AXPParams[axpSystem].hae_mask; | ||||||
|             sparse_size = xf86AXPParams[axpSystem].size; |             sparse_size = xf86AXPParams[axpSystem].size; | ||||||
|  | #endif /* __NetBSD__ */ | ||||||
| 	} | 	} | ||||||
| 	pVidMem->initialised = TRUE; | 	pVidMem->initialised = TRUE; | ||||||
| } | } | ||||||
|  | @ -314,7 +316,7 @@ mapVidMem(int ScreenNum, unsigned long Base, unsigned long Size, int flags) | ||||||
| 			 MAP_FLAGS, devMemFd, (off_t)Base + BUS_BASE_BWX); | 			 MAP_FLAGS, devMemFd, (off_t)Base + BUS_BASE_BWX); | ||||||
| 	    if (base == MAP_FAILED) | 	    if (base == MAP_FAILED) | ||||||
| 	    { | 	    { | ||||||
| 		FatalError("%s: could not mmap %s [s=%x,a=%x] (%s)\n", | 		FatalError("%s: could not mmap %s [s=%lx,a=%lx] (%s)\n", | ||||||
| 			   "xf86MapVidMem", DEV_MEM, Size, Base,  | 			   "xf86MapVidMem", DEV_MEM, Size, Base,  | ||||||
| 			   strerror(errno)); | 			   strerror(errno)); | ||||||
| 	    } | 	    } | ||||||
|  | @ -324,7 +326,7 @@ mapVidMem(int ScreenNum, unsigned long Base, unsigned long Size, int flags) | ||||||
| 	/* else, mmap /dev/vga */ | 	/* else, mmap /dev/vga */ | ||||||
| 	if ((unsigned long)Base < 0xA0000 || (unsigned long)Base >= 0xC0000) | 	if ((unsigned long)Base < 0xA0000 || (unsigned long)Base >= 0xC0000) | ||||||
| 	{ | 	{ | ||||||
| 		FatalError("%s: Address 0x%x outside allowable range\n", | 		FatalError("%s: Address 0x%lx outside allowable range\n", | ||||||
| 			   "xf86MapVidMem", Base); | 			   "xf86MapVidMem", Base); | ||||||
| 	} | 	} | ||||||
| 	base = mmap(0, Size, | 	base = mmap(0, Size, | ||||||
|  | @ -372,7 +374,7 @@ xf86ReadBIOS(unsigned long Base, unsigned long Offset, unsigned char *Buf, | ||||||
| 	if ((long)ptr == -1) | 	if ((long)ptr == -1) | ||||||
| 	{ | 	{ | ||||||
| 		xf86Msg(X_WARNING,  | 		xf86Msg(X_WARNING,  | ||||||
| 			"xf86ReadBIOS: %s mmap[s=%x,a=%x,o=%x] failed (%s)\n", | 			"xf86ReadBIOS: %s mmap[s=%x,a=%lx,o=%lx] failed (%s)\n", | ||||||
| 			DEV_MEM, Len, Base, Offset, strerror(errno)); | 			DEV_MEM, Len, Base, Offset, strerror(errno)); | ||||||
| 		return(-1); | 		return(-1); | ||||||
| 	} | 	} | ||||||
|  | @ -446,7 +448,9 @@ xf86EnableInterrupts() | ||||||
| 
 | 
 | ||||||
| #define vuip    volatile unsigned int * | #define vuip    volatile unsigned int * | ||||||
| 
 | 
 | ||||||
|  | #ifndef __NetBSD__ | ||||||
| static unsigned long msb_set = 0; | static unsigned long msb_set = 0; | ||||||
|  | #endif | ||||||
| static pointer memSBase = 0; | static pointer memSBase = 0; | ||||||
| static pointer memBase = 0; | static pointer memBase = 0; | ||||||
| 
 | 
 | ||||||
|  | @ -490,6 +494,7 @@ struct parms { | ||||||
| 	u_int64_t hae; | 	u_int64_t hae; | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
|  | #ifndef __NetBSD__ | ||||||
| static int | static int | ||||||
| sethae(u_int64_t hae) | sethae(u_int64_t hae) | ||||||
| { | { | ||||||
|  | @ -505,6 +510,7 @@ sethae(u_int64_t hae) | ||||||
| 	return -1; | 	return -1; | ||||||
| #endif | #endif | ||||||
| } | } | ||||||
|  | #endif /* __NetBSD__ */ | ||||||
| 
 | 
 | ||||||
| static pointer | static pointer | ||||||
| mapVidMemSparse(int ScreenNum, unsigned long Base, unsigned long Size, int flags) | mapVidMemSparse(int ScreenNum, unsigned long Base, unsigned long Size, int flags) | ||||||
|  | @ -552,11 +558,13 @@ static int | ||||||
| readSparse8(pointer Base, register unsigned long Offset) | readSparse8(pointer Base, register unsigned long Offset) | ||||||
| { | { | ||||||
|     register unsigned long result, shift; |     register unsigned long result, shift; | ||||||
|  | #ifndef __NetBSD__ | ||||||
|     register unsigned long msb; |     register unsigned long msb; | ||||||
| 
 | #endif | ||||||
|     mem_barrier(); |     mem_barrier(); | ||||||
|     Offset += (unsigned long)Base - (unsigned long)memBase; |     Offset += (unsigned long)Base - (unsigned long)memBase; | ||||||
|     shift = (Offset & 0x3) << 3; |     shift = (Offset & 0x3) << 3; | ||||||
|  | #ifndef __NetBSD__ | ||||||
|       if (Offset >= (hae_thresh)) { |       if (Offset >= (hae_thresh)) { | ||||||
|         msb = Offset & hae_mask; |         msb = Offset & hae_mask; | ||||||
|         Offset -= msb; |         Offset -= msb; | ||||||
|  | @ -565,7 +573,7 @@ readSparse8(pointer Base, register unsigned long Offset) | ||||||
| 	msb_set = msb; | 	msb_set = msb; | ||||||
| 	} | 	} | ||||||
|       } |       } | ||||||
| 
 | #endif | ||||||
|     result = *(vuip) ((unsigned long)memSBase + (Offset << 5)); |     result = *(vuip) ((unsigned long)memSBase + (Offset << 5)); | ||||||
|     result >>= shift; |     result >>= shift; | ||||||
|     return 0xffUL & result; |     return 0xffUL & result; | ||||||
|  | @ -575,11 +583,14 @@ static int | ||||||
| readSparse16(pointer Base, register unsigned long Offset) | readSparse16(pointer Base, register unsigned long Offset) | ||||||
| { | { | ||||||
|     register unsigned long result, shift; |     register unsigned long result, shift; | ||||||
|  | #ifndef __NetBSD__ | ||||||
|     register unsigned long msb; |     register unsigned long msb; | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
|     mem_barrier(); |     mem_barrier(); | ||||||
|     Offset += (unsigned long)Base - (unsigned long)memBase; |     Offset += (unsigned long)Base - (unsigned long)memBase; | ||||||
|     shift = (Offset & 0x2) << 3; |     shift = (Offset & 0x2) << 3; | ||||||
|  | #ifndef __NetBSD__ | ||||||
|     if (Offset >= (hae_thresh)) { |     if (Offset >= (hae_thresh)) { | ||||||
|         msb = Offset & hae_mask; |         msb = Offset & hae_mask; | ||||||
|         Offset -= msb; |         Offset -= msb; | ||||||
|  | @ -588,6 +599,7 @@ readSparse16(pointer Base, register unsigned long Offset) | ||||||
| 	msb_set = msb; | 	msb_set = msb; | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|  | #endif | ||||||
|     result = *(vuip)((unsigned long)memSBase+(Offset<<5)+(1<<(5-2))); |     result = *(vuip)((unsigned long)memSBase+(Offset<<5)+(1<<(5-2))); | ||||||
|     result >>= shift; |     result >>= shift; | ||||||
|     return 0xffffUL & result; |     return 0xffffUL & result; | ||||||
|  | @ -603,11 +615,14 @@ readSparse32(pointer Base, register unsigned long Offset) | ||||||
| static void | static void | ||||||
| writeSparse8(int Value, pointer Base, register unsigned long Offset) | writeSparse8(int Value, pointer Base, register unsigned long Offset) | ||||||
| { | { | ||||||
|  | #ifndef __NetBSD__ | ||||||
|     register unsigned long msb; |     register unsigned long msb; | ||||||
|  | #endif | ||||||
|     register unsigned int b = Value & 0xffU; |     register unsigned int b = Value & 0xffU; | ||||||
| 
 | 
 | ||||||
|     write_mem_barrier(); |     write_mem_barrier(); | ||||||
|     Offset += (unsigned long)Base - (unsigned long)memBase; |     Offset += (unsigned long)Base - (unsigned long)memBase; | ||||||
|  | #ifndef __NetBSD__ | ||||||
|     if (Offset >= (hae_thresh)) { |     if (Offset >= (hae_thresh)) { | ||||||
|       msb = Offset & hae_mask; |       msb = Offset & hae_mask; | ||||||
|       Offset -= msb; |       Offset -= msb; | ||||||
|  | @ -616,17 +631,21 @@ writeSparse8(int Value, pointer Base, register unsigned long Offset) | ||||||
| 	msb_set = msb; | 	msb_set = msb; | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|  | #endif | ||||||
|     *(vuip) ((unsigned long)memSBase + (Offset << 5)) = b * 0x01010101; |     *(vuip) ((unsigned long)memSBase + (Offset << 5)) = b * 0x01010101; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static void | static void | ||||||
| writeSparse16(int Value, pointer Base, register unsigned long Offset) | writeSparse16(int Value, pointer Base, register unsigned long Offset) | ||||||
| { | { | ||||||
|  | #ifndef __NetBSD__ | ||||||
|     register unsigned long msb; |     register unsigned long msb; | ||||||
|  | #endif | ||||||
|     register unsigned int w = Value & 0xffffU; |     register unsigned int w = Value & 0xffffU; | ||||||
| 
 | 
 | ||||||
|     write_mem_barrier(); |     write_mem_barrier(); | ||||||
|     Offset += (unsigned long)Base - (unsigned long)memBase; |     Offset += (unsigned long)Base - (unsigned long)memBase; | ||||||
|  | #ifndef __NetBSD__ | ||||||
|     if (Offset >= (hae_thresh)) { |     if (Offset >= (hae_thresh)) { | ||||||
|       msb = Offset & hae_mask; |       msb = Offset & hae_mask; | ||||||
|       Offset -= msb; |       Offset -= msb; | ||||||
|  | @ -635,6 +654,7 @@ writeSparse16(int Value, pointer Base, register unsigned long Offset) | ||||||
| 	msb_set = msb; | 	msb_set = msb; | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|  | #endif | ||||||
|     *(vuip)((unsigned long)memSBase+(Offset<<5)+(1<<(5-2))) = |     *(vuip)((unsigned long)memSBase+(Offset<<5)+(1<<(5-2))) = | ||||||
|       w * 0x00010001; |       w * 0x00010001; | ||||||
| 
 | 
 | ||||||
|  | @ -651,10 +671,13 @@ writeSparse32(int Value, pointer Base, register unsigned long Offset) | ||||||
| static void | static void | ||||||
| writeSparseNB8(int Value, pointer Base, register unsigned long Offset) | writeSparseNB8(int Value, pointer Base, register unsigned long Offset) | ||||||
| { | { | ||||||
|  | #ifndef __NetBSD__ | ||||||
|     register unsigned long msb; |     register unsigned long msb; | ||||||
|  | #endif | ||||||
|     register unsigned int b = Value & 0xffU; |     register unsigned int b = Value & 0xffU; | ||||||
| 
 | 
 | ||||||
|     Offset += (unsigned long)Base - (unsigned long)memBase; |     Offset += (unsigned long)Base - (unsigned long)memBase; | ||||||
|  | #ifndef __NetBSD__ | ||||||
|     if (Offset >= (hae_thresh)) { |     if (Offset >= (hae_thresh)) { | ||||||
|       msb = Offset & hae_mask; |       msb = Offset & hae_mask; | ||||||
|       Offset -= msb; |       Offset -= msb; | ||||||
|  | @ -663,16 +686,20 @@ writeSparseNB8(int Value, pointer Base, register unsigned long Offset) | ||||||
| 	msb_set = msb; | 	msb_set = msb; | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|  | #endif | ||||||
|     *(vuip) ((unsigned long)memSBase + (Offset << 5)) = b * 0x01010101; |     *(vuip) ((unsigned long)memSBase + (Offset << 5)) = b * 0x01010101; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static void | static void | ||||||
| writeSparseNB16(int Value, pointer Base, register unsigned long Offset) | writeSparseNB16(int Value, pointer Base, register unsigned long Offset) | ||||||
| { | { | ||||||
|  | #ifndef __NetBSD__ | ||||||
|     register unsigned long msb; |     register unsigned long msb; | ||||||
|  | #endif | ||||||
|     register unsigned int w = Value & 0xffffU; |     register unsigned int w = Value & 0xffffU; | ||||||
| 
 | 
 | ||||||
|     Offset += (unsigned long)Base - (unsigned long)memBase; |     Offset += (unsigned long)Base - (unsigned long)memBase; | ||||||
|  | #ifndef __NetBSD__ | ||||||
|     if (Offset >= (hae_thresh)) { |     if (Offset >= (hae_thresh)) { | ||||||
|       msb = Offset & hae_mask ; |       msb = Offset & hae_mask ; | ||||||
|       Offset -= msb; |       Offset -= msb; | ||||||
|  | @ -681,6 +708,7 @@ writeSparseNB16(int Value, pointer Base, register unsigned long Offset) | ||||||
| 	msb_set = msb; | 	msb_set = msb; | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|  | #endif | ||||||
|     *(vuip)((unsigned long)memSBase+(Offset<<5)+(1<<(5-2))) = |     *(vuip)((unsigned long)memSBase+(Offset<<5)+(1<<(5-2))) = | ||||||
|       w * 0x00010001; |       w * 0x00010001; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/bsd/bsd_kbd.c,v 1.8 2003/11/04 03:16:58 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/bsd/bsd_kbd.c,v 1.9 2004/01/07 17:05:28 tsi Exp $ */ | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * Copyright (c) 2002 by The XFree86 Project, Inc. |  * Copyright (c) 2002 by The XFree86 Project, Inc. | ||||||
|  | @ -497,7 +497,7 @@ OpenKeyboard(InputInfoPtr pInfo) | ||||||
| #endif | #endif | ||||||
|            default: |            default: | ||||||
|                xf86Msg(X_ERROR, "%s: Unsupported wskbd type \"%d\"", |                xf86Msg(X_ERROR, "%s: Unsupported wskbd type \"%d\"", | ||||||
|                                 pKbd->wsKbdType, pInfo->name); |                                 pInfo->name, pKbd->wsKbdType); | ||||||
|                close(pInfo->fd); |                close(pInfo->fd); | ||||||
|                return FALSE; |                return FALSE; | ||||||
|        } |        } | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/bsd/bsd_mouse.c,v 1.26 2003/10/10 20:56:05 herrb Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/bsd/bsd_mouse.c,v 1.28 2004/02/06 17:15:36 tsi Exp $ */ | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * Copyright (c) 1999-2003 by The XFree86 Project, Inc. |  * Copyright (c) 1999-2003 by The XFree86 Project, Inc. | ||||||
|  | @ -80,6 +80,16 @@ static const char *mouseDevs[] = { | ||||||
| 	DEFAULT_PS2_DEV, | 	DEFAULT_PS2_DEV, | ||||||
| 	NULL | 	NULL | ||||||
| }; | }; | ||||||
|  | #elif defined(__OpenBSD__) && defined(WSCONS_SUPPORT) | ||||||
|  | /* Only wsmouse mices are autoconfigured for now on OpenBSD */ | ||||||
|  | #define DEFAULT_WSMOUSE_DEV		"/dev/wsmouse" | ||||||
|  | #define DEFAULT_WSMOUSE0_DEV		"/dev/wsmouse0" | ||||||
|  | 
 | ||||||
|  | static const char *mouseDevs[] = { | ||||||
|  | 	DEFAULT_WSMOUSE_DEV, | ||||||
|  | 	DEFAULT_WSMOUSE0_DEV, | ||||||
|  | 	NULL | ||||||
|  | }; | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| static int | static int | ||||||
|  | @ -141,6 +151,8 @@ DefaultProtocol(void) | ||||||
| { | { | ||||||
| #if defined(__FreeBSD__) | #if defined(__FreeBSD__) | ||||||
|     return "Auto"; |     return "Auto"; | ||||||
|  | #elif defined(__OpenBSD__) && defined(WSCONS_SUPPORT) | ||||||
|  |     return "WSMouse"; | ||||||
| #else | #else | ||||||
|     return NULL; |     return NULL; | ||||||
| #endif | #endif | ||||||
|  | @ -195,7 +207,7 @@ SetupAuto(InputInfoPtr pInfo, int *protoPara) | ||||||
| 		    protoPara[0] = mode.syncmask[0]; | 		    protoPara[0] = mode.syncmask[0]; | ||||||
| 		    protoPara[1] = mode.syncmask[1]; | 		    protoPara[1] = mode.syncmask[1]; | ||||||
| 		} | 		} | ||||||
|     		xf86MsgVerb(X_INFO, 3, "%s: SetupAuto: protocol is %s\n", | 		xf86MsgVerb(X_INFO, 3, "%s: SetupAuto: protocol is %s\n", | ||||||
| 			    pInfo->name, devproto[i].name); | 			    pInfo->name, devproto[i].name); | ||||||
| 		return devproto[i].name; | 		return devproto[i].name; | ||||||
| 	    } | 	    } | ||||||
|  | @ -325,7 +337,50 @@ FindDevice(InputInfoPtr pInfo, const char *protocol, int flags) | ||||||
| } | } | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #if defined(WSCONS_SUPPORT) | #if defined(__OpenBSD__) && defined(WSCONS_SUPPORT) | ||||||
|  | 
 | ||||||
|  | /* Only support wsmouse configuration for now */ | ||||||
|  | static const char * | ||||||
|  | SetupAuto(InputInfoPtr pInfo, int *protoPara) | ||||||
|  | { | ||||||
|  | 
 | ||||||
|  |     xf86MsgVerb(X_INFO, 3, "%s: SetupAuto: protocol is %s\n", | ||||||
|  | 		pInfo->name, "wsmouse"); | ||||||
|  |     return "wsmouse"; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | static void | ||||||
|  | SetMouseRes(InputInfoPtr pInfo, const char *protocol, int rate, int res) | ||||||
|  | { | ||||||
|  | 
 | ||||||
|  |     xf86MsgVerb(X_INFO, 3, "%s: SetMouseRes: protocol %s rate %d res %d\n", | ||||||
|  | 	    pInfo->name, protocol, rate, res); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | static const char * | ||||||
|  | FindDevice(InputInfoPtr pInfo, const char *protocol, int flags) | ||||||
|  | { | ||||||
|  |     int fd = -1; | ||||||
|  |     const char **pdev; | ||||||
|  | 
 | ||||||
|  |     for (pdev = mouseDevs; *pdev; pdev++) { | ||||||
|  | 	SYSCALL(fd = open(*pdev, O_RDWR | O_NONBLOCK)); | ||||||
|  | 	if (fd != -1) { | ||||||
|  | 	    /* Set the Device option. */ | ||||||
|  | 	    pInfo->conf_idev->commonOptions = | ||||||
|  | 		xf86AddNewOption(pInfo->conf_idev->commonOptions,  | ||||||
|  | 				 "Device", *pdev); | ||||||
|  | 	    xf86Msg(X_INFO, "%s: found Device \"%s\"\n", | ||||||
|  | 		    pInfo->name, *pdev); | ||||||
|  | 	    close(fd); | ||||||
|  | 	    break; | ||||||
|  | 	} | ||||||
|  |     } | ||||||
|  |     return *pdev; | ||||||
|  | } | ||||||
|  | #endif /* __OpenBSD__ && WSCONS_SUPPORT */ | ||||||
|  | 
 | ||||||
|  | #ifdef WSCONS_SUPPORT | ||||||
| #define NUMEVENTS 64 | #define NUMEVENTS 64 | ||||||
| 
 | 
 | ||||||
| static void | static void | ||||||
|  | @ -718,7 +773,11 @@ xf86OSMouseInit(int flags) | ||||||
|     p->SetBMRes = SetSysMouseRes; |     p->SetBMRes = SetSysMouseRes; | ||||||
|     p->SetMiscRes = SetSysMouseRes; |     p->SetMiscRes = SetSysMouseRes; | ||||||
| #endif | #endif | ||||||
| #if defined(__FreeBSD__) | #if defined(__OpenBSD__) && defined(WSCONS_SUPPORT) | ||||||
|  |     p->SetupAuto = SetupAuto; | ||||||
|  |     p->SetMiscRes = SetMouseRes; | ||||||
|  | #endif | ||||||
|  | #if defined(__FreeBSD__) || defined(__OpenBSD__) | ||||||
|     p->FindDevice = FindDevice; |     p->FindDevice = FindDevice; | ||||||
| #endif | #endif | ||||||
|     p->PreInit = bsdMousePreInit; |     p->PreInit = bsdMousePreInit; | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/bus/Pci.c,v 1.81 2003/09/24 02:43:34 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/bus/Pci.c,v 1.82 2004/01/16 15:39:04 tsi Exp $ */ | ||||||
| /*
 | /*
 | ||||||
|  * Pci.c - New server PCI access functions |  * Pci.c - New server PCI access functions | ||||||
|  * |  * | ||||||
|  | @ -1016,7 +1016,9 @@ xf86scanpci(int flags) | ||||||
| 	    if (!(devp->pci_bridge_control & PCI_PCI_BRIDGE_MASTER_ABORT_EN)) | 	    if (!(devp->pci_bridge_control & PCI_PCI_BRIDGE_MASTER_ABORT_EN)) | ||||||
| 		break; | 		break; | ||||||
| 	    pciWriteByte(tag, PCI_PCI_BRIDGE_CONTROL_REG, | 	    pciWriteByte(tag, PCI_PCI_BRIDGE_CONTROL_REG, | ||||||
| 		devp->pci_bridge_control & ~PCI_PCI_BRIDGE_MASTER_ABORT_EN); | 		devp->pci_bridge_control & | ||||||
|  | 		     ~(PCI_PCI_BRIDGE_MASTER_ABORT_EN | | ||||||
|  | 		       PCI_PCI_BRIDGE_SECONDARY_RESET)); | ||||||
| 	    break; | 	    break; | ||||||
| 
 | 
 | ||||||
| 	default: | 	default: | ||||||
|  | @ -1079,7 +1081,7 @@ xf86scanpci(int flags) | ||||||
| 	    if (!(devp->pci_bridge_control & PCI_PCI_BRIDGE_MASTER_ABORT_EN)) | 	    if (!(devp->pci_bridge_control & PCI_PCI_BRIDGE_MASTER_ABORT_EN)) | ||||||
| 		break; | 		break; | ||||||
| 	    pciWriteByte(devp->tag, PCI_PCI_BRIDGE_CONTROL_REG, | 	    pciWriteByte(devp->tag, PCI_PCI_BRIDGE_CONTROL_REG, | ||||||
| 		devp->pci_bridge_control); | 		devp->pci_bridge_control & ~PCI_PCI_BRIDGE_SECONDARY_RESET); | ||||||
| 	    break; | 	    break; | ||||||
| 
 | 
 | ||||||
| 	default: | 	default: | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| /* $XdotOrg$ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/bus/Pci.h,v 1.45 2004/02/02 03:55:31 dawes Exp $ */ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/bus/Pci.h,v 1.44 2003/11/07 23:57:47 dawes Exp $ */ |  | ||||||
| /*
 | /*
 | ||||||
|  * Copyright 1998 by Concurrent Computer Corporation |  * Copyright 1998 by Concurrent Computer Corporation | ||||||
|  * |  * | ||||||
|  | @ -262,7 +261,7 @@ | ||||||
| #  define INCLUDE_XF86_NO_DOMAIN | #  define INCLUDE_XF86_NO_DOMAIN | ||||||
| # endif | # endif | ||||||
| # define XF86SCANPCI_WRAPPER ia64ScanPCIWrapper | # define XF86SCANPCI_WRAPPER ia64ScanPCIWrapper | ||||||
| #elif defined(__i386__) || defined(__i386) | #elif defined(__i386__) || defined(i386) | ||||||
| # define ARCH_PCI_INIT ix86PciInit | # define ARCH_PCI_INIT ix86PciInit | ||||||
| # define INCLUDE_XF86_MAP_PCI_MEM | # define INCLUDE_XF86_MAP_PCI_MEM | ||||||
| # define INCLUDE_XF86_NO_DOMAIN | # define INCLUDE_XF86_NO_DOMAIN | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| /* $XdotOrg: xc/programs/Xserver/hw/xfree86/os-support/bus/zx1PCI.c,v 1.6 2003/12/11 17:11:39 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/bus/zx1PCI.c,v 1.8 2004/01/16 15:39:38 tsi Exp $ */ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/bus/zx1PCI.c,v 1.6 2003/12/11 17:11:39 tsi Exp $ */ |  | ||||||
| /*
 | /*
 | ||||||
|  * Copyright (C) 2002-2003 The XFree86 Project, Inc.  All Rights Reserved. |  * Copyright (C) 2002-2003 The XFree86 Project, Inc.  All Rights Reserved. | ||||||
|  * |  * | ||||||
|  | @ -98,9 +97,10 @@ | ||||||
| #define LBA_PORT5_CNTRL		0x1228U | #define LBA_PORT5_CNTRL		0x1228U | ||||||
| #define LBA_PORT6_CNTRL		0x1230U | #define LBA_PORT6_CNTRL		0x1230U | ||||||
| #define LBA_PORT7_CNTRL		0x1238U | #define LBA_PORT7_CNTRL		0x1238U | ||||||
| #define LBA_ROPE_RESET		  0x01UL | #define LBA_RESET_FUNCTION	  0x0000000001UL | ||||||
| #define LBA_CLEAR_ERROR		  0x10UL | #define LBA_CLEAR_ERROR		  0x0000000010UL | ||||||
| #define LBA_HARD_FAIL		  0x40UL | #define LBA_HARD_FAIL		  0x0000000040UL | ||||||
|  | #define LBA_RESET_COMPLETE	  0x0100000000UL | ||||||
| 
 | 
 | ||||||
| #define ROPE_PAGE_CONTROL	0x1418U | #define ROPE_PAGE_CONTROL	0x1418U | ||||||
| 
 | 
 | ||||||
|  | @ -118,8 +118,11 @@ | ||||||
| #define IOA_SUBORDINATE_BUS	0x0059U | #define IOA_SUBORDINATE_BUS	0x0059U | ||||||
| 
 | 
 | ||||||
| #define IOA_CONTROL		0x0108U | #define IOA_CONTROL		0x0108U | ||||||
| #define IOA_FORWARD_VGA		  0x08UL | #define IOA_RESET_FUNCTION	  0x0000000001UL | ||||||
| #define IOA_HARD_FAIL		  0x40UL | #define IOA_FORWARD_VGA		  0x0000000008UL | ||||||
|  | #define IOA_CLEAR_ERROR		  0x0000000010UL | ||||||
|  | #define IOA_HARD_FAIL		  0x0000000040UL | ||||||
|  | #define IOA_RESET_COMPLETE	  0x0100000000UL | ||||||
| 
 | 
 | ||||||
| #define IOA_LMMIO_BASE		0x0200U | #define IOA_LMMIO_BASE		0x0200U | ||||||
| #define IOA_LMMIO_MASK		0x0208U | #define IOA_LMMIO_MASK		0x0208U | ||||||
|  | @ -135,12 +138,33 @@ | ||||||
| #define IOA_ELMMIO_MASK		0x0258U | #define IOA_ELMMIO_MASK		0x0258U | ||||||
| #define IOA_EIOS_BASE		0x0260U | #define IOA_EIOS_BASE		0x0260U | ||||||
| #define IOA_EIOS_MASK		0x0268U | #define IOA_EIOS_MASK		0x0268U | ||||||
| 
 | #define IOA_GLOBAL_MASK		0x0270U | ||||||
| #define IOA_SLAVE_CONTROL	0x0278U | #define IOA_SLAVE_CONTROL	0x0278U | ||||||
| #define IOA_VGA_PEER_ENABLE	  0x2000UL | #define IOA_VGA_PEER_ENABLE	  0x2000UL | ||||||
| #define IOA_MSI_BASE		0x0280U | #define IOA_MSI_BASE		0x0280U | ||||||
| #define IOA_MSI_MASK		0x0288U | #define IOA_MSI_MASK		0x0288U | ||||||
| 
 | 
 | ||||||
|  | #define IOA_DMA_BASE		0x02B0U | ||||||
|  | #define IOA_DMA_MASK		0x02B8U | ||||||
|  | 
 | ||||||
|  | #define IOA_ERROR_CONFIG	0x0680U | ||||||
|  | #define IOA_ERROR_PIOWRITE	  0x0001UL | ||||||
|  | #define IOA_ERROR_PIOREAD	  0x0002UL | ||||||
|  | #define IOA_ERROR_DMAWRITE	  0x0004UL | ||||||
|  | #define IOA_ERROR_DMAREAD	  0x0008UL | ||||||
|  | #define IOA_ERROR_CONFIG_MASTER	  0x0010UL | ||||||
|  | #define IOA_ERROR_SMART		  0x0020UL | ||||||
|  | #define IOA_ERROR_FATAL_SERR	  0x0040UL | ||||||
|  | #define IOA_ERROR_ASSERT_SERR	  0x0080UL | ||||||
|  | /*	?			  0x0100UL */ | ||||||
|  | #define IOA_ERROR_LOOPBACK	  0x0200UL | ||||||
|  | #define IOA_ERROR_CONFIG_TARGET	  0x0400UL | ||||||
|  | #define IOA_ERROR_IO_MASTER	  0x0800UL | ||||||
|  | #define IOA_ERROR_IO_TARGET	  0x1000UL | ||||||
|  | #define IOA_ERROR_MEM_MASTER	  0x2000UL | ||||||
|  | #define IOA_ERROR_MEM_TARGET	  0x4000UL | ||||||
|  | #define IOA_ERROR_HF_IO_FATAL	  0x8000UL | ||||||
|  | 
 | ||||||
| #define RANGE_ENABLE		0x01UL		/* In various base registers */ | #define RANGE_ENABLE		0x01UL		/* In various base registers */ | ||||||
| 
 | 
 | ||||||
| #define IO_MASK			((1UL << 16) - 1UL) | #define IO_MASK			((1UL << 16) - 1UL) | ||||||
|  | @ -157,10 +181,15 @@ | ||||||
| static CARD8 *pZX1mio = NULL, | static CARD8 *pZX1mio = NULL, | ||||||
| 	     *pZX1ioa = NULL; | 	     *pZX1ioa = NULL; | ||||||
| 
 | 
 | ||||||
| static INT8   zx1_ropemap[8];		/* One for each (potential) rope */ | /* Per-rope data */ | ||||||
| static CARD64 zx1_lbacntl[8];		/*  "   "   "        "       "   */ | static INT8   zx1_ropemap[8]; | ||||||
|  | static CARD32 zx1_pciids[8]; | ||||||
|  | static CARD64 zx1_lbacntl[8]; | ||||||
| static int    zx1_busno[8], zx1_subno[8]; | static int    zx1_busno[8], zx1_subno[8]; | ||||||
| 
 | 
 | ||||||
|  | /* Array of Booleans for non-empty buses */ | ||||||
|  | static INT8   zx1_busnmpt[MAX_PCI_BUSES]; | ||||||
|  | 
 | ||||||
| static pciBusFuncs_t zx1BusFuncs; | static pciBusFuncs_t zx1BusFuncs; | ||||||
| static int           zx1_fakebus = -1; | static int           zx1_fakebus = -1; | ||||||
| static Bool          zx1_hasvga = FALSE; | static Bool          zx1_hasvga = FALSE; | ||||||
|  | @ -293,7 +322,8 @@ ControlZX1Bridge(int bus, CARD16 mask, CARD16 value) | ||||||
| 	 * SLAVE_CONTROL register. | 	 * SLAVE_CONTROL register. | ||||||
| 	 */ | 	 */ | ||||||
| 	tmp1 = MIO_QUAD(VGA_ROUTE); | 	tmp1 = MIO_QUAD(VGA_ROUTE); | ||||||
| 	tmp2 = IOA_QUAD(ropenum, IOA_CONTROL); | 	tmp2 = IOA_QUAD(ropenum, IOA_CONTROL) & | ||||||
|  | 	    ~(IOA_RESET_FUNCTION | IOA_CLEAR_ERROR); | ||||||
| 	if ((tmp1 & VGA_ENABLE) && ((tmp1 & 0x07UL) == ropenum)) { | 	if ((tmp1 & VGA_ENABLE) && ((tmp1 & 0x07UL) == ropenum)) { | ||||||
| 	    current |= PCI_PCI_BRIDGE_VGA_EN; | 	    current |= PCI_PCI_BRIDGE_VGA_EN; | ||||||
| 	    if ((mask & PCI_PCI_BRIDGE_VGA_EN) && | 	    if ((mask & PCI_PCI_BRIDGE_VGA_EN) && | ||||||
|  | @ -316,8 +346,9 @@ ControlZX1Bridge(int bus, CARD16 mask, CARD16 value) | ||||||
| 		    MIO_QUAD(VGA_ROUTE) = 0UL; | 		    MIO_QUAD(VGA_ROUTE) = 0UL; | ||||||
| 		    tmp3 = IOA_QUAD(tmp1 & 0x07UL, IOA_CONTROL); | 		    tmp3 = IOA_QUAD(tmp1 & 0x07UL, IOA_CONTROL); | ||||||
| 		    if (tmp3 & IOA_FORWARD_VGA) | 		    if (tmp3 & IOA_FORWARD_VGA) | ||||||
| 			IOA_QUAD(tmp1 & 0x07UL, IOA_CONTROL) = | 			IOA_QUAD(tmp1 & 0x07UL, IOA_CONTROL) = tmp3 & | ||||||
| 			    tmp3 & ~IOA_FORWARD_VGA; | 			    ~(IOA_RESET_FUNCTION | IOA_FORWARD_VGA | | ||||||
|  | 			      IOA_CLEAR_ERROR); | ||||||
| 		} | 		} | ||||||
| 		if (!(tmp2 & IOA_FORWARD_VGA)) { | 		if (!(tmp2 & IOA_FORWARD_VGA)) { | ||||||
| 		    tmp2 |= IOA_FORWARD_VGA; | 		    tmp2 |= IOA_FORWARD_VGA; | ||||||
|  | @ -330,7 +361,7 @@ ControlZX1Bridge(int bus, CARD16 mask, CARD16 value) | ||||||
| 
 | 
 | ||||||
| 	/* Move on to master abort failure enablement */ | 	/* Move on to master abort failure enablement */ | ||||||
| 	tmp1 = MIO_QUAD((ropenum << 3) + LBA_PORT0_CNTRL) & | 	tmp1 = MIO_QUAD((ropenum << 3) + LBA_PORT0_CNTRL) & | ||||||
| 	       ~(LBA_ROPE_RESET | LBA_CLEAR_ERROR); | 	       ~(LBA_RESET_FUNCTION | LBA_CLEAR_ERROR); | ||||||
| 	if ((tmp1 & LBA_HARD_FAIL) || (tmp2 & IOA_HARD_FAIL)) { | 	if ((tmp1 & LBA_HARD_FAIL) || (tmp2 & IOA_HARD_FAIL)) { | ||||||
| 	    current |= PCI_PCI_BRIDGE_MASTER_ABORT_EN; | 	    current |= PCI_PCI_BRIDGE_MASTER_ABORT_EN; | ||||||
| 	    if ((mask & PCI_PCI_BRIDGE_MASTER_ABORT_EN) && | 	    if ((mask & PCI_PCI_BRIDGE_MASTER_ABORT_EN) && | ||||||
|  | @ -521,14 +552,14 @@ xf86PreScanZX1(void) | ||||||
| 
 | 
 | ||||||
| 	    /* Prevent hard-fails */ | 	    /* Prevent hard-fails */ | ||||||
| 	    zx1_lbacntl[i] = MIO_QUAD((i << 3) + LBA_PORT0_CNTRL) & | 	    zx1_lbacntl[i] = MIO_QUAD((i << 3) + LBA_PORT0_CNTRL) & | ||||||
| 		~(LBA_ROPE_RESET | LBA_CLEAR_ERROR); | 		~(LBA_RESET_FUNCTION | LBA_CLEAR_ERROR); | ||||||
| 	    if (zx1_lbacntl[i] & LBA_HARD_FAIL) | 	    if (zx1_lbacntl[i] & LBA_HARD_FAIL) | ||||||
| 		MIO_QUAD((i << 3) + LBA_PORT0_CNTRL) = | 		MIO_QUAD((i << 3) + LBA_PORT0_CNTRL) = | ||||||
| 		    zx1_lbacntl[i] & ~LBA_HARD_FAIL; | 		    zx1_lbacntl[i] & ~LBA_HARD_FAIL; | ||||||
| 
 | 
 | ||||||
| 	    /* Poke for an ioa */ | 	    /* Poke for an ioa */ | ||||||
| 	    tmp = IOA_LONG(i, PCI_ID_REG); | 	    zx1_pciids[i] = IOA_LONG(i, PCI_ID_REG); | ||||||
| 	    switch ((CARD32)tmp) { | 	    switch (zx1_pciids[i]) { | ||||||
| 	    case DEVID(VENDOR_HP, CHIP_ELROY): | 	    case DEVID(VENDOR_HP, CHIP_ELROY): | ||||||
| 	    case DEVID(VENDOR_HP, CHIP_ZX1_LBA):	/* Mercury */ | 	    case DEVID(VENDOR_HP, CHIP_ZX1_LBA):	/* Mercury */ | ||||||
| 	    case DEVID(VENDOR_HP, CHIP_ZX1_AGP8):	/* QuickSilver */ | 	    case DEVID(VENDOR_HP, CHIP_ZX1_AGP8):	/* QuickSilver */ | ||||||
|  | @ -540,10 +571,10 @@ xf86PreScanZX1(void) | ||||||
| 		break; | 		break; | ||||||
| 
 | 
 | ||||||
| 	    default: | 	    default: | ||||||
| 		if ((CARD16)(tmp + 1U) > (CARD16)1U) | 		if ((CARD16)(zx1_pciids[i] + 1U) > (CARD16)1U) | ||||||
| 		    xf86MsgVerb(X_NOTICE, 0, | 		    xf86MsgVerb(X_NOTICE, 0, | ||||||
| 			"HP ZX1:  Unexpected vendor/device id 0x%08X" | 			"HP ZX1:  Unexpected vendor/device id 0x%08X" | ||||||
| 			" on rope %d\n", (CARD32)tmp, i); | 			" on rope %d\n", zx1_pciids[i], i); | ||||||
| 		/* Nobody home, or not the "right" kind of rope guest */ | 		/* Nobody home, or not the "right" kind of rope guest */ | ||||||
| 
 | 
 | ||||||
| 		/*
 | 		/*
 | ||||||
|  | @ -907,6 +938,9 @@ xf86PostScanZX1(void) | ||||||
|     if (!pZX1mio) |     if (!pZX1mio) | ||||||
| 	return; | 	return; | ||||||
| 
 | 
 | ||||||
|  |     (void)memset(zx1_busnmpt, FALSE, sizeof(zx1_busnmpt)); | ||||||
|  |     pBusInfo = pciBusInfo[0]; | ||||||
|  | 
 | ||||||
|     /*
 |     /*
 | ||||||
|      * Certain 2.4 & 2.5 Linux kernels add fake PCI devices.  Remove them to |      * Certain 2.4 & 2.5 Linux kernels add fake PCI devices.  Remove them to | ||||||
|      * prevent any possible interference with our PCI validation. |      * prevent any possible interference with our PCI validation. | ||||||
|  | @ -930,6 +964,8 @@ xf86PostScanZX1(void) | ||||||
| 	    *ppPCI++ = pPCI; | 	    *ppPCI++ = pPCI; | ||||||
| 	    idx++; | 	    idx++; | ||||||
| 
 | 
 | ||||||
|  | 	    zx1_busnmpt[pPCI->busnum] = TRUE; | ||||||
|  | 
 | ||||||
| 	    if (zx1_hasvga) | 	    if (zx1_hasvga) | ||||||
| 		continue; | 		continue; | ||||||
| 
 | 
 | ||||||
|  | @ -954,8 +990,8 @@ xf86PostScanZX1(void) | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     /*
 |     /*
 | ||||||
|      * Restore hard-fail settings and figure out the actual subordinate bus |      * Restore hard-fail settings and figure out the actual secondary and | ||||||
|      * numbers. |      * subordinate bus numbers. | ||||||
|      */ |      */ | ||||||
|     for (i = 0;  i < 8;  i++) { |     for (i = 0;  i < 8;  i++) { | ||||||
| 	if (zx1_ropemap[i] != i) | 	if (zx1_ropemap[i] != i) | ||||||
|  | @ -969,6 +1005,14 @@ xf86PostScanZX1(void) | ||||||
| 
 | 
 | ||||||
| 	if (zx1_fakebus <= zx1_subno[i]) | 	if (zx1_fakebus <= zx1_subno[i]) | ||||||
| 	    zx1_fakebus = zx1_subno[i] + 1; | 	    zx1_fakebus = zx1_subno[i] + 1; | ||||||
|  | 
 | ||||||
|  | 	while (!zx1_busnmpt[zx1_busno[i]]) { | ||||||
|  | 	    if (zx1_busno[i])	/* Info for bus zero is in static storage */ | ||||||
|  | 		xfree(pciBusInfo[zx1_busno[i]]); | ||||||
|  | 	    pciBusInfo[zx1_busno[i]++] = NULL; | ||||||
|  | 	    if (zx1_busno[i] > zx1_subno[i]) | ||||||
|  | 		break; | ||||||
|  | 	} | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     if (zx1_fakebus >= pciNumBuses) { |     if (zx1_fakebus >= pciNumBuses) { | ||||||
|  | @ -978,13 +1022,13 @@ xf86PostScanZX1(void) | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     /* Set up our extra bus functions */ |     /* Set up our extra bus functions */ | ||||||
|     zx1BusFuncs = *(pciBusInfo[0]->funcs); |     zx1BusFuncs = *(pBusInfo->funcs); | ||||||
|     zx1BusFuncs.pciControlBridge = ControlZX1Bridge; |     zx1BusFuncs.pciControlBridge = ControlZX1Bridge; | ||||||
|     zx1BusFuncs.pciGetBridgeResources = GetZX1BridgeResources; |     zx1BusFuncs.pciGetBridgeResources = GetZX1BridgeResources; | ||||||
| 
 | 
 | ||||||
|     /* Set up our own fake bus to act as the root segment */ |     /* Set up our own fake bus to act as the root segment */ | ||||||
|     zx1FakeBus.configMech = pciBusInfo[0]->configMech; |     zx1FakeBus.configMech = pBusInfo->configMech; | ||||||
|     zx1FakeBus.numDevices = pciBusInfo[0]->numDevices; |     zx1FakeBus.numDevices = pBusInfo->numDevices; | ||||||
|     zx1FakeBus.primary_bus = zx1_fakebus; |     zx1FakeBus.primary_bus = zx1_fakebus; | ||||||
|     pciBusInfo[zx1_fakebus] = &zx1FakeBus; |     pciBusInfo[zx1_fakebus] = &zx1FakeBus; | ||||||
| 
 | 
 | ||||||
|  | @ -1019,7 +1063,8 @@ xf86PostScanZX1(void) | ||||||
| 
 | 
 | ||||||
|     /* Add a fake PCI-to-PCI bridge to represent each active rope */ |     /* Add a fake PCI-to-PCI bridge to represent each active rope */ | ||||||
|     for (i = 0;  i < 8;  i++) { |     for (i = 0;  i < 8;  i++) { | ||||||
| 	if ((zx1_ropemap[i] != i) || !(pBusInfo = pciBusInfo[zx1_busno[i]])) | 	if ((zx1_ropemap[i] != i) || (zx1_busno[i] > zx1_subno[i]) || | ||||||
|  | 	    !(pBusInfo = pciBusInfo[zx1_busno[i]])) | ||||||
| 	    continue; | 	    continue; | ||||||
| 
 | 
 | ||||||
| 	if (++idx >= MAX_PCI_DEVICES) | 	if (++idx >= MAX_PCI_DEVICES) | ||||||
|  | @ -1029,7 +1074,7 @@ xf86PostScanZX1(void) | ||||||
| 	pPCI->devnum = i | 0x10; | 	pPCI->devnum = i | 0x10; | ||||||
|      /* pPCI->funcnum = 0; */ |      /* pPCI->funcnum = 0; */ | ||||||
| 	pPCI->tag = PCI_MAKE_TAG(zx1_fakebus, pPCI->devnum, 0); | 	pPCI->tag = PCI_MAKE_TAG(zx1_fakebus, pPCI->devnum, 0); | ||||||
| 	pPCI->pci_device_vendor = DEVID(VENDOR_HP, CHIP_ZX1_LBA); | 	pPCI->pci_device_vendor = zx1_pciids[i]; | ||||||
| 	pPCI->pci_base_class = PCI_CLASS_BRIDGE; | 	pPCI->pci_base_class = PCI_CLASS_BRIDGE; | ||||||
| 	pPCI->pci_sub_class = PCI_SUBCLASS_BRIDGE_PCI; | 	pPCI->pci_sub_class = PCI_SUBCLASS_BRIDGE_PCI; | ||||||
| 	pPCI->pci_header_type = 1; | 	pPCI->pci_header_type = 1; | ||||||
|  | @ -1045,6 +1090,9 @@ xf86PostScanZX1(void) | ||||||
| 	/* Plug in chipset routines */ | 	/* Plug in chipset routines */ | ||||||
| 	pBusInfo->funcs = &zx1BusFuncs; | 	pBusInfo->funcs = &zx1BusFuncs; | ||||||
| 
 | 
 | ||||||
|  | 	/* Set bridge control register for scanpci utility */ | ||||||
|  | 	pPCI->pci_bridge_control = ControlZX1Bridge(zx1_busno[i], 0, 0); | ||||||
|  | 
 | ||||||
| #ifdef OLD_FORMAT | #ifdef OLD_FORMAT | ||||||
| 	xf86MsgVerb(X_INFO, 2, "PCI: BusID 0x%.2x,0x%02x,0x%1x " | 	xf86MsgVerb(X_INFO, 2, "PCI: BusID 0x%.2x,0x%02x,0x%1x " | ||||||
| 		    "ID 0x%04x,0x%04x Rev 0x%02x Class 0x%02x,0x%02x\n", | 		    "ID 0x%04x,0x%04x Rev 0x%02x Class 0x%02x,0x%02x\n", | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/int10/linux.c,v 1.31 2003/09/24 02:43:35 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/int10/linux.c,v 1.32 2004/02/05 18:24:59 eich Exp $ */ | ||||||
| /* $XdotOrg$ */ |  | ||||||
| /*
 | /*
 | ||||||
|  * linux specific part of the int10 module |  * linux specific part of the int10 module | ||||||
|  * Copyright 1999, 2000, 2001, 2002, 2003, 2004 Egbert Eich |  * Copyright 1999, 2000, 2001, 2002, 2003, 2004 Egbert Eich | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/lnxResource.c,v 3.18 2002/01/25 21:56:19 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/lnxResource.c,v 3.19 2004/02/04 16:30:50 tsi Exp $ */ | ||||||
| 
 | 
 | ||||||
| /* Resource information code */ | /* Resource information code */ | ||||||
| 
 | 
 | ||||||
|  | @ -190,7 +190,8 @@ xf86AccResFromOS(resPtr ret) | ||||||
|       defined(__s390__) || \ |       defined(__s390__) || \ | ||||||
|       defined(__hppa__) |       defined(__hppa__) | ||||||
| 
 | 
 | ||||||
|  /* XXX this isn't exactly correct but it will get the server working 
 |  /*
 | ||||||
|  |   * XXX this isn't exactly correct but it will get the server working  | ||||||
|   * for now until we get something better. |   * for now until we get something better. | ||||||
|   */ |   */ | ||||||
|    |    | ||||||
|  | @ -203,7 +204,7 @@ xf86BusAccWindowsFromOS(void) | ||||||
|     RANGE(range, 0x00000000, 0xffffffff, ResExcMemBlock); |     RANGE(range, 0x00000000, 0xffffffff, ResExcMemBlock); | ||||||
|     ret = xf86AddResToList(ret, &range, -1); |     ret = xf86AddResToList(ret, &range, -1); | ||||||
| 
 | 
 | ||||||
| #ifdef __sparc__ | #if defined(__sparc__) || defined(__powerpc__) | ||||||
|     RANGE(range, 0x00000000, 0x00ffffff, ResExcIoBlock); |     RANGE(range, 0x00000000, 0x00ffffff, ResExcIoBlock); | ||||||
| #else | #else | ||||||
|     RANGE(range, 0x00000000, 0x0000ffff, ResExcIoBlock); |     RANGE(range, 0x00000000, 0x0000ffff, ResExcIoBlock); | ||||||
|  | @ -221,7 +222,7 @@ xf86PciBusAccWindowsFromOS(void) | ||||||
|     RANGE(range, 0x00000000, 0xffffffff, ResExcMemBlock); |     RANGE(range, 0x00000000, 0xffffffff, ResExcMemBlock); | ||||||
|     ret = xf86AddResToList(ret, &range, -1); |     ret = xf86AddResToList(ret, &range, -1); | ||||||
| 
 | 
 | ||||||
| #ifdef __sparc__ | #if defined(__sparc__) || defined(__powerpc__) | ||||||
|     RANGE(range, 0x00000000, 0x00ffffff, ResExcIoBlock); |     RANGE(range, 0x00000000, 0x00ffffff, ResExcIoBlock); | ||||||
| #else | #else | ||||||
|     RANGE(range, 0x00000000, 0x0000ffff, ResExcIoBlock); |     RANGE(range, 0x00000000, 0x0000ffff, ResExcIoBlock); | ||||||
|  | @ -230,7 +231,7 @@ xf86PciBusAccWindowsFromOS(void) | ||||||
|     return ret; |     return ret; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| #ifdef INCLUDE_UNUSED */ | #ifdef INCLUDE_UNUSED | ||||||
| 
 | 
 | ||||||
| resPtr | resPtr | ||||||
| xf86IsaBusAccWindowsFromOS(void) | xf86IsaBusAccWindowsFromOS(void) | ||||||
|  | @ -241,7 +242,7 @@ xf86IsaBusAccWindowsFromOS(void) | ||||||
|     RANGE(range, 0x00000000, 0xffffffff, ResExcMemBlock); |     RANGE(range, 0x00000000, 0xffffffff, ResExcMemBlock); | ||||||
|     ret = xf86AddResToList(ret, &range, -1); |     ret = xf86AddResToList(ret, &range, -1); | ||||||
| 
 | 
 | ||||||
| #ifdef __sparc__ | #if defined(__sparc__) || defined(__powerpc__) | ||||||
|     RANGE(range, 0x00000000, 0x00ffffff, ResExcIoBlock); |     RANGE(range, 0x00000000, 0x00ffffff, ResExcIoBlock); | ||||||
| #else | #else | ||||||
|     RANGE(range, 0x00000000, 0x0000ffff, ResExcIoBlock); |     RANGE(range, 0x00000000, 0x0000ffff, ResExcIoBlock); | ||||||
|  | @ -267,7 +268,7 @@ xf86AccResFromOS(resPtr ret) | ||||||
|     ret = xf86AddResToList(ret, &range, -1); |     ret = xf86AddResToList(ret, &range, -1); | ||||||
|     RANGE(range, 0x00000000, 0x00000000, ResExcIoBlock); |     RANGE(range, 0x00000000, 0x00000000, ResExcIoBlock); | ||||||
|     ret = xf86AddResToList(ret, &range, -1); |     ret = xf86AddResToList(ret, &range, -1); | ||||||
| #ifdef __sparc__ | #if defined(__sparc__) || defined(__powerpc__) | ||||||
|     RANGE(range, 0x00ffffff, 0x00ffffff, ResExcIoBlock); |     RANGE(range, 0x00ffffff, 0x00ffffff, ResExcIoBlock); | ||||||
| #else | #else | ||||||
|     RANGE(range, 0x0000ffff, 0x0000ffff, ResExcIoBlock); |     RANGE(range, 0x0000ffff, 0x0000ffff, ResExcIoBlock); | ||||||
|  |  | ||||||
|  | @ -0,0 +1,57 @@ | ||||||
|  | /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/misc/PortIO.S,v 1.1 2004/02/02 03:55:32 dawes Exp $ */ | ||||||
|  | 
 | ||||||
|  | /* Port I/O functions for platforms with no inlining. */ | ||||||
|  | 
 | ||||||
|  | #include "assyntax.h" | ||||||
|  | 
 | ||||||
|  | 	FILE("PortIO.s") | ||||||
|  | 
 | ||||||
|  | 	AS_BEGIN | ||||||
|  | 
 | ||||||
|  | 	GLOBL	GLNAME(outb) | ||||||
|  | 	GLOBL	GLNAME(outw) | ||||||
|  | 	GLOBL	GLNAME(outl) | ||||||
|  | 	GLOBL	GLNAME(inb) | ||||||
|  | 	GLOBL	GLNAME(inw) | ||||||
|  | 	GLOBL	GLNAME(inl) | ||||||
|  | 
 | ||||||
|  | 	SEG_TEXT | ||||||
|  | 	ALIGNTEXT4 | ||||||
|  | GLNAME(outb): | ||||||
|  | 	MOV_L	(REGOFF(4,ESP), EDX) | ||||||
|  | 	MOV_L	(REGOFF(8,ESP), EAX) | ||||||
|  | 	OUT_B | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | 	ALIGNTEXT4 | ||||||
|  | GLNAME(outw): | ||||||
|  | 	MOV_L	(REGOFF(4,ESP), EDX) | ||||||
|  | 	MOV_L	(REGOFF(8,ESP), EAX) | ||||||
|  | 	OUT_W | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | 	ALIGNTEXT4 | ||||||
|  | GLNAME(outl): | ||||||
|  | 	MOV_L	(REGOFF(4,ESP), EDX) | ||||||
|  | 	MOV_L	(REGOFF(8,ESP), EAX) | ||||||
|  | 	OUT_L | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | 	ALIGNTEXT4 | ||||||
|  | GLNAME(inb): | ||||||
|  | 	MOV_L	(REGOFF(4,ESP), EDX) | ||||||
|  | 	IN_B | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | 	ALIGNTEXT4 | ||||||
|  | GLNAME(inw): | ||||||
|  | 	MOV_L	(REGOFF(4,ESP), EDX) | ||||||
|  | 	IN_L | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | 	ALIGNTEXT4 | ||||||
|  | GLNAME(inl): | ||||||
|  | 	MOV_L	(REGOFF(4,ESP), EDX) | ||||||
|  | 	IN_L | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | @ -4,7 +4,7 @@ | ||||||
|   for Alpha Linux |   for Alpha Linux | ||||||
| *******************************************************************************/ | *******************************************************************************/ | ||||||
| 
 | 
 | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/misc/SlowBcopy.c,v 1.6 2003/04/07 16:23:39 eich Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/misc/SlowBcopy.c,v 1.7 2004/02/11 22:06:21 tsi Exp $ */ | ||||||
|   |   | ||||||
| /* 
 | /* 
 | ||||||
|  *   Create a dependency that should be immune from the effect of register |  *   Create a dependency that should be immune from the effect of register | ||||||
|  | @ -26,13 +26,13 @@ | ||||||
| void | void | ||||||
| xf86SlowBcopy(unsigned char *src, unsigned char *dst, int len) | xf86SlowBcopy(unsigned char *src, unsigned char *dst, int len) | ||||||
| { | { | ||||||
| #if defined(__ia64__) |  | ||||||
|     outb(0x80, 0x00); |  | ||||||
| #endif |  | ||||||
|     while(len--) |     while(len--) | ||||||
|     { |     { | ||||||
| 	*dst++ = *src++; | 	*dst++ = *src++; | ||||||
| #if !defined(__sparc__) && !defined(__powerpc__) && !defined(__mips__) | #if !defined(__sparc__) && \ | ||||||
|  |     !defined(__powerpc__) && \ | ||||||
|  |     !defined(__mips__) && \ | ||||||
|  |     !defined(__ia64__) | ||||||
| 	outb(0x80, 0x00); | 	outb(0x80, 0x00); | ||||||
| #endif | #endif | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  | @ -7,7 +7,7 @@ | ||||||
| #	so if you have anything to contribute, please visit the home page or | #	so if you have anything to contribute, please visit the home page or | ||||||
| #	send a diff -u against the most recent pci.ids to pci-ids@ucw.cz. | #	send a diff -u against the most recent pci.ids to pci-ids@ucw.cz. | ||||||
| # | # | ||||||
| #	Daily snapshot on Thu 2003-12-18 11:00:05 | #	Daily snapshot on Sun 2004-02-15 11:00:07 | ||||||
| # | # | ||||||
| 
 | 
 | ||||||
| # Vendors, devices and subsystems. Please keep sorted. | # Vendors, devices and subsystems. Please keep sorted. | ||||||
|  | @ -24,6 +24,12 @@ | ||||||
| # Real TJN ID is e159, but they got it wrong several times --mj | # Real TJN ID is e159, but they got it wrong several times --mj | ||||||
| 0059  Tiger Jet Network Inc. (Wrong ID) | 0059  Tiger Jet Network Inc. (Wrong ID) | ||||||
| 0070  Hauppauge computer works Inc. | 0070  Hauppauge computer works Inc. | ||||||
|  | # WinTV Personal Video Recorder 350 (video capture card) | ||||||
|  | 	4000  WinTV PVR-350 | ||||||
|  | # WinTV Personal Video Recorder 250 (video capture card) - original release | ||||||
|  | 	4001  WinTV PVR-250 (v1) | ||||||
|  | # WinTV Personal Video Recorder 250 (video capture card) | ||||||
|  | 	4009  WinTV PVR-250 | ||||||
| 0100  Ncipher Corp Ltd | 0100  Ncipher Corp Ltd | ||||||
| 0675  Dynalink | 0675  Dynalink | ||||||
| 	1700  IS64PH ISDN Adapter | 	1700  IS64PH ISDN Adapter | ||||||
|  | @ -168,11 +174,36 @@ | ||||||
| 1002  ATI Technologies Inc | 1002  ATI Technologies Inc | ||||||
| 	4136  Radeon IGP 320 M | 	4136  Radeon IGP 320 M | ||||||
| 	4144  Radeon R300 AD [Radeon 9500 Pro] | 	4144  Radeon R300 AD [Radeon 9500 Pro] | ||||||
| 	4145  Radeon R300 AE [Radeon 9500 Pro] | # New PCI ID provided by ATI developer relations (correction to above) | ||||||
| 	4146  Radeon R300 AF [Radeon 9500 Pro] | 	4145  R300 AE [Radeon 9700 Pro] | ||||||
|  | # New PCI ID provided by ATI developer relations (oops, correction to above) | ||||||
|  | 	4146  R300 AF [Radeon 9700 Pro] | ||||||
| 	4147  Radeon R300 AG [FireGL Z1/X1] | 	4147  Radeon R300 AG [FireGL Z1/X1] | ||||||
|  | # Updated 2 letter ASIC code I initially missed in above entry submission | ||||||
|  | 	4148  Radeon R350 AH [Radeon 9800] | ||||||
|  | # New PCI ID provided by ATI developer relations | ||||||
|  | 	4149  Radeon R350 AI [Radeon 9800] | ||||||
|  | # New PCI ID provided by ATI developer relations | ||||||
|  | 	4150  RV350 AP [Radeon 9600] | ||||||
|  | # New PCI ID provided by ATI developer relations | ||||||
|  | 	4151  RV350 AQ [Radeon 9600] | ||||||
|  | # New PCI ID provided by ATI developer relations | ||||||
|  | 	4152  RV350 AR [Radeon 9600] | ||||||
| 	4158  68800AX [Mach32] | 	4158  68800AX [Mach32] | ||||||
| 	4164  Radeon R300 Secondary (DVI) output | # The PCI ID is unrelated to any DVI output. | ||||||
|  | 	4164  R300 AD [Radeon 9500 Pro] (Secondary) | ||||||
|  | # New PCI ID info provided by ATI developer relations | ||||||
|  | 	4165  R300 AE [Radeon 9700 Pro] (Secondary) | ||||||
|  | # New PCI ID info provided by ATI developer relations | ||||||
|  | 	4166  R300 AF [Radeon 9700 Pro] (Secondary) | ||||||
|  | # New PCI ID provided by ATI developer relations | ||||||
|  | 	4168  Radeon R350 [Radeon 9800] (Secondary) | ||||||
|  | # New PCI ID provided by ATI developer relations (correction to above) | ||||||
|  | 	4170  RV350 AP [Radeon 9600] (Secondary) | ||||||
|  | # New PCI ID provided by ATI developer relations (correction to above) | ||||||
|  | 	4171  RV350 AQ [Radeon 9600] (Secondary) | ||||||
|  | # New PCI ID provided by ATI developer relations (correction to above) | ||||||
|  | 	4172  RV350 AR [Radeon 9600] (Secondary) | ||||||
| 	4242  Radeon R200 BB [Radeon All in Wonder 8500DV] | 	4242  Radeon R200 BB [Radeon All in Wonder 8500DV] | ||||||
| 		1002 02aa  Radeon 8500 AIW DV Edition | 		1002 02aa  Radeon 8500 AIW DV Edition | ||||||
| 	4336  Radeon Mobility U1 | 	4336  Radeon Mobility U1 | ||||||
|  | @ -246,20 +277,20 @@ | ||||||
| 	475a  3D Rage IIC AGP | 	475a  3D Rage IIC AGP | ||||||
| 		1002 0087  Rage 3D IIC | 		1002 0087  Rage 3D IIC | ||||||
| 		1002 475a  Rage IIC AGP | 		1002 475a  Rage IIC AGP | ||||||
| 	4964  Radeon R250 Id [Radeon 9000] | 	4964  Radeon RV250 Id [Radeon 9000] | ||||||
| 	4965  Radeon R250 Ie [Radeon 9000] | 	4965  Radeon RV250 Ie [Radeon 9000] | ||||||
| 	4966  Radeon R250 If [Radeon 9000] | 	4966  Radeon RV250 If [Radeon 9000] | ||||||
| 		10f1 0002  R250 If [Tachyon G9000 PRO] | 		10f1 0002  RV250 If [Tachyon G9000 PRO] | ||||||
| 		148c 2039  R250 If [Radeon 9000 Pro "Evil Commando"] | 		148c 2039  RV250 If [Radeon 9000 Pro "Evil Commando"] | ||||||
| 		1509 9a00  R250 If [Radeon 9000 "AT009"] | 		1509 9a00  RV250 If [Radeon 9000 "AT009"] | ||||||
| # New subdevice - 3D Prophet 9000 PCI by Hercules.  AGP version probably would have same ID, so not specified. | # New subdevice - 3D Prophet 9000 PCI by Hercules. AGP version probably would have same ID, so not specified. | ||||||
| 		1681 0040  R250 If [3D prophet 9000] | 		1681 0040  RV250 If [3D prophet 9000] | ||||||
| 		174b 7176  R250 If [Sapphire Radeon 9000 Pro] | 		174b 7176  RV250 If [Sapphire Radeon 9000 Pro] | ||||||
| 		174b 7192  R250 If [Radeon 9000 "Atlantis"] | 		174b 7192  RV250 If [Radeon 9000 "Atlantis"] | ||||||
| 		17af 2005  R250 If [Excalibur Radeon 9000 Pro] | 		17af 2005  RV250 If [Excalibur Radeon 9000 Pro] | ||||||
| 		17af 2006  R250 If [Excalibur Radeon 9000] | 		17af 2006  RV250 If [Excalibur Radeon 9000] | ||||||
| 	4967  Radeon R250 Ig [Radeon 9000] | 	4967  Radeon RV250 Ig [Radeon 9000] | ||||||
| 	496e  Radeon R250 [Radeon 9000] (Secondary) | 	496e  Radeon RV250 [Radeon 9000] (Secondary) | ||||||
| 	4c42  3D Rage LT Pro AGP-133 | 	4c42  3D Rage LT Pro AGP-133 | ||||||
| 		0e11 b0e8  Rage 3D LT Pro | 		0e11 b0e8  Rage 3D LT Pro | ||||||
| 		0e11 b10e  3D Rage LT Pro (Compaq Armada 1750) | 		0e11 b10e  3D Rage LT Pro (Compaq Armada 1750) | ||||||
|  | @ -312,15 +343,25 @@ | ||||||
| 	4e44  Radeon R300 ND [Radeon 9700 Pro] | 	4e44  Radeon R300 ND [Radeon 9700 Pro] | ||||||
| 	4e45  Radeon R300 NE [Radeon 9500 Pro] | 	4e45  Radeon R300 NE [Radeon 9500 Pro] | ||||||
| 		1002 0002  Radeon R300 NE [Radeon 9500 Pro] | 		1002 0002  Radeon R300 NE [Radeon 9500 Pro] | ||||||
| 	4e46  Radeon R300 NF [Radeon 9700] | # New PCI ID provided by ATI developer relations (correction to above) | ||||||
|  | 	4e46  RV350 NF [Radeon 9600] | ||||||
| 	4e47  Radeon R300 NG [FireGL X1] | 	4e47  Radeon R300 NG [FireGL X1] | ||||||
| 	4e48  Radeon R350 [Radeon 9800] | 	4e48  Radeon R350 [Radeon 9800] | ||||||
|  | # New PCI ID provided by ATI developer relations | ||||||
|  | 	4e49  Radeon R350 [Radeon 9800] | ||||||
|  | # New PCI ID provided by ATI developer relations | ||||||
|  | 	4e50  RV350 [Mobility Radeon 9600 M10] | ||||||
|  | # New PCI ID provided by ATI developer relations | ||||||
|  | 	4e52  RV350 [Mobility Radeon 9600 M10] | ||||||
| 	4e64  Radeon R300 [Radeon 9700 Pro] (Secondary) | 	4e64  Radeon R300 [Radeon 9700 Pro] (Secondary) | ||||||
| 	4e65  Radeon R300 [Radeon 9500 Pro] (Secondary) | 	4e65  Radeon R300 [Radeon 9500 Pro] (Secondary) | ||||||
| 		1002 0003  Radeon R300 NE [Radeon 9500 Pro] | 		1002 0003  Radeon R300 NE [Radeon 9500 Pro] | ||||||
| 	4e66  Radeon R300 [Radeon 9700] (Secondary) | # New PCI ID provided by ATI developer relations (correction to above) | ||||||
|  | 	4e66  RV350 NF [Radeon 9600] (Secondary) | ||||||
| 	4e67  Radeon R300 [FireGL X1] (Secondary) | 	4e67  Radeon R300 [FireGL X1] (Secondary) | ||||||
| 	4e68  Radeon R350 [Radeon 9800] (Secondary) | 	4e68  Radeon R350 [Radeon 9800] (Secondary) | ||||||
|  | # New PCI ID provided by ATI developer relations | ||||||
|  | 	4e69  Radeon R350 [Radeon 9800] (Secondary) | ||||||
| 	5041  Rage 128 PA/PRO | 	5041  Rage 128 PA/PRO | ||||||
| 	5042  Rage 128 PB/PRO AGP 2x | 	5042  Rage 128 PB/PRO AGP 2x | ||||||
| 	5043  Rage 128 PC/PRO AGP 4x | 	5043  Rage 128 PC/PRO AGP 4x | ||||||
|  | @ -3413,7 +3454,8 @@ | ||||||
| 		11bd 0006  DV500 Overlay | 		11bd 0006  DV500 Overlay | ||||||
| 		11bd 000a  DV500 Overlay | 		11bd 000a  DV500 Overlay | ||||||
| 1132  Mitel Corp. | 1132  Mitel Corp. | ||||||
| 1133  Eicon Technology Corporation | # This is the new official company name. See disclaimer on www.eicon.com for details! | ||||||
|  | 1133  Eicon Networks Corporation | ||||||
| 	7901  EiconCard S90 | 	7901  EiconCard S90 | ||||||
| 	7902  EiconCard S90 | 	7902  EiconCard S90 | ||||||
| 	7911  EiconCard S91 | 	7911  EiconCard S91 | ||||||
|  | @ -6238,9 +6280,14 @@ | ||||||
| 16be  Creatix Polymedia GmbH | 16be  Creatix Polymedia GmbH | ||||||
| 16ca  CENATEK Inc | 16ca  CENATEK Inc | ||||||
| 	0001  Rocket Drive DL | 	0001  Rocket Drive DL | ||||||
|  | 16cd  Densitron Technologies | ||||||
|  | # www.pikatechnologies.com | ||||||
|  | 16df  PIKA Technologies Inc. | ||||||
| 16ec  U.S. Robotics | 16ec  U.S. Robotics | ||||||
| 	3685  Wireless Access PCI Adapter Model 022415 | 	3685  Wireless Access PCI Adapter Model 022415 | ||||||
| 16f6  VideoTele.com, Inc. | 16f6  VideoTele.com, Inc. | ||||||
|  | # www.internetmachines.com | ||||||
|  | 1702  Internet Machines Corporation (IMC) | ||||||
| 1705  Digital First, Inc. | 1705  Digital First, Inc. | ||||||
| 170b  NetOctave Inc | 170b  NetOctave Inc | ||||||
| 170c  YottaYotta Inc. | 170c  YottaYotta Inc. | ||||||
|  | @ -6279,6 +6326,9 @@ | ||||||
| 	0601  VSM2 dual PMC carrier | 	0601  VSM2 dual PMC carrier | ||||||
| 	0710  VS14x series PowerPC PCI board | 	0710  VS14x series PowerPC PCI board | ||||||
| 	0720  VS24x series PowerPC PCI board | 	0720  VS24x series PowerPC PCI board | ||||||
|  | # found e.g. on KNC DVB-S card | ||||||
|  | 1894  KNC One | ||||||
|  | 18fb  Resilience Corporation | ||||||
| 1a08  Sierra semiconductor | 1a08  Sierra semiconductor | ||||||
| 	0000  SC15064 | 	0000  SC15064 | ||||||
| 1b13  Jaton Corp | 1b13  Jaton Corp | ||||||
|  | @ -6372,6 +6422,7 @@ | ||||||
| 4033  Addtron Technology Co, Inc. | 4033  Addtron Technology Co, Inc. | ||||||
| 	1360  RTL8139 Ethernet | 	1360  RTL8139 Ethernet | ||||||
| 4143  Digital Equipment Corp | 4143  Digital Equipment Corp | ||||||
|  | 4144  Alpha Data | ||||||
| 416c  Aladdin Knowledge Systems | 416c  Aladdin Knowledge Systems | ||||||
| 	0100  AladdinCARD | 	0100  AladdinCARD | ||||||
| 	0200  CPC | 	0200  CPC | ||||||
|  | @ -6569,6 +6620,7 @@ | ||||||
| 	0003  TURBOstor HFP-832 [HiPPI NIC] | 	0003  TURBOstor HFP-832 [HiPPI NIC] | ||||||
| 5654  VoiceTronix Pty Ltd | 5654  VoiceTronix Pty Ltd | ||||||
| 5700  Netpower | 5700  Netpower | ||||||
|  | 5851  Exacq Technologies | ||||||
| 6356  UltraStor | 6356  UltraStor | ||||||
| 6374  c't Magazin für Computertechnik | 6374  c't Magazin für Computertechnik | ||||||
| 	6773  GPPCI | 	6773  GPPCI | ||||||
|  | @ -6587,6 +6639,10 @@ | ||||||
| 	0008  Extended Express System Support Controller | 	0008  Extended Express System Support Controller | ||||||
| 	0039  21145 | 	0039  21145 | ||||||
| 	0122  82437FX | 	0122  82437FX | ||||||
|  | 	0326  PCI Bridge Hub I/OxAPIC Interrupt Controller A | ||||||
|  | 	0327  PCI Bridge Hub I/OxAPIC Interrupt Controller B | ||||||
|  | 	0329  PCI Bridge Hub A | ||||||
|  | 	032a  PCI Bridge Hub B | ||||||
| 	0482  82375EB | 	0482  82375EB | ||||||
| 	0483  82424ZX [Saturn] | 	0483  82424ZX [Saturn] | ||||||
| 	0484  82378IB [SIO ISA Bridge] | 	0484  82378IB [SIO ISA Bridge] | ||||||
|  | @ -6639,7 +6695,18 @@ | ||||||
| 		8086 1002  PRO/1000 MF Server Adapter | 		8086 1002  PRO/1000 MF Server Adapter | ||||||
| 	1012  82546EB Gigabit Ethernet Controller (Fiber) | 	1012  82546EB Gigabit Ethernet Controller (Fiber) | ||||||
| 		8086 1012  PRO/1000 MF Dual Port Server Adapter | 		8086 1012  PRO/1000 MF Dual Port Server Adapter | ||||||
|  | 	1013  82541EI Gigabit Ethernet Controller (Copper) | ||||||
|  | 	1014  82541ER Gigabit Ethernet Controller | ||||||
| 	1015  82540EM Gigabit Ethernet Controller (LOM) | 	1015  82540EM Gigabit Ethernet Controller (LOM) | ||||||
|  | 	1016  82540EP Gigabit Ethernet Controller (LOM) | ||||||
|  | 	1017  82540EP Gigabit Ethernet Controller (LOM) | ||||||
|  | # Update controller name from 82541EP to 82541EI | ||||||
|  | 	1018  82541EI Gigabit Ethernet Controller | ||||||
|  | 	1019  82547EI Gigabit Ethernet Controller (LOM) | ||||||
|  | 	101e  82540EP Gigabit Ethernet Controller (Mobile) | ||||||
|  | 	1026  82545GM Gigabit Ethernet Controller | ||||||
|  | 	1027  82545GM Gigabit Ethernet Controller | ||||||
|  | 	1028  82545GM Gigabit Ethernet Controller | ||||||
| 	1029  82559 Ethernet Controller | 	1029  82559 Ethernet Controller | ||||||
| 	1030  82559 InBusiness 10/100 | 	1030  82559 InBusiness 10/100 | ||||||
| 	1031  82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller | 	1031  82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller | ||||||
|  | @ -6667,7 +6734,21 @@ | ||||||
| 	1040  536EP Data Fax Modem | 	1040  536EP Data Fax Modem | ||||||
| 		16be 1040  V.9X DSP Data Fax Modem | 		16be 1040  V.9X DSP Data Fax Modem | ||||||
| 	1043  PRO/Wireless LAN 2100 3B Mini PCI Adapter | 	1043  PRO/Wireless LAN 2100 3B Mini PCI Adapter | ||||||
|  | 	1048  Intel(R) PRO/10GbE LR Server Adapter | ||||||
| 	1059  82551QM Ethernet Controller | 	1059  82551QM Ethernet Controller | ||||||
|  | # Updated controller name from 82547EI to 82547GI | ||||||
|  | 	1075  82547GI Gigabit Ethernet Controller | ||||||
|  | # Updated controller name from 82541EI to 82541GI | ||||||
|  | 	1076  82541GI Gigabit Ethernet Controller | ||||||
|  | # Update controller name from 82541EI to 82541GI | ||||||
|  | 	1077  82541GI Gigabit Ethernet Controller | ||||||
|  | 	1078  82541EI Gigabit Ethernet Controller | ||||||
|  | # Update from mistaken ID of 82546EB | ||||||
|  | 	1079  82546GB Gigabit Ethernet Controller | ||||||
|  | # Update from mistaken ID of 82546EB | ||||||
|  | 	107a  82546GB Gigabit Ethernet Controller | ||||||
|  | # Update from mistaken ID of 82546EB | ||||||
|  | 	107b  82546GB Gigabit Ethernet Controller | ||||||
| 	1130  82815 815 Chipset Host Bridge and Memory Controller Hub | 	1130  82815 815 Chipset Host Bridge and Memory Controller Hub | ||||||
| 		1025 1016  Travelmate 612 TX | 		1025 1016  Travelmate 612 TX | ||||||
| 		1043 8027  TUSL2-C Mainboard | 		1043 8027  TUSL2-C Mainboard | ||||||
|  | @ -7069,6 +7150,7 @@ | ||||||
| 	24dc  82801EB LPC Interface Controller | 	24dc  82801EB LPC Interface Controller | ||||||
| 	24dd  82801EB USB2 | 	24dd  82801EB USB2 | ||||||
| 	24de  82801EB USB | 	24de  82801EB USB | ||||||
|  | 	24df  82801EB (ICH5R) SATA (cc=RAID) | ||||||
| 	2500  82820 820 (Camino) Chipset Host Bridge (MCH) | 	2500  82820 820 (Camino) Chipset Host Bridge (MCH) | ||||||
| 		1028 0095  Precision Workstation 220 Chipset | 		1028 0095  Precision Workstation 220 Chipset | ||||||
| 		1043 801c  P3C-2000 system chipset | 		1043 801c  P3C-2000 system chipset | ||||||
|  | @ -7109,12 +7191,26 @@ | ||||||
| 	2571  82865G/PE/P Processor to AGP Controller | 	2571  82865G/PE/P Processor to AGP Controller | ||||||
| 	2572  82865G Integrated Graphics Device | 	2572  82865G Integrated Graphics Device | ||||||
| 	2573  82865G/PE/P Processor to PCI to CSA Bridge | 	2573  82865G/PE/P Processor to PCI to CSA Bridge | ||||||
| 	2576  82864G/PE/P Processor to I/O Memory Interface | 	2576  82865G/PE/P Processor to I/O Memory Interface | ||||||
| 	2578  82875P Memory Controller Hub | 	2578  82875P Memory Controller Hub | ||||||
| 	2579  82875P Processor to AGP Controller | 	2579  82875P Processor to AGP Controller | ||||||
| 	257b  82875P Processor to PCI to CSA Bridge | 	257b  82875P Processor to PCI to CSA Bridge | ||||||
| 	257e  82875P Processor to I/O Memory Interface | 	257e  82875P Processor to I/O Memory Interface | ||||||
|  | 	25a1  Enterprise Southbridge ISA Bridge | ||||||
|  | 	25a2  Enterprise Southbridge PATA | ||||||
|  | 	25a3  Enterprise Southbridge SATA cc=IDE | ||||||
|  | 	25a4  Enterprise Southbridge SMBUS | ||||||
|  | 	25a6  Enterprise Southbridge AC'97 Audio | ||||||
|  | 	25a7  Enterprise Southbridge AC'97 Modem | ||||||
|  | 	25a9  Enterprise Southbridge USB 1.1 UHCI | ||||||
|  | 	25aa  Enterprise Southbridge USB 1.1 UHCI | ||||||
|  | 	25ab  Enterprise Southbridge Watchdog Timer | ||||||
|  | 	25ac  Enterprise Southbridge IOxAPIC | ||||||
|  | 	25ad  Enterprise Southbridge USB 2.0 EHCI | ||||||
|  | 	25ae  Enterprise Southbridge Hublink PCI-X Bridge | ||||||
|  | 	25b0  Enterprise Southbridge SATA cc=RAID | ||||||
| 	3092  Integrated RAID | 	3092  Integrated RAID | ||||||
|  | 	3200  GD31244 PCI-X SATA HBA | ||||||
| 	3340  82855PM Processor to I/O Controller | 	3340  82855PM Processor to I/O Controller | ||||||
| 	3341  82855PM Processor to AGP Controller | 	3341  82855PM Processor to AGP Controller | ||||||
| 	3575  82830 830 Chipset Host Bridge | 	3575  82830 830 Chipset Host Bridge | ||||||
|  | @ -7126,6 +7222,18 @@ | ||||||
| 	3578  82830 830 Chipset Host Bridge | 	3578  82830 830 Chipset Host Bridge | ||||||
| 	3580  82852/855GM Host Bridge | 	3580  82852/855GM Host Bridge | ||||||
| 	3582  82852/855GM Integrated Graphics Device | 	3582  82852/855GM Integrated Graphics Device | ||||||
|  | 	3590  Server Memory Controller Hub | ||||||
|  | 	3591  Memory Controller Hub Error Reporting Register | ||||||
|  | 	3592  Server Memory Controller Hub | ||||||
|  | 	3594  Memory Controller Hub DMA Controller | ||||||
|  | 	3595  Memory Controller Hub PCI Express Port A0 | ||||||
|  | 	3596  Memory Controller Hub PCI Express Port A1 | ||||||
|  | 	3597  Memory Controller Hub PCI Express Port B0 | ||||||
|  | 	3598  Memory Controller Hub PCI Express Port B1 | ||||||
|  | 	3599  Memory Controller Hub PCI Express Port C0 | ||||||
|  | 	359a  Memory Controller Hub PCI Express Port C1 | ||||||
|  | 	359b  Memory Controller Hub Extended Configuration Registers | ||||||
|  | 	359e  Workstation Memory Controller Hub | ||||||
| 	5200  EtherExpress PRO/100 Intelligent Server | 	5200  EtherExpress PRO/100 Intelligent Server | ||||||
| 	5201  EtherExpress PRO/100 Intelligent Server | 	5201  EtherExpress PRO/100 Intelligent Server | ||||||
| 		8086 0001  EtherExpress PRO/100 Server Ethernet Adapter | 		8086 0001  EtherExpress PRO/100 Server Ethernet Adapter | ||||||
|  | @ -7431,12 +7539,15 @@ d84d  Exsys | ||||||
| dead  Indigita Corporation | dead  Indigita Corporation | ||||||
| e000  Winbond | e000  Winbond | ||||||
| 	e000  W89C940 | 	e000  W89C940 | ||||||
| e159  Tiger Jet Network Inc. | # see : http://www.schoenfeld.de/inside/Inside_CWMK3.txt | ||||||
|  | e159  Individual Computers - Jens Schoenfeld | ||||||
| 	0001  Intel 537 | 	0001  Intel 537 | ||||||
| 		0059 0001  128k ISDN-S/T Adapter | 		0059 0001  128k ISDN-S/T Adapter | ||||||
| 		0059 0003  128k ISDN-U Adapter | 		0059 0003  128k ISDN-U Adapter | ||||||
| 	0002  Tiger100APC ISDN chipset | 	0002  Tiger100APC ISDN chipset | ||||||
| e4bf  EKF Elektronik GmbH | e4bf  EKF Elektronik GmbH | ||||||
|  | # Innovative and scalable network IC vendor | ||||||
|  | e55e  Essence Technology, Inc. | ||||||
| ea01  Eagle Technology | ea01  Eagle Technology | ||||||
| # The main chip of all these devices is by Xilinx -> It could also be a Xilinx ID. | # The main chip of all these devices is by Xilinx -> It could also be a Xilinx ID. | ||||||
| ea60  RME | ea60  RME | ||||||
|  | @ -7481,6 +7592,8 @@ febd  Ultraview Corp. | ||||||
| feda  Broadcom Inc (nee Epigram) | feda  Broadcom Inc (nee Epigram) | ||||||
| 	a0fa  BCM4210 iLine10 HomePNA 2.0 | 	a0fa  BCM4210 iLine10 HomePNA 2.0 | ||||||
| 	a10e  BCM4230 iLine10 HomePNA 2.0 | 	a10e  BCM4230 iLine10 HomePNA 2.0 | ||||||
|  | # IT & Telecom company, develops PCI Trunk cards <www.fedetec.es> | ||||||
|  | fede  Fedetec Inc. | ||||||
| fffe  VMWare Inc | fffe  VMWare Inc | ||||||
| 	0710  Virtual SVGA | 	0710  Virtual SVGA | ||||||
| ffff  Illegal Vendor ID | ffff  Illegal Vendor ID | ||||||
|  |  | ||||||
|  | @ -1,6 +1,6 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/etc/ioport.c,v 1.4 2003/01/01 19:16:41 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/etc/ioport.c,v 1.5 2004/01/05 16:42:10 tsi Exp $ */ | ||||||
| /*
 | /*
 | ||||||
|  * Copyright 2002 through 2003 by Marc Aurele La France (TSI @ UQV), tsi@xfree86.org |  * Copyright 2002 through 2004 by Marc Aurele La France (TSI @ UQV), tsi@xfree86.org | ||||||
|  * |  * | ||||||
|  * Permission to use, copy, modify, distribute, and sell this software and its |  * Permission to use, copy, modify, distribute, and sell this software and its | ||||||
|  * documentation for any purpose is hereby granted without fee, provided that |  * documentation for any purpose is hereby granted without fee, provided that | ||||||
|  |  | ||||||
|  | @ -26,8 +26,7 @@ | ||||||
|  * |  * | ||||||
|  * Author: Paulo César Pereira de Andrade <pcpa@conectiva.com.br> |  * Author: Paulo César Pereira de Andrade <pcpa@conectiva.com.br> | ||||||
|  * |  * | ||||||
|  * $XdotOrg: xc/programs/Xserver/hw/xfree86/xf86cfg/config.h,v 1.18 2003/12/19 02:05:38 dawes Exp $ |  * $XFree86: xc/programs/Xserver/hw/xfree86/xf86cfg/config.h,v 1.22 2004/02/14 17:53:49 dawes Exp $ | ||||||
|  * $XFree86: xc/programs/Xserver/hw/xfree86/xf86cfg/config.h,v 1.18 2003/12/19 02:05:38 dawes Exp $ |  | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| #include <X11/IntrinsicP.h> | #include <X11/IntrinsicP.h> | ||||||
|  | @ -38,10 +37,12 @@ | ||||||
| #include <stdlib.h> | #include <stdlib.h> | ||||||
| #include <dirent.h> | #include <dirent.h> | ||||||
| #include <string.h> | #include <string.h> | ||||||
| #include <unistd.h> | #ifdef sun | ||||||
| #if defined(sun) && defined(SVR4) | #undef index | ||||||
|  | #undef rindex | ||||||
| #include <strings.h> | #include <strings.h> | ||||||
| #endif | #endif | ||||||
|  | #include <unistd.h> | ||||||
| 
 | 
 | ||||||
| #include <stdarg.h> | #include <stdarg.h> | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| /* $XdotOrg$ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/vbe/vbe.h,v 1.5 2004/02/02 03:55:32 dawes Exp $ */ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/vbe/vbe.h,v 1.3 2003/11/14 14:58:45 tsi Exp $ */ |  | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  *                   XFree86 vbe module |  *                   XFree86 vbe module | ||||||
|  | @ -61,7 +60,8 @@ typedef struct vbeControllerInfoBlock { | ||||||
|     CARD8  OemData[256]; |     CARD8  OemData[256]; | ||||||
| } vbeControllerInfoRec, *vbeControllerInfoPtr; | } vbeControllerInfoRec, *vbeControllerInfoPtr; | ||||||
| 
 | 
 | ||||||
| #if defined(__GNUC__) || defined(__SUNPRO_C) | #if defined(__GNUC__) || defined(SCO) || defined(__USLC__) || \ | ||||||
|  | 	defined(__SUNPRO_C) | ||||||
| #pragma pack()	/* All GCC versions recognise this syntax */ | #pragma pack()	/* All GCC versions recognise this syntax */ | ||||||
| #else | #else | ||||||
| #pragma pack(0) | #pragma pack(0) | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xfree86/vgahw/vgaHW.c,v 1.58 2003/11/03 05:11:53 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xfree86/vgahw/vgaHW.c,v 1.59 2004/02/11 22:06:22 tsi Exp $ */ | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * |  * | ||||||
|  | @ -764,6 +764,11 @@ vgaHWRestoreFonts(ScrnInfoPtr scrninfp, vgaRegPtr restore) | ||||||
| #if 0 | #if 0 | ||||||
|     hwp->writeAttr(hwp, 0x10, 0x01);	/* graphics mode */ |     hwp->writeAttr(hwp, 0x10, 0x01);	/* graphics mode */ | ||||||
| #endif | #endif | ||||||
|  | 
 | ||||||
|  |     hwp->writeSeq(hwp, 0x04, 0x06);	/* enable plane graphics */ | ||||||
|  |     hwp->writeGr(hwp, 0x05, 0x00);	/* write mode 0, read mode 0 */ | ||||||
|  |     hwp->writeGr(hwp, 0x06, 0x05);	/* set graphics */ | ||||||
|  | 
 | ||||||
|     if (scrninfp->depth == 4) { |     if (scrninfp->depth == 4) { | ||||||
| 	/* GJA */ | 	/* GJA */ | ||||||
| 	hwp->writeGr(hwp, 0x03, 0x00);	/* don't rotate, write unmodified */ | 	hwp->writeGr(hwp, 0x03, 0x00);	/* don't rotate, write unmodified */ | ||||||
|  | @ -774,10 +779,7 @@ vgaHWRestoreFonts(ScrnInfoPtr scrninfp, vgaRegPtr restore) | ||||||
| #ifdef SAVE_FONT1 | #ifdef SAVE_FONT1 | ||||||
|     if (hwp->FontInfo1) { |     if (hwp->FontInfo1) { | ||||||
| 	hwp->writeSeq(hwp, 0x02, 0x04);	/* write to plane 2 */ | 	hwp->writeSeq(hwp, 0x02, 0x04);	/* write to plane 2 */ | ||||||
| 	hwp->writeSeq(hwp, 0x04, 0x06);	/* enable plane graphics */ |  | ||||||
| 	hwp->writeGr(hwp, 0x04, 0x02);	/* read plane 2 */ | 	hwp->writeGr(hwp, 0x04, 0x02);	/* read plane 2 */ | ||||||
| 	hwp->writeGr(hwp, 0x05, 0x00);	/* write mode 0, read mode 0 */ |  | ||||||
| 	hwp->writeGr(hwp, 0x06, 0x05);	/* set graphics */ |  | ||||||
| 	slowbcopy_tobus(hwp->FontInfo1, hwp->Base, FONT_AMOUNT); | 	slowbcopy_tobus(hwp->FontInfo1, hwp->Base, FONT_AMOUNT); | ||||||
|     } |     } | ||||||
| #endif | #endif | ||||||
|  | @ -785,10 +787,7 @@ vgaHWRestoreFonts(ScrnInfoPtr scrninfp, vgaRegPtr restore) | ||||||
| #ifdef SAVE_FONT2 | #ifdef SAVE_FONT2 | ||||||
|     if (hwp->FontInfo2) { |     if (hwp->FontInfo2) { | ||||||
| 	hwp->writeSeq(hwp, 0x02, 0x08);	/* write to plane 3 */ | 	hwp->writeSeq(hwp, 0x02, 0x08);	/* write to plane 3 */ | ||||||
| 	hwp->writeSeq(hwp, 0x04, 0x06);	/* enable plane graphics */ |  | ||||||
| 	hwp->writeGr(hwp, 0x04, 0x03);	/* read plane 3 */ | 	hwp->writeGr(hwp, 0x04, 0x03);	/* read plane 3 */ | ||||||
| 	hwp->writeGr(hwp, 0x05, 0x00);	/* write mode 0, read mode 0 */ |  | ||||||
| 	hwp->writeGr(hwp, 0x06, 0x05);	/* set graphics */ |  | ||||||
| 	slowbcopy_tobus(hwp->FontInfo2, hwp->Base, FONT_AMOUNT); | 	slowbcopy_tobus(hwp->FontInfo2, hwp->Base, FONT_AMOUNT); | ||||||
|     } |     } | ||||||
| #endif | #endif | ||||||
|  | @ -796,16 +795,10 @@ vgaHWRestoreFonts(ScrnInfoPtr scrninfp, vgaRegPtr restore) | ||||||
| #ifdef SAVE_TEXT | #ifdef SAVE_TEXT | ||||||
|     if (hwp->TextInfo) { |     if (hwp->TextInfo) { | ||||||
| 	hwp->writeSeq(hwp, 0x02, 0x01);	/* write to plane 0 */ | 	hwp->writeSeq(hwp, 0x02, 0x01);	/* write to plane 0 */ | ||||||
| 	hwp->writeSeq(hwp, 0x04, 0x06);	/* enable plane graphics */ |  | ||||||
| 	hwp->writeGr(hwp, 0x04, 0x00);	/* read plane 0 */ | 	hwp->writeGr(hwp, 0x04, 0x00);	/* read plane 0 */ | ||||||
| 	hwp->writeGr(hwp, 0x05, 0x00);	/* write mode 0, read mode 0 */ |  | ||||||
| 	hwp->writeGr(hwp, 0x06, 0x05);	/* set graphics */ |  | ||||||
| 	slowbcopy_tobus(hwp->TextInfo, hwp->Base, TEXT_AMOUNT); | 	slowbcopy_tobus(hwp->TextInfo, hwp->Base, TEXT_AMOUNT); | ||||||
| 	hwp->writeSeq(hwp, 0x02, 0x02);	/* write to plane 1 */ | 	hwp->writeSeq(hwp, 0x02, 0x02);	/* write to plane 1 */ | ||||||
| 	hwp->writeSeq(hwp, 0x04, 0x06);	/* enable plane graphics */ |  | ||||||
| 	hwp->writeGr(hwp, 0x04, 0x01);	/* read plane 1 */ | 	hwp->writeGr(hwp, 0x04, 0x01);	/* read plane 1 */ | ||||||
| 	hwp->writeGr(hwp, 0x05, 0x00);	/* write mode 0, read mode 0 */ |  | ||||||
| 	hwp->writeGr(hwp, 0x06, 0x05);	/* set graphics */ |  | ||||||
| 	slowbcopy_tobus((unsigned char *)hwp->TextInfo + TEXT_AMOUNT, | 	slowbcopy_tobus((unsigned char *)hwp->TextInfo + TEXT_AMOUNT, | ||||||
| 			hwp->Base, TEXT_AMOUNT); | 			hwp->Base, TEXT_AMOUNT); | ||||||
|     } |     } | ||||||
|  | @ -849,8 +842,7 @@ vgaHWRestoreMode(ScrnInfoPtr scrninfp, vgaRegPtr restore) | ||||||
|     for (i = 1; i < restore->numSequencer; i++) |     for (i = 1; i < restore->numSequencer; i++) | ||||||
| 	hwp->writeSeq(hwp, i, restore->Sequencer[i]); | 	hwp->writeSeq(hwp, i, restore->Sequencer[i]); | ||||||
|    |    | ||||||
|     /* Ensure CRTC registers 0-7 are unlocked by clearing bit 7 or CRTC[17] */ |     /* Ensure CRTC registers 0-7 are unlocked by clearing bit 7 of CRTC[17] */ | ||||||
| 
 |  | ||||||
|     hwp->writeCrtc(hwp, 17, restore->CRTC[17] & ~0x80); |     hwp->writeCrtc(hwp, 17, restore->CRTC[17] & ~0x80); | ||||||
| 
 | 
 | ||||||
|     for (i = 0; i < restore->numCRTC; i++) |     for (i = 0; i < restore->numCRTC; i++) | ||||||
|  | @ -958,39 +950,32 @@ vgaHWSaveFonts(ScrnInfoPtr scrninfp, vgaRegPtr save) | ||||||
| #if 0 | #if 0 | ||||||
|     hwp->writeAttr(hwp, 0x10, 0x01);	/* graphics mode */ |     hwp->writeAttr(hwp, 0x10, 0x01);	/* graphics mode */ | ||||||
| #endif | #endif | ||||||
|  | 
 | ||||||
|  |     hwp->writeSeq(hwp, 0x04, 0x06);	/* enable plane graphics */ | ||||||
|  |     hwp->writeGr(hwp, 0x05, 0x00);	/* write mode 0, read mode 0 */ | ||||||
|  |     hwp->writeGr(hwp, 0x06, 0x05);	/* set graphics */ | ||||||
|  | 
 | ||||||
| #ifdef SAVE_FONT1 | #ifdef SAVE_FONT1 | ||||||
|     if (hwp->FontInfo1 || (hwp->FontInfo1 = xalloc(FONT_AMOUNT))) { |     if (hwp->FontInfo1 || (hwp->FontInfo1 = xalloc(FONT_AMOUNT))) { | ||||||
| 	hwp->writeSeq(hwp, 0x02, 0x04);	/* write to plane 2 */ | 	hwp->writeSeq(hwp, 0x02, 0x04);	/* write to plane 2 */ | ||||||
| 	hwp->writeSeq(hwp, 0x04, 0x06);	/* enable plane graphics */ |  | ||||||
| 	hwp->writeGr(hwp, 0x04, 0x02);	/* read plane 2 */ | 	hwp->writeGr(hwp, 0x04, 0x02);	/* read plane 2 */ | ||||||
| 	hwp->writeGr(hwp, 0x05, 0x00);	/* write mode 0, read mode 0 */ |  | ||||||
| 	hwp->writeGr(hwp, 0x06, 0x05);	/* set graphics */ |  | ||||||
| 	slowbcopy_frombus(hwp->Base, hwp->FontInfo1, FONT_AMOUNT); | 	slowbcopy_frombus(hwp->Base, hwp->FontInfo1, FONT_AMOUNT); | ||||||
|     } |     } | ||||||
| #endif /* SAVE_FONT1 */ | #endif /* SAVE_FONT1 */ | ||||||
| #ifdef SAVE_FONT2 | #ifdef SAVE_FONT2 | ||||||
|     if (hwp->FontInfo2 || (hwp->FontInfo2 = xalloc(FONT_AMOUNT))) { |     if (hwp->FontInfo2 || (hwp->FontInfo2 = xalloc(FONT_AMOUNT))) { | ||||||
| 	hwp->writeSeq(hwp, 0x02, 0x08);	/* write to plane 3 */ | 	hwp->writeSeq(hwp, 0x02, 0x08);	/* write to plane 3 */ | ||||||
| 	hwp->writeSeq(hwp, 0x04, 0x06);	/* enable plane graphics */ |  | ||||||
| 	hwp->writeGr(hwp, 0x04, 0x03);	/* read plane 3 */ | 	hwp->writeGr(hwp, 0x04, 0x03);	/* read plane 3 */ | ||||||
| 	hwp->writeGr(hwp, 0x05, 0x00);	/* write mode 0, read mode 0 */ |  | ||||||
| 	hwp->writeGr(hwp, 0x06, 0x05);	/* set graphics */ |  | ||||||
| 	slowbcopy_frombus(hwp->Base, hwp->FontInfo2, FONT_AMOUNT); | 	slowbcopy_frombus(hwp->Base, hwp->FontInfo2, FONT_AMOUNT); | ||||||
|     } |     } | ||||||
| #endif /* SAVE_FONT2 */ | #endif /* SAVE_FONT2 */ | ||||||
| #ifdef SAVE_TEXT | #ifdef SAVE_TEXT | ||||||
|     if (hwp->TextInfo || (hwp->TextInfo = xalloc(2 * TEXT_AMOUNT))) { |     if (hwp->TextInfo || (hwp->TextInfo = xalloc(2 * TEXT_AMOUNT))) { | ||||||
| 	hwp->writeSeq(hwp, 0x02, 0x01);	/* write to plane 0 */ | 	hwp->writeSeq(hwp, 0x02, 0x01);	/* write to plane 0 */ | ||||||
| 	hwp->writeSeq(hwp, 0x04, 0x06);	/* enable plane graphics */ |  | ||||||
| 	hwp->writeGr(hwp, 0x04, 0x00);	/* read plane 0 */ | 	hwp->writeGr(hwp, 0x04, 0x00);	/* read plane 0 */ | ||||||
| 	hwp->writeGr(hwp, 0x05, 0x00);	/* write mode 0, read mode 0 */ |  | ||||||
| 	hwp->writeGr(hwp, 0x06, 0x05);	/* set graphics */ |  | ||||||
| 	slowbcopy_frombus(hwp->Base, hwp->TextInfo, TEXT_AMOUNT); | 	slowbcopy_frombus(hwp->Base, hwp->TextInfo, TEXT_AMOUNT); | ||||||
| 	hwp->writeSeq(hwp, 0x02, 0x02);	/* write to plane 1 */ | 	hwp->writeSeq(hwp, 0x02, 0x02);	/* write to plane 1 */ | ||||||
| 	hwp->writeSeq(hwp, 0x04, 0x06);	/* enable plane graphics */ |  | ||||||
| 	hwp->writeGr(hwp, 0x04, 0x01);	/* read plane 1 */ | 	hwp->writeGr(hwp, 0x04, 0x01);	/* read plane 1 */ | ||||||
| 	hwp->writeGr(hwp, 0x05, 0x00);	/* write mode 0, read mode 0 */ |  | ||||||
| 	hwp->writeGr(hwp, 0x06, 0x05);	/* set graphics */ |  | ||||||
| 	slowbcopy_frombus(hwp->Base, | 	slowbcopy_frombus(hwp->Base, | ||||||
| 		(unsigned char *)hwp->TextInfo + TEXT_AMOUNT, TEXT_AMOUNT); | 		(unsigned char *)hwp->TextInfo + TEXT_AMOUNT, TEXT_AMOUNT); | ||||||
|     } |     } | ||||||
|  | @ -1476,7 +1461,7 @@ vgaHWVBlankKGA(DisplayModePtr mode, vgaRegPtr regp, int nBits, | ||||||
| 	regp->CRTC[22] = i & 0xFF; | 	regp->CRTC[22] = i & 0xFF; | ||||||
| 	ExtBits = i & 0xFF00; | 	ExtBits = i & 0xFF00; | ||||||
|     } |     } | ||||||
| 	return ExtBits >> 8; |     return ExtBits >> 8; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  |  | ||||||
|  | @ -37,7 +37,7 @@ | ||||||
| *               instructions. | *               instructions. | ||||||
| * | * | ||||||
| ****************************************************************************/ | ****************************************************************************/ | ||||||
| /* $XFree86: xc/extras/x86emu/src/x86emu/ops2.c,v 1.6 2003/10/22 20:03:06 tsi Exp $ */ | /* $XFree86: xc/extras/x86emu/src/x86emu/ops2.c,v 1.7 2004/02/06 17:15:28 tsi Exp $ */ | ||||||
| 
 | 
 | ||||||
| #include "x86emu/x86emui.h" | #include "x86emu/x86emui.h" | ||||||
| 
 | 
 | ||||||
|  | @ -1746,16 +1746,16 @@ static void x86emuOp2_btX_I(u8 X86EMU_UNUSED(op2)) | ||||||
|     START_OF_INSTR(); |     START_OF_INSTR(); | ||||||
|     FETCH_DECODE_MODRM(mod, rh, rl); |     FETCH_DECODE_MODRM(mod, rh, rl); | ||||||
|     switch (rh) { |     switch (rh) { | ||||||
|     case 3: |     case 4: | ||||||
| 	DECODE_PRINTF("BT\t"); | 	DECODE_PRINTF("BT\t"); | ||||||
| 	break; | 	break; | ||||||
|     case 4: |     case 5: | ||||||
| 	DECODE_PRINTF("BTS\t"); | 	DECODE_PRINTF("BTS\t"); | ||||||
| 	break; | 	break; | ||||||
|     case 5: |     case 6: | ||||||
| 	DECODE_PRINTF("BTR\t"); | 	DECODE_PRINTF("BTR\t"); | ||||||
| 	break; | 	break; | ||||||
|     case 6: |     case 7: | ||||||
| 	DECODE_PRINTF("BTC\t"); | 	DECODE_PRINTF("BTC\t"); | ||||||
| 	break; | 	break; | ||||||
|     default: |     default: | ||||||
|  | @ -1780,13 +1780,13 @@ static void x86emuOp2_btX_I(u8 X86EMU_UNUSED(op2)) | ||||||
| 	    mask = (0x1 << bit); | 	    mask = (0x1 << bit); | ||||||
|             CONDITIONAL_SET_FLAG(srcval & mask,F_CF); |             CONDITIONAL_SET_FLAG(srcval & mask,F_CF); | ||||||
| 	    switch (rh) { | 	    switch (rh) { | ||||||
| 	    case 4: | 	    case 5: | ||||||
| 		store_data_long(srcoffset, srcval | mask); | 		store_data_long(srcoffset, srcval | mask); | ||||||
| 		break; | 		break; | ||||||
| 	    case 5: | 	    case 6: | ||||||
| 		store_data_long(srcoffset, srcval & ~mask); | 		store_data_long(srcoffset, srcval & ~mask); | ||||||
| 		break; | 		break; | ||||||
| 	    case 6: | 	    case 7: | ||||||
| 		store_data_long(srcoffset, srcval ^ mask); | 		store_data_long(srcoffset, srcval ^ mask); | ||||||
| 		break; | 		break; | ||||||
| 	    default: | 	    default: | ||||||
|  | @ -1805,13 +1805,13 @@ static void x86emuOp2_btX_I(u8 X86EMU_UNUSED(op2)) | ||||||
| 	    mask = (0x1 << bit); | 	    mask = (0x1 << bit); | ||||||
|             CONDITIONAL_SET_FLAG(srcval & mask,F_CF); |             CONDITIONAL_SET_FLAG(srcval & mask,F_CF); | ||||||
| 	    switch (rh) { | 	    switch (rh) { | ||||||
| 	    case 4: | 	    case 5: | ||||||
| 		store_data_word(srcoffset, srcval | mask); | 		store_data_word(srcoffset, srcval | mask); | ||||||
| 		break; | 		break; | ||||||
| 	    case 5: | 	    case 6: | ||||||
| 		store_data_word(srcoffset, srcval & ~mask); | 		store_data_word(srcoffset, srcval & ~mask); | ||||||
| 		break; | 		break; | ||||||
| 	    case 6: | 	    case 7: | ||||||
| 		store_data_word(srcoffset, srcval ^ mask); | 		store_data_word(srcoffset, srcval ^ mask); | ||||||
| 		break; | 		break; | ||||||
| 	    default: | 	    default: | ||||||
|  | @ -1833,13 +1833,13 @@ static void x86emuOp2_btX_I(u8 X86EMU_UNUSED(op2)) | ||||||
| 	    mask = (0x1 << bit); | 	    mask = (0x1 << bit); | ||||||
|             CONDITIONAL_SET_FLAG(srcval & mask,F_CF); |             CONDITIONAL_SET_FLAG(srcval & mask,F_CF); | ||||||
| 	    switch (rh) { | 	    switch (rh) { | ||||||
| 	    case 4: | 	    case 5: | ||||||
| 		store_data_long(srcoffset, srcval | mask); | 		store_data_long(srcoffset, srcval | mask); | ||||||
| 		break; | 		break; | ||||||
| 	    case 5: | 	    case 6: | ||||||
| 		store_data_long(srcoffset, srcval & ~mask); | 		store_data_long(srcoffset, srcval & ~mask); | ||||||
| 		break; | 		break; | ||||||
| 	    case 6: | 	    case 7: | ||||||
| 		store_data_long(srcoffset, srcval ^ mask); | 		store_data_long(srcoffset, srcval ^ mask); | ||||||
| 		break; | 		break; | ||||||
| 	    default: | 	    default: | ||||||
|  | @ -1858,13 +1858,13 @@ static void x86emuOp2_btX_I(u8 X86EMU_UNUSED(op2)) | ||||||
| 	    mask = (0x1 << bit); | 	    mask = (0x1 << bit); | ||||||
|             CONDITIONAL_SET_FLAG(srcval & mask,F_CF); |             CONDITIONAL_SET_FLAG(srcval & mask,F_CF); | ||||||
| 	    switch (rh) { | 	    switch (rh) { | ||||||
| 	    case 4: | 	    case 5: | ||||||
| 		store_data_word(srcoffset, srcval | mask); | 		store_data_word(srcoffset, srcval | mask); | ||||||
| 		break; | 		break; | ||||||
| 	    case 5: | 	    case 6: | ||||||
| 		store_data_word(srcoffset, srcval & ~mask); | 		store_data_word(srcoffset, srcval & ~mask); | ||||||
| 		break; | 		break; | ||||||
| 	    case 6: | 	    case 7: | ||||||
| 		store_data_word(srcoffset, srcval ^ mask); | 		store_data_word(srcoffset, srcval ^ mask); | ||||||
| 		break; | 		break; | ||||||
| 	    default: | 	    default: | ||||||
|  | @ -1886,13 +1886,13 @@ static void x86emuOp2_btX_I(u8 X86EMU_UNUSED(op2)) | ||||||
| 	    mask = (0x1 << bit); | 	    mask = (0x1 << bit); | ||||||
|             CONDITIONAL_SET_FLAG(srcval & mask,F_CF); |             CONDITIONAL_SET_FLAG(srcval & mask,F_CF); | ||||||
| 	    switch (rh) { | 	    switch (rh) { | ||||||
| 	    case 4: | 	    case 5: | ||||||
| 		store_data_long(srcoffset, srcval | mask); | 		store_data_long(srcoffset, srcval | mask); | ||||||
| 		break; | 		break; | ||||||
| 	    case 5: | 	    case 6: | ||||||
| 		store_data_long(srcoffset, srcval & ~mask); | 		store_data_long(srcoffset, srcval & ~mask); | ||||||
| 		break; | 		break; | ||||||
| 	    case 6: | 	    case 7: | ||||||
| 		store_data_long(srcoffset, srcval ^ mask); | 		store_data_long(srcoffset, srcval ^ mask); | ||||||
| 		break; | 		break; | ||||||
| 	    default: | 	    default: | ||||||
|  | @ -1911,13 +1911,13 @@ static void x86emuOp2_btX_I(u8 X86EMU_UNUSED(op2)) | ||||||
| 	    mask = (0x1 << bit); | 	    mask = (0x1 << bit); | ||||||
|             CONDITIONAL_SET_FLAG(srcval & mask,F_CF); |             CONDITIONAL_SET_FLAG(srcval & mask,F_CF); | ||||||
| 	    switch (rh) { | 	    switch (rh) { | ||||||
| 	    case 4: | 	    case 5: | ||||||
| 		store_data_word(srcoffset, srcval | mask); | 		store_data_word(srcoffset, srcval | mask); | ||||||
| 		break; | 		break; | ||||||
| 	    case 5: | 	    case 6: | ||||||
| 		store_data_word(srcoffset, srcval & ~mask); | 		store_data_word(srcoffset, srcval & ~mask); | ||||||
| 		break; | 		break; | ||||||
| 	    case 6: | 	    case 7: | ||||||
| 		store_data_word(srcoffset, srcval ^ mask); | 		store_data_word(srcoffset, srcval ^ mask); | ||||||
| 		break; | 		break; | ||||||
| 	    default: | 	    default: | ||||||
|  | @ -1939,13 +1939,13 @@ static void x86emuOp2_btX_I(u8 X86EMU_UNUSED(op2)) | ||||||
| 	    mask = (0x1 << bit); | 	    mask = (0x1 << bit); | ||||||
|             CONDITIONAL_SET_FLAG(*srcreg & mask,F_CF); |             CONDITIONAL_SET_FLAG(*srcreg & mask,F_CF); | ||||||
| 	    switch (rh) { | 	    switch (rh) { | ||||||
| 	    case 4: | 	    case 5: | ||||||
| 		*srcreg |= mask; | 		*srcreg |= mask; | ||||||
| 		break; | 		break; | ||||||
| 	    case 5: | 	    case 6: | ||||||
| 		*srcreg &= ~mask; | 		*srcreg &= ~mask; | ||||||
| 		break; | 		break; | ||||||
| 	    case 6: | 	    case 7: | ||||||
| 		*srcreg ^= mask; | 		*srcreg ^= mask; | ||||||
| 		break; | 		break; | ||||||
| 	    default: | 	    default: | ||||||
|  | @ -1964,13 +1964,13 @@ static void x86emuOp2_btX_I(u8 X86EMU_UNUSED(op2)) | ||||||
| 	    mask = (0x1 << bit); | 	    mask = (0x1 << bit); | ||||||
|             CONDITIONAL_SET_FLAG(*srcreg & mask,F_CF); |             CONDITIONAL_SET_FLAG(*srcreg & mask,F_CF); | ||||||
| 	    switch (rh) { | 	    switch (rh) { | ||||||
| 	    case 4: | 	    case 5: | ||||||
| 		*srcreg |= mask; | 		*srcreg |= mask; | ||||||
| 		break; | 		break; | ||||||
| 	    case 5: | 	    case 6: | ||||||
| 		*srcreg &= ~mask; | 		*srcreg &= ~mask; | ||||||
| 		break; | 		break; | ||||||
| 	    case 6: | 	    case 7: | ||||||
| 		*srcreg ^= mask; | 		*srcreg ^= mask; | ||||||
| 		break; | 		break; | ||||||
| 	    default: | 	    default: | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|  * $XFree86: xc/programs/Xserver/hw/xfree86/xaa/xaaPict.c,v 1.18 2003/04/23 18:35:34 eich Exp $ |  * $XFree86: xc/programs/Xserver/hw/xfree86/xaa/xaaPict.c,v 1.19 2004/01/26 18:54:55 mvojkovi Exp $ | ||||||
|  * |  * | ||||||
|  * Copyright © 2000 Keith Packard, member of The XFree86 Project, Inc. |  * Copyright © 2000 Keith Packard, member of The XFree86 Project, Inc. | ||||||
|  * |  * | ||||||
|  | @ -219,6 +219,9 @@ XAADoComposite ( | ||||||
|     ySrc += pSrc->pDrawable->y; |     ySrc += pSrc->pDrawable->y; | ||||||
| 
 | 
 | ||||||
|     if(pMask) { |     if(pMask) { | ||||||
|  | 	if(pMask->componentAlpha) | ||||||
|  | 	    return FALSE; | ||||||
|  |   | ||||||
| 	/* for now we only do it if there is a 1x1 (solid) source */ | 	/* for now we only do it if there is a 1x1 (solid) source */ | ||||||
| 
 | 
 | ||||||
| 	if((pSrc->pDrawable->width == 1) && (pSrc->pDrawable->height == 1)) { | 	if((pSrc->pDrawable->width == 1) && (pSrc->pDrawable->height == 1)) { | ||||||
|  |  | ||||||
|  | @ -28,7 +28,7 @@ | ||||||
|  * Authors:	Kensuke Matsuzaki |  * Authors:	Kensuke Matsuzaki | ||||||
|  *		Harold L Hunt II |  *		Harold L Hunt II | ||||||
|  */ |  */ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xwin/winmultiwindowshape.c,v 1.2 2003/11/10 18:22:44 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xwin/winmultiwindowshape.c,v 1.3 2003/12/22 01:34:20 dickey Exp $ */ | ||||||
| 
 | 
 | ||||||
| #ifdef SHAPE | #ifdef SHAPE | ||||||
| 
 | 
 | ||||||
|  | @ -117,9 +117,9 @@ winReshapeMultiWindow (WindowPtr pWin) | ||||||
|   if (!wBoundingShape (pWin)) |   if (!wBoundingShape (pWin)) | ||||||
|     return; |     return; | ||||||
| 
 | 
 | ||||||
|   REGION_NULL(pScreen, &rrNewShape); |   REGION_NULL(pWin->drawable.pScreen, &rrNewShape); | ||||||
|   REGION_COPY(pScreen, &rrNewShape, wBoundingShape(pWin)); |   REGION_COPY(pWin->drawable.pScreen, &rrNewShape, wBoundingShape(pWin)); | ||||||
|   REGION_TRANSLATE(pScreen, |   REGION_TRANSLATE(pWin->drawable.pScreen, | ||||||
| 		   &rrNewShape, | 		   &rrNewShape, | ||||||
| 		   pWin->borderWidth, | 		   pWin->borderWidth, | ||||||
|                    pWin->borderWidth); |                    pWin->borderWidth); | ||||||
|  | @ -138,7 +138,7 @@ winReshapeMultiWindow (WindowPtr pWin) | ||||||
|       if (!GetClientRect (pWinPriv->hWnd, &rcClient)) |       if (!GetClientRect (pWinPriv->hWnd, &rcClient)) | ||||||
| 	{ | 	{ | ||||||
| 	  ErrorF ("winReshape - GetClientRect failed, bailing: %d\n", | 	  ErrorF ("winReshape - GetClientRect failed, bailing: %d\n", | ||||||
| 		  GetLastError ()); | 		  (int) GetLastError ()); | ||||||
| 	  return; | 	  return; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | @ -150,7 +150,7 @@ winReshapeMultiWindow (WindowPtr pWin) | ||||||
|       if (!GetWindowRect (pWinPriv->hWnd, &rcWindow)) |       if (!GetWindowRect (pWinPriv->hWnd, &rcWindow)) | ||||||
| 	{ | 	{ | ||||||
| 	  ErrorF ("winReshape - GetWindowRect failed, bailing: %d\n", | 	  ErrorF ("winReshape - GetWindowRect failed, bailing: %d\n", | ||||||
| 		  GetLastError ()); | 		  (int) GetLastError ()); | ||||||
| 	  return; | 	  return; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | @ -165,7 +165,7 @@ winReshapeMultiWindow (WindowPtr pWin) | ||||||
| 	{ | 	{ | ||||||
| 	  ErrorF ("winReshape - Initial CreateRectRgn (%d, %d, %d, %d) " | 	  ErrorF ("winReshape - Initial CreateRectRgn (%d, %d, %d, %d) " | ||||||
| 		  "failed: %d\n", | 		  "failed: %d\n", | ||||||
| 		  0, 0, rcWindow.right, iOffsetY, GetLastError ()); | 		  0, 0, (int) rcWindow.right, iOffsetY, (int) GetLastError ()); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|       /* Loop through all rectangles in the X region */ |       /* Loop through all rectangles in the X region */ | ||||||
|  | @ -185,7 +185,7 @@ winReshapeMultiWindow (WindowPtr pWin) | ||||||
| 		      pRects->y1 + iOffsetY - 1, | 		      pRects->y1 + iOffsetY - 1, | ||||||
| 		      pRects->x2 + iOffsetX - 1, | 		      pRects->x2 + iOffsetX - 1, | ||||||
| 		      pRects->y2 + iOffsetY - 1, | 		      pRects->y2 + iOffsetY - 1, | ||||||
| 		      GetLastError (), | 		      (int) GetLastError (), | ||||||
| 		      pRects->x1, pRects->x2, iOffsetX, | 		      pRects->x1, pRects->x2, iOffsetX, | ||||||
| 		      pRects->y1, pRects->y2, iOffsetY); | 		      pRects->y1, pRects->y2, iOffsetY); | ||||||
| 	    } | 	    } | ||||||
|  | @ -194,7 +194,7 @@ winReshapeMultiWindow (WindowPtr pWin) | ||||||
| 	  if (CombineRgn (hRgn, hRgn, hRgnRect, RGN_OR) == ERROR) | 	  if (CombineRgn (hRgn, hRgn, hRgnRect, RGN_OR) == ERROR) | ||||||
| 	    { | 	    { | ||||||
| 	      ErrorF ("winReshape - CombineRgn () failed: %d\n", | 	      ErrorF ("winReshape - CombineRgn () failed: %d\n", | ||||||
| 		      GetLastError ()); | 		      (int) GetLastError ()); | ||||||
| 	    } | 	    } | ||||||
| 
 | 
 | ||||||
| 	  /* Delete the temporary Windows region */ | 	  /* Delete the temporary Windows region */ | ||||||
|  | @ -205,7 +205,7 @@ winReshapeMultiWindow (WindowPtr pWin) | ||||||
|       pWinPriv->hRgn = hRgn; |       pWinPriv->hRgn = hRgn; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|   REGION_UNINIT(pScreen, &rrNewShape); |   REGION_UNINIT(pWin->drawable.pScreen, &rrNewShape); | ||||||
|    |    | ||||||
|   return; |   return; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -28,7 +28,7 @@ | ||||||
|  * Authors:	Harold L Hunt II |  * Authors:	Harold L Hunt II | ||||||
|  *		Kensuke Matsuzaki |  *		Kensuke Matsuzaki | ||||||
|  */ |  */ | ||||||
| /* $XFree86: xc/programs/Xserver/hw/xwin/winwindow.c,v 1.9 2003/11/10 18:22:44 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/hw/xwin/winwindow.c,v 1.10 2003/12/22 01:34:20 dickey Exp $ */ | ||||||
| 
 | 
 | ||||||
| #include "win.h" | #include "win.h" | ||||||
| 
 | 
 | ||||||
|  | @ -98,7 +98,7 @@ winCopyWindowNativeGDI (WindowPtr pWin, | ||||||
|   int			dx, dy; |   int			dx, dy; | ||||||
|   int			i, nbox; |   int			i, nbox; | ||||||
|   WindowPtr		pwinRoot; |   WindowPtr		pwinRoot; | ||||||
|   BoxPtr		pBoxDst, pBoxSrc; |   BoxPtr		pBoxDst; | ||||||
|   ScreenPtr		pScreen = pWin->drawable.pScreen; |   ScreenPtr		pScreen = pWin->drawable.pScreen; | ||||||
|   winScreenPriv(pScreen); |   winScreenPriv(pScreen); | ||||||
| 
 | 
 | ||||||
|  | @ -465,9 +465,7 @@ void | ||||||
| winReshapePRootless (WindowPtr pWin) | winReshapePRootless (WindowPtr pWin) | ||||||
| { | { | ||||||
|   int		nRects; |   int		nRects; | ||||||
| #if 0 |  | ||||||
|   ScreenPtr	pScreen = pWin->drawable.pScreen; |   ScreenPtr	pScreen = pWin->drawable.pScreen; | ||||||
| #endif |  | ||||||
|   RegionRec	rrNewShape; |   RegionRec	rrNewShape; | ||||||
|   BoxPtr	pShape, pRects, pEnd; |   BoxPtr	pShape, pRects, pEnd; | ||||||
|   HRGN		hRgn, hRgnRect; |   HRGN		hRgn, hRgnRect; | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|  * Copyright 1997 through 2003 by Marc Aurele La France (TSI @ UQV), tsi@xfree86.org |  * Copyright 1997 through 2004 by Marc Aurele La France (TSI @ UQV), tsi@xfree86.org | ||||||
|  * |  * | ||||||
|  * Permission to use, copy, modify, distribute, and sell this software and its |  * Permission to use, copy, modify, distribute, and sell this software and its | ||||||
|  * documentation for any purpose is hereby granted without fee, provided that |  * documentation for any purpose is hereby granted without fee, provided that | ||||||
|  | @ -44,7 +44,7 @@ | ||||||
|  * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |  * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| /* $XFree86: xc/programs/Xserver/mi/mibank.c,v 1.15 2003/11/10 18:39:16 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/mi/mibank.c,v 1.16 2004/01/05 16:42:10 tsi Exp $ */ | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * This thing originated from an idea of Edwin Goei and his bank switching |  * This thing originated from an idea of Edwin Goei and his bank switching | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|  * Copyright 1997 through 2003 by Marc Aurele La France (TSI @ UQV), tsi@xfree86.org |  * Copyright 1997 through 2004 by Marc Aurele La France (TSI @ UQV), tsi@xfree86.org | ||||||
|  * |  * | ||||||
|  * Permission to use, copy, modify, distribute, and sell this software and its |  * Permission to use, copy, modify, distribute, and sell this software and its | ||||||
|  * documentation for any purpose is hereby granted without fee, provided that |  * documentation for any purpose is hereby granted without fee, provided that | ||||||
|  | @ -20,7 +20,7 @@ | ||||||
|  * PERFORMANCE OF THIS SOFTWARE. |  * PERFORMANCE OF THIS SOFTWARE. | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| /* $XFree86: xc/programs/Xserver/mi/mibank.h,v 1.10 2003/01/01 19:16:42 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/mi/mibank.h,v 1.11 2004/01/05 16:42:10 tsi Exp $ */ | ||||||
| 
 | 
 | ||||||
| #ifndef __MIBANK_H__ | #ifndef __MIBANK_H__ | ||||||
| #define __MIBANK_H__ 1 | #define __MIBANK_H__ 1 | ||||||
|  |  | ||||||
|  | @ -26,13 +26,12 @@ | ||||||
|  * holders shall not be used in advertising or otherwise to promote the sale, |  * holders shall not be used in advertising or otherwise to promote the sale, | ||||||
|  * use or other dealings in this Software without prior written authorization. |  * use or other dealings in this Software without prior written authorization. | ||||||
|  */ |  */ | ||||||
| /* $XFree86: xc/programs/Xserver/miext/rootless/safeAlpha/safeAlpha.h,v 1.2 2003/10/18 00:00:34 torrey Exp $ */ | /* $XFree86: xc/programs/Xserver/miext/rootless/safeAlpha/safeAlpha.h,v 1.3 2004/01/19 01:22:48 torrey Exp $ */ | ||||||
| 
 | 
 | ||||||
| #ifndef _SAFEALPHA_H | #ifndef _SAFEALPHA_H | ||||||
| #define _SAFEALPHA_H | #define _SAFEALPHA_H | ||||||
| 
 | 
 | ||||||
| #include "picturestr.h" | #include "picturestr.h" | ||||||
| #include "rootlessCommon.h" |  | ||||||
| 
 | 
 | ||||||
| void SafeAlphaPaintWindow(WindowPtr pWin, RegionPtr pRegion, int what); | void SafeAlphaPaintWindow(WindowPtr pWin, RegionPtr pRegion, int what); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -32,7 +32,7 @@ | ||||||
|  * |  * | ||||||
|  * Copyright © 2000 Keith Packard, member of The XFree86 Project, Inc. |  * Copyright © 2000 Keith Packard, member of The XFree86 Project, Inc. | ||||||
|  */ |  */ | ||||||
|  /* $XFree86: xc/programs/Xserver/miext/rootless/safeAlpha/safeAlphaPicture.c,v 1.3 2003/10/24 00:33:15 torrey Exp $ */ |  /* $XFree86: xc/programs/Xserver/miext/rootless/safeAlpha/safeAlphaPicture.c,v 1.4 2004/01/19 01:22:48 torrey Exp $ */ | ||||||
| 
 | 
 | ||||||
| #ifdef RENDER | #ifdef RENDER | ||||||
| 
 | 
 | ||||||
|  | @ -41,6 +41,7 @@ | ||||||
| #include "mipict.h" | #include "mipict.h" | ||||||
| #include "fbpict.h" | #include "fbpict.h" | ||||||
| #include "safeAlpha.h" | #include "safeAlpha.h" | ||||||
|  | #include "rootlessCommon.h" | ||||||
| 
 | 
 | ||||||
| # define mod(a,b)	((b) == 1 ? 0 : (a) >= 0 ? (a) % (b) : (b) - (-a) % (b)) | # define mod(a,b)	((b) == 1 ? 0 : (a) >= 0 ? (a) % (b) : (b) - (-a) % (b)) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| /* $XdotOrg$ */ | /* $XdotOrg: xc/programs/Xserver/miext/rootless/safeAlpha/safeAlphaWindow.c,v 1.1.4.1 2003/12/18 19:29:15 kaleb Exp $ */ | ||||||
| /*
 | /*
 | ||||||
|  * Specialized window functions to protect the alpha channel |  * Specialized window functions to protect the alpha channel | ||||||
|  */ |  */ | ||||||
|  | @ -32,10 +32,11 @@ | ||||||
|  * |  * | ||||||
|  * Copyright © 1998 Keith Packard |  * Copyright © 1998 Keith Packard | ||||||
|  */ |  */ | ||||||
| /* $XFree86: xc/programs/Xserver/miext/rootless/safeAlpha/safeAlphaWindow.c,v 1.1 2003/09/16 00:36:20 torrey Exp $ */ | /* $XFree86: xc/programs/Xserver/miext/rootless/safeAlpha/safeAlphaWindow.c,v 1.2 2004/01/19 01:22:48 torrey Exp $ */ | ||||||
| 
 | 
 | ||||||
| #include "fb.h" | #include "fb.h" | ||||||
| #include "safeAlpha.h" | #include "safeAlpha.h" | ||||||
|  | #include "rootlessCommon.h" | ||||||
| 
 | 
 | ||||||
| #ifdef XINERAMA | #ifdef XINERAMA | ||||||
| #include "xinerama.h" | #include "xinerama.h" | ||||||
|  |  | ||||||
							
								
								
									
										59
									
								
								os/access.c
								
								
								
								
							
							
						
						
									
										59
									
								
								os/access.c
								
								
								
								
							|  | @ -45,7 +45,7 @@ ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS | ||||||
| SOFTWARE. | SOFTWARE. | ||||||
| 
 | 
 | ||||||
| ******************************************************************/ | ******************************************************************/ | ||||||
| /* $XFree86: xc/programs/Xserver/os/access.c,v 3.50 2003/11/03 05:12:00 tsi Exp $ */ | /* $XFree86: xc/programs/Xserver/os/access.c,v 3.54 2004/01/03 17:38:39 herrb Exp $ */ | ||||||
| 
 | 
 | ||||||
| #ifdef WIN32 | #ifdef WIN32 | ||||||
| #include <X11/Xwinsock.h> | #include <X11/Xwinsock.h> | ||||||
|  | @ -645,6 +645,20 @@ DefineLocalHost: | ||||||
| #include <arpa/inet.h> | #include <arpa/inet.h> | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  | #if defined(IPv6) && defined(AF_INET6) | ||||||
|  | static void | ||||||
|  | in6_fillscopeid(struct sockaddr_in6 *sin6) | ||||||
|  | { | ||||||
|  | #if defined(__KAME__) | ||||||
|  | 	if (IN6_IS_ADDR_LINKLOCAL(&sin6->sin6_addr)) { | ||||||
|  | 		sin6->sin6_scope_id = | ||||||
|  | 			ntohs(*(u_int16_t *)&sin6->sin6_addr.s6_addr[2]); | ||||||
|  | 		sin6->sin6_addr.s6_addr[2] = sin6->sin6_addr.s6_addr[3] = 0; | ||||||
|  | 	} | ||||||
|  | #endif | ||||||
|  | } | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
| void | void | ||||||
| DefineSelf (int fd) | DefineSelf (int fd) | ||||||
| { | { | ||||||
|  | @ -761,6 +775,10 @@ DefineSelf (int fd) | ||||||
| #endif /* DNETCONN */ | #endif /* DNETCONN */ | ||||||
|         if (family == -1 || family == FamilyLocal) |         if (family == -1 || family == FamilyLocal) | ||||||
| 	    continue; | 	    continue; | ||||||
|  | #if defined(IPv6) && defined(AF_INET6) | ||||||
|  | 	if (family == FamilyInternet6)  | ||||||
|  | 	    in6_fillscopeid((struct sockaddr_in6 *)&IFR_IFR_ADDR); | ||||||
|  | #endif | ||||||
| #ifdef DEF_SELF_DEBUG | #ifdef DEF_SELF_DEBUG | ||||||
| 	if (family == FamilyInternet)  | 	if (family == FamilyInternet)  | ||||||
| 	    ErrorF("Xserver: DefineSelf(): ifname = %s, addr = %d.%d.%d.%d\n", | 	    ErrorF("Xserver: DefineSelf(): ifname = %s, addr = %d.%d.%d.%d\n", | ||||||
|  | @ -898,10 +916,24 @@ DefineSelf (int fd) | ||||||
| 	family = ConvertAddr(ifr->ifa_addr, &len, (pointer *)&addr); | 	family = ConvertAddr(ifr->ifa_addr, &len, (pointer *)&addr); | ||||||
| 	if (family == -1 || family == FamilyLocal)  | 	if (family == -1 || family == FamilyLocal)  | ||||||
| 	    continue; | 	    continue; | ||||||
|  | #if defined(IPv6) && defined(AF_INET6) | ||||||
|  | 	if (family == FamilyInternet6)  | ||||||
|  | 	    in6_fillscopeid((struct sockaddr_in6 *)ifr->ifa_addr); | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
| #ifdef DEF_SELF_DEBUG | #ifdef DEF_SELF_DEBUG | ||||||
| 	if (family == FamilyInternet)  | 	if (family == FamilyInternet)  | ||||||
| 	    ErrorF("Xserver: DefineSelf(): ifname = %s, addr = %d.%d.%d.%d\n", | 	    ErrorF("Xserver: DefineSelf(): ifname = %s, addr = %d.%d.%d.%d\n", | ||||||
| 		   ifr->ifa_name, addr[0], addr[1], addr[2], addr[3]); | 		   ifr->ifa_name, addr[0], addr[1], addr[2], addr[3]); | ||||||
|  | #if defined(IPv6) && defined(AF_INET6) | ||||||
|  | 	else if (family == FamilyInternet6) { | ||||||
|  | 		char cp[INET6_ADDRSTRLEN]; | ||||||
|  | 
 | ||||||
|  | 		inet_ntop(AF_INET6, addr, cp, sizeof(cp)); | ||||||
|  | 		ErrorF("Xserver: DefineSelf(): ifname = %s addr = %s\n", | ||||||
|  | 		    ifr->ifa_name, cp); | ||||||
|  | 	} | ||||||
|  | #endif | ||||||
| #endif /* DEF_SELF_DEBUG */ | #endif /* DEF_SELF_DEBUG */ | ||||||
| 	for (host = selfhosts;  | 	for (host = selfhosts;  | ||||||
| 	     host != NULL && !addrEqual(family, addr, len, host); | 	     host != NULL && !addrEqual(family, addr, len, host); | ||||||
|  | @ -923,17 +955,34 @@ DefineSelf (int fd) | ||||||
| 	    /*
 | 	    /*
 | ||||||
| 	     * If this isn't an Internet Address, don't register it. | 	     * If this isn't an Internet Address, don't register it. | ||||||
| 	     */ | 	     */ | ||||||
| 	    if (family != FamilyInternet)  | 	    if (family != FamilyInternet | ||||||
|  | #if defined(IPv6) && defined(AF_INET6) | ||||||
|  | 		&& family != FamilyInternet6 | ||||||
|  | #endif | ||||||
|  | 	    ) | ||||||
| 		continue; | 		continue; | ||||||
| 	    /* 
 | 	    /* 
 | ||||||
| 	     * ignore 'localhost' entries as they're not usefule | 	     * ignore 'localhost' entries as they're not useful | ||||||
| 	     * on the other end of the wire | 	     * on the other end of the wire | ||||||
| 	     */ | 	     */ | ||||||
| 	    if (len == 4 &&  | 	    if (ifr->ifa_flags & IFF_LOOPBACK)  | ||||||
|  | 		    continue; | ||||||
|  | 
 | ||||||
|  | 	    if (family == FamilyInternet &&  | ||||||
| 		addr[0] == 127 && addr[1] == 0 && | 		addr[0] == 127 && addr[1] == 0 && | ||||||
| 		addr[2] == 0 && addr[2] == 1)  | 		addr[2] == 0 && addr[3] == 1)  | ||||||
| 		continue; | 		continue; | ||||||
|  | #if defined(IPv6) && defined(AF_INET6) | ||||||
|  | 	    else if (family == FamilyInternet6 &&  | ||||||
|  | 	      IN6_IS_ADDR_LOOPBACK((struct in6_addr *)addr)) | ||||||
|  | 		continue; | ||||||
|  | #endif | ||||||
| 	    XdmcpRegisterConnection(family, (char *)addr, len); | 	    XdmcpRegisterConnection(family, (char *)addr, len); | ||||||
|  | #if defined(IPv6) && defined(AF_INET6) | ||||||
|  | 	    if (family == FamilyInternet6)  | ||||||
|  | 		/* IPv6 doesn't support broadcasting, so we drop out here */ | ||||||
|  | 		continue; | ||||||
|  | #endif | ||||||
| 	    if ((ifr->ifa_flags & IFF_BROADCAST) && | 	    if ((ifr->ifa_flags & IFF_BROADCAST) && | ||||||
| 		(ifr->ifa_flags & IFF_UP)) | 		(ifr->ifa_flags & IFF_UP)) | ||||||
| 		broad_addr = *ifr->ifa_broadaddr; | 		broad_addr = *ifr->ifa_broadaddr; | ||||||
|  |  | ||||||
							
								
								
									
										22
									
								
								os/utils.c
								
								
								
								
							
							
						
						
									
										22
									
								
								os/utils.c
								
								
								
								
							|  | @ -1,4 +1,4 @@ | ||||||
| /* $XdotOrg: utils.c,v 1.5 2001/02/09 02:05:24 xorgcvs Exp $ */ | /* $XdotOrg: xc/programs/Xserver/os/utils.c,v 1.1.4.4 2003/12/18 19:29:15 kaleb Exp $ */ | ||||||
| /* $Xorg: utils.c,v 1.5 2001/02/09 02:05:24 xorgcvs Exp $ */ | /* $Xorg: utils.c,v 1.5 2001/02/09 02:05:24 xorgcvs Exp $ */ | ||||||
| /*
 | /*
 | ||||||
| 
 | 
 | ||||||
|  | @ -50,7 +50,7 @@ OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE | ||||||
| OR PERFORMANCE OF THIS SOFTWARE. | OR PERFORMANCE OF THIS SOFTWARE. | ||||||
| 
 | 
 | ||||||
| */ | */ | ||||||
| /* $XFree86: xc/programs/Xserver/os/utils.c,v 3.95 2003/10/01 18:36:38 alanh Exp $ */ | /* $XFree86: xc/programs/Xserver/os/utils.c,v 3.97 2004/01/09 00:35:06 dawes Exp $ */ | ||||||
| 
 | 
 | ||||||
| #ifdef __CYGWIN__ | #ifdef __CYGWIN__ | ||||||
| #include <stdlib.h> | #include <stdlib.h> | ||||||
|  | @ -245,6 +245,7 @@ LockServer(void) | ||||||
|   int lfd, i, haslock, l_pid, t; |   int lfd, i, haslock, l_pid, t; | ||||||
|   char *tmppath = NULL; |   char *tmppath = NULL; | ||||||
|   int len; |   int len; | ||||||
|  |   char port[20]; | ||||||
| 
 | 
 | ||||||
|   if (nolock) return; |   if (nolock) return; | ||||||
|   /*
 |   /*
 | ||||||
|  | @ -259,13 +260,14 @@ LockServer(void) | ||||||
|     FatalError("No TMP dir found\n"); |     FatalError("No TMP dir found\n"); | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  |   sprintf(port, "%d", atoi(display)); | ||||||
|   len = strlen(LOCK_PREFIX) > strlen(LOCK_TMP_PREFIX) ? strlen(LOCK_PREFIX) : |   len = strlen(LOCK_PREFIX) > strlen(LOCK_TMP_PREFIX) ? strlen(LOCK_PREFIX) : | ||||||
| 						strlen(LOCK_TMP_PREFIX); | 						strlen(LOCK_TMP_PREFIX); | ||||||
|   len += strlen(tmppath) + strlen(display) + strlen(LOCK_SUFFIX) + 1; |   len += strlen(tmppath) + strlen(port) + strlen(LOCK_SUFFIX) + 1; | ||||||
|   if (len > sizeof(LockFile)) |   if (len > sizeof(LockFile)) | ||||||
|     FatalError("Display name `%s' is too long\n", display); |     FatalError("Display name `%s' is too long\n", port); | ||||||
|   (void)sprintf(tmp, "%s" LOCK_TMP_PREFIX "%s" LOCK_SUFFIX, tmppath, display); |   (void)sprintf(tmp, "%s" LOCK_TMP_PREFIX "%s" LOCK_SUFFIX, tmppath, port); | ||||||
|   (void)sprintf(LockFile, "%s" LOCK_PREFIX "%s" LOCK_SUFFIX, tmppath, display); |   (void)sprintf(LockFile, "%s" LOCK_PREFIX "%s" LOCK_SUFFIX, tmppath, port); | ||||||
| 
 | 
 | ||||||
|   /*
 |   /*
 | ||||||
|    * Create a temporary file containing our PID.  Attempt three times |    * Create a temporary file containing our PID.  Attempt three times | ||||||
|  | @ -360,7 +362,7 @@ LockServer(void) | ||||||
|          */ |          */ | ||||||
|         unlink(tmp); |         unlink(tmp); | ||||||
| 	FatalError("Server is already active for display %s\n%s %s\n%s\n", | 	FatalError("Server is already active for display %s\n%s %s\n%s\n", | ||||||
| 		   display, "\tIf this server is no longer running, remove", | 		   port, "\tIf this server is no longer running, remove", | ||||||
| 		   LockFile, "\tand start again."); | 		   LockFile, "\tand start again."); | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|  | @ -585,8 +587,10 @@ ProcessCommandLine(int argc, char *argv[]) | ||||||
| 
 | 
 | ||||||
|     defaultKeyboardControl.autoRepeat = TRUE; |     defaultKeyboardControl.autoRepeat = TRUE; | ||||||
| 
 | 
 | ||||||
| #ifdef PART_NET | #ifdef NO_PART_NET | ||||||
| 	PartialNetwork = TRUE; |     PartialNetwork = FALSE; | ||||||
|  | #else | ||||||
|  |     PartialNetwork = TRUE; | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|     for ( i = 1; i < argc; i++ ) |     for ( i = 1; i < argc; i++ ) | ||||||
|  |  | ||||||
							
								
								
									
										47
									
								
								os/xdmcp.c
								
								
								
								
							
							
						
						
									
										47
									
								
								os/xdmcp.c
								
								
								
								
							|  | @ -1,4 +1,4 @@ | ||||||
| /* $XdotOrg: xdmcp.c,v 1.4 2001/01/31 13:37:19 pookie Exp $ */ | /* $XdotOrg: xc/programs/Xserver/os/xdmcp.c,v 1.1.4.4 2003/12/06 13:24:29 kaleb Exp $ */ | ||||||
| /* $Xorg: xdmcp.c,v 1.4 2001/01/31 13:37:19 pookie Exp $ */ | /* $Xorg: xdmcp.c,v 1.4 2001/01/31 13:37:19 pookie Exp $ */ | ||||||
| /*
 | /*
 | ||||||
|  * Copyright 1989 Network Computing Devices, Inc., Mountain View, California. |  * Copyright 1989 Network Computing Devices, Inc., Mountain View, California. | ||||||
|  | @ -14,7 +14,7 @@ | ||||||
|  * without express or implied warranty. |  * without express or implied warranty. | ||||||
|  * |  * | ||||||
|  */ |  */ | ||||||
| /* $XFree86: xc/programs/Xserver/os/xdmcp.c,v 3.29 2003/11/22 04:51:02 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/os/xdmcp.c,v 3.32 2004/01/01 17:09:29 herrb Exp $ */ | ||||||
| 
 | 
 | ||||||
| #ifdef WIN32 | #ifdef WIN32 | ||||||
| /* avoid conflicting definitions */ | /* avoid conflicting definitions */ | ||||||
|  | @ -759,14 +759,6 @@ XdmcpSelectHost( | ||||||
|     int			host_len, |     int			host_len, | ||||||
|     ARRAY8Ptr		AuthenticationName) |     ARRAY8Ptr		AuthenticationName) | ||||||
| { | { | ||||||
| #if defined(IPv6) && defined(AF_INET6) |  | ||||||
|     /* Don't need list of addresses for host anymore */ |  | ||||||
|     if (mgrAddrFirst != NULL) { |  | ||||||
| 	freeaddrinfo(mgrAddrFirst); |  | ||||||
| 	mgrAddrFirst = NULL; |  | ||||||
| 	mgrAddr = NULL; |  | ||||||
|     } |  | ||||||
| #endif |  | ||||||
|     state = XDM_START_CONNECTION; |     state = XDM_START_CONNECTION; | ||||||
|     memmove(&req_sockaddr, host_sockaddr, host_len); |     memmove(&req_sockaddr, host_sockaddr, host_len); | ||||||
|     req_socklen = host_len; |     req_socklen = host_len; | ||||||
|  | @ -1162,7 +1154,7 @@ send_query_msg(void) | ||||||
| 	    socketfd = xdmcpSocket6; | 	    socketfd = xdmcpSocket6; | ||||||
| #endif	 | #endif	 | ||||||
| 	XdmcpFlush (socketfd, &buffer, (XdmcpNetaddr) &ManagerAddress, | 	XdmcpFlush (socketfd, &buffer, (XdmcpNetaddr) &ManagerAddress, | ||||||
| 		    sizeof (ManagerAddress)); | 		    ManagerAddressLen); | ||||||
|     } |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | @ -1214,9 +1206,19 @@ send_request_msg(void) | ||||||
|     XdmcpHeader	    header; |     XdmcpHeader	    header; | ||||||
|     int		    length; |     int		    length; | ||||||
|     int		    i; |     int		    i; | ||||||
|  |     CARD16	    XdmcpConnectionType; | ||||||
|     ARRAY8	    authenticationData; |     ARRAY8	    authenticationData; | ||||||
|     int		    socketfd = xdmcpSocket; |     int		    socketfd = xdmcpSocket; | ||||||
| 
 | 
 | ||||||
|  |     switch (SOCKADDR_FAMILY(ManagerAddress)) | ||||||
|  |     { | ||||||
|  |     case AF_INET:	XdmcpConnectionType=FamilyInternet; break; | ||||||
|  | #if defined(IPv6) && defined(AF_INET6) | ||||||
|  |     case AF_INET6:	XdmcpConnectionType=FamilyInternet6; break; | ||||||
|  | #endif | ||||||
|  |     default:		XdmcpConnectionType=0xffff; break; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     header.version = XDM_PROTOCOL_VERSION; |     header.version = XDM_PROTOCOL_VERSION; | ||||||
|     header.opcode = (CARD16) REQUEST; |     header.opcode = (CARD16) REQUEST; | ||||||
| 
 | 
 | ||||||
|  | @ -1247,8 +1249,27 @@ send_request_msg(void) | ||||||
| 	return; | 	return; | ||||||
|     } |     } | ||||||
|     XdmcpWriteCARD16 (&buffer, DisplayNumber); |     XdmcpWriteCARD16 (&buffer, DisplayNumber); | ||||||
|     XdmcpWriteARRAY16 (&buffer, &ConnectionTypes); |     XdmcpWriteCARD8 (&buffer, ConnectionTypes.length); | ||||||
|     XdmcpWriteARRAYofARRAY8 (&buffer, &ConnectionAddresses); | 
 | ||||||
|  |     /* The connection array is send reordered, so that connections of	*/ | ||||||
|  |     /* the same address type as the XDMCP manager connection are send	*/ | ||||||
|  |     /* first. This works around a bug in xdm. mario@klebsch.de 		*/ | ||||||
|  |     for (i = 0; i < (int)ConnectionTypes.length; i++) | ||||||
|  | 	if (ConnectionTypes.data[i]==XdmcpConnectionType) | ||||||
|  | 	    XdmcpWriteCARD16 (&buffer, ConnectionTypes.data[i]); | ||||||
|  |     for (i = 0; i < (int)ConnectionTypes.length; i++) | ||||||
|  | 	if (ConnectionTypes.data[i]!=XdmcpConnectionType) | ||||||
|  | 	    XdmcpWriteCARD16 (&buffer, ConnectionTypes.data[i]); | ||||||
|  | 
 | ||||||
|  |     XdmcpWriteCARD8 (&buffer, ConnectionAddresses.length); | ||||||
|  |     for (i = 0; i < (int)ConnectionAddresses.length; i++) | ||||||
|  | 	if ( (i<ConnectionTypes.length) &&  | ||||||
|  | 	     (ConnectionTypes.data[i]==XdmcpConnectionType) ) | ||||||
|  | 	    XdmcpWriteARRAY8 (&buffer, &ConnectionAddresses.data[i]); | ||||||
|  |     for (i = 0; i < (int)ConnectionAddresses.length; i++) | ||||||
|  | 	if ( (i>=ConnectionTypes.length) || | ||||||
|  | 	     (ConnectionTypes.data[i]!=XdmcpConnectionType) ) | ||||||
|  | 	    XdmcpWriteARRAY8 (&buffer, &ConnectionAddresses.data[i]); | ||||||
| 
 | 
 | ||||||
|     XdmcpWriteARRAY8 (&buffer, AuthenticationName); |     XdmcpWriteARRAY8 (&buffer, AuthenticationName); | ||||||
|     XdmcpWriteARRAY8 (&buffer, &authenticationData); |     XdmcpWriteARRAY8 (&buffer, &authenticationData); | ||||||
|  |  | ||||||
|  | @ -24,7 +24,7 @@ OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION  WITH | ||||||
| THE USE OR PERFORMANCE OF THIS SOFTWARE. | THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||||||
| 
 | 
 | ||||||
| ********************************************************/ | ********************************************************/ | ||||||
| /* $XFree86: xc/programs/Xserver/xkb/xkb.c,v 3.22 2003/11/17 22:20:45 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/xkb/xkb.c,v 3.23 2003/12/22 17:48:11 tsi Exp $ */ | ||||||
| 
 | 
 | ||||||
| #include <stdio.h> | #include <stdio.h> | ||||||
| #include "X.h" | #include "X.h" | ||||||
|  | @ -2307,8 +2307,7 @@ ProcXkbSetMap(ClientPtr client) | ||||||
| 	    stuff->maxKeyCode= xkb->max_key_code; | 	    stuff->maxKeyCode= xkb->max_key_code; | ||||||
| 	} | 	} | ||||||
| 	else { | 	else { | ||||||
| 	    if ((stuff->minKeyCode<XkbMinLegalKeyCode)|| | 	    if (!XkbIsLegalKeycode(stuff->minKeyCode)) { | ||||||
| 				(stuff->maxKeyCode>XkbMaxLegalKeyCode)) { |  | ||||||
| 		client->errorValue= _XkbErrCode3(2,stuff->minKeyCode, | 		client->errorValue= _XkbErrCode3(2,stuff->minKeyCode, | ||||||
| 							stuff->maxKeyCode); | 							stuff->maxKeyCode); | ||||||
| 		return BadValue; | 		return BadValue; | ||||||
|  |  | ||||||
|  | @ -24,7 +24,7 @@ OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION  WITH | ||||||
| THE USE OR PERFORMANCE OF THIS SOFTWARE. | THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||||||
| 
 | 
 | ||||||
| ********************************************************/ | ********************************************************/ | ||||||
| /* $XFree86: xc/programs/Xserver/xkb/xkbInit.c,v 3.32 2003/11/17 22:20:46 dawes Exp $ */ | /* $XFree86: xc/programs/Xserver/xkb/xkbInit.c,v 3.33 2003/12/22 17:48:12 tsi Exp $ */ | ||||||
| 
 | 
 | ||||||
| #include <stdio.h> | #include <stdio.h> | ||||||
| #include <stdlib.h> | #include <stdlib.h> | ||||||
|  | @ -716,7 +716,7 @@ XkbRF_VarDefsRec	defs; | ||||||
| 
 | 
 | ||||||
|     if (ok && (finfo.xkb!=NULL)) { |     if (ok && (finfo.xkb!=NULL)) { | ||||||
| 	XkbDescPtr	xkb; | 	XkbDescPtr	xkb; | ||||||
| 	int		minKC,maxKC; | 	KeyCode		minKC,maxKC; | ||||||
| 
 | 
 | ||||||
| 	xkb= finfo.xkb; | 	xkb= finfo.xkb; | ||||||
| 	minKC= xkb->min_key_code; | 	minKC= xkb->min_key_code; | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue