2006-01-21  Keith Packard  <keithp@keithp.com>

	* composite/compalloc.c: (compEnsureWindowPrivate),
	(compCheckWindowPrivateNeeded), (compSaveBeforeRedirect),
	(compRestoreAfterRedirect), (compRedirectWindow),
	(compFreeClientWindow), (compRedirectSubwindows),
	(compFreeClientSubwindows):
	* composite/compint.h:
	
	Eliminate one of the two WindowPrivate indices to save
	memory in unredirected windows.

	Clear StructureNotify and SubstructureNotify bits as necessary
	to avoid delivering MapNotify/UnmapNotify events during
	redirect allocation/deallocation.

2006-01-09  David Reveman  <davidr@novell.com>

	* hw/xgl/glxext/xglglxext.c:
	* hw/xgl/glxext/xglglxlog.c: Fix GLX render tables in Xgl.

2006-01-05  Dave Airlie  <airlied@linux.ie>

	* GL/glx/Makefile.am:
	* GL/glx/g_render.c: (__glXDisp_ActiveTextureARB),
	(__glXDisp_MultiTexCoord1dvARB), (__glXDisp_MultiTexCoord1fvARB),
	(__glXDisp_MultiTexCoord1ivARB), (__glXDisp_MultiTexCoord1svARB),
	(__glXDisp_MultiTexCoord2dvARB), (__glXDisp_MultiTexCoord2fvARB),
	(__glXDisp_MultiTexCoord2ivARB), (__glXDisp_MultiTexCoord2svARB),
	(__glXDisp_MultiTexCoord3dvARB), (__glXDisp_MultiTexCoord3fvARB),
	(__glXDisp_MultiTexCoord3ivARB), (__glXDisp_MultiTexCoord3svARB),
	(__glXDisp_MultiTexCoord4dvARB), (__glXDisp_MultiTexCoord4fvARB),
	(__glXDisp_MultiTexCoord4ivARB), (__glXDisp_MultiTexCoord4svARB),
	(__glXDisp_PointParameterfARB), (__glXDisp_PointParameterfvARB),
	(__glXDisp_ActiveStencilFaceEXT), (__glXDisp_WindowPos3fARB),
	(__glXDisp_SampleCoverageARB):
	* GL/glx/g_renderswap.c: (__glXDispSwap_ActiveTextureARB),
	(__glXDispSwap_MultiTexCoord1dvARB),
	(__glXDispSwap_MultiTexCoord1fvARB),
	(__glXDispSwap_MultiTexCoord1ivARB),
	(__glXDispSwap_MultiTexCoord1svARB),
	(__glXDispSwap_MultiTexCoord2dvARB),
	(__glXDispSwap_MultiTexCoord2fvARB),
	(__glXDispSwap_MultiTexCoord2ivARB),
	(__glXDispSwap_MultiTexCoord2svARB),
	(__glXDispSwap_MultiTexCoord3dvARB),
	(__glXDispSwap_MultiTexCoord3fvARB),
	(__glXDispSwap_MultiTexCoord3ivARB),
	(__glXDispSwap_MultiTexCoord3svARB),
	(__glXDispSwap_MultiTexCoord4dvARB),
	(__glXDispSwap_MultiTexCoord4fvARB),
	(__glXDispSwap_MultiTexCoord4ivARB),
	(__glXDispSwap_MultiTexCoord4svARB),
	(__glXDispSwap_PointParameterfARB),
	(__glXDispSwap_PointParameterfvARB),
	(__glXDispSwap_ActiveStencilFaceEXT),
	(__glXDispSwap_WindowPos3fARB), (__glXDispSwap_SampleCoverageARB):
	* GL/glx/g_single.c: (__glXDisp_AreTexturesResidentEXT),
	(__glXDisp_GenTexturesEXT), (__glXDisp_IsTextureEXT):
	* GL/glx/g_singleswap.c: (__glXDispSwap_AreTexturesResidentEXT),
	(__glXDispSwap_GenTexturesEXT), (__glXDispSwap_IsTextureEXT):
	* GL/glx/glxcmds.c: (GlxSetRenderTables), (__glXVendorPrivate):
	* GL/glx/glxcmdsswap.c: (__glXSwapVendorPrivate):
	* GL/glx/glxserver.h:
	* GL/glx/render2.c: (__glXDisp_DrawArrays):
	* GL/glx/render2swap.c:
	* GL/glx/renderpix.c:
	* GL/glx/renderpixswap.c:
	* GL/glx/single2.c:
	* GL/glx/single2swap.c:
	* GL/glx/singlepix.c:
	* GL/glx/singlepixswap.c:
	* GL/glx/singlesize.c:
	* GL/glx/xfont.c:
	* GL/mesa/X/xf86glx.c: (__MESA_forceCurrent):
	* GL/mesa/X/xf86glxddx.c:
	* configure.ac:
	* hw/xgl/glxext/xglglxext.c: (xglRectd), (xglRectf), (xglRecti),
	(xglRects), (xglSetCurrentContext), (xglLoseCurrent),
	(xglLoseCurrentContext):
	* hw/xgl/glxext/xglglxlog.c: (logActiveTextureARB),
	(logClientActiveTextureARB), (logMultiTexCoord1dvARB),
	(logMultiTexCoord1fvARB), (logMultiTexCoord1ivARB),
	(logMultiTexCoord1svARB), (logMultiTexCoord2dvARB),
	(logMultiTexCoord2fvARB), (logMultiTexCoord2ivARB),
	(logMultiTexCoord2svARB), (logMultiTexCoord3dvARB),
	(logMultiTexCoord3fvARB), (logMultiTexCoord3ivARB),
	(logMultiTexCoord3svARB), (logMultiTexCoord4dvARB),
	(logMultiTexCoord4fvARB), (logMultiTexCoord4ivARB),
	(logMultiTexCoord4svARB), (logSampleCoverageARB),
	(logAreTexturesResidentEXT), (logGenTexturesEXT),
	(logIsTextureEXT), (logSampleMaskSGIS), (logSamplePatternSGIS),
	(logPointParameterfEXT), (logPointParameterfvEXT),
	(logWindowPos3fMESA), (logBlendFuncSeparateEXT),
	(logFogCoordfvEXT), (logFogCoorddvEXT), (logFogCoordPointerEXT),
	(logSecondaryColor3bvEXT), (logSecondaryColor3dvEXT),
	(logSecondaryColor3fvEXT), (logSecondaryColor3ivEXT),
	(logSecondaryColor3svEXT), (logSecondaryColor3ubvEXT),
	(logSecondaryColor3uivEXT), (logSecondaryColor3usvEXT),
	(logSecondaryColorPointerEXT), (logPointParameteriNV),
	(logPointParameterivNV), (logActiveStencilFaceEXT),
	(logIsRenderbufferEXT), (logBindRenderbufferEXT),
	(logDeleteRenderbuffersEXT), (logGenRenderbuffersEXT),
	(logRenderbufferStorageEXT), (logGetRenderbufferParameterivEXT),
	(logIsFramebufferEXT), (logBindFramebufferEXT),
	(logDeleteFramebuffersEXT), (logGenFramebuffersEXT),
	(logCheckFramebufferStatusEXT), (logFramebufferTexture1DEXT),
	(logFramebufferTexture2DEXT), (logFramebufferTexture3DEXT),
	(logFramebufferRenderbufferEXT),
	(logGetFramebufferAttachmentParameterivEXT),
	(logGenerateMipmapEXT), (GlxLogSetRenderTables):
	* hw/xgl/xglglx.c: (GlxSetRenderTables):
	* hw/xgl/xglglx.h:
	Switch GLX and Xgl to using Mesa's "glapitable.h" table
	instead of having a private table

2006-01-03  David Reveman  <davidr@novell.com>

	* configure.ac: Add XGL_GLXEXT_LIB to XGLX_LIBS and XEGL_LIBS.

	* hw/xgl/egl/xeglinit.c: Fix so that Xegl builds.

	* hw/xgl/glx/xglxinit.c: Fix so that Xglx builds.

2006-01-03  Dave Airlie  <airlied@linux.ie>

	* Xext/xevie.c: (XevieExtensionInit), (sendEvent),
	(XevieKbdProcessInputProc), (XeviePointerProcessInputProc),
	(XevieStart), (XevieEnd), (XevieClientStateCallback),
	(XevieServerGrabStateCallback), (xevieUnwrapProc),
	(XevieUnwrapAdd), (XevieAdd), (XevieRemove), (XevieWrap),
	(doSendEvent):
	Add xevie.c to Xext

2006-01-03  Dave Airlie  <airlied@linux.ie>

	* GL/glx/glxcmds.c: (__glXSwapBuffers),
	(__glXGetDrawableAttributesSGIX), (__glXBindTexImageEXT),
	(__glXReleaseTexImageEXT), (__glXRenderBeginEnd), (__glXRender):
	* GL/glx/glxcmdsswap.c: (__glXSwapRenderBeginEnd),
	(__glXSwapRender):
	* GL/glx/glxext.c: (ResetClientState):
	* GL/glx/glxscreens.c:
	* GL/glx/glxserver.h:
	* GL/glx/glxutil.c: (LockDP):
	* GL/glx/singlesize.c: (__glGet_size):
	* GL/mesa/X/xf86glx.c: (init_visuals), (__MESA_createBuffer),
	(__MESA_allocateBuffer), (__MESA_makeCurrent):
	* GL/mesa/X/xf86glxint.h:
	GL changes from Xgl codedrop

2006-01-03  Dave Airlie  <airlied@linux.ie>

	* fb/fb.h:
	* fb/fbbits.h:
	* fb/fbbltone.c: (fbBltOne):
	* fb/fbcompose.c: (SourcePictureClassify), (fbSetupYv12),
	(fbFetch_a8r8g8b8), (fbFetch_x8r8g8b8), (fbFetch_a8b8g8r8),
	(fbFetch_x8b8g8r8), (fbFetch_r8g8b8), (fbFetch_b8g8r8),
	(fbFetch_r5g6b5), (fbFetch_b5g6r5), (fbFetch_a1r5g5b5),
	(fbFetch_x1r5g5b5), (fbFetch_a1b5g5r5), (fbFetch_x1b5g5r5),
	(fbFetch_a4r4g4b4), (fbFetch_x4r4g4b4), (fbFetch_a4b4g4r4),
	(fbFetch_x4b4g4r4), (fbFetch_a8), (fbFetch_r3g3b2),
	(fbFetch_b2g3r3), (fbFetch_a2r2g2b2), (fbFetch_a2b2g2r2),
	(fbFetch_c8), (fbFetch_a4), (fbFetch_r1g2b1), (fbFetch_b1g2r1),
	(fbFetch_a1r1g1b1), (fbFetch_a1b1g1r1), (fbFetch_c4), (fbFetch_a1),
	(fbFetch_g1), (fbFetch_yuy2), (fbFetch_yv12),
	(fetchProcForPicture), (fbFetchPixel_a8r8g8b8),
	(fbFetchPixel_x8r8g8b8), (fbFetchPixel_a8b8g8r8),
	(fbFetchPixel_x8b8g8r8), (fbFetchPixel_r8g8b8),
	(fbFetchPixel_b8g8r8), (fbFetchPixel_r5g6b5),
	(fbFetchPixel_b5g6r5), (fbFetchPixel_a1r5g5b5),
	(fbFetchPixel_x1r5g5b5), (fbFetchPixel_a1b5g5r5),
	(fbFetchPixel_x1b5g5r5), (fbFetchPixel_a4r4g4b4),
	(fbFetchPixel_x4r4g4b4), (fbFetchPixel_a4b4g4r4),
	(fbFetchPixel_x4b4g4r4), (fbFetchPixel_a8), (fbFetchPixel_r3g3b2),
	(fbFetchPixel_b2g3r3), (fbFetchPixel_a2r2g2b2),
	(fbFetchPixel_a2b2g2r2), (fbFetchPixel_c8), (fbFetchPixel_a4),
	(fbFetchPixel_r1g2b1), (fbFetchPixel_b1g2r1),
	(fbFetchPixel_a1r1g1b1), (fbFetchPixel_a1b1g1r1),
	(fbFetchPixel_c4), (fbFetchPixel_a1), (fbFetchPixel_g1),
	(fbFetchPixel_yuy2), (fbFetchPixel_yv12),
	(fetchPixelProcForPicture), (fbFetchSolid), (fbFetch),
	(premultiply), (fbRepeat), (gradientPixel), (fbFetchSourcePict),
	(fbFetchTransformed), (fbFetchExternalAlpha), (fbCompositeRect):
	* fb/fbpict.c: (fbComposite):
	* fb/fbtile.c: (fbEvenTile), (fbTile):
	* include/picture.h:
	* include/picturestr.h:
	* render/filter.c: (SetPictureFilter):
	* render/picture.c: (PictureInit), (premultiply),
	(PictureGradientColor), (initGradientColorTable),
	(SourcePictureInit), (GradientPictureInit), (CreateDevicePicture),
	(CreateSolidPicture), (CreateLinearGradientPicture),
	(CreateRadialGradientPicture), (CreateConicalGradientPicture),
	(FreePicture):
	* render/render.c: (ProcRenderQueryPictFormats),
	(ProcRenderComposite):
	fb/render changes from Xgl

2006-01-03  Dave Airlie  <airlied@linux.ie>

	reviewed by: <delete if not using a buddy>

	* dix/devices.c: (_RegisterPointerDevice),
	(_RegisterKeyboardDevice):
	* xkb/xkbActions.c: (xkbUnwrapProc), (XkbSetExtension),
	(_XkbFilterRedirectKey), (XkbHandleActions):
	* xkb/xkbInit.c: (XkbWriteRulesProp):
	xkb changes from Xgl

2006-01-03  Dave Airlie  <airlied@linux.ie>

	* Xext/Makefile.am:
	* configure.ac:
	* dix/devices.c: (_AddInputDevice):
	* dix/events.c: (XineramaCheckVirtualMotion),
	(XineramaCheckMotion), (CheckVirtualMotion), (CheckMotion):
	* dix/main.c: (main):
	* dix/privates.c: (AllocateDevicePrivateIndex),
	(AllocateDevicePrivate), (ResetDevicePrivateIndex):
	* include/cursorstr.h:
	* include/input.h:
	* include/inputstr.h:
	* include/windowstr.h:
	* mi/miinitext.c:
	Add xevie support from Xgl code drop - this doesn't build
	but it doesn't build in Xgl either, also other dix changes

2006-01-03  Dave Airlie  <airlied@linux.ie>

	* configure.ac:
	Updates for configure.ac to add XEVIE support
	from David Reveman - Xgl code drop

2005-09-18  Billy Biggs  <vektor@dumbterm.net>

	Bug #4414, reviewed by otaylor, cworth.

	* configure.ac: Remove -msse from the MMX CFLAGS as it causes
	gcc to emit SSE instructions, however the detection code only
	checks for processors supporting MMX and does not require SSE.
	Fix the MMX test to only check for MMX intrinsics and not the
	SSE intrinsics.
	* fb/fbmmx.c: Remove CPU detection code, only include
	xmmintrin.h if USE_SSE is defined.
	* fb/fbpict.c (detectCPUFeatures), (fbHaveMMX): Move CPU
	detection code out of the MMX file and into the generic code to
	avoid compiling it with -mmmx and -msse.  Using these options
	causes gcc to use MMX and SSE instructions in the CPU detection
	code which causes SIGILLs on older processors.

2005-09-18  Billy Biggs  <vektor@dumbterm.net>

	Bug #4260, fix by Owen Taylor.
 
 	* fb/fbcompose.c (fbStore_a8b8g8r8, fbStore_x8b8g8r8): Use & not
 	&& for bitwise AND.
 
 	* fb/fbpict.h (fbComposeGetSolid) fb/fbpict.c fb/fbmmx.c: Take
 	'dest' as an argument, if pict and dest don't match for RGB, BGR,
 	swap result.

2005-08-28  Billy Biggs  <vektor@dumbterm.net>

	* fb/fbmmx.c (detectCPUFeatures): Use local labels rather than
	global labels in the assembly, to be robust if the code is inlined
	in multiple places. (#4283, Reported by Marco Manfredini, patch by
	Owen Taylor)

2005-08-27  Billy Biggs  <vektor@dumbterm.net>

	Some fixes for warnings from sparse (Part of bug #4208,
	Kjartan Maraas)

	* fb/fbbltone.c (fbBltOne):
	* fb/fbcompose.c (fetchProcForPicture),
	(fetchPixelProcForPicture), (storeProcForPicture),
	(fbCompositeRect):
	* fb/fbpict.c (fbComposite):   Use NULL not 0.

2005-08-27  Billy Biggs  <vektor@dumbterm.net>

	* fb/fbmmx.c (detectCPUFeatures): Make the code work with
	-fomit-frame-pointer by making sure that %esp isn't modified at
	the point where we access output operands. (#4269, Patch from
	Ronald Wahl)

2005-08-21  Billy Biggs  <vektor@dumbterm.net>

	* fb/fbpict.c: Remove warning about fbCompositeTrans_0888xnx0888 not
	being tested on big-endian, it's not helpful at this point.

2005-08-18  Billy Biggs  <vektor@dumbterm.net>

	* fb/fbmmx.c: (mmxCombineMaskU), (mmxCombineOverU): Special case
	alpha values of 0 and 0xff.
	(fbCompositeSrc_8888x8888mmx): Add an MMX implementation for
	a common operation when using pixman.

	* fb/fbmmx.h: Prototype for the new function.

	* fb/fbpict.c: (fbComposite): Call the new function where
	appropriate.

2005-08-18  Billy Biggs  <vektor@dumbterm.net>

	* fb/fbcompose.c: (fbFetchTransformed): Special case projective
	transforms so we can avoid doing the expensive 64-bit math.
	Unroll the bilinear interpolation loops for an extra boost.

2005-08-18  Billy Biggs  <vektor@dumbterm.net>

	* fb/fbmmx.c: (fbCompositeSolidMaskSrc_nx8x8888mmx): For the source
	operator, the output should be cleared if the mask is zero.  This
	fixes the MMX code to match the fbcompose code.

2005-08-16  Billy Biggs  <vektor@dumbterm.net>

	reviewed by: ssp, keithp

	* fb/fbmmx.c (pix_add_mul): Fix rounding errors.  If we don't
	have enough bits, the MMX instructions saturate anyway.
	(mmxCombineSaturateU): Shift the division result so that
	it gets correctly loaded as the alpha value.

	* fb/fbpict.c: (fbComposite): fbCompositeCopyAreammx is only
	implemented for 16 and 32 bits per pixel.

2005-08-15  Keith Packard  <keithp@keithp.com>

	* dix/dixfonts.c:
	X.org Xfont changed the API (in a good way)
	for the list_next_font_with_info function.
	I think this patch will actually work with
	the xlibs version, but I haven't tested it.

Fri Aug 12 12:10:58 2005  Søren Sandmann  <sandmann@redhat.com>

	* fb/fbmmx.c (pix_multiply): Make pix_multiply() match the results
	of fbMulByte()

Fri Aug 12 12:05:44 2005  Søren Sandmann  <sandmann@redhat.com>

        * xserver/xserver/fb/fbmmx.c (USE_SSE): Add back non-SSE
        implementations. Define USE_SSE if the CPU is amd64/x86-64

2005-08-10  Billy Biggs  <vektor@dumbterm.net>

	reviewed by: keithp

	* fb/fbcompose.c: (fbFetchTransformed): Use more bits for the
	intermediate values when performing bilinear interpolation to improve
	the accuracy of the result.  This fixes a failure in the cairo tests.

2005-08-10  Billy Biggs  <vektor@dumbterm.net>

	* fb/fbpict.h:  Fix a rounding error in many of the division by
	255 macros.  The code used was: ((x + (x >> 8) + 0x80) >> 8).
	This is incorrect, the inner shift must also be rounded up.  The
	correct formula is: (t = x + 0x80), ((t + (t >> 8)) >> 8).

2005-08-07  Keith Packard  <keithp@keithp.com>

	* configure.ac:
	* dix/dispatch.c:
	* dix/events.c:
	* dix/glyphcurs.c:
	* dix/main.c:
	* dix/swaprep.c:
	* dix/xpstubs.c:
	* fb/fbglyph.c:
	* hw/kdrive/chips/chipsdraw.c:
	* hw/kdrive/ephyr/hostx.c: (hostx_screen_init):
	* hw/kdrive/epson/epson13806draw.c:
	* hw/kdrive/i810/i810draw.c:
	* hw/kdrive/mach64/mach64draw.c:
	* hw/kdrive/nvidia/nvidiadraw.c:
	* hw/kdrive/smi/smidraw.c:
	* hw/kdrive/src/kaa.c:
	* hw/kdrive/src/kinput.c: (KdMouseAccelerate):
	* include/dixfont.h:
	* include/dixfontstr.h:
	* mi/mi.h:
	* mi/mibstore.c:
	* mi/miglblt.c:
	* mi/mipolytext.c:
	* mi/misprite.c:
	* mi/miwideline.c:
	* miext/damage/damage.c:
	* miext/shadow/shadow.c:
	* miext/shadow/shalloc.c:
	* miext/shadow/shpacked.c:
	* miext/shadow/shplanar.c:
	* miext/shadow/shplanar8.c:
	* miext/shadow/shrotate.c:
	* miext/shadow/shrotpack.h:
	* miext/shadow/shrotpackYX.h:
	* os/xstrans.c:
	* os/xstrans.h:
	Build with modular X.org libraries and headers.

	* composite/compwindow.c
	Don't damage unmoved windows.
	Let border clip reset leave damage alone,
	pending actual damage for painting.
	
2005-08-05  mallum  <mallum@openedhand.com>

	* hw/kdrive/ephyr/ephyr.c: (ephyrInitialize), (ephyrCardInit),
	(ephyrScreenInitialize), (ephyrScreenInit), (ephyrWindowLinear),
	(ephyrMapFramebuffer), (ephyrSetScreenSizes),
	(ephyrUnmapFramebuffer), (ephyrShadowUpdate),
	(ephyrInternalDamageRedisplay), (ephyrInternalDamageBlockHandler),
	(ephyrInternalDamageWakeupHandler), (ephyrSetInternalDamage),
	(ephyrUnsetInternalDamage), (ephyrRandRGetInfo),
	(ephyrRandRSetConfig), (ephyrRandRInit), (ephyrCreateColormap),
	(ephyrFinishInitScreen), (ephyrCreateResources), (ephyrEnable),
	(ephyrDPMS), (ephyrUpdateModifierState), (ephyrPoll),
	(ephyrCardFini), (ephyrGetColors):
	* hw/kdrive/ephyr/ephyr.h:
	Dont use shadow frame buffer for 'region paints' on non 
        rotated/reflected screens use just 'internal' damage instead.
	Makes for faster updates + less mem usage.
	Also tidy code a little. 

Thu Aug  4 16:08:00 2005  Søren Sandmann  <sandmann@redhat.com>

	* programs/Xserver/fb/fbmmx.c: Make the fbCompose paths use the
	existing inline functions instead of macros. Various other
	cleanups.

	* programs/Xserver/fb/fbmmx.h: Remove macro definitions, move
	typedef to fbmmx.c
	
2005-08-01  Billy Biggs  <vektor@dumbterm.net>

	reviewed by: keithp

	* fb/fbedge.c: (clip255), (add_saturate_8),
	(fbRasterizeEdges8):  Optimize spans where the same value is
	being added to multiple pixels.  This improves the speed of
	rasterizing wide trapezoids.

2005-08-01  Billy Biggs  <vektor@dumbterm.net>

	reviewed by: keithp

	* fb/fbcompose.c: (fbFetchTransformed): Use a floored divide
	that handles negative numbers correctly when applying
	transforms (Bug #3945).

Mon Aug  1 12:08:33 2005  Søren Sandmann  <sandmann@redhat.com>

	* fb/fbmmx.c (pix_multiply): Fix rounding bug

2005-07-12  Lars Knoll <lars@trolltech.com>
	* fb/fbcompose.c:
	Fix potential buffer overflow and a smaller bug in the 
	convolution filter
	* fb/fbmmx.c:
	Fix compilation on some platforms

2005-07-12  Lars Knoll <lars@trolltech.com>
	* configure.ac: 
	* fb/fbcompose.c:
	* fb/fbmmx.c:
	* fb/fbmmx.h:
	* fb/fbpict.c:
	* fb/fbpict.h:
	Add MMX Code paths for the basic composition operations
	in fbComposeGeneral.
	Check for -msse in configure, as pshufw needs this flag working.

2005-07-07  mallum  <mallum@openedhand.com>

	* miext/damage/damage.c: (damageDamageRegion), (damageDamageBox),
	(damageComposite), (damageGlyphs), (damageFillSpans),
	(damageSetSpans), (damagePutImage), (damageCopyArea),
	(damageCopyPlane), (damagePolyPoint), (damagePolylines),
	(damagePolySegment), (damagePolyRectangle), (damagePolyArc),
	(damageFillPolygon), (damagePolyFillRect), (damagePolyFillArc),
	(damageDamageChars), (damageText), (damageImageGlyphBlt),
	(damagePolyGlyphBlt), (damagePushPixels), (damagePaintWindow),
	(damageCopyWindow), (damageRestoreAreas), (DamageDamageRegion):
	Apply patch from Jorn Baayen ( jorn@o-hand.com ) for damage not
	to ignore GC clips.

2005-07-06  Damien Ciabrini  <damienc@freedesktop.org>

	* hw/kdrive/mga/g400_composite.c: (MGA_LOG2),
	(mgaCheckSourceTexture), (PrepareSourceTexture),
	(setTMIncrementsRegs), (mgaCheckComposite), (mgaPrepareComposite),
	(mgaComposite), (mgaDoneComposite): Fix the composition
	function. It now handles cleanly RGB without A, and A8 picture
	format. Added hardware support for transformation matrix
	(zoom, rotation, etc...)

	* hw/kdrive/mga/mgadraw.c: (mgaWaitIdle), (mgaDoneSolid),
	(mgaPrepareCopy), (mgaCopy), (mgaDoneCopy), (mgaUploadToScreen),
	(mgaDrawInit): Change the position of the cache flush in the
	WaitIdle function. Avoid unnecessary syncs after copy and solid 
	accelerations.

2005-07-06  Damien Ciabrini  <damienc@freedesktop.org>
	* hw/kdrive/src/koffscreen.c: (KdOffscreenValidate),
	(KdOffscreenAlloc): Fix offset alignment code in the offscreen 
	memory allocator to prevent textures from being allocated in
	the next free memory area. Fix assert code that was using 
	structure fields that no longer exist.
	
2005-07-04 Lars Knoll <lars@trolltech.com>
	* fb/fbpict.h:
	* fb/fbcompose.c:
	Fix handling of "super luminescent" colors
	Fix off by one error in the transformation handling.

2005-07-01 Lars Knoll <lars@trolltech.com>

	* render/picture.c:
	XRenderCreateSolidFill should use premultiplied colors.

2005-07-01  David Reveman  <davidr@novell.com>

	* hw/xgl/xglglx.c (xglBindBuffers): 
	(xglReleaseBuffers): Fix return values.

2005-06-30  mallum <mallum@openedhand.com>

	* hw/kdrive/ephyr/ephyr.c: (ephyrUpdateModifierState), (ephyrPoll):
	* hw/kdrive/ephyr/hostx.c: (hostx_get_event):
	* hw/kdrive/ephyr/hostx.h:
	Another focus/modifier fix ( See bug #3664 ).
	Thanks to Mark McLoughlin.

2005-06-29  Lars Knoll <lars@trolltech.com>

	* fb/fbcompose.c:
	* fb/fbpict.c:
	* hw/kdrive/src/kaapict.c:
	* include/picturestr.h:
	* render/mipict.c:
	* render/picture.c:
	* render/render.c:
	Add support for gradients and solid fills to Render. 

	* fb/fbcompose.c:
	Changed the semantics of the Convolution filter a
	bit. It now doesn't try to normalize the filter
	values but leaves this to the client. This gives
	more reasonable behaviour in the limit where the filter
	parameters sum up to 0.

2005-06-23  mallum <mallum@openedhand.com>

	* hw/kdrive/ephyr/ephyr.c: (ephyrUpdateModifierState), (ephyrPoll):
	* hw/kdrive/ephyr/ephyr.h:
	* hw/kdrive/ephyr/hostx.c: (hostx_get_event):
	* hw/kdrive/ephyr/hostx.h:
	Fix issues with focus in and modifiers from host confusing Xephr

2005-06-23  mallum <mallum@openedhand.com>

	* hw/kdrive/linux/tslib.c: (TsRead), (TsLibOpen), (TslibEnable),
	(TslibDisable), (TslibInit), (TslibFini):
	Redo tslib.c, fixing various issues.
	
2005-06-23  David Reveman  <davidr@novell.com>

	* GL/mesa/X/xf86glx.c (init_visuals): Mark GLX visuals with 32 planes
	as non conformant.

2005-06-15  Lars Knoll <lars@trolltech.com>

	* fb/fbcompose.c
	* include/picturestr.h
	* render/picture.c
	Fix projective transformations in fbcompose.c
	Bugfix for convolution filters

2005-06-15  David Reveman  <davidr@novell.com>

	* hw/xgl/xglglx.c (xglGetString): 
	(xglInitExtensions): Shut up compiler.

2005-06-13  David Reveman  <davidr@novell.com>

	* miext/shadow/Makefile.am (libshadow_a_SOURCES): Add shrotpackYX.h.

	* include/Makefile.am (EXTRA_DIST): Add renderedge.h.

	* hw/xgl/egl/Makefile.am: Remove XEGL_LIBS.
	Add headers to SOURCES.

	* hw/xgl/Makefile.am: Fix conditional subdirs.
	(libxgl_a_SOURCES): Add xgl.h.

	* hw/kdrive/epson/Makefile.am (libepson_a_SOURCES): Add epson13806.h,
	epson13806draw.h and epson13806reg.h.

	* hw/kdrive/i810/Makefile.am (libi810_a_SOURCES): i810reg.h -> 
	i810_reg.h.

	* GL/mesa/Makefile.am: Add missing sources and dist-hook that will
	include current Mesa sources when running 'make dist'.

	* GL/glx/Makefile.am: Add glxcontext.h and glxserver.h to SOURCES. 

	* configure.ac: Changed default MESA_SOURCE dir to
	$(top_srcdir)/GL/mesa.
	Removed XGLX_DIRS and XEGL_DIRS.
	Removed XEGL_LIBS, -lEGL should be in XEGLSERVER_LIBS.

	* hw/xgl/xglpict.c (xglPictureInit): Don't bail if add
	FilterConvolution fails as it probably means it's already been added. 

2005-06-10  David Reveman  <davidr@novell.com>

	* GL/glx/glxdrawable.h: 
	* GL/glx/glxext.c (PixmapGone, ResetExtension): Free table of clients.
	(ResetClientState): Free GLClientextensions properly.
	(__glXFreeContext): Free modes.

	* GL/glx/glxcmds.c (__glXCreateGLXPixmap): Allocate buffers when
	creating GLXPixmap. Need to do this for GLX_MESA_render_texture to
	work.
	(__glXCreateGLXPixmap): Reset refcnt.

	* include/GL/glxproto.h: 
	* hw/xgl/xglglx.c: 
	* GL/mesa/X/xf86glxint.h: 
	* GL/mesa/X/xf86glx.c: 
	* GL/glx/glxserver.h: 
	* GL/glx/glxext.h: 
	* GL/glx/glxdrawable.h: 
	* GL/glx/glxcmdsswap.c: 
	* GL/glx/glxcmds.c: 
	* GL/glx/g_singleswap.c: 
	* GL/glx/g_single.c: 
	* GL/glx/g_disptab_EXT.h: 
	* GL/glx/g_disptab_EXT.c: New implementation of
	GLX_MESA_render_texture.

2005-06-09  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/chips/chips.c: (chipsCardInit), (chipsScreenInit),
	(chipsPreserve), (chipsCardFini):
	* hw/kdrive/chips/chipsdraw.c: (chipsWaitMarker):
	* hw/kdrive/ephyr/ephyrinit.c:
	* hw/kdrive/ephyr/hostx.c:
	* hw/kdrive/fake/fake.c: (fakeScreenInitialize):
	* hw/kdrive/fbdev/fbinit.c:
	* hw/kdrive/i810/i810.c: (i810CardInit):
	* hw/kdrive/i810/i810.h:
	* hw/kdrive/i810/i810_cursor.c: (writeStandardMMIO),
	(_i810MoveCursor), (i810MoveCursor), (_i810SetCursorColors),
	(i810LoadCursor), (i810UnloadCursor), (i810RealizeCursor),
	(i810SetCursor), (i810QueryBestSize), (i810CursorInit),
	(i810CursorEnable), (i810CursorDisable), (i810CursorFini):
	* hw/kdrive/mga/mgadraw.c:
	* hw/kdrive/nvidia/nvidia.c:
	* hw/kdrive/pm2/pm2.c: (pmCardInit), (pmRestore), (pmEnable),
	(pmDisable):
	* hw/kdrive/pm2/pm2stub.c: (InitCard):
	* hw/kdrive/smi/smi.c:
	* hw/kdrive/src/kdrive.c:
	* hw/kdrive/vesa/vesainit.c:
	Perform a warnings sweep on hw/kdrive.  A number of these were my fault,
	but some come from others.

2005-06-09  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/mga/g400_common.h:
	* hw/kdrive/mga/g400_composite.c: (mgaCheckSourceTexture),
	(PrepareSourceTexture), (mgaCheckComposite), (mgaPrepareComposite):
	* hw/kdrive/mga/mga.h:
	* hw/kdrive/mga/mgadraw.c: (mgaWaitIdle), (mgaDrawInit):
	Greatly improve the correctness and performance of the MGA render
	implementation.  Includes cache flushing to prevent bad first reads of
	the framebuffer, fixing blending of many formats, falling back on many
	unsupported operations, and falling back early to prevent migration.
	Passes all of rendercheck except some of the blend (!) tests.

2005-06-09  mallum,,,  <mallum@openedhand.com>

	* hw/kdrive/ephyr/ephyr.c: (ephyrRandRGetInfo):
	* hw/kdrive/ephyr/ephyrinit.c: (ddxUseMsg), (ddxProcessArgument):
	* hw/kdrive/ephyr/hostx.c: (hostx_want_screen_size),
	(hostx_use_fullscreen), (hostx_want_fullscreen),
	(hostx_set_fullscreen_hint), (hostx_init):
	* hw/kdrive/ephyr/hostx.h:
	Add fullscreen 'mode' to ephyr.
	* hw/kdrive/epson/epson13806stub.c: (InitInput):
	Make epson build again with tslib enabled.
	* hw/kdrive/linux/tslib.c: (TslibInit):
	Fix tslib so it works again with Keith's 'touchscreen is mouse'
	changes.

2005-06-09  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/chips/chips.c: (chipsRandRSetConfig):
	* hw/kdrive/chips/chips.h:
	* hw/kdrive/chips/chipsdraw.c: (chipsWaitMarker), (chipsDrawInit),
	(chipsDrawEnable):
	* hw/kdrive/epson/epson13806.c:
	* hw/kdrive/epson/epson13806.h:
	* hw/kdrive/epson/epson13806draw.c: (epsonWaitMarker),
	(epsonDrawInit), (epsonDrawEnable):
	* hw/kdrive/fake/fakeinit.c:
	* hw/kdrive/i810/i810.c: (i810FinishInitScreen),
	(i810AllocateGARTMemory), (i810AllocLow), (i810AllocHigh),
	(i810ScreenInit), (DoSave), (i810Preserve), (i810PrintErrorState),
	(i810VGAInit), (i810GetColors), (i810PutColors):
	* hw/kdrive/i810/i810.h:
	* hw/kdrive/i810/i810_video.c: (i810PutImage):
	* hw/kdrive/i810/i810draw.c: (i810WaitLpRing), (i810Sync),
	(i810WaitMarker), (i810EmitInvarientState), (i810PrepareSolid),
	(i810Solid), (i810DoneSolid), (i810PrepareCopy), (i810RefreshRing),
	(i810SetRingRegs), (i810InitAccel), (i810EnableAccel),
	(i810DisableAccel), (i810FiniAccel):
	* hw/kdrive/i810/i810stub.c: (InitCard), (ddxProcessArgument):
	* hw/kdrive/mach64/mach64.c: (mach64RandRSetConfig), (mach64DPMS):
	* hw/kdrive/mach64/mach64.h:
	* hw/kdrive/mach64/mach64draw.c: (mach64WaitMarker),
	(mach64DrawInit), (mach64DrawEnable), (mach64DrawFini):
	* hw/kdrive/mach64/mach64stub.c: (InitCard):
	* hw/kdrive/mach64/mach64video.c: (mach64PutImage),
	(mach64ReputImage):
	* hw/kdrive/mga/mga.c:
	* hw/kdrive/mga/mga.h:
	* hw/kdrive/mga/mgadraw.c: (mgaWaitMarker), (mgaDrawInit),
	(mgaDrawEnable):
	* hw/kdrive/nvidia/nvidia.c: (nvidiaRandRSetConfig):
	* hw/kdrive/nvidia/nvidia.h:
	* hw/kdrive/nvidia/nvidiadraw.c: (nvidiaWaitMarker),
	(nvidiaDrawInit), (nvidiaDrawEnable):
	* hw/kdrive/pm2/pm2.c: (pmRandRSetConfig):
	* hw/kdrive/pm2/pm2.h:
	* hw/kdrive/pm2/pm2_draw.c: (pmWaitMarker), (pmDrawInit),
	(pmDrawEnable), (pmDrawFini):
	* hw/kdrive/r128/r128.c:
	* hw/kdrive/r128/r128.h:
	* hw/kdrive/r128/r128draw.c: (r128WaitMarker), (r128DrawInit),
	(r128DrawEnable), (r128DrawFini):
	* hw/kdrive/smi/smi.c: (smiRandRSetConfig):
	* hw/kdrive/smi/smi.h:
	* hw/kdrive/smi/smidraw.c: (smiWaitMarker), (smiDrawInit),
	(smiDrawEnable), (smiDrawFini):
	* hw/kdrive/src/Makefile.am:
	* hw/kdrive/src/kaa.c: (kaaPixmapSave), (kaaPixmapAllocArea),
	(kaaMoveInPixmap), (kaaFillSpans), (kaaCopyNtoN),
	(kaaPolyFillRect), (kaaSolidBoxClipped), (kaaImageGlyphBlt),
	(kaaFillRegionSolid):
	* hw/kdrive/src/kaa.h:
	* hw/kdrive/src/kaapict.c: (kaaTryDriverSolidFill),
	(kaaTryDriverBlend), (kaaTryDriverComposite):
	* hw/kdrive/src/kasync.c: (KdCheckFillSpans), (KdCheckSetSpans),
	(KdCheckPutImage), (KdCheckCopyArea), (KdCheckCopyPlane),
	(KdCheckPolyPoint), (KdCheckPolylines), (KdCheckPolySegment),
	(KdCheckPolyRectangle), (KdCheckPolyArc), (KdCheckFillPolygon),
	(KdCheckPolyFillRect), (KdCheckPolyFillArc),
	(KdCheckImageGlyphBlt), (KdCheckPolyGlyphBlt), (KdCheckPushPixels),
	(KdCheckGetImage), (KdCheckGetSpans), (KdCheckSaveAreas),
	(KdCheckRestoreAreas), (KdCheckPaintWindow), (KdCheckCopyWindow),
	(KdCheckPaintKey), (KdCheckOverlayCopyWindow), (KdCheckComposite),
	(KdCheckRasterizeTrapezoid), (KdPictureInitAsync):
	* hw/kdrive/src/kdrive.c: (KdDisableScreen):
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/kpict.c:
	* hw/kdrive/src/kxv.c: (KXVPaintRegion):
	* hw/kdrive/src/kxv.h:
	* hw/kdrive/via/via.c:
	* hw/kdrive/via/via.h:
	* hw/kdrive/via/viadraw.c: (viaWaitMarker), (viaDoneSolid),
	(viaDoneCopy), (viaDrawInit), (viaDrawEnable), (viaDrawFini):
	- Replace the syncAccel hook in the kdrive structure with a pair of
	  hooks in the kaa structure: markSync and waitMarker.  The first, if
	  set, returns a hardware-dependent marker number which can then be
	  waited for with waitMarker.  If markSync is absent (which is the case
	  on all drivers currently), waitMarker must wait for idle on any given
	  marker number.  The intention is to allow for more parallelism when
	  we get downloading from framebuffer, or more fine-grained idling.
	- Replace the KdMarkSync/KdCheckSync functions with kaaMarkSync and
	  kaaWaitSync.  These will need to be refined when KAA starts being
	  smart about using them.  Merge kpict.c into kasync.c since kasyn.c has
	  all the rest of these fallback funcs.
	- Restructure all drivers to initialize a KaaInfo structure by hand
	  rather than statically in dubious order.
	- Whack the i810 driver into shape in hopes that it'll work after this
	  change (it certainly wouldn't have before this).  Doesn't support my
	  i845 though.
	- Make a new KXV helper to avoid duplicated code to fill the region
	  with the necessary color key.  Use it in i810 and mach64 (tested).

2005-06-07  David Reveman  <davidr@novell.com>

	* configure.ac: Add GLX includes to EXTENSION_INCS.
	Require version 0.4.3 of glitz. 

	* GL/mesa/X/xf86glx.c: Track changes to GLX code.
	(fixup_visuals): 
	(init_screen_visuals): Support for ARGB visuals. 

	* GL/mesa/Makefile.am: Updated to build with Mesa CVS.
	Use MGL namespace.

	* GL/glx/g_disptab_EXT.c:
	* GL/glx/g_disptab_EXT.h:
	* GL/glx/g_render.c:
	* GL/glx/g_renderswap.c:
	* GL/glx/g_single.c:
	* GL/glx/g_singleswap.c:
	* GL/glx/glxcmds.c:
	* GL/glx/glxcmdsswap.c:
	* GL/glx/glxscreens.c:
	* GL/glx/glxserver.h:
	* GL/glx/render2.c:
	* GL/glx/render2swap.c:
	* GL/glx/renderpix.c:
	* GL/glx/renderpixswap.c:
	* GL/glx/rensizetab.c:
	* GL/glx/single2.c:
	* GL/glx/single2swap.c:
	* GL/glx/singlepix.c:
	* GL/glx/singlepixswap.c:
	* GL/glx/singlesize.c:
	* GL/glx/xfont.c:
	Made all GL calls go through a procedure table. Add
	GLX_MESA_render_texture support.

	* include/GL/glxproto.h: Add preliminary vendor op numbers for
	GLX_MESA_render_texture.

	* hw/xgl/xglglx.c: Front buffer drawing. Fix display list handling.
	Preliminary support for GLX_MESA_render_texture (texture parameters are
	not unique for each binding yet, will need some minor changes to
	glitz to work correctly). Single buffer visuals. Use native
	double buffering for non-redirected windows and native buffer flips
	for fullscreen windows. Proper handling of glXWaitX.

	* hw/xgl/glx/xglx.c: Handle expose events. 

	* hw/xgl/xglinput.c (NUM_BUTTONS): Make it 7.

	* hw/xgl/xglget.c (xglGetImage): Make sure we sync with what Xgl thinks
	is the visible framebuffer.

	* hw/xgl/xgltrap.c: 
	* hw/xgl/xglsync.c: 
	* hw/xgl/xglscreen.c: 
	* hw/xgl/xglpixmap.c: 
	* hw/xgl/xglglyph.c (xglGlyphs): 
	* hw/xgl/xglcopy.c (xglCopy): 
	* hw/xgl/xgl.h: 
	* hw/xgl/Makefile.am (libxgl_a_SOURCES): Remove use of pbuffers for
	offscreen rendering.

2005-05-27  Zack Rusin  <zrusin@trolltech.com>

	* fb/fbcompose.c:
	* fb/fbpict.c:
	* fb/fbpict.h, 
	* include/picture.h: Merging the Render composition
	code implementations between Xorg and kdrive. The 
	changes merged are basically the render optimizations
	Lars and I did a while back.

2005-05-02  David Reveman  <davidr@novell.com>

	* hw/xgl/xglglx.c (xglInitVisualConfigs): Set stencil size.

	* hw/xgl/xglglyph.c (xglGlyphExtents): Switch to glyph extents
	algorithm that handles multiple lines better.

2005-04-27  David Reveman  <davidr@novell.com>

	* hw/xgl/xglgc.c (xglFillSpans): 
	* hw/xgl/xglfill.c: Do spans, horizontal and vertical lines as
	rectangles.
	(xglFillLine): Minor optimization.

	* hw/xgl/xglfill.c: 
	* hw/xgl/glx/xglx.c: 
	* hw/xgl/xglscreen.c (xglScreenInit): 
	* hw/xgl/xglparse.c (xglProcessArgument): 
	* hw/xgl/xgl.h: Make line acceleration optional.

	* hw/xgl/xglglx.c: Fix typo.

2005-04-26  David Reveman  <davidr@novell.com>

	* hw/xgl/xglglx.c: Support for glCopy operations.
	glPushAttrib/glPopAttrib support.

2005-04-19  David Reveman  <davidr@novell.com>

	* hw/xgl/xglglx.c: Hash texture objects and display lists.
	Wrap glGet functions.

	* hw/xgl/Makefile.am (libxgl_a_SOURCES): Add xglhash.c.

2005-04-18  Owen Taylor  <otaylor@redhat.com>

	* xserver/fb/fbmmx.c (fbCompositeSrc_8888x8x8888mmx): 
	Actually assign the computed results. (Reported by Michael
	Dänzer)

2005-04-17  Owen Taylor  <otaylor@redhat.com>

	* fb/Makefile.am (libfb_a_SOURCES): Remove some 
	accidental unconditional references to fbmmx.[ch]

2005-04-15  Owen Taylor  <otaylor@redhat.com>

	* configure.ac: Add checks for MMX compiler intrinsics.

	* fb/Makefile.am fb/fbmmx.[ch]: Add code for MMX implementations
	of compositing, solid fills, and copies. (Merge from xorg)

	* fb/fbcopy.c fb/fbfill.c fb/fbpict.c: Use MMX implementations
	when appropriate. (Merge from xorg)

2005-04-13  David Reveman  <davidr@novell.com>

	* configure.ac: Require version 0.4.2 of glitz.

	* hw/xgl/xglscreen.c (xglScreenInit): Initialize Composite here so
	that we can use alternative visuals with GLX.
	(xglScreenInit): Initialize GLX visuals.

	* hw/xgl/xgl.h: Add GLX support.
	
	* hw/xgl/xgltrap.c (xglTrapezoidExtents): Cleanup and use
	xglPictureClipExtents to intersect trapezoid extents with picture
	clip bounds. 
	(xglTrapezoids): Minor cleanup and use pixmap locking.
	
	* hw/xgl/xglglyph.c (xglGlyphExtents): Use xglPictureClipExtents
	to intersect glyph extents with picture clip bounds.
	(xglGlyphs): Minor cleanup and use pixmap locking.

	* hw/xgl/xglpict.c: 
	* hw/xgl/xgl.h: Add xglPictureClipExtents.

	* hw/xgl/xglpixmap.c (xglPixmapSurfaceInit): 
	* hw/xgl/xgloffscreen.c (xglOffscreenCompareScore): 
	* hw/xgl/xglsync.c (xglPrepareTarget): 
	* hw/xgl/xgl.h: Add support for pixmap locking.

2005-03-16  David Reveman  <davidr@novell.com>

	* configure.ac (XGLXSERVER): Xglx requires xrender >= 0.5.

	* hw/xgl/glx/xglx.c: Add cursor support.

	* hw/xgl/xglcopy.c (xglCopy): Remove buffer to texture copying and
	code clean up. 

	* hw/xgl/xglfill.c (xglFillRect): Fix damage reporting in xglSolid.
	(xglFillSpan): Return early if no spans.
	(xglFillLine): Return early if no lines.
	(xglFillSegment): Return early if no segments.
	(xglFillGlyph): Return early if no glyphs.

	* hw/xgl/xglgc.c (xglCopyArea): Don't accelerate CopyArea if
	alu != GXcopy.

	* hw/xgl/xglshm.c (xglShmPutImage): Make sure CopyArea with shared
	image is always using the fast CopyArea fall-back.

	* hw/xgl/xglsync.c (xglSyncSurface): Damage should always exist if
	surface exist so this check should not be here.
	(xglAddCurrentBitDamage): Better check if damage intersect synchronized
	bits and the damage is only valid if surface is currently a target.

	* hw/xgl/xgltrap.c (xglTrapezoids): Fix trapezoid acceleration typo.

	* hw/xgl/xglwindow.c (xglCopyWindow): Don't add drawable offset to
	source extents.

2005-03-11  David Reveman  <davidr@novell.com>

	* hw/xgl/xglfill.c (xglFillRect): Return early if no boxes.

	* hw/xgl/glx/xglx.c: Set defaults for yInverted and pboMask.

	* hw/xgl/xgltrap.c (xglCreateMaskPicture): Respect global stride
	setting.

	* hw/xgl/xglsync.c (xglSyncBits): Only request part of pixmap if it's
	attached to a drawable.
	Fix so that pixels are fetched and set correctly when using negative
	stride.

	* hw/xgl/xglshm.c (xglShmPutImage): Add pixmap usage hints.

	* hw/xgl/xglscreen.c (xglScreenInit): Screen pixmap should use same
	format as pixmaps with same depth.
	(xglCloseScreen): Clean up screen pixmap.

	* hw/xgl/xglpixmap.c: Add pixmap usage hints.
	Move finalization of pixmap to xglFiniPixmap function.
	(xglModifyPixmapHeader): Screen pixmap should use same pixel format as
	pixmaps with same depth.
	(xglAllocatePixmapBits): Use usage hint when allocating pixmap bits.
	(xglAllocatePixmapBits): Use negative stride unless yInverted is set.

	* hw/xgl/xglparse.c: Add parameters yInverted and pboMask.

	* hw/xgl/xglcopy.c (xglCopyProc): No need to sync surface here.

	* hw/xgl/xglcmap.c (xglSetVisualTypesAndMasks): Pixel format and 
	visuals might as well be zero for pbuffer visuals as they should
	never be used.
	Remove debug output.

	* hw/xgl/xgl.h: Add screen parameters yInverted and pboMask.
	Add pixmap usage hints. 
	Add xglFiniPixmap prototype.

	* fb/fbpict.c (fbComposite): Shut up compiler.

	* fb/fbgc.c (fbPadPixmap): Make it work with negative stride.

2005-03-08  David Reveman  <davidr@novell.com>

	* hw/xgl/xglcopy.c (xglCopy): Return early if fall-back is more
	efficient.

	* hw/xgl/xgl.h: Add xglShmPutImage prototype.

	* hw/xgl/xglscreen.c (xglScreenInit): Use xglShmPutImage.

	* hw/xgl/xglgc.c (xglCopyArea): Use xglCopyProc even though target
	drawable is read only. 

	* hw/xgl/xglarea.c (xglAreaMoveOut): Set closure to NULL. 
	(xglAreaGetTopScoredSubArea): Compare all sub areas when area is
	divided.
	(xglAreaFind): Set closure to NULL.

	* hw/xgl/xglglyph.c (xglGlyphCompareScore): Area cannot be replaced
	if glyph serial is equal to the current glyph serial. If this is the
	case we return 1, which means that this area comes out as the one with
	greater score and will not be replaced.
	(xglCacheGlyph): Initialize glyph serial to current glyph serial.
	(xglUncachedGlyphs): 
	(xglCachedGlyphs): Cleaned up use of glyph cache slightly.
	(xglCachedGlyphs): Initialize extends.
	(xglCachedGlyphs): Set noCache after restoring saved glyph operator.

	* render/glyph.c (AddGlyph): Fix memory leak of glyph privates. 

2005-03-02  Carl Worth  <cworth@cworth.org>

	* render/animcur.c, render/filter.c, render/glyph.c,
	render/miglyph.c, render/miindex.c, render/mipict.c,
	render/mirect.c, render/mitrap.c, render/mitri.c,
	render/picture.c, render/render.c: Convert file encodings from
	ISO-8859 to UTF-8.

	* fb/fb.h, fb/fb24_32.c, fb/fb24_32.h, fb/fballpriv.c, fb/fbarc.c,
	fb/fbbits.c, fb/fbbits.h, fb/fbblt.c, fb/fbbltone.c,
	fb/fbbstore.c, fb/fbcompose.c, fb/fbcopy.c, fb/fbfill.c,
	fb/fbfillrect.c, fb/fbfillsp.c, fb/fbgc.c, fb/fbgetsp.c,
	fb/fbglyph.c, fb/fbimage.c, fb/fbline.c, fb/fboverlay.c,
	fb/fboverlay.h, fb/fbpict.c, fb/fbpict.h, fb/fbpixmap.c,
	fb/fbpoint.c, fb/fbpush.c, fb/fbrop.h, fb/fbscreen.c, fb/fbseg.c,
	fb/fbsetsp.c, fb/fbsolid.c, fb/fbstipple.c, fb/fbtile.c,
	fb/fbutil.c, fb/fbwindow.c: Convert file encodings from ISO-8859
	to UTF-8.

2005-03-01  Keith Packard  <keithp@keithp.com>

	* composite/compinit.c: (compScreenInit):
	Disable Composite extension on servers without
	GetWindowPixmap and SetWindowPixmap (e.g. Xnest)
	
	* hw/xnest/Screen.c: (xnestOpenScreen):
	Disable shared memory pixmaps.

2005-03-01  David Reveman  <davidr@novell.com>

	* configure.ac: Require version 0.4.1 of glitz.

	* hw/xgl/xglsync.c (xglSyncSurface): Use clip region for more
	efficient pixel transfers.

	* hw/xgl/xglcomp.c (xglComp): Don't fail when dither is set.

	* hw/xgl/xglpict.c (xglChangePicture): Check for dither state change.
	(xglUpdatePicture): Update dither setting.

	* hw/xgl/xgl.h: Add xglPCDitherMask flag.

2005-02-28  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/src/kdrive.c: (KdEnableScreen):
	Force DPMS normal on screen enable
	* include/windowstr.h:
	Add placeholder for bit used to redirect input

2005-02-11  David Reveman  <davidr@novell.com>

	* hw/xgl/xglwindow.c (xglCopyWindow): Removed screen_x, screen_y
	translation as it's handled in xglcopy.c already.

	* hw/xgl/xglcomp.c (xglComp): Don't check if tile is solid color.

	* hw/xgl/xglpixmap.c (xglPixmapSurfaceInit): Solid pixmaps can always
	be used for accelerated tiling.

	* hw/xgl/xglglyph.c (xglGlyphCompareScore): Workaround for what seems
	like a bug in xglarea.c.

	* hw/xgl/xglcmap.c (xglInitPixmapFormats): Don't require an alpha
	channel as it causes horrible pixel transfer performance. This means
	that pictures without an alpha channel will not produce correct results
	when transform and/or convolution filtered. I'm leaving this as a bug
	right now, it looks like we either have to use a software fall-back
	for these cases or change the render specification to fix this problem.

Fri Feb 11 14:28:22 2005  Søren Sandmann  <sandmann@redhat.com>

	* mi/miwindow.c (miSlideAndSizeWindow): When COMPOSITE is enabled,
	call CopyWindow even when the pixels "don't move" on screen.

	* hw/kdrive/fake/fake.c (fakeScreenInitialize): Don't reject modes
	that are not supported by the unused monitor.

2005-02-08  Keith Packard  <keithp@keithp.com>

	* dix/window.c:
	Semi-support for ShapeInput from WarpPointer request.
	Broken in that overlying windows with Input regions won't
	do the right thing.  Somewhat tricky to fix; the obvious
	kludge is just to search.

2005-02-08  Keith Packard  <keithp@keithp.com>

	* hw/xgl/glx/xglx.c: (InitOutput):
	* hw/xgl/xglpixmap.c: (xglPixmapCreateDamage):
	update Xgl to changes in damage API.
	Remove some flags to support software mesa

2005-02-08  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/ati/radeon_composite.c 
	Support linear filtering
	
	* hw/kdrive/fbdev/fbinit.c: (InitInput):
	* hw/kdrive/ipaq/ipaq.c: (InitInput):
	* hw/kdrive/linux/Makefile.am:
	* hw/kdrive/linux/linux.c: (LinuxFini):
	* hw/kdrive/mach64/mach64stub.c: (InitCard):
	* hw/kdrive/src/kaa.c: (kaaFillTiled):
	* hw/kdrive/src/kaa.h:
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/kinput.c: (KdMouseProc), (KdAddMouseDriver),
	(KdInitInput):
	Change how touch screens work -- make them just another 'mouse'
	device.
	Add unfinished (and unused) code to accelerate tiled fills.

2005-02-08  Keith Packard  <keithp@keithp.com>

	* dix/colormap.c: (CopyFree), (AllocColor), (AllocDirect):
	Change where the 'alpha bits' live in visuals.

2005-02-08  Keith Packard  <keithp@keithp.com>

	* composite/compalloc.c: (compRedirectWindow), (compNewPixmap),
	(compAllocPixmap), (compFreePixmap), (compReallocPixmap):
	* composite/compinit.c: (compCloseScreen), (compInstallColormap),
	(compAddAlternateVisuals), (compScreenInit):
	* composite/compint.h:
	* composite/compwindow.c: (compRepaintBorder),
	(compSetPixmapVisitWindow), (compCheckRedirect),
	(compPositionWindow), (compCopyWindow),
	(compSetRedirectBorderClip), (compWindowUpdateAutomatic):
	Avoid telling DDX about colormaps for synthetic visuals
	Fix border repainting on resize.
	Change pixmap allocation around

	* damageext/damageext.c: (DamageExtReport), (ProcDamageCreate),
	(ProcDamageSubtract):
	* dix/colormap.c: (CopyFree), (AllocColor), (AllocDirect):
	* fb/fbcmap.c: (fbInitVisuals):
	Change where the 'alpha bits' live in visuals.
	
	* include/regionstr.h:
	* include/scrnintstr.h:
	* mi/misprite.c:
	* miext/damage/damage.c: (getDrawableDamageRef),
	(damageDamageRegion), (damageCreateGC), (damageCopyArea),
	(damageCopyPlane), (damageRemoveDamage), (damageInsertDamage),
	(damageDestroyPixmap), (damageSetWindowPixmap), (DamageSetup),
	(DamageCreate), (DamageRegister), (DamageUnregister),
	(DamageDestroy), (DamageSubtract), (DamageEmpty):
	* miext/damage/damage.h:
	* miext/damage/damagestr.h:
	* miext/shadow/shadow.c: (shadowSetup):
	Check for NULL pCompositeClip in damage code.
	Call SourceValidate for self CopyArea/CopyPlane
	Change damageInsertDamage API so it doesn't require a pixmap

2005-02-08  Keith Packard  <keithp@keithp.com>

	* render/filter.c: (SetPictureFilter):
	* render/picture.c: (SetPictureTransform):
	* render/render.c: (PanoramiXRenderSetPictureTransform),
	(PanoramiXRenderSetPictureFilter), (PanoramiXRenderTrapezoids),
	(PanoramiXRenderTriangles), (PanoramiXRenderTriStrip),
	(PanoramiXRenderTriFan), (PanoramiXRenderAddTraps),
	(PanoramiXRenderInit):
	Change picture serial number on filter and transform change.
	Provide Xinerama wrappers for remaining Render drawing requests.

2005-02-08  Keith Packard  <keithp@keithp.com>

	* include/windowstr.h
	Add ShapeInput support

2005-02-08  Keith Packard  <keithp@keithp.com>

	* Xext/shape.c: (SendShapeNotify):
	* dix/dispatch.c:
	* dix/events.c: (XYToWindow), (XineramaPointInWindowIsVisible):
	* dix/window.c: (FreeWindowResources):
	* xfixes/region.c: (ProcXFixesSetWindowShapeRegion):
	Add ShapeInput support

2005-02-01  David Reveman  <davidr@novell.com>

	* hw/xgl/xgltrap.c (xglCreateMaskPicture): Use negative stride
	as it seems to be working fine with fbPolyFillRect and
	fbRasterizeTrapezoid.

	* hw/xgl/xgl.h: Stride variable in xglPixmapRec should be signed as
	it can be negative.

2005-01-26  David Reveman  <davidr@novell.com>

	* hw/xgl: Better offscreen memory management, core text acceleration,
	render text acceleration, trapezoid acceleration, convolution filter
	acceleration and a large number of bug fixes and other improvements.

	* fb/fbpict.c (fbComposite): Convolution filter is treated as a
	transform. Pick up cases that should be handled as solid color.
	Handle repeats in IcFetch[a]_transform.

	* fb/fbcompose.c: define MOD macro that works well with negative
	values.
	(fbFetch_transform): 
	(fbFetcha_transform): Handle repeat attribute correctly (thanks to Owen
	Taylor).
	(fbFetch_transform): 
	(fbFetcha_transform): Add convolution filter support.
	(fbBuildCompositeOperand): Convolution filter is handled as a
	transform. Set filter parameters, repeat attribute and dimensions.

	* fb/fbpict.h: Add filter parameters, repeat attribute and dimensions
	to transform struct in composite operand.

	* render/mipict.c (miClipPictureSrc): No source clipping if
	a convolution filter is set.
	(miCompositeSourceValidate): Add all pixels touched by convolution
	filter to source validation area.

	* render/mipict.c: 
	* include/mipict.h: Add miFilterValidateParams for general
	filter parameter validation.

	* render/filter.c (SetPictureFilter): Fix filter parameter
	allocation.

	* render/picture.c (PictureCloseScreen): Call GlyphUninit to
	un-initialize possible glyph privates.
	(PictureFinishInit): Call GlyphFinishInit to initialize possible
	glyph privates.

	* render/mipict.c (miPictureInit): Set default RealizeGlyph and
	UnrealizeGlyph functions.

	* render/miglyph.c: Add miRealizeGlyph and miUnrealizeGlyph
	implementations.

	* render/picture.c: 
	* include/picturestr.h: Add RealizeGlyph and UnrealizeGlyph for
	initializing and un-initializing glyph privates. Add
	GetGlyphPrivatesForScreen macro for accessing glyph privates.

	* render/glyph.c (AllocateGlyph): Initializing glyph private.
	* render/glyph.c (FreeGlyph): Un-initializing glyph private.
	
	* render/glyph.c: 
	* include/glyphstr.h: 
	Add ResetGlyphPrivates, AllocateGlyphPrivateIndex and
	AllocateGlyphPrivate for screen specific glyph private
	allocation.

2005-01-25  David Reveman  <davidr@novell.com>

	* miext/damage/damage.c (damagePolyText8): 
	(damagePolyText16): Return correct x offset.

2005-01-24  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaapict.c: (kaaTryDriverComposite):
	Fix a leak of a region when the driver's CheckComposite fails.

2005-01-24  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_dri.c: (ATIDRIGetBuffer):
	Silence a warning about uninitialized variable (though it would be).

2005-01-21  Carl Worth  <cworth@cworth.org>

	* fb/fbedgeimp.h (rasterizeEdges):  Avoid buffer ovverrun when
	trapezoid's right edge is on a pixel boundary.

	* include/renderedge.h: Import more fixes from xc: Remove unused
	RenderEdge.y field. Fix parameter name in RenderEdgeStep
	prototype.

	* render/renderedge.c (RenderSampleFloorY): Import fix from xc:
	date: 2004/08/18 18:41:41;  author: kem;  state: Exp;  lines: +2 -2 branches:  1.2.6;
	* programs/Xserver/render/renderedge.c: (RenderSampleFloorY):
	Fix AIX build problems (Bugs #1020, 1102, 1103, Dan McNichol).

2005-01-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_dma.c: (ATIFlushPixelCache), (ATIEngineReset),
	(ATIWaitAvailMMIO), (ATIWaitAvailPrimary), (ATIWaitIdle),
	(RadeonDispatchIndirectPDMA), (R128DispatchIndirectDMA):
	* hw/kdrive/ati/ati_dma.h:
	* hw/kdrive/ati/ati_dri.c: (ATIDRIGetBuffer):
	Add a set of macros for dealing with the repeated code to wait for a
	while reading a register/attempting DMA.  Now it'll wait for a certain
	number of seconds rather than a certain number of times through the
	loop before deciding that it's timed out and resetting the hardware.
	Also, add more timeout handling, and reset the draw state after
	resetting the engine.

2005-01-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/radeon_composite.c: (R100PrepareComposite),
	(R200TextureSetup), (R200PrepareComposite),
	(RadeonPrepareTrapezoids):
	Use RadeonSwitchTo3D() instead of doing the WAIT_UNTIL ourselves
	(RST3D() also does DC_FLUSH, which may be important).

2005-01-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_video.c: (RadeonDisplayVideo), (ATIInitVideo):
	Add R200 XV support, and make R100 (hopefully) use linear filtering
	instead of nearest.  Also, use RadeonSwitchTo3D instead of doing the
	WAIT_UNTIL ourselves.

2005-01-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_dma.c: (ATIGetAvailPrimary),
	(ATIPseudoDMAInit), (ATIDMAInit):
	* hw/kdrive/ati/ati_reg.h:
	Make R200 PDMA work -- primary queue sizes are now 9 bits, not 8.

2004-12-22  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c: (ATIDrawSetup):
	* hw/kdrive/ati/ati_reg.h:
	* hw/kdrive/ati/radeon_composite.c: (R200TextureSetup),
	(R200PrepareComposite), (RadeonPrepareTrapezoids):
	Back out the previous day's broken R200 "fix" -- the same number of
	coords are always emitted.  Fix the real problem, which was not enough
	regs being initialized in ati_draw.c.  Fix a typo that was resulting in
	alpha coming out as 0 * src or 0 * broken instead of src * 1 or src *
	mask.  Assign the blending results to R0, as appears to be necessary.
	Unbreak the dst-alpha-blend-with-no-dst-alpha code.  Yow.  And set the
	right DMA count for the r200 traps code.

2004-12-21  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/radeon_composite.c: (R200TextureSetup),
	(R200PrepareComposite):
	Revert last night's r200 render fix.  Something went wrong in my
	testing, because that "fix" could have only made the situation worse.
	Remember, coords are emitted even when they aren't needed.  Set
	TX[CA]BLEND2_0 correctly, after rereading the X.org code, and remove a
	couple of XXXs on code that appears correct.  R200 render is still
	broken -- working on it.

2004-12-21  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c: (ATIDrawEnable):
	* hw/kdrive/ati/radeon_composite.c: (R200TextureSetup),
	(R200PrepareComposite):
	Fix r200 render (for real this time?) by setting tex1_comp_cnt right for
	non-mask rendering.  Reenable it.  Also, R200TexFormats was used instead
	of R100 in one place.  Harmless so far, because the formats were in the
	same order.

2004-12-06  mallum  <mallum@openedhand.com>

	* hw/kdrive/ephyr/hostx.c: (hostx_load_keymap):
	Fix for working on servers with > 4 keysyms per keycode ( eg xorg )

2004-12-01  Phil Blundell  <philb@gnu.org>

	Patch from Florian Boor <florian.boor@kernelconcepts.de>:
	* hw/kdrive/linux/tslib.c (TslibEnable): Check return value from
	ts_config.
	(TslibInit): Likewise.

2004-11-28  Phil Blundell  <pb@handhelds.org>

	* hw/kdrive/fbdev/fbdev.c (fbdevScreenInitialize): Re-read "fix"
	structure from kernel after mode selection, in case line pitch has
	changed.

2004-11-24  mallum  <mallum@handhelds.org>

	* hw/kdrive/ephyr/hostx.c: (hostx_init):
	Remove bogus line, dont set target window twice.

2004-11-24  mallum  <mallum@handhelds.org>

	* hw/kdrive/ephyr/ephyr.c: (ephyrRandRGetInfo):
	Remove bogus screen resolution ( via Ross Burton patch )
	* hw/kdrive/ephyr/hostx.c: (hostx_init):
	Make -parent work like Xnests, creating a win ( via Ross Burton patch )

2004-11-14  David Reveman  <c99drn@cs.umu.se>

	* hw/xgl/xgl.h: 
	* hw/xgl/xglscreen.c (xglScreenInit): Wrap BitmapToRegion.

	* hw/xgl/xgl.h: 
	* hw/xgl/xglpixmap.c: Add xglPixmapToRegion.

2004-11-13  Phil Blundell  <pb@nexus.co.uk>

	* hw/kdrive/linux/tslib.c (TslibDisable): Don't leave stale
	pointers hanging around after ts_close().
	(TslibFini): Likewise.

	* hw/kdrive/src/kdrive.c (dontZap): New global variable.
	(KdProcessArgument): Set it to TRUE on -nozap switch.
	(KdUseMsg): Add help for -nozap and -rgba switches.
	* hw/kdrive/src/kdrive.h (dontZap): Declare.
	* hw/kdrive/src/kinput.c (KdCheckSpecialKeys): Honour dontZap
	flag.

2004-11-12  Keith Packard  <keithp@keithp.com>

	* xfixes/cursor.c: (CursorDisplayCursor):
	* xfixes/select.c: (XFixesSelectionCallback):
	Check client->clientGone before sending events to avoid crash

2004-11-11  mallum  <mallum@handhelds.org>

	* hw/kdrive/ephyr/README:
	Add some notes about lower than host server depth support.
	* hw/kdrive/ephyr/hostx.c: (hostx_get_event):
	Fix for grab not sending shift release.

2004-11-09  mallum  <mallum@handhelds.org>

	* hw/kdrive/ephyr/ephyr.c: (ephyrScreenInitialize):
	* hw/kdrive/ephyr/ephyrinit.c: (ddxProcessArgument):
	* hw/kdrive/ephyr/hostx.c: (hostx_set_display_name),
	(hostx_set_win_title), (hostx_init), (hostx_paint_rect),
	(hostx_get_event):
	* hw/kdrive/ephyr/hostx.h:
	Add support for exclusively grabbing keyboard + mouse (thanks Ross).
	Show DISPLAY in window title.    

2004-11-08  mallum  <mallum@handhelds.org>

	* hw/kdrive/ephyr/ephyr.c: (ephyrScreenInitialize),
	(ephyrGetColors), (ephyrPutColors):
	* hw/kdrive/ephyr/hostx.c: (hostx_init), (hostx_get_server_depth),
	(hostx_set_server_depth), (hostx_get_bpp),
	(hostx_get_visual_masks), (hostx_set_cmap_entry),
	(hostx_screen_init), (hostx_paint_rect):
	* hw/kdrive/ephyr/hostx.h:

	Add inital support for server depths lower than that of host.  

2004-11-05  David Reveman  <c99drn@cs.umu.se>

	* hw/xgl/glx/xglx.c: 
	* hw/xgl/xglbstore.c: 
	* hw/xgl/xglcmap.c: 
	* hw/xgl/xglcomp.c: 
	* hw/xgl/xglcopy.c: 
	* hw/xgl/xglfill.c: 
	* hw/xgl/xglgc.c: 
	* hw/xgl/xglgeometry.c: 
	* hw/xgl/xglget.c: 
	* hw/xgl/xglinput.c: 
	* hw/xgl/xgloffscreen.c: 
	* hw/xgl/xgloutput.c: 
	* hw/xgl/xglparse.c: 
	* hw/xgl/xglpict.c: 
	* hw/xgl/xglpixel.c: 
	* hw/xgl/xglpixmap.c: 
	* hw/xgl/xglscreen.c: 
	* hw/xgl/xglsolid.c: 
	* hw/xgl/xglsync.c: 
	* hw/xgl/xgltile.c: 
	* hw/xgl/xglwindow.c: 
	* hw/xgl/xgl.h: Use UTF-8 encoding.

	* hw/xgl/xglpixmap.c (xglMapPixmapBits): Use negative stride if
	XGL_INTERNAL_SCANLINE_ORDER is BOTTOM_UP. All needed to use
	pixel data with scanline order bottom-up is now setting the
	XGL_INTERNAL_SCANLINE_ORDER define in xgl.h to
	GLITZ_PIXEL_SCANLINE_ORDER_BOTTOM_UP.

	* hw/xgl/xglpixel.c: 
	* hw/xgl/xgl.h: Removed upsideDown parameter from xglSetPixels.

	* include/mipict.h: Add prototypes for miChangePictureTransform
	and miChangePictureFilter.

	Add working Xgl server code.

2004-11-04  David Reveman  <c99drn@cs.umu.se>

	* render/mipict.c: Added miChangePictureTransform and
	miChangePictureFilter.
	(miPictureInit): Set default ChangePictureTransform and
	ChangePictureFilter functions.

	* render/filter.c (SetPictureFilter): Call picture screen function
	ChangePictureFilter.

	* render/picture.c (SetPictureTransform): Call picture screen function
	ChangePictureTransform.

2004-10-20  Phil Blundell  <pb@nexus.co.uk>

	* hw/kdrive/src/kinput.c (KdDisableInput): Block SIGIO before
	disabling input fds.
	(KdEnableInput): Unblock it after enabling them again.

2004-10-20  Phil Blundell  <pb@nexus.co.uk>

	Import Epson 13806 driver from Costas Stylianou:
	* hw/kdrive/epson/epson13806.c, hw/kdrive/epson/epson13806.h,
	hw/kdrive/epson/epson13806draw.h,
	hw/kdrive/epson/epson13806stub.c, hw/kdrive/epson/epson13806reg.h,
	hw/kdrive/epson/epson13806draw.c, hw/kdrive/epson/Xepson.man,
	hw/kdrive/epson/Makefile.am: New files.

	* hw/kdrive/Makefile.am (SUBDIRS): Add epson.
	* configure.ac: Build Makefile in hw/kdrive/epson.
	
2004-09-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c: (ATIDrawSetup), (ATIDrawEnable):
	* hw/kdrive/ati/ati_reg.h:
	* hw/kdrive/ati/radeon_composite.c: (R200PrepareComposite),
	(RadeonPrepareTrapezoids):
	Fix the R200 Render code.  Composite and Trapezoids are now supported
	just as well as on R100.

2004-09-19  Eric Anholt  <anholt@FreeBSD.org>

	* fb/fbtrap.c: (fbAddTriangles):
	Fix up some broken ASCII art by avoiding tabs.

2004-09-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_dri.c: (ATIDRIAgpInit):
	* hw/kdrive/ati/ati_reg.h:
	Unbreak the AGP DRI case.  That was quite a pile of broken code.

2004-09-14  Phil Blundell  <pb@nexus.co.uk>

	* hw/kdrive/fbdev/fbdev.c (fbdevScreenInitialize): Only set screen
	parameters if resolution has changed from current values.  Patch
	from scoony@noos.fr.

2004-09-13  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati.c: (ATIIsAGP):
	* hw/kdrive/ati/ati_reg.h:
	Add proper PCI/AGP detection, based on Mike Harris's code for Radeon,
	but using the MMIO mirror of the bits instead of config space.

2004-09-12  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c: (ATIBlockHandler), (ATIDrawEnable),
	(ATIDrawDisable), (ATIDrawFini):
	- Fix a segfault on VT switch with DRI.  Still dies due to cursor
	  allocation troubles.
	- Move the RemoveBlockAndWakeupHandlers to match
	  RegisterBlockAndWakeupHandlers.
	- Enable R100 trapezoid "acceleration" when DRI is working, so that it
	  can be exposed and worked on.

2004-09-12  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c: (ATIDrawInit), (ATIDrawEnable):
	Move the RegisterBlockAndWakeupHandlers to before DRI initialization.
	The change to use that instead of manual wrapping made the DMA dispatch
	come after the lock had been dropped, causing lots of pain.

2004-09-12  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati.h:
	* hw/kdrive/ati/ati_dma.c: (ATIEngineReset), (ATIDMASetup),
	(ATIDMATeardown):
	* hw/kdrive/ati/ati_dri.c: (ATIDRIDMAStart), (ATIDRIDMAStop),
	(ATIDRIDMAReset):
	Reset the CCE/CP on engine reset, and make the ATIDRIDMA functions take
	a more useful argument.

2004-09-12  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_dri.c: (R128DRIKernelInit),
	(RadeonDRIKernelInit), (ATIDRIBufInit), (ATIDRIScreenInit),
	(R128DRIFinishScreenInit), (RadeonDRIFinishScreenInit):
	Fix handling of is_agp.  is_agp is whether the card is actually AGP,
	while using_agp should say whether AGP is being used as part of DMA/DRI.

2004-09-12  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_dma.c: (ATIDebugFifo), (ATIWaitIdle):
	* hw/kdrive/ati/ati_dma.h:
	* hw/kdrive/ati/ati_dri.c: (ATIDRIDMAStart), (ATIDRIGetBuffer):
	Improve error handling, especially in the DRI case.  Do some FatalErrors
	instead of ErrorFs for things that are really bad, and put limits on
	some loops.  Now, sometimes instead of hanging the entire system, we
	(mostly-) cleanly drop to console when the card has hung.

2004-09-11  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati.h:
	* hw/kdrive/ati/ati_dma.h:
	* hw/kdrive/ati/ati_draw.c: (ATIDrawInit), (ATIDrawEnable):
	* hw/kdrive/ati/ati_draw.h:
	* hw/kdrive/ati/ati_reg.h:
	* hw/kdrive/ati/r128_composite.c: (R128GetDatatypePict),
	(R128TextureSetup), (R128PrepareComposite), (R128Composite),
	(R128PrepareTrapezoids), (R128Trapezoids), (R128DoneTrapezoids):
	* hw/kdrive/ati/radeon_composite.c: (RadeonComposite),
	(RadeonPrepareTrapezoids), (RadeonTrapezoids),
	(RadeonDoneTrapezoids):
	- Add disabled WIP trapezoid code for R128 and R100.  The R128 rendering
	  is not doing an add of 1 per triangle like I hoped, and instead seems
	  to be saturating all the pixels or something.  The R100 acceleration
	  renders pretty well, with some gaps.  Note that both are slower than
	  software due to lack of DMA to submit vertices.
	- Mostly fix R128 and Radeon transform support, including supporting
	  bilinear filtering on R128.  Subpixel offsets are still probably an
	  issue (reported by rendercheck), but I want to make 100% sure about my
	  understanding of the protocol before changing everybody, including fb.
	- Add support for dst formats without alpha to R128 Composite.
	- Remove the R128 Blend code, which has long outlived its usefulness.
	  (I kept it around for one reason: It could be useful for the
	  w/h > 1024 case with no mask and a non-src op.  That seems pretty
	  infrequent and not worth the trouble).

2004-09-11  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaa.h:
	* hw/kdrive/src/kaapict.c: (kaaRasterizeTrapezoid),
	(kaaInitTrapOffsets):
	- Don't require Imrecise mode for Trapezoid acceleration.  It looks like
	  we might be able to do Precise in hardware, so leave it up to the
	  driver.
	- Add a helper function for computing a set of offsets for smooth
	  trapezoid rasterizing using many sharp trapezoids.

2004-09-08  mallum <mallum@handhelds.org>

	* hw/kdrive/ephyr/ephyr.c: (ephyrInitScreen):
	Remove bogus TSLIB setup.
	* hw/kdrive/ephyr/ephyrinit.c: (InitCard), (OsVendorInit):
	Move cursor 'accel' initialisation.

2004-09-07  mallum <mallum@handhelds.org>

	* hw/kdrive/ephyr/Makefile.am:
	Prevent build breakage when tslib enabled.

2004-09-07  mallum  <mallum@handhelds.org>

	* hw/kdrive/ephyr/hostx.c: (hostx_paint_debug_rect):
	More fixes to damage visual debug

2004-09-01  mallum <mallum@handhelds.org>

	* hw/kdrive/ephyr/README: 
	XEPHYR_PAUSE now micro rather than nano seconds
	* hw/kdrive/ephyr/hostx.c: (hostx_init), (hostx_paint_debug_rect):
	Fixes to damage visual debug 'pause'

2004-09-01  mallum  <mallum@handhelds.org>

	* hw/kdrive/ephyr/ephyr.c: (ephyrScreenInitialize),
	(ephyrRandRGetInfo), (ephyrRandRSetConfig):
	* hw/kdrive/ephyr/hostx.c: (hostx_init):
	* hw/kdrive/ephyr/hostx.h:
	Make '-dpi' switch work for Xephyr. Simplyfy dpi handling. 
	Produce warning if host depth != Xephyr depth.

2004-09-01  mallum <mallum@handhelds.org>

	* hw/kdrive/ephyr/hostx.c: (hostx_init):
	Actually select window events for -parent option.

2004-08-31  mallum <mallum@handhelds.org>

	* Makefile.am:
	Add missing bits for record to get built

2004-08-31  mallum <mallum@handhelds.org>

	* record/record.c
	* record/set.c
	* record/set.h
	* record/Makefile.am
	Add XRECORD extension support.

2004-08-31  mallum <mallum@handhelds.org>

	* configure.ac:
	* hw/kdrive/Makefile.am:
	* hw/kdrive/ephyr/Makefile.am:
	* hw/kdrive/ephyr/README:
	* hw/kdrive/ephyr/ephyr.c:
	* hw/kdrive/ephyr/hostx.h:
	* hw/kdrive/ephyr/os.c:
	Add 'ephyr' server sources. 

2004-08-30  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaa.c: (kaaDrawInit):
	* hw/kdrive/src/kaa.h:
	* hw/kdrive/src/kaapict.c: (kaaCompositeFallbackPictDesc),
	(kaaPrintCompositeFallback), (kaaPrintTrapezoidFallback),
	(miLineFixedX), (kaaRasterizeTrapezoid):
	* hw/kdrive/src/kdrive.h:
	Add a set of three hooks for accelerating trapezoids, and use it for
	the RasterizeTrapezoid screen function.  These hooks will be called for
	imprecise, non-sharp trapezoids with A8 destinations.

	Note that the current main consumer of trapezoids, cairo, is requesting
	precise, sharp trapezoids by not changing the default Picture
	attributes, but gets non-sharp effects in software because fb bases its
	choice of sharp/non-sharp on the mask format being A8 vs A1, and cairo
	asks for A8.  Follow fb's (poor?) example by ignoring the sharp setting
	and basing the choice off of the mask being A8.

2004-08-29  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaa.c: (kaaPixmapUseScreen), (kaaPixmapUseMemory),
	(kaaCreatePixmap):
	Rather than initially place pixmaps in framebuffer based on a size
	heuristic, delay the decision until the first
	kaaPixmapUse{Screen|Memory}, and put it in framebuffer if UseScreen was
	called.  Provides a significant improvement in cairo speeds (100%
	speedup in cairogears here) and is likely to improve text
	performance as well.

2004-08-10  Carlos Romero  <kidcrash@freedesktop.org>

	* xkb/Makefile.am:
	Kill off remaining references to xorg.

2004-07-29  Daniel Stone  <daniel@freedesktop.org>

	reviewed by: anholt

	* render/render.c: (PanoramiXRenderAddTraps):
	Fix function wrt x_off/y_off and dst vs picture.

2004-07-29  Keith Packard  <keithp@keithp.com>

	* fb/Makefile.am:
	* fb/fbedge.c: (fbRasterizeEdges):
	* fb/fbedgeimp.h:
	* fb/fbpict.c: (fbPictureInit):
	* fb/fbpict.h:
	* fb/fbtrap.c: (fbAddTraps), (fbRasterizeTrapezoid), (_GreaterY),
	(_Clockwise), (fbAddTriangles):
	* include/mipict.h:
	* include/picture.h:
	* include/picturestr.h:
	* include/renderedge.h:
	* render/Makefile.am:
	* render/mipict.c: (miIsSolidAlpha), (miPictureInit):
	* render/mitrap.c: (miTrapezoids):
	* render/mitri.c: (miTriangles), (miTriStrip), (miTriFan):
	* render/picture.c: (AddTraps):
	* render/render.c: (RenderNumberRequests), (ProcRenderAddTraps),
	(SProcRenderAddTraps), (PanoramiXRenderAddTraps),
	(PanoramiXRenderInit):
	* render/renderedge.c: (RenderSampleCeilY), (RenderSampleFloorY),
	(RenderEdgeStep), (_RenderEdgeMultiInit), (RenderEdgeInit),
	(RenderLineFixedEdgeInit):
	Change polygon fill semantics to regular point sampling
	Add RenderAddTraps request

2004-07-28  Daniel Stone  <daniel@freedesktop.org>

	* configure.ac:
	* hw/Makefile.am:
	It's official - Xizzle is dead code. hw/xorg has been moved to
	/cvs/xserver/DEAD/xorg; all traces of it have been removed from
	xserver.

2004-07-27  Phil Blundell  <pb@nexus.co.uk>

	* configure.ac: Don't require xkbfile if xkb not enabled.

2004-07-25  Carl Worth  <cworth@isi.edu>

	* hw: Add .deps, Makefile, and Makefile.in to .cvsignore files.

2004-07-22  Keith Packard  <keithp@keithp.com>

	reviewed by: <delete if not using a buddy>

	* hw/kdrive/ati/ati.c: (ATISetOffscreen), (ATISetPitch),
	(ATIRandRSetConfig), (ATIPreserve), (ATIRestore), (ATIEnable):
	* hw/kdrive/ati/ati.h:
	* hw/kdrive/ati/ati_cursor.c: (RadeonLoadCursor),
	(ATIUnloadCursor), (ATICursorEnable):
	* hw/kdrive/ati/ati_reg.h:
	Correct pitch so that accelerator can run on 1400x1050 screens.
	Add a few more register sets for cursors.

2004-07-20  Phil Blundell  <pb@nexus.co.uk>

	* hw/kdrive/fbdev/fbdev.c (fbdevSetShadow): Select optimized 16bpp
	shadow copy functions if screen is 16bpp.  Select -YX versions for
	90 and 270 rotations if architecture is ARM.

2004-07-20  Phil Blundell  <pb@nexus.co.uk>
	
	* miext/shadow/shrotpackYX.h: New file.
	* miext/shadow/shrot16pack_270YX.c: Likewise.	
	* miext/shadow/shrot16pack_90YX.c: Likewise.	
	* miext/shadow/Makefile.am (libshadow_a_SOURCES): Add above files.
	* miext/shadow/shadow.h (shadowUpdateRotate16_90YX,
	shadowUpdateRotate16_270YX, shadowUpdateRotate8,
	shadowUpdateRotate16, shadowUpdateRotate32): New prototypes.

2004-07-19  Phil Blundell  <pb@nexus.co.uk>

	* configure.ac (PART_NET): Define.
	(XSERVER_CFLAGS): Add -D_BSD_SOURCE.

2004-07-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/radeon_composite.c: (R100TextureSetup),
	(R200TextureSetup):
	Add support for a8b8g8r8 and x8b8g8r8 pictures, which showed up
	frequently with metacity usage.

2004-07-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_cursor.c: (ATICursorInit):
	Breakage in last commit to this file: pCurPriv->area isn't set up until
	Enable, these days.

2004-07-19  Eric Anholt  <anholt@FreeBSD.org>

	* render/animcur.c: (AnimCursorCreate):
	Remove a bit of dead code in animcur.c.

2004-07-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c: (ATIDrawSetup):
	Set the right number of texture coordinates for r200 Render support
	(still disabled, needs to be tested).

2004-07-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/r128_composite.c: (R128TextureSetup),
	(R128PrepareComposite):
	* hw/kdrive/ati/radeon_composite.c: (R100TextureSetup),
	(R100CheckComposite), (R100PrepareComposite), (R200TextureSetup),
	(R200CheckComposite), (R200PrepareComposite), (RadeonComposite):
	- Add Radeon picture transform support.
	- On R128, don't refer to an old Composite's mask transform when the
	  current Composite doesn't have a mask.
	- Staticize some global variables in r128_composite.c.

2004-07-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati.c: (ATISetOffscreen), (ATIDisable), (ATILog2):
	* hw/kdrive/ati/ati.h:
	* hw/kdrive/ati/ati_cursor.c: (ATIMoveCursor), (ClassicLoadCursor),
	(RadeonLoadCursor), (ATICursorSave), (ATICursorEnable),
	(ATICursorInit):
	* hw/kdrive/ati/ati_draw.c: (ATIDrawSetup), (ATIUploadToScratch),
	(ATIBlockHandler), (ATIWakeupHandler), (ATIDrawInit),
	(ATIScratchSave), (ATIDrawEnable), (ATIDrawDisable):
	* hw/kdrive/ati/ati_draw.h:
	Use the offscreen memory manager as much as possible to do the
	reservation of memory at startup.  Do some drive-by cleanups while I'm
	here (sorry!).

2004-07-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/r128_composite.c: (R128CheckComposite),
	(R128TextureSetup), (R128Composite):
	Add support for transforms of textures on R128.

2004-07-15  Carlos Romero  <kidcrash@freedesktop.org>

	* configure.ac:
	* hw/kdrive/Makefile.am:
	* hw/kdrive/i810/Makefile.am:
	* hw/kdrive/i810/i810.c:
	* hw/kdrive/i810/i810_video.c:
	* hw/kdrive/i810/i810draw.c:
	Enable i810.

2004-07-08  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kasync.c: (KdCheckFillSpans), (KdCheckSetSpans),
	(KdCheckPutImage), (KdCheckCopyArea), (KdCheckCopyPlane),
	(KdCheckPolyPoint), (KdCheckPolylines), (KdCheckPolySegment),
	(KdCheckPolyRectangle), (KdCheckPolyArc), (KdCheckFillPolygon),
	(KdCheckPolyFillRect), (KdCheckPolyFillArc),
	(KdCheckImageGlyphBlt), (KdCheckPolyGlyphBlt), (KdCheckPushPixels),
	(KdCheckSaveAreas), (KdCheckRestoreAreas), (KdCheckPaintWindow),
	(KdCheckCopyWindow), (KdCheckPaintKey), (KdCheckOverlayCopyWindow):
	* hw/kdrive/src/kpict.c:
	Commit the rest of the dirty optimization from 20040703 and add a
	missing header include.  I don't know how this happened, but I'm going
	to blame a "few" fscks having happened between testing the code and 
	committing (due to other driver changes that made me not blame dirty
	for the failures I saw) for disappearance of kasync.c changes.  Fixes
	a lot of corruption.

2004-07-08  Keith Packard  <keithp@keithp.com>

	* composite/compext.c: (ProcCompositeNameWindowPixmap),
	(CompositeNumberRequests), (SProcCompositeNameWindowPixmap):
	Add Composite 0.2 request (NameWindowPixmap)
	
2004-07-07  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kdrive.h:
	Remove duplicate protos in kdrive.h.

2004-07-07  Eric Anholt  <anholt@FreeBSD.org>

	* composite/compext.c:
	Remove duplicate declaration of CompositeClientPrivateIndex.

2004-07-07  Eric Anholt  <anholt@FreeBSD.org>

	* miext/damage/damage.h:
	Remove duplicate DamageUnregister proto.

2004-07-07  Carlos Romero  <kidcrash@freedesktop.org>
	* hw/kdrive/mga/Makefile.am:
	* xkb/Makefile.am:
	missing xkb/[xkb.h, xkbDflts.h] and hw/kdrive/mga/g400_common.h

2004-07-07  Carlos Romero  <kidcrash@freedesktop.org>
	* Makefile.am:
	* configure.ac:
	* hw/kdrive/src/kinput.c: (KdKeybdProc), (KdInitInput):
	* os/utils.c: (LogMessage):
	* xkb/Makefile.am:
	* xkb/xkbInit.c:
	Initial kdrive XKB/XINPUT support, use --enable-xkb --enable-xinput

2004-07-03  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/r128_composite.c: (R128CheckComposite),
	(R128TextureSetup), (R128PrepareComposite):
	Clean up Rage 128 composite code.  Now it composites more operations
	correctly and is simpler.

2004-07-03  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaa.c: (kaaDrawableDirty), (kaaPixmapSave),
	(kaaMoveInPixmap), (kaaCreatePixmap), (kaaFillSpans),
	(kaaCopyNtoN), (kaaPolyFillRect), (kaaSolidBoxClipped),
	(kaaImageGlyphBlt), (kaaFillRegionSolid):
	* hw/kdrive/src/kaa.h:
	* hw/kdrive/src/kaapict.c: (kaaTryDriverSolidFill),
	(kaaTryDriverBlend), (kaaTryDriverComposite):
	* hw/kdrive/src/kpict.c: (KdCheckComposite),
	(KdCheckRasterizeTrapezoid):
	Add a "dirty" flag to the pixmap private.  Clear it when setting up an
	offscreen pixmap area, and set it when any rendering occurs.  When
	moving a pixmap out of offscreen, don't read data back if it wasn't
	dirtied (compared to the system memory copy).

2004-07-02  Philip Blundell  <philb@gnu.org>

	* hw/kdrive/linux/tslib.c (TsRead): Call ts_read multiple times,
	to avoid events getting stuck in the pipeline.

2004-06-29  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaa.c: (kaaPixmapUseScreen):
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/koffscreen.c: (KdOffscreenAlloc),
	(KdOffscreenFree), (KdOffscreenMarkUsed), (KdOffscreenInit):
	Add an offscreen area scoring to improve choosing offscreen areas to
	kick out when allocation can't find a free area of the requested size.
	When offscreen pixmaps get used, the offscreen area's score is increased
	by a constant value.  Every certain number of increases, all offscreen
	area scores get decreased by a fraction.  When choosing a set of areas
	to remove for a new allocation, the set of areas with the smallest total
	score is chosen for removal.  While this is not the smartest system, it
	prevents things like always removing the first offscreen area in memory
	(likely the most recent) to be kicked out when doing replacing.

2004-06-27  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/ati/ati.c: (ATICardInit), (ATISetOffscreen),
	(ATIScreenInit), (ATIRandRSetConfig), (ATIRandRInit),
	(ATIFinishInitScreen), (ATIEnable):
	* hw/kdrive/ati/ati.h:
	* hw/kdrive/ati/ati_cursor.c: (ATICursorInit):
	* hw/kdrive/ati/ati_draw.c: (RadeonSwitchTo2D), (RadeonSwitchTo3D),
	(ATIBlockHandler), (ATIWakeupHandler), (ATIDrawEnable),
	(ATIDrawDisable), (ATIDrawFini):
	Separate out off-screen allocation from Init.
	Fix Enable to update off-screen addresses.
	Wrap RandR to update off-screen addresses.
	
	* hw/kdrive/fbdev/fbdev.c: (fbdevMapFramebuffer):
	Set off_screen_base and memory_size fields correctly.

2004-06-25  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/ati/ati.c: (ATIScreenInit):
	* hw/kdrive/ati/ati_cursor.c: (ATIMoveCursor),
	(ClassicAllocCursorColors), (ClassicSetCursorColors),
	(ClassicRecolorCursor), (ClassicLoadCursor), (RadeonLoadCursor),
	(ATIRealizeCursor), (ATISetCursor), (ATICursorEnable),
	(ATIRecolorCursor):
	* hw/kdrive/ati/ati_draw.c: (ATIDrawFini):
	* hw/kdrive/ati/ati_reg.h:
	Add ARGB cursor support for Radeon cards.

2004-06-16  Damien Ciabrini  <braun@club-internet.fr>

	* hw/kdrive/mga/g400_common.h:
	* hw/kdrive/mga/g400_composite.c: (MGA_LOG2), (mgaPrepareBlend),
	(mgaBlend), (mgaDoneBlend), (PrepareSourceTexture),
	(mgaPrepareComposite), (mgaComposite), (mgaDoneComposite):
	Add missing files to support hardware composition with g400
	* hw/kdrive/mga/mga.c: (mgaUnmapReg):
	* hw/kdrive/mga/mgadraw.c: (mgaSetup), (mgaPrepareSolid),
	(mgaUploadToScreen), (mgaDrawInit):
	ANSIfy files to please gcc 2.95 (variables declaration and comments)

2004-06-11  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c: (ATIDrawEnable):
	* hw/kdrive/src/kaa.c: (kaaGetOffscreenPixmap):
	* hw/kdrive/src/kaapict.c: (kaaTryDriverSolidFill),
	(kaaTryDriverComposite):
	- Pass the right pixel mask (all ones) in to PrepareSolid in the
	  solid-fill-based composite acceleration.
	- Use a real pixmap when doing an UploadToScratch (For pDrawable->type
	  == DRAWABLE_WINDOW, you need to get the backing pixmap).
	- Pass back the x/y offsets from kaaGetOffscreenPixmap
	  unconditionally, because they'll be used in the scratch case.
	- Turn on the Render acceleration for Rage 128 and Radeon 100-series at
	  last!

2004-06-10  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c: (ATIDrawSetup), (ATIUploadToScratch),
	(ATIDrawInit):
	Align scratch area offsets to the offscreen byte alignment.

2004-06-10  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_dma.c: (ATIPseudoDMAInit):
	Oops, testers reported that the last patch actually didn't work
	(conflicts occurred), so the R300 PDMA doesn't work.  Disable.

2004-06-10  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_dma.c: (ATIUploadMicrocode),
	(ATIPseudoDMAInit):
	* hw/kdrive/ati/ati_microcode.c:
	Bug #242: Fix setup of R300 cards, by providing R300 CP code
	from volodya-project and initializing PDMA.

2004-06-04  Keith Packard  <keithp@keithp.com>

	* configure.ac:
	* hw/Makefile.am:
	Add top-level build support for GL X server (not working yet)

	* composite/compinit.c: (compAddAlternateVisuals):
	Fix a few allocation bugs with alternate visual ids
	Allow for non-8/8/8 alternate visuals
	
	* hw/kdrive/src/kshadow.c: (KdShadowSet):
	Turn off any existing shadow before enabling it again
	(avoids re-registering existing damage)

	* miext/damage/damage.c: (damageRemoveDamage),
	(damageInsertDamage), (DamageRegister), (DamageUnregister):
	Add some validation code to catch re-registered damages

2004-06-03  Philip Blundell  <philb@gnu.org>

	* configure.ac: New options --disable-unix-transport,
	--disable-tcp-transport, --disable-ipv6.
	(UNIXCONN, TCPCONN, IPV6CONN): AC_DEFINE as appropriate.
	* os/xstrans.c (include): Include config.h.	

2004-06-02  Philip Blundell  <philb@gnu.org>

	* configure.ac: Allow building without XCalibrate.
	* mi/miinitext.c (InitExtensions) [HAVE_XCALIBRATE]: Call
	XCalibrateExtensionInit.

2004-06-02  Philip Blundell  <philb@gnu.org>
	
	* configure.ac (XCALIBRATE): New conditional.
	(REQUIRED_MODULES): Demand xcalibrateext if building XCalibrate.
	* Xext/xcalibrate.c: New file.
	* Xext/Makefile.am (libXext_a_SOURCES) [XCALIBRATE=yes]: Add
	xcalibrate.c.
	* hw/kdrive/linux/tslib.c (TsRead): Read raw events if requested.

2004-05-30  Philip Blundell  <philb@gnu.org>

	* hw/kdrive/nvidia/Makefile.am (Xnvidia_LDADD): Add -lts if using
	tslib.

2004-05-30  Carlos Romero  <kidcrash@freedesktop.org>
	* hw/kdrive/pm2/pm2.c: (pmMapReg), (pmCardInit), (pmScreenInit):
	* hw/kdrive/pm2/pm2.h:
	* hw/kdrive/pm2/pm2_draw.c: (pmPrepareSolid), (pmSolid),
	(pmPrepareCopy), (pmCopy), (Permedia2LoadCoord), (pmDrawInit),
	(pmDrawEnable), (pmDrawSync):
	Initialize permedia engine for acceleration to work.

2004-05-29  Ralph Thomas <ralpht@freedesktop.org>
	* configure.ac:
	* hw/kdrive/Makefile.am:
	* hw/kdrive/via/Makefile.am:
	* hw/kdrive/via/via.c:
	* hw/kdrive/via/via.h:
	* hw/kdrive/via/via_regs.h:
	* hw/kdrive/via/viadraw.c:
	* hw/kdrive/via/viastub.c:
	Adding driver for VIA CLE266 graphics chip.

2004-05-28  Daniel Stone  <daniel@freedesktop.org>

	* hw/kdrive/fbdev/fbdev.c (fbdevInitialize):
	Try /dev/fb/0 as well as /dev/fb0: I like devfs.

2004-05-25  Carlos Romero  <kidcrash@freedesktop.org>
	* configure.ac:
	* hw/xorg/os-support/Makefile.am:
	* hw/xorg/os-support/linux/Makefile.am:
	* hw/xwin/Makefile.am:
	minor build fixes so make distcheck passes

2004-05-25  Carlos Romero  <kidcrash@freedesktop.org>
	* configure.ac:
	* hw/kdrive/Makefile.am:
	Add pm2 to the build

2004-05-24  Carlos Romero  <kidcrash@freedesktop.org>
	* hw/kdrive/pm2/Makefile.am:
	* hw/kdrive/pm2/glint_regs.h:
	* hw/kdrive/pm2/pm2.c: (pmMapReg), (pmUnmapReg), (pmCardInit),
	(pmCardFini), (pmScreenInit), (pmScreenFini), (pmInitScreen),
	(pmRandRSetConfig), (pmRandRInit), (pmFinishInitScreen),
	(pmPreserve), (pmRestore), (pmEnable), (pmDisable), (pmDPMS):
	* hw/kdrive/pm2/pm2.h:
	* hw/kdrive/pm2/pm2_draw.c: (pmWait), (pmPrepareSolid), (pmSolid),
	(pmDoneSolid), (pmPrepareCopy), (pmCopy), (pmDoneCopy),
	(pmDrawInit), (pmDrawEnable), (pmDrawDisable), (pmDrawFini),
	(pmDrawSync):
	* hw/kdrive/pm2/pm2stub.c: (InitCard), (InitOutput), (InitInput),
	(ddxUseMsg), (ddxProcessArgument):
	Initial import of permedia2 driver

2004-05-20  Keith Packard  <keithp@keithp.com>

	* composite/compinit.c: (compFindVisuallessDepth),
	(compAddAlternateVisuals), (compScreenInit):
	* composite/compint.h:
	* composite/compwindow.c: (compIsAlternateVisual),
	(compImplicitRedirect):
	Allow for multiple composite-based visuals, then
	add an RGB24 visual in addition to the ARGB32 one.  This
	allows 'glitz' to run on top of any X server using mesa.

	* hw/kdrive/src/kdrive.c: (KdSetPixmapFormats):
	Switch to using 32bpp for depth 24 pixmaps (even when
	the frame buffer is not depth 24).

2004-05-20  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/mach64/mach64draw.c: (mach64Setup):
	Miscomputing pitch in 24bpp modes because of rounding errors.

2004-05-19  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/mach64/mach64draw.c: (mach64Setup), (mach64DoneSolid),
	(mach64DoneCopy):
	Fix SYNC_ALWAYS (debugging) code to use mach64WaitIdle instead of
	KdCheckSync -- the boolean used in the latter won't be set yet.
	
	* hw/kdrive/src/kaa.c: (kaaCreatePixmap):
	Oops.  == instead of =.
	
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/kpict.c: (KdCheckRasterizeTrapezoid),
	(KdPictureInitAsync):
	Must sync hardware before rasterizing trapezoids in case the
	mask is in off-screen memory and has just been erased.  Yes,
	it is silly to place masks in off-screen memory.  That's a separate
	issue.

2004-05-19  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/src/kaa.c: (kaaPixmapUseScreen), (kaaPixmapUseMemory),
	(kaaCreatePixmap):
	Pin header-only pixmaps in memory.
	
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/koffscreen.c: (KdOffscreenKickOut),
	(KdOffscreenAlloc), (KdOffscreenSwapOut), (KdOffscreenFree):
	Off-screen reallocation could have used a stale pointer.

	* hw/kdrive/vesa/vesa.c: (vesaScreenInitialize),
	(vesaComputeFramebufferMapping), (vesaMapFramebuffer),
	(vesaUnmapFramebuffer), (vesaRandRSetConfig), (vesaEnable):
	* hw/kdrive/vesa/vesa.h:
	Separate framebuffer mapping computation from actual
	frame buffer mapping.  Now map the frame buffer from
	vesaEnable so that VT switch shares the same
	mapping code.  This makes sure any shadow framebuffer
	is allocated again.

2004-05-17  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/Makefile.am:
	* hw/kdrive/ati/ati.c: (ATICardInit), (ATIScreenInit),
	(ATIScreenFini), (ATIMapReg), (ATIUnmapReg), (ATIInitScreen),
	(ATILog2), (ATIIsAGP), (R300CGWorkaround):
	* hw/kdrive/ati/ati.h:
	* hw/kdrive/ati/ati_cursor.c: (ATIMoveCursor),
	(ATIAllocCursorColors), (ATISetCursorColors), (ATIRecolorCursor),
	(ATILoadCursor), (ATIUnloadCursor), (ATIRealizeCursor),
	(ATIUnrealizeCursor), (ATISetCursor), (ATIQueryBestSize),
	(ATICursorEnable), (ATICursorDisable), (ATICursorInit),
	(ATICursorFini):
	* hw/kdrive/ati/ati_dma.c: (ATIDebugFifo), (ATIUploadMicrocode),
	(ATIFlushPixelCache), (ATIEngineReset), (ATIWaitAvailMMIO),
	(ATIGetAvailPrimary), (ATIWaitAvailPrimary), (ATIWaitIdle),
	(ATIGetDMABuffer), (ATIDispatchPacket3MMIO),
	(ATIDispatchIndirectMMIO), (R128DispatchIndirectPDMA),
	(RadeonDispatchIndirectPDMA), (R128DispatchIndirectDMA),
	(ATIFlushIndirect), (ATIInitAGP), (ATIFiniAGP), (ATIPseudoDMAInit),
	(ATIPseudoDMAFini), (ATIDMAInit), (ATIDMAFini), (ATIDMASetup),
	(ATIDMATeardown):
	* hw/kdrive/ati/ati_dma.h:
	* hw/kdrive/ati/ati_draw.c: (ATIDrawSetup), (RadeonSwitchTo2D),
	(RadeonSwitchTo3D), (ATIGetDatatypeBpp), (ATIGetOffsetPitch),
	(ATIGetPixmapOffsetPitch), (ATIPrepareSolid), (ATISolid),
	(ATIDoneSolid), (ATIPrepareCopy), (ATICopy), (ATIDoneCopy),
	(ATIUploadToScreen), (ATIUploadToScratch), (ATIBlockHandler),
	(ATIDrawInit), (ATIDrawEnable), (ATIDrawDisable), (ATIDrawFini),
	(ATIDrawSync):
	* hw/kdrive/ati/ati_draw.h:
	* hw/kdrive/ati/ati_dri.c: (ATIInitVisualConfigs),
	(ATIDRIInitGARTValues), (ATIDRIAddAndMap), (ATIDRIAgpInit),
	(ATIDRIPciInit), (R128DRIKernelInit), (RadeonDRIKernelInit),
	(ATIDRIBufInit), (ATIDRISwapContext), (ATIDRIScreenInit),
	(R128DRIFinishScreenInit), (RadeonDRIFinishScreenInit),
	(ATIDRIFinishScreenInit), (ATIDRICloseScreen), (ATIDRIDMAStart),
	(ATIDRIDMAStop), (ATIDRIDispatchIndirect), (ATIDRIGetBuffer):
	* hw/kdrive/ati/ati_microcode.c:
	* hw/kdrive/ati/ati_reg.h:
	* hw/kdrive/ati/ati_video.c: (ATIStopVideo), (ATISetPortAttribute),
	(ATIGetPortAttribute), (ATIQueryBestSize), (ATIClipVideo),
	(R128DisplayVideo), (RadeonDisplayVideo), (ATIVideoSave),
	(ATIPutImage), (ATIReputImage), (ATIQueryImageAttributes),
	(ATISetupImageVideo), (ATIInitVideo), (ATIFiniVideo):
	* hw/kdrive/ati/r128_composite.c: (R128GetDatatypePict),
	(R128PrepareBlend), (R128Blend), (R128DoneBlend),
	(R128CheckCompositeTexture), (R128CheckComposite),
	(R128TextureSetup), (R128PrepareComposite), (R128Composite),
	(R128DoneComposite):
	* hw/kdrive/ati/radeon_composite.c: (RadeonGetDestFormat),
	(R100CheckCompositeTexture), (R100TextureSetup),
	(R100CheckComposite), (R100PrepareComposite),
	(R200CheckCompositeTexture), (R200TextureSetup),
	(R200CheckComposite), (R200PrepareComposite), (RadeonComposite),
	(RadeonDoneComposite):
	Overhaul of the ATI driver:
	- Add monochrome hardware cursor support.
	- Try to auto-detect AGP support for DRI on Radeons.  And fail.
	  Detect it properly on R128.
	- Set up card for pseudo-DMA if possible.  Convert 2D rendering
	  code to prepare DMA packets only.  Use generic code to decode
	  DMA packets to MMIO if PDMA is unavailable.  Add WIP code to
	  support "real" DMA without DRM support.
	- Dispatch pending DMA commands when the server sleeps.  Otherwise
	  some things, such as typing in an xterm, wouldn't show up for a
	  time.
	- Fix Radeon Composite acceleration in many ways, and add Rage 128
	  Composite acceleration.  Disable them both due to
	  still-not-understood issues they have.  They fail with In, Out,
	  AtopReverse, and Xor, and text rendering is strange.
	- Add textured XV support for R100 and Rage 128.  No brightness/sat
	  controls, but it does support multiple ports, and cooperates with
	  Composite.
	- Add WIP code for hostdata uploads.
	- Many cleanups and fixes.

2004-05-17  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaa.c:
	* hw/kdrive/src/kaa.h:
	Make kaaMoveInPixmap public.  This will be used by the ATI
	driver's xvideo support to ensure that the destination is
	in framebuffer.

2004-05-17  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaapict.c: (kaaTryDriverComposite):
	* hw/kdrive/src/kdrive.h:
	Add new CheckComposite hook.  This allows a driver to avoid
	the migration of pixmaps for a Composite operation if the
	operation can't be supported.  This hook is optional.

2004-05-13  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaa.c: (kaaLog2), (kaaPixmapAllocArea):
	* hw/kdrive/src/kaa.h:
	* hw/kdrive/src/kdrive.h:
	Add new flag, KAA_OFFSCREEN_ALIGN_POT, which tells KAA to
	align pixmap pitches to a power-of-two number of bytes.
	Useful for Render acceleration on older cards.

2004-05-13  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaa.c: (kaaPixmapUseScreen):
	Don't let the visible screen get "migrated" offscreen, which
	manifests itself as a hang.

	Reported by:    Ginokas <ginokas@free.fr>

2004-05-13  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kxv.c: (KdXVCopyPackedData), (KdXVCopyPlanarData):
	* hw/kdrive/src/kxv.h:
	Add generic functions for copying packed/planar XV data, copied
	from mach64.

2004-05-13  Keith Packard  <keithp@keithp.com>

	* composite/compinit.c: (compAddArgbVisual):
	Follow GLX in setting ARGB visual nplanes to 24.
	
	* hw/kdrive/linux/mouse.c: (MouseRead):
	Retry current mouse protocol when sync is lost

2004-05-13  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/mach64/Makefile.am:
	* hw/kdrive/mach64/fourcc.h:
	* hw/kdrive/nvidia/Makefile.am:
	* hw/kdrive/nvidia/fourcc.h:
	* hw/kdrive/src/Makefile.am:
	* hw/kdrive/src/fourcc.h:
	Move fourcc.h to a generic location in src/.

2004-05-13  Eric Anholt  <anholt@FreeBSD.org>

	* xkb/Makefile:
	* xkb/Makefile.in:
	Remove generated Makefile/Makefile.in that got committed with the
	Xorg import.

2004-05-13  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/vesa/vesa.c: (vesaMapFramebuffer):
	There's no need to explicitly set softCursor -- kdrive handles this
	if the cursor hooks aren't set.

2004-05-13  Eric Anholt  <anholt@FreeBSD.org>

	* fb/fbcompose.c: (fbCombineMaskAlphaC), (fbCombineAtopC),
	(fbCombineXorC), (fbCombineSaturateU), (fbCombineSaturateC),
	(fbCombineDisjointGeneralC), (fbCombineConjointGeneralC):
	* fb/fbpict.c: (fbComposite):
	* fb/fbpict.h:
	 Fix problems in render fb implementation found by rendercheck:
	- fbCombineSaturate was pointed at fbCombineDisjointOver, instead of
	  fbCombineDisjointOverReverse as it should.  Instead, point
	  fbCombineDisjointOverReverse at fbCombineSaturate (which is likely
	  to be faster).
	- fix previously-unused fbCombineSaturate implementation.
	- fbCombineMaskAlphaC was just a copy of fbCombineMaskValueC.  Make
	  it do what it's supposed to (return a cs.alpha).
	- fbCombineAtopC didn't invert the source alpha value.
	- fix copy'n'paste errors in fbCombine(Dis/Con)jointGeneralC, also
	  source alpha wasn't treated in a component fashion.
	- fbCompositeSrc_8888* didn't handle when the source lacks an alpha
	  channel.  Rather than adding that and possilby slowing down the
	  (normal) alpha case, don't let x8r8g8b8/x8b8g8r8 Pictures be used
	  in fbCompositeSrc_8888* because Over with one of these is just Src.

2004-05-13  Eric Anholt  <anholt@FreeBSD.org>

	* configure.ac:
	Fix DRI build of xserver after xorg import:
	It's the XF86DRI extension, not XORGDRI.

2004-05-06  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/fbdev/fbdev.c: (fbdevScreenInitialize):
	Use current resolution by default, change rate to 75
	to match fbdevModeSupported cut-off (?).
	Glenn McGrath <glennm@hydrix.com>

2004-05-03  Daniel Stone  <daniel@freedesktop.org>

	* configure.ac:
	* hw/xorg/Makefile.am:
	* hw/xorg/drivers/Makefile.am:
	* hw/xorg/drivers/fbdev:
	* hw/xorg/input/Makefile.am:
	* hw/xorg/input/mouse:
	Import fbdev and mouse drivers.

	* hw/xorg/common/xf86cmap.c:
	Test for whether pmap is !NULL, rather than just blindly calling
	CMapReinstallMap. This seems to break things.

	While the display is very, very blue, it actually works. You can run
	programs with it. It looks odd, but you can move the mouse, input
	data, whatever.

2004-04-28  Keith Packard  <keithp@keithp.com>

	* configure.ac:
	* hw/kdrive/Makefile.am:
	* hw/kdrive/fake/Makefile.am:
	* hw/kdrive/fake/fake.c: (fakeInitialize), (fakeCardInit),
	(fakeModeSupported), (fakeScreenInitialize), (fakeScreenInit),
	(fakeWindowLinear), (fakeMapFramebuffer), (fakeSetScreenSizes),
	(fakeUnmapFramebuffer), (fakeSetShadow), (fakeRandRGetInfo),
	(fakeRandRSetConfig), (fakeRandRInit), (fakeCreateColormap),
	(fakeInitScreen), (fakeFinishInitScreen), (fakeCreateResources),
	(fakePreserve), (fakeEnable), (fakeDPMS), (fakeDisable),
	(fakeRestore), (fakeScreenFini), (fakeCardFini), (fakeGetColors),
	(fakePutColors):
	* hw/kdrive/fake/fake.h:
	* hw/kdrive/fake/fakeinit.c: (InitCard), (InitOutput), (InitInput),
	(ddxUseMsg), (ddxProcessArgument), (OsVendorInit):
	* hw/kdrive/fake/kbd.c: (FakeKeyboardLoad), (FakeKeyboardInit),
	(FakeKeyboardFini), (FakeKeyboardLeds), (FakeKeyboardBell):
	* hw/kdrive/fake/mouse.c: (MouseInit), (MouseFini):
	* hw/kdrive/fake/os.c: (FakeInit), (FakeEnable), (FakeSpecialKey),
	(FakeDisable), (FakeFini):
	Add completely fake X server -- draws to allocated buffer,
	has no keyboard or mouse.

2004-04-26  Daniel Stone  <daniel@freedesktop.org>
	* configure.ac:
	* hw/xorg/drivers/ati/Makefile.am:
	Stabs at extra #define's to get things working, hopefully.

2004-04-25  Daniel Stone  <daniel@freedesktop.org>

	* hw/xizzle:
	* hw/xorg:
	* configure.ac:
	* Makefile.am:
	Xizzle is dead - long live Xorg. Do a reimport, and don't change stuff
	this time. Use --enable-xorgserver instead of --enable-xizzleserver.

	* Xext/*.c:
	* Xext/Makefile.am:
	* Xi/Makefile.am:
	* Xi/*.c:
	* xkb:
	* os/utils.c:
	* os/log.c:
	Some XFree86 extensions added and/or fixed, including XKB and Xi (both
	needed for an Xorg build).
	Log stuff resolved by building log-based functions with XFree86Server,
	but non-log-based stuff without. Unfortunately, this and other
	conflicts mean that the DIX can't be built for both KDrive and Xorg.

2004-04-20  Daniel Stone  <daniel@freedesktop.org>
	
	* dix/devices.c:
	* dix/dispatch.c:
	* dix/events.c:
	* os/utils.c:
	#include "XKBsrv.h" -> #include <X11/extensions/XKBsrv.h>

2004-03-19  Keith Packard  <keithp@keithp.com>

	* render/render.c: (ProcRenderAddGlyphs):
	Multiple glyphs in RenderAddGlyphs cause malloc() corruption
	Bug #349, smcc@MIT.EDU (Stephen McCamant)

2004-03-19  Carlos Romero  <kidcrash@bellsouth.net>
	* configure.ac:
	* hw/xizzle/Makefile.am:
	* hw/xizzle/drivers/ati/Makefile.am:
	* hw/xizzle/drivers/ati/atimach64.c:
	* hw/xizzle/drivers/ati/atimach64xv.c:
	* hw/xizzle/drivers/ati/atiscreen.c: (ATIScreenInit):
	* hw/xizzle/drivers/ati/ativga.c:
	* hw/xizzle/os-support/bus/Makefile.am:
	Xizzle server build fixes

2004-03-18  Carlos Romero  <kidcrash@bellsouth.net>
	* configure.ac:
	* hw/xizzle/drivers/ati/Makefile.am:
	minor build fixes

2004-03-17  Harold L Hunt II <harold@codeweavers.com>
	* os/access.c:
	Prune 0.0.0.0 addresses returned by the OS.

2004-03-17  Harold L Hunt II <harold@codeweavers.com>
	* os/utils.c:
	* os/xdmcp.c:
	Replace call pairs to ErrorF and exit(1) with single call to
	FatalError to allow DDX layer to do its own thing in
	OsVendorFatalError.

2004-03-14  Keith Packard  <keithp@keithp.com>

	* configure.ac:
	Don't need 'xi' package when using XInput -- that's the client lib.

2004-03-14  Keith Packard  <keithp@keithp.com>

	* hw/xizzle/Makefile.am:
	* hw/xizzle/dummy.c:
	Yuck.  Force a reference to miRegisterRedirectBorderClipProc
	from 'dummy.c'.  No, I don't understand why this is needed.

2004-03-10  Keith Packard  <keithp@keithp.com>

	* render/render.c: (ProcRenderCreateCursor):
	Extra ';' would cause failure when creating cursors with non-ARGB32
	pictures (Kjartan Maraas)

2004-03-10  Daniel Stone  <daniel@freedesktop.org>
	* *.c:
	* *.h:
	Get rid of all references to SCO.

	* hw/xizzle/*/Makefile.am:
	Change SDK include dir to $(includedir)/xizzle.
	Add SDK libs where necessary.

	* hw/xizzle/Makefile.am:
	Reformat to be nicer and easier to shuffle around; also, fix lib
	ordering so we get so much closer to the elusive final link.
	Shuffle common/xf86Init.c into libxizzle.a.

	* hw/xizzle/common/Makefile.am:
	Fix a couple of early snafus - s/BUILDXI/XINPUT/, et al; make the SDK
	stuff conditional as needed; fix the SBus includes.
	Break libxizzlecommon.a into libxizzlecore.a, libxizzlecommon.a, and
	libxizzlemode.a (in link order).

	* hw/xizzle/common/xf86DPMS.c:
	Make DPMS an essential part of the build.

	* hw/xizzle/os-support/Makefile.am:
	Name library os-support/libxizzleos.a, not
	os-support/foo/libxizzlefoo.a.
	Clean up ARCH_SOURCES so it's always initialised to something.

	* hw/xizzle/os-support/shared/libc_wrapper.c:
	* hw/xizzle/os-support/xf86_ansic.h:
	Get rid of xf86strlcat() and xf86strlcpy().

	* hw/xizzle/os-support/linux/Makefile.am:
	Move linked libraries to _LIBADD, which somehow escaped my attention.
	Make inclusion of drm/libxizzlelinuxdrm.a dependent on DRI.

	* hw/xizzle/vbe/vbe.c:
	s/VERSION/VBE_VERSION/;

	* hw/xizzle/Xi:
	Axe this redundant dir.

	* configure.ac:
	All Xizzle-specific: axe hw/xizzle/Xi, shuffle link order, fix list of
	required modules to be vaguely sane, add some pertinent libs/incs.

2004-03-09  Daniel Stone  <daniel@freedesktop.org>
	* include/regionstr.h:
	* include/extnsionst.h:
	Add a couple of small GC vector/et al elements from XFree86.

	* configure.ac:
	Fix the build, really. I think.

	* hw/xizzle/common/xf86Config.c:
	* hw/xizzle/driver/confdrv.sh:
	Get part-way to resolving the GetDriverlistFromCompile() mess.

2004-03-08  Daniel Stone  <daniel@freedesktop.org>
	* hw/xizzle:
	Move this in to actually be a first-class citizen.

	* configure.ac:
	Fix the build, default to KDrive.

2004-03-07  Daniel Stone  <daniel@freedesktop.org>
	* hw/xfree86, hw/xizzle:
	Renaming the XFree86 DDX to 'Xizzle' per Mike Harris's suggestion. There
	was too much confusion.

	* configure.ac:
	Drag the Xizzle stuff in (this was originally done by accident); ensure
	that KDrive is the default to prevent confusion. Hell, Xizzle doesn't
	even *build* yet.

	* AUTHORS:
	Update things a little - credit Jaymz and Anders for KDrive, update
	Xizzle status.

	* README:
	Update Xizzle status.

	* hw/xizzle:
	This thing is in constant flux - a few more compile fixes, plus a
	slight loader overhaul.

2004-03-07  Daniel Stone  <daniel@freedesktop.org>
	* Xext/Makefile.am, Xext/panoramiX*:
	Fix up the PanoramiX build so it actually works and does something
	useful.

2004-03-03  Ryan Lortie  <desrt@desrt.ca>
	* os/utils.c:
	Make VerifyDisplayName only accept numeric server numbers.

	* mi/mieq.c:
	Correct code to ensure out-of-order events are not enqueued (the
	'last event time' variable was never being updated)

2004-02-28  Jaymz Julian  <jaymz@artificial-stupidity.net>
	* configure.ac:
	* hw/kdrive/Makefile.am:
	* hw/kdrive/sdl/Makefile.am:
	* hw/kdrive/sdl/sdl.c:
	A simple SDL based X server for running X on X.  Not for
	production use, of course. --enable-xsdlserver in ./configure
	should make it happen.

2004-02-26  Keith Packard  <keithp@keithp.com>

	* miext/damage/damage.c: (damageDamageRegion):
	Fix offsets for pixmap damage so that damage to a backing pixmap
	gets reported with the right coordinates to a window damage monitor

2004-02-23  Jaymz Julian  <jaymz@artificial-stupidity.net>
	* ChangeLog:
	Fix Formatting in Changelog to be correct
	* fb/fbcompose.c:
	Disable the unaligned 24bit read code for now - it worked under all
	circumstances except for one rare case, where an overread by one byte
	would cause a segfault (think reading the last pixel of a 24bpp plane
	with an odd number of pixels).  It should be possible to easily work
	this and still have the performance boost it offered, so I've just
	commented the code for now, but that's a job for another day.

2004-02-22  Warren Turkal <wt@midsouth.rr.com>
	* Doxyfile:
	add Doxygen config file

2004-02-17  Warren Turkal <wt@midsouth.rr.com>
	completely get rid of NeedNestedPrototypes
	completely get rid of NeedVarargsPrototypes
	remove a lot of NeedFunctionPrototypes
	ansify many function declarations

2004-02-09  Jaymz Julian  <jaymz@artificial-stupidity.net>
	* configure.ac:
	Make --enable-res agree with it's help option (help said
	--enable-res, but configure accepted --enable-xres.  Changed help to
	match the command, to avoid breaking people's existing configurations,
	contrary to Glenn McGrath's patch - but thanks :)

2004-02-05  Jaymz Julian  <jaymz@artificial-stupidity.net>
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/kinput.c:
	* hw/kdrive/itsy/itsy.c:
	* hw/kdrive/linux/linux.c:
	* hw/kdrive/vxworks/vxworks.c:
	Support in kdrive's OS layer for polled input devices as well as
	file based devices

2004-02-04  Jim Gettys  <jg@freedesktop.org>

	* AUTHORS:
	A bit more explaining about drives, or the lack thereof, in
	this package.

2004-02-05  Jaymz Julian  <jaymz@artificial-stupidity.net>
	* hw/kdrive/src/kdrive.c:
	More NULL checks.  These ones are more useful than the last (which
	just made debugging a bunch of problems easier), since you can
	implement less in the basic simplest case driver now (not that i'm
	lazy, mind :-p)

2004-02-05  Jaymz Julian  <jaymz@artificial-stupidity.net>
	* dix/main.c:
	* mi/mipointer.c:
	* mi/midispcur.c:
	I like cows.  And NULL checks :).

2004-02-04  Jaymz Julian  <jaymz@artificial-stupidity.net>
	* hw/xnest/Args.c:
	* hw/xnest/Color.c:
	* hw/xnest/Cursor.c:
	* hw/xnest/Display.c:
	* hw/xnest/Events.c:
	* hw/xnest/Font.c: 
	* hw/xnest/GC.c:
	* hw/xnest/GCOps.c:
	* hw/xnest/GetTime.c:
	* hw/xnest/Handlers.c: 
	* hw/xnest/Init.c:
	* hw/xnest/Keyboard.c 
	* hw/xnest/Pixmap.c:
	* hw/xnest/Pointer.c:
	* hw/xnest/Screen.c:
	* hw/xnest/TestExt.c:
	* hw/xnest/Visual.c:
	* hw/xnest/Window.c:
	* hw/xnest/os2Stub.c:
	Make the xnest server honour config.h if it's available, making it not
	segv on startup when built using autoconf (doesn't, unfortantly, make
	it not completly useless :)

2004-02-04  Jaymz Julian  <jaymz@artificial-stupidity.net>
	* fb/fbblt.c:
	Change the fast blitter to check that src, dst, and width
	are aligned to 8 bit boundries instead of explicitly checking
	for 8, 16, 24, 32 bit, which allows some speedup in certain
	4bpp cases (and probably 1bpp, but I couldn't force my computer
	into that mode, so I don't know if that is helped or not).  
	Also, add upsidedown support to said code.

2004-02-03  Jim Gettys  <jg@freedekstop.org>

	* AUTHORS: Get a first cut at an author's file in place.  
	  Needs more work.

2004-01-24  Eric Anholt  <anholt@FreeBSD.org>

	* GL/.cvsignore:
	* GL/Makefile.am:
	* GL/glx/.cvsignore:
	* GL/glx/Makefile.am:
	* GL/mesa/.cvsignore:
	* GL/mesa/Makefile.am:
	* hw/xwin/.cvsignore:
	- Actually add GLX Makefile.ams. (oops)
	- Add some missing .cvsignores.

2004-01-24  Eric Anholt  <anholt@FreeBSD.org>

	* dri/dri.c:
	Fix a warning (prototype missing).

2004-01-24  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_dri.c:
	Disable GLX visuals code on !GLXEXT, and remove a useless prototype.

2004-01-24  Eric Anholt  <anholt@FreeBSD.org>

	* Makefile.am:
	* configure.ac:
	* dri/Makefile.am:
	* dri/dri.c: (DRICreateDummyContext), (DRICreateContext):
	* include/Makefile.am:
	- Connect GLX files to the build after repocopy from DRI CVS.  Controlled
	  by --enable-glx switch to ./configure.  GLX won't work until an upcoming
	  commit to fb/
	- Fix up dri/ to handle building with GLX.

2004-01-24  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati.c: (ATIScreenInit), (ATILog2):
	* hw/kdrive/ati/ati.h:
	* hw/kdrive/ati/ati_dri.c: (ATIInitVisualConfigs), (ATIDRIAgpInit),
	(R128DRIKernelInit), (RadeonDRIKernelInit), (ATIDRISwapContext),
	(ATIDRIScreenInit), (ATIDRIFinishScreenInit):
	* hw/kdrive/ati/radeon_composite.c:
	- Add glx visuals code based on XFree86's Radeon driver.
	- Reserve areas for back/depth/span when USING_DRI && GLXEXT.  This
	  would be better in a TransitionTo3d, but we'd need to work with
	  the offscreen memory manager for that.
	- Misc. fixes to ati_dri.c for DRI+GLX.  Needs more work still.

2004-01-24  Eric Anholt  <anholt@FreeBSD.org>

	* configure.ac:
	DRI is off by default, so the configure option should be --enable-dri.

2004-01-24  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.h:
	Oops, turn fallback output back off.

2004-01-24  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_dri.c: (ATIDRIInitGARTValues),
	(ATIDRIAddAndMap), (ATIDRIAgpInit), (ATIDRIPciInit),
	(ATIDRIBufInit), (ATIDRIScreenInit), (RadeonDRIFinishScreenInit):
	Whitespace cleanup.

2004-01-15  Keith Packard  <keithp@keithp.com>
	* hw/kdrive/mach64/mach64.h:
	Oops, lost a diff needed for the non-screen format pixmap
	code

2004-01-15  Keith Packard  <keithp@keithp.com>
	* hw/kdrive/vesa/vm86.c: (Vm86Setup), (Vm86Cleanup):
	Fix up some mis-used variable names

2004-01-15  Keith Packard  <keithp@keithp.com>
	* hw/kdrive/mach64/mach64draw.c: (mach64Setup):
	Accelerate non-screen format pixmaps.

2004-01-15  Keith Packard  <keithp@keithp.com>
	* fb/fbpixmap.c: (fbValidateDrawable):
	Oops -- using uninitialized variable in FB_DEBUG code.

2004-01-15  Keith Packard  <keithp@keithp.com>
	* fb/fbpict.c: (fbCompositeSolidMask_nx8x0888),
	(fbCompositeSolidMask_nx8x0565),
	(fbCompositeSolidMask_nx8888x0565),
	(fbCompositeSolidMask_nx8888x0565C), (fbCompositeSrc_8888x0565),
	(fbCompositeTrans_0565xnx0565), (fbCompositeTrans_0888xnx0888),
	(fbCompositeSrcSrc_nxn), (fbComposite), (fbPictureInit):
	* fb/fbpict.h:
	Fix up the fast-path compositing operators; those are useful
	for sources without alpha, but can't be used for sources with
	alpha.  Also, replaced fbCompositeSrcSrc_nxn with call to
	fbBlt as this function must handle 1, 4, 8, 16, 24, 32 bpp
	objects.  Would be nice to optimize fbBlt for common cases
	involving 8, 16, 24 and 32bpp.

2004-01-15  Keith Packard  <keithp@keithp.com>
	* dix/dixutils.c: (ISOLatin1ToLower), (CompareISOLatin1Lowered):
	* include/dix.h:
	Add CompareISOLatin1Lowered.
	* include/picturestr.h:
	* render/filter.c: (PictureGetFilterId), (PictureAddFilter),
	(PictureSetDefaultFilters), (SetPictureFilter):
	Change filter management to permit varargs filters.
	Use CompareISOLatin1Lowered to make filter name tests
	case-insensitive (as required by spec).
	
2004-01-15  Keith Packard  <keithp@keithp.com>
	* dix/dispatch.c: (Dispatch):
	FlushIfCriticalOutputPending in dispatch loop to flush out
	damage events quickly.

2004-01-15  Keith Packard  <keithp@keithp.com>
	* composite/compinit.c: (compAddArgbVisual):
	* dix/colormap.c:
	* fb/fbcmap.c: (fbInitVisuals):
	* include/scrnintstr.h:
	Add alphaMask to visual so that pixel allocations for ARGB
	visuals can include an opaque pixel value.

2004-01-14  Anders Carlsson  <andersca@gnome.org>

	* hw/kdrive/src/kmode.c: Add IPAQ modeline by Dennis Noordsij.

2004-01-12  Harold L Hunt II <huntharo@msu.edu>
	* configure.ac:
	* hw/Makefile.am:
	* hw/xwin/Makefile.am: Check in initial configuration file changes
	to enable building Cygwin/X (XWin Server).

2004-01-10  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c:
	* hw/kdrive/ati/r128_blendtmp.h:
	Support 1x1 repeat sources in R128's Blend.

2004-01-09  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati.c: (ATICardInit):
	* hw/kdrive/ati/ati.h:
	* hw/kdrive/ati/ati_draw.c:
	* hw/kdrive/ati/ati_draw.h:
	* hw/kdrive/ati/ati_dri.c: (ATIDRIScreenInit), (ATIDRICloseScreen):
	Change PCI ID information field to be one of r128, r100, r200, r300.
	This is all the information we need so far.  Put that information
	into atic, and use it correctly in the code (unlike before).

2004-01-08  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaapict.c: (kaaTryDriverComposite):
	Use the scratch area for Composite when one of src or dst is
	in memory.

2004-01-08  Eric Anholt  <anholt@FreeBSD.org>

	* Xext/Makefile.am:
	Add xvmcext.h to source list so distcheck succeeds.

2004-01-09  Amaury Jacquot <sxpert@esitcom.org>

	* configure.ac:
	make Xv enabled by default

2004-01-08  Eric Anholt  <anholt@FreeBSD.org>

	* configure.ac:
	Oops, --enable-composite should be --disable-composite in description now.

2004-01-08  Eric Anholt  <anholt@FreeBSD.org>

	* configure.ac:
	Enable composite extension by default.

2004-01-08  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c:
	* hw/kdrive/ati/radeon_composite.c: (RadeonComposite):
	Compile fixes for non-DRI case and for non-C99 compiler.

2004-01-08  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati.c: (ATIScreenInit):
	* hw/kdrive/ati/ati.h:
	* hw/kdrive/ati/ati_draw.c: (ATIUploadToScreen),
	(ATIUploadToScratch), (R128GetDatatypePict), (ATIGetDatatypeBpp):
	* hw/kdrive/src/kaa.c: (kaaMoveInPixmap):
	* hw/kdrive/src/kaapict.c: (kaaTryDriverBlend):
	* hw/kdrive/src/kdrive.h:
	- Add a new UploadToScratch kaa hook for putting the data for a single
	  pixmap into temporary offscreen storage.  Subsequent UploadToScratch
	  may clobber the data of previous ones.  This allows hardware
	  acceleration of composite operations on glyphs.
	- Add a new UploadToScreen kaa hook for doing the actual moving of
	  data to framebuffer.  This would allow us to do things like hostdata
	  blits or memcpy to agp and then blit.
	- Add an UploadToScreen on ATI which is just memcpy, but which
	  will be replaced with a hostdata blit soon.
	- Add UploadToScratch on ATI and reserve 64k of scratch space.  This
	  provided a 3x speedup of rgb24text on my Radeon.

2004-01-07  Eric Anholt  <anholt@FreeBSD.org>

	* configure.ac:
	* hw/kdrive/Makefile.am:
	Disconnect the sis300 driver.  I've never managed to fix it,
	and it breaks the build on PPC.

2004-01-06  Eric Anholt  <anholt@FreeBSD.org>

	reviewed by: <delete if not using a buddy>

	* hw/kdrive/ati/radeon_composite.c: (RadeonPrepareComposite),
	(RadeonComposite):
	Speed things up slightly by removing Z values from emitted
	vertices and by emitting as a tri fan rather than a tri list.
	A rect list would save an additional vertex (out of 4) per
	rectangle, but there's no measurable speed difference and
	the tri fan may be useful when transforms come into play.

2004-01-05  Eric Anholt  <anholt@FreeBSD.org>

	* fb/fb.h:
	Fix a swapping of drawable.[xy] in #ifdef COMPOSITE

2004-01-04  Eric Anholt  <anholt@FreeBSD.org>

	* include/picture.h:
	Fix PICT_x4r4g4b4 and PICT_xb4g4r4 definitions' alpha.

2004-01-04  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaapict.c: (kaaTryDriverSolidFill),
	(kaaTryDriverBlend), (kaaTryDriverComposite):
	- Don't forget to UNINIT miComputeCompositeRegion's regions
	- Fix a bit of whitespace nearby.

2004-01-04  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c:
	* hw/kdrive/ati/radeon_composite.c: (RadeonTextureSetup):
	- Correctly set the texture coordinate set source for the
	  second texture unit.
	- Re-enable Radeon's Composite accel now that fonts work
	  again.

2004-01-03  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaapict.c: (kaaPrintCompositeFallback),
	(kaaTryDriverComposite), (kaaComposite):
	- Call appropriate Done function for Composite.
	- Don't allow src transforms for Copy acceleration.
	- Minor whitespace fixes.

2004-01-03  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c:
	* hw/kdrive/ati/radeon_composite.c: (RadeonTextureSetup),
	(RadeonPrepareComposite):
	- Add more Composite operations, including Saturate, to
	  Radeon Composite accel.  I don't 100% trust that the math
	  works for Saturate, but I can't tell from existing information.
	- Fix texture pitch fallback checks.
	- Fallback when src or mask have transforms.
	- Disable Radeon Composite accel until the offset thing is fixed.
	- Set offscreenPitch to 64 on Radeon thanks to new information
	  and a kaa fix.  Fixes acceleration at width!=1024.

2004-01-03  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kaapict.c: (kaaTryDriverSolidFill),
	(kaaTryDriverBlend), (kaaTryDriverComposite), (kaaComposite):
	Split the various attempts at accelerating Composite into
	separate functions.  Along with making things more readable,
	it fixes a problem where the coordinates would get messed up
	if acceleration failed due to things like pixmaps being in
	the wrong locations.

2004-01-03  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/koffscreen.c: (KdOffscreenAlloc),
	(KdOffscreenFree):
	Actually align the offset of allocated offscreen areas.

2003-12-31  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/radeon_composite.c: (RadeonTextureSetup):
	Some strange \240 character snuck into the original commit of
	this file.

2003-12-30  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_drawtmp.h:
	There's never a copy between different depths. Remove the check.

2003-12-30  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/Makefile.am:
	* hw/kdrive/ati/ati_draw.c: (RadeonSwitchTo2D), (RadeonSwitchTo3D):
	* hw/kdrive/ati/ati_draw.h:
	* hw/kdrive/ati/ati_drawtmp.h:
	* hw/kdrive/ati/ati_reg.h:
	* hw/kdrive/ati/radeon_composite.c: (ATILog2),
	(RadeonTextureSetup), (RadeonPrepareComposite), (RadeonComposite),
	(RadeonDoneComposite), (RadeonPrepareBlend), (RadeonBlend),
	(RadeonDoneBlend):
	* hw/kdrive/src/kaapict.c: (kaaComposite):
	* hw/kdrive/src/kdrive.h:
	- Add new Composite hook for kdrive drivers, which only ensures that
	  the pixmaps are offscreen and don't have alpha maps.  It is the
	  last case checked before going to software fallback
	- Use the new Composite hook in the ati driver to implement
	  acceleration of most Composites that get done in an xcompmgr
	  environment on r100 series cards.  It is only available when using
	  the DRM.  There are still some corruption issues, but the DRI is
	  still non-default and I need to get this into version control.

2003-12-29  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/Makefile.am:
	* hw/kdrive/chips/Makefile.am:
	* hw/kdrive/mga/Makefile.am:
	* hw/kdrive/nvidia/Makefile.am:
	* hw/kdrive/r128/Makefile.am:
	* hw/kdrive/sis300/Makefile.am:
	* hw/kdrive/smi/Makefile.am:
	Add dependency lines so that servers are rebuilt when server
	libraries are changed.

2003-12-28  Eric Anholt  <anholt@FreeBSD.org>

	* Makefile.am:
	* configure.ac:
	* dri/.cvsignore:
	* dri/Makefile.am:
	* dri/dri.c: (DRIDrvMsg), (DRIScreenInit), (DRIFinishScreenInit),
	(DRICloseScreen), (DRIExtensionInit), (DRIReset),
	(DRIQueryDirectRenderingCapable), (DRIOpenConnection),
	(DRIAuthConnection), (DRICloseConnection),
	(DRIGetClientDriverName), (DRICreateContextPriv),
	(DRICreateContextPrivFromHandle), (DRIDestroyContextPriv),
	(DRICreateDummyContext), (DRIDestroyDummyContext),
	(DRICreateContext), (DRIDestroyContext), (DRIContextPrivDelete),
	(DRIClipNotifyAllDrawables), (DRITransitionToSharedBuffers),
	(DRITransitionToPrivateBuffers), (DRITransitionTo3d),
	(DRITransitionTo2d), (DRICreateDrawable), (DRIDestroyDrawable),
	(DRIDrawablePrivDelete), (DRIGetDrawableInfo), (DRIGetDeviceInfo),
	(DRICreateInfoRec), (DRIDestroyInfoRec), (DRIWakeupHandler),
	(DRIBlockHandler), (DRIDoWakeupHandler), (DRIDoBlockHandler),
	(DRISwapContext), (DRIGetContextStore), (DRIWindowExposures),
	(DRITreeTraversal), (DRICopyWindow), (DRIGetSecs),
	(DRIComputeMilliSeconds), (DRISpinLockTimeout), (DRILockTree),
	(DRIValidateTree), (DRIPostValidateTree), (DRIClipNotify),
	(DRIGetDrawableIndex), (DRIGetDrawableStamp),
	(DRIPrintDrawableLock), (DRILock), (DRIUnlock),
	(DRIGetSAREAPrivate), (DRIGetContext), (DRIGetWrappedFuncs),
	(DRIQueryVersion), (_DRIAdjustFrame), (DRIAdjustFrame),
	(DRIOpenFullScreen), (_DRICloseFullScreen), (DRICloseFullScreen),
	(DRIMoveBuffersHelper):
	* dri/dri.h:
	* dri/dristruct.h:
	* dri/sarea.h:
	* dri/xf86dri.c: (XFree86DRIExtensionInit), (XF86DRIResetProc),
	(ProcXF86DRIQueryVersion),
	(ProcXF86DRIQueryDirectRenderingCapable),
	(ProcXF86DRIOpenConnection), (ProcXF86DRIAuthConnection),
	(ProcXF86DRICloseConnection), (ProcXF86DRIGetClientDriverName),
	(ProcXF86DRICreateContext), (ProcXF86DRIDestroyContext),
	(ProcXF86DRICreateDrawable), (ProcXF86DRIDestroyDrawable),
	(ProcXF86DRIGetDrawableInfo), (ProcXF86DRIGetDeviceInfo),
	(ProcXF86DRIOpenFullScreen), (ProcXF86DRICloseFullScreen),
	(ProcXF86DRIDispatch), (SProcXF86DRIQueryVersion),
	(SProcXF86DRIDispatch):
	* dri/xf86dri.h:
	* dri/xf86dristr.h:
	* drm/.cvsignore:
	* drm/Makefile.am:
	* drm/drm.h:
	* drm/drmhash.c: (HashHash), (HashCreate), (HashDestroy),
	(HashFind), (HashLookup), (HashInsert), (HashDelete), (HashNext),
	(HashFirst):
	* drm/libdrm.c: (drmMsg), (drmMalloc), (drmFree), (drmStrdup),
	(drmGetKeyFromFd), (drmGetEntry), (drmMatchBusID), (drmOpenDevice),
	(drmOpenMinor), (drmAvailable), (drmOpenByBusid), (drmOpenByName),
	(drmOpen), (drmFreeVersion), (drmFreeKernelVersion),
	(drmCopyVersion), (drmGetVersion), (drmGetLibVersion),
	(drmFreeBusid), (drmGetBusid), (drmSetBusid), (drmGetMagic),
	(drmAuthMagic), (drmAddMap), (drmRmMap), (drmAddBufs),
	(drmMarkBufs), (drmFreeBufs), (drmClose), (drmMap), (drmUnmap),
	(drmGetBufInfo), (drmMapBufs), (drmUnmapBufs), (drmDMA),
	(drmGetLock), (drmUnlock), (drmGetReservedContextList),
	(drmFreeReservedContextList), (drmCreateContext),
	(drmSwitchToContext), (drmSetContextFlags), (drmGetContextFlags),
	(drmDestroyContext), (drmCreateDrawable), (drmDestroyDrawable),
	(drmAgpAcquire), (drmAgpRelease), (drmAgpEnable), (drmAgpAlloc),
	(drmAgpFree), (drmAgpBind), (drmAgpUnbind), (drmAgpVersionMajor),
	(drmAgpVersionMinor), (drmAgpGetMode), (drmAgpBase), (drmAgpSize),
	(drmAgpMemoryUsed), (drmAgpMemoryAvail), (drmAgpVendorId),
	(drmAgpDeviceId), (drmScatterGatherAlloc), (drmScatterGatherFree),
	(drmWaitVBlank), (drmError), (drmCtlInstHandler),
	(drmCtlUninstHandler), (drmFinish), (drmGetInterruptFromBusID),
	(drmAddContextTag), (drmDelContextTag), (drmGetContextTag),
	(drmAddContextPrivateMapping), (drmGetContextPrivateMapping),
	(drmGetMap), (drmGetClient), (drmGetStats),
	(drmSetInterfaceVersion), (drmCommandNone), (drmCommandRead),
	(drmCommandWrite), (drmCommandWriteRead):
	* drm/libdrm.h:
	* hw/kdrive/ati/Makefile.am:
	* hw/kdrive/ati/ati.c: (make_busid), (ATICardInit),
	(ATIScreenInit):
	* hw/kdrive/ati/ati.h:
	* hw/kdrive/ati/ati_draw.c: (ATIWaitAvailMMIO), (RadeonWaitIdle),
	(R128WaitIdle), (ATIWaitIdle), (ATIDMAStart), (ATIDMAStop),
	(ATIDMADispatchIndirect), (ATIDMAFlushIndirect), (ATIDMAGetBuffer),
	(R128GetDatatypePict), (ATIGetDatatypeBpp), (ATIDoneSolid):
	* hw/kdrive/ati/ati_draw.h:
	* hw/kdrive/ati/ati_drawtmp.h:
	* hw/kdrive/ati/ati_dri.c: (ATILog2), (ATIDRIInitGARTValues),
	(ATIDRIAddAndMap), (ATIDRIAgpInit), (ATIDRIPciInit),
	(R128DRIKernelInit), (RadeonDRIKernelInit), (ATIDRIBufInit),
	(ATIDRIIrqInit), (ATIDRISwapContext), (ATIDRIScreenInit),
	(R128DRIFinishScreenInit), (RadeonDRIFinishScreenInit),
	(ATIDRIFinishScreenInit), (ATIDRICloseScreen):
	* hw/kdrive/ati/ati_dri.h:
	* hw/kdrive/ati/ati_dripriv.h:
	* hw/kdrive/ati/ati_reg.h:
	* hw/kdrive/ati/ati_sarea.h:
	* hw/kdrive/ati/ati_stub.c: (InitCard):
	* hw/kdrive/ati/r128_blendtmp.h:
	* hw/kdrive/ati/r128_common.h:
	* hw/kdrive/ati/r128_sarea.h:
	* hw/kdrive/ati/radeon_common.h:
	* hw/kdrive/ati/radeon_sarea.h:
	* hw/kdrive/src/Makefile.am:
	* hw/kdrive/src/kaa.c: (kaaPixmapAllocArea), (kaaMoveInPixmap),
	(kaaCreatePixmap):
	* hw/kdrive/src/kaa.h:
	* hw/kdrive/src/kaapict.c: (kaaCompositeFallbackPictDesc),
	(kaaPrintCompositeFallback), (kaaGetPixelFromRGBA),
	(kaaGetRGBAFromPixel), (kaaComposite):
	* hw/kdrive/src/kdrive.h:
	* mi/miinitext.c:
	Merge dri-0-1-branch to trunk.  Notable changes:
	- Add libdrm and libdri.  Portions of the DRI extension are stubbed
	  out.
	- Use the DRM in the ATI driver when available.  This provides a
	  minor performance improvement in x11perf, and opens the possibility
	  of using the 3d hardware for acceleration in the future.
	- Implement solid fill acceleration for Composite in KAA.
	- Implement Blend hook for Composite and use it on r128.
	- Fix a bug of mine that resulted in overuse of offscreen memory.
	- Fix many miscellaneous bugs in ATI driver and add PCI IDs.

2003-12-29  Jaymz Julian <jaymz@artificial-stupidity.net>
	* fb/fbpict.c:
	* fb/fbcompose.c:
	C++ comments -> C comments

2003-12-28  Jaymz Julian <jaymz@artificial-stupidity.net>
	* fb/fbpict.c:
	"Clean up own dogshit" aka Fix the unaligned case of 
	fbCompositeTrans_0565xnx0565 to iterate horizontally like it should,
	not just draw the left 1-2 pixels.

2003-12-18  Keith Packard  <keithp@keithp.com>
	* fb/fbblt.c:
	Move FbDeclareMergeRop back above statements to make non c++
	compilers happy.
	
2003-12-22  Jaymz Julian <jaymz@artificial-stupidity.net>
	* fb/fbblt.c:
	* fb/fbpict.c:
	Re-enable the fast simpleblit code, this time checking that bpp is a
	multiple of 8, which is a requirement for it working correctly in all
	cases.
	
2003-12-21  Jaymz Julian <jaymz@artificial-stupidity.net>
	* fb/fbpict.c: 
	Fix the fbCompositeSrcSrc_nxn() looping code to loop to zero, not 
	to xSrc.  This should fix the "my pixmap is too small" issue some 
	where experiencing.

	Updated the changelog for the stuff I forgot to add for the past few
	days.

2003-12-20  Jaymz Julian <jaymz@artifical-stupidity.net>
	* fb/fbpict.c:
	* fb/fbblt.c:
	Add a special case to the fbBlt for the very common case of just blitting
	directly (GXcopy) and not applying any ops.  Profiles show this to be
	significnatly faster, although I'd like to one day change it to be able
	to choose the fastest memcpy() for this system ala xine when it	benchmarks
	on startup (does it still do that?), but i'm reluctant to do that right now, 
	since it means that it can't be inlined, and there'd be a function call
	per line... eew!  (the correct solution is probably 5 blitters or something,
	heh)

	... which was rolled back five minutes later, due to being off by one
	when compiled with optimizations turned on.

2003-12-19  Jaymz Julian <jaymz@artificial-stupidity.net>
	* fb/fbpict.c:
	Changed fbCompositeTrans_0565xnx0565 to have an aligned path similar
	to the 24bit version of same, as well as making it do it's alpha blend 
	in a single pass for 2x16bit values rather than a seperate pass for the
	high/low 16 bits
	
	Optimize fbCompositeTrans_0888xnx0888()'s unaligned path by doing the
	unpacking on source rather than dest (which reuiqres half the amount
	of variables to do so), which also has the effect of making the code 
	look slightly less on crack (it isn't, but it looks less on crack :-p)

2003-12-18  Jaymz Julian <jaymz@artificial-stupidity.net>
	* configure.ac: 
	Check if unaligned word accesses work as you'd expect
	
	* fb/fbcomposite.c: 
	If they do, make fetch_r8g8b8() use them
	
	* fb/fbpict.h:
	* fb/fbpict.c: 
	Optimize 24bit (and 16bit colour less so) mode significantly, by 
	making all reads aligned if easily possible, and also using a 
	different composite function (see fastcombine32).

	Make fbCompositeSrcSrc_nxn() know about repeating sources, and start
	a whitelist check for functions that know this so they can be 
	incrementally implented.

2003-12-07  Eric Anholt  <anholt@FreeBSD.org>

	* configure.ac:
	* hw/kdrive/Makefile.am:
	* hw/kdrive/sis300/.cvsignore:
	* hw/kdrive/sis300/Makefile.am:
	* hw/kdrive/sis300/sis.c: (SiSCardInit), (SiSCardFini),
	(SiSScreenInit), (SiSScreenFini), (SiSMapReg), (SiSUnmapReg),
	(SiSInitScreen), (SiSFinishInitScreen), (SiSCreateResources),
	(SiSPreserve), (SiSRestore), (SiSDPMS), (SiSEnable), (SiSDisable),
	(SiSGetColors), (SiSPutColors):
	* hw/kdrive/sis300/sis.h:
	* hw/kdrive/sis300/sis_draw.c: (SiSWaitAvailMMIO), (SiSWaitIdle),
	(SiSPrepareSolid), (SiSSolid), (SiSDoneSolid), (SiSPrepareCopy),
	(SiSCopy), (SiSDoneCopy), (SiSDrawInit), (SiSDrawEnable),
	(SiSDrawDisable), (SiSDrawFini), (SiSDrawSync):
	* hw/kdrive/sis300/sis_reg.h:
	* hw/kdrive/sis300/sis_stub.c: (InitCard), (InitOutput),
	(InitInput), (ddxUseMsg), (ddxProcessArgument):
	Add initial SiS 300-series (300, 305, 540, 630, 730) driver based
	off of the ATI driver.  It suffers from hw/sw synchronization
	problems, it looks like, but may be good enough to work on Render
	acceleration experiments.  Committing it as-is so I don't lose it
	again.

2003-12-01  Keith Packard  <keithp@keithp.com>

	* miext/damage/damage.c: (damageComposite), (damageGlyphs),
	(damageFillSpans), (damageSetSpans), (damagePutImage),
	(damageCopyArea), (damageCopyPlane), (damagePolyPoint),
	(damagePolylines), (damagePolySegment), (damagePolyRectangle),
	(damagePolyArc), (damageFillPolygon), (damagePolyFillRect),
	(damagePolyFillArc), (damagePolyText8), (damagePolyText16),
	(damageImageText8), (damageImageText16), (damagePushPixels):
	Trim damage to CompositeClips for GC and Picture ops.
	
	* os/io.c: (FlushAllOutput):
	Trust SmartSchedule to run each slice long enough and make
	FlushAllOutput actually flush, even with pending requests.

2003-12-01  Keith Packard  <keithp@keithp.com>

	* composite/compinit.c: (compCloseScreen), (compScreenInit):
	* composite/compint.h:
	* composite/compwindow.c: (compPositionWindow), (compClipNotify),
	(compWindowUpdateAutomatic):
	Wrap ClipNotify to see region motions during MoveWindow.
	
	Check window reorigin in PositionWindow and bump pixmap
	serial numbers to revalidate GCs.

	Fix picture clip region origin in automatic update
	
	* damageext/damageext.c: (DamageClientCallback):
	Initialize client private 'critical' value
	
	* fb/fbpixmap.c: (fbValidateBits), (fbValidateDrawable):
	* fb/fbscreen.c: (fbFinishScreenInit):
	Clean up pixmap bounds checking code to only affect
	contents allocated by fb.
	
	* render/mipict.c: (miCompositeSourceValidate),
	(miComputeCompositeRegion):
	Oops.  Call SourceValidate for Composite operations.

	* configure.ac:
	* hw/kdrive/Makefile.am:
	* hw/kdrive/chips/.cvsignore:
	* hw/kdrive/chips/Imakefile:
	* hw/kdrive/chips/Makefile.am:
	* hw/kdrive/chips/chips.c: (chipsRandRSetConfig), (chipsRandRInit),
	(chipsFinishInitScreen), (chipsCreateResources):
	* hw/kdrive/chips/chipsdraw.c: (chipsWaitIdle),
	(chipsPrepareSolid), (chipsPrepareCopy), (chipsDrawInit),
	(chipsDrawEnable):
	Add Xchips server (vesa based)
	
2003-12-01  Anders Carlsson  <andersca@gnome.org>

	* hw/kdrive/fbdev/fbdev.c: (fbdevModeSupported),
	(fbdevConvertMonitorTiming), (fbdevScreenInitialize),
	(fbdevEnable):
	Add support for setting the video mode.
	
2003-12-01  Phil Blundell  <pb@nexus.co.uk>

	* hw/kdrive/fbdev/fbdev.c (fbdevRandRSetConfig): Call
	KdShadowUnset before fbdevSetShadow.

2003-11-30  Eric Anholt  <anholt@FreeBSD.org>

	* configure.ac:
	* hw/kdrive/Makefile.am:
	* hw/kdrive/ati/Makefile.am:
	* hw/kdrive/ati/ati.c: (ATICardInit), (ATICardFini),
	(ATIScreenInit), (ATIScreenFini), (ATIInitScreen),
	(ATIFinishInitScreen), (ATICreateResources), (ATIPreserve),
	(ATIRestore), (ATIDPMS), (ATIEnable), (ATIDisable), (ATIGetColors),
	(ATIPutColors):
	* hw/kdrive/ati/ati.h:
	* hw/kdrive/ati/ati_stub.c: (ddxUseMsg), (ddxProcessArgument):
	* hw/kdrive/fbdev/fbdev.c: (fbdevInitialize):
	* hw/kdrive/src/kdrive.h:
	- Add fbdev mode-setting backend to Xati.  It and vesa are compiled
	  in when available, with fbdev being used by default.
	- Use depth 16 by default when vesa backend is used.
	- Add MMIO defines for PowerPC (should be in a common location).

	Many thanks for Michel Daenzer for much of this code.

2003-11-30  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati.c:
	Add more RV250 PCI IDs.

2003-11-30  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c:
	* hw/kdrive/mach64/mach64.c:
	* hw/kdrive/src/vga.c:
	Remove sys/io.h inclusion from some files that didn't need it, and
	change asm/io.h to sys/io.h in vga.c, which newer Linux complains
	about.

2003-11-25  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati.c:
	Add new Radeon 9200 PCI IDs.

2003-11-23  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati_draw.c: (ATIWaitAvail), (RadeonWaitIdle),
	(ATISetup), (ATIPrepareSolid), (ATIPrepareCopy), (ATIDrawInit):
	- Fix Radeon offscreen pixmap pitch alignment.
	- Remove usleeps from idle and waitavail code, recommended by keithp.
	- Add a workaround for apparent broken acceleration with Rage 128 and
	  offset alignment with 8-bit acceleration (24-hack and plain 8-bit).
	- Minor cleanup of setup code.

2003-11-22  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati.c:
	Add RV250 PCI IDs.

2003-11-21  Keith Packard  <keithp@keithp.com>

	From: fredrikh@gmx.net

	* composite/compinit.c: (compAddArgbVisual):
	Clean up memory leak (installedCmaps)
	
	* configure.ac:
	Fix SCREENSAVER extension selection code

2003-11-21  Keith Packard  <keithp@keithp.com>

	* composite/compwindow.c: (compCopyWindow):
	Offset for CopyWindow was wrong; resizing under twm
	demonstrated this.
	
	* miext/damage/damage.c: (damageDamageRegion):
	Clip damage to monitored drawable, not just target drawable.
	This avoids accumulating damage outside the monitored window.

	* render/mipict.c: (miClipPictureReg), (miComputeCompositeRegion):
	Clip regions for mask/src were offset wrong.
	
	* xfixes/region.c: (ProcXFixesCopyRegion), (SProcXFixesCopyRegion),
	(ProcXFixesCombineRegion), (SProcXFixesCombineRegion),
	(ProcXFixesInvertRegion), (SProcXFixesInvertRegion),
	(ProcXFixesTranslateRegion), (SProcXFixesTranslateRegion):
	* xfixes/xfixes.c: (XFixesNumberRequests):
	* xfixes/xfixesint.h:
	Eliminate offset arguments in combining operators,
	create separate CopyRegion and TranslateRegion requests.
	

2003-11-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati.c:
	* hw/kdrive/ati/ati.h:
	* hw/kdrive/ati/ati_draw.c: (ATISetup), (ATIPrepareSolid),
	(ATISolid), (ATIPrepareCopy), (ATICopy), (ATIDrawInit),
	(ATIDrawEnable):
	* hw/kdrive/ati/ati_reg.h:
	* hw/kdrive/src/kaa.c: (kaaPixmapAllocArea):
	- Fix a bug in pitch alignment for offscren pixmaps.
	- Add 24-bit acceleration for Xati using the 8-bit trick from mach64.
	- Add offscreen pixmap support to Xati.

2003-11-19  Keith Packard  <keithp@keithp.com>

	* composite/compalloc.c: (compFreePixmap), (compReallocPixmap):
	* composite/compext.c:
	* composite/compinit.c: (compCloseScreen), (compScreenInit):
	* composite/compint.h:
	* composite/compwindow.c: (compCheckRedirect),
	(compPositionWindow), (compMoveWindow), (compResizeWindow),
	(compChangeBorderWidth), (compCopyWindow):
	* dix/window.c:
	(Yes, these are all related changes).  Rework window manipulation
	while Composite is enabled.  The basic problem was when the
	window was resized, the offscreen pixmap would get resized and if
	that shrunk, the eventual CopyWindow call would not be able to get
	bits.  Now, all resizes are managed by allocating a new pixmap
	and hanging on to the old one until after all of the CopyWindow
	calls are done.
	A related change was to reset the borderClip back to the
	parent-limited version when removing redirection from a window
	so that the UnmapWindow operation within that uses the correct
	value

2003-11-19  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/ati/ati.c:
	* hw/kdrive/ati/ati_draw.c: (ATISetup), (ATIDrawInit),
	(ATIDrawEnable):
	- Fix confusion of depth/bitsPerPixel in ati_draw.c
	- Disable acceleration with 24bpp due to apparent broken acceleration.
	  Accel at 24bpp was the cause of the crashes when people tried to use
	  any depth over 16.  XFree86 doesn't support 24 either.
	- Disable at < 8bpp, too.
	- Add the other Rage 128 PCI IDs.
	- Remove unnecessary setting of scissor registers (only default
	  scissor gets used).

2003-11-19  Eric Anholt  <anholt@FreeBSD.org>

	* configure.ac:
	* hw/kdrive/Makefile.am:
	* hw/kdrive/ati/.cvsignore:
	* hw/kdrive/ati/Makefile.am:
	* hw/kdrive/ati/ati.c: (ATICardInit), (ATICardFini),
	(ATIScreenInit), (ATIScreenFini), (ATIMapReg), (ATIUnmapReg),
	(ATISetMMIO), (ATIResetMMIO), (ATIDPMS), (ATIEnable), (ATIDisable),
	(ATIRestore):
	* hw/kdrive/ati/ati.h:
	* hw/kdrive/ati/ati_draw.c: (ATIWaitAvail), (RadeonWaitIdle),
	(R128WaitIdle), (ATIWaitIdle), (ATISetup), (ATIPrepareSolid),
	(ATISolid), (ATIDoneSolid), (ATIPrepareCopy), (ATICopy),
	(ATIDoneCopy), (ATIDrawInit), (ATIDrawEnable), (ATIDrawDisable),
	(ATIDrawFini), (ATIDrawSync):
	* hw/kdrive/ati/ati_reg.h:
	* hw/kdrive/ati/ati_stub.c: (InitCard), (InitOutput), (InitInput),
	(ddxUseMsg), (ddxProcessArgument):
	* hw/kdrive/linux/linux.c: (LinuxFindPci):
	* hw/kdrive/src/kdrive.h:
	- Add PCI information (device/vendor id, bus location) to KdCardAttr
	  to help with ati, and future DRM drivers.
	- Add new "ati" kdrive driver.  It has ancestry in the r128 driver
	  from andersca, but took a detour through being the WIP SiS 300
	  driver on the way.  It supports Radeon (tested on QD VIVO and 7500)
	  and Rage 128.  Current limitations include that it requires depth 16
	  and that the other Rage 128 PCI IDs aren't included yet.

2003-11-18  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/src/koffscreen.c: (KdOffscreenFree):
	Reset available offscreen segment save function pointer.
	(Not a functional change, just cleaning up a bit)
	
	* hw/kdrive/vesa/vesa.c: (vesaEnable):
	Reset the screen->memory_base value when frame buffer is
	remapped.  This makes sure new off-screen allocations point at
	the newly mapped region rather than the old (now unmapped) region.

2003-11-18  Seth W. Klein  <sk@sethwklein.net>

	* hw/kdrive/chips/chipsstub.c: (ddxUseMsg):
	* hw/kdrive/fbdev/fbinit.c: (ddxUseMsg):
	* hw/kdrive/i810/i810stub.c: (ddxUseMsg):
	* hw/kdrive/igs/igsstub.c: (ddxUseMsg):
	* hw/kdrive/ipaq/ipaq.c: (ddxUseMsg):
	* hw/kdrive/itsy/itsy.c: (ddxUseMsg):
	* hw/kdrive/mach64/mach64stub.c: (ddxUseMsg):
	* hw/kdrive/mga/mgastub.c: (ddxUseMsg):
	* hw/kdrive/nvidia/nvidiastub.c: (ddxUseMsg):
	* hw/kdrive/pcmcia/pcmciastub.c: (ddxUseMsg):
	* hw/kdrive/r128/r128stub.c: (ddxUseMsg):
	* hw/kdrive/savage/s3stub.c: (ddxUseMsg):
	* hw/kdrive/sis530/sisstub.c: (ddxUseMsg):
	* hw/kdrive/smi/smi.h:
	* hw/kdrive/smi/smistub.c: (ddxUseMsg):
	* hw/kdrive/src/kdrive.c: (KdUseMsg):
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/trident/tridentstub.c: (ddxUseMsg):
	* hw/kdrive/trio/s3stub.c: (ddxUseMsg):
	* hw/kdrive/ts300/ts300.c: (ddxUseMsg):
	* hw/kdrive/vesa/Xvesa.man:
	* hw/kdrive/vesa/vesa.c: (vesaUseMsg):
	* hw/kdrive/vesa/vesa.h:
	* hw/kdrive/vesa/vesainit.c: (ddxUseMsg):
	* os/utils.c: (UseMsg):
	Infrastructure for driver specific usage messages.
	Vesa driver usage message.
	Vesa man page update for -force-text.

2003-11-17  Keith Packard  <keithp@keithp.com>

	* include/picturestr.h:
	* render/picture.c: (PictureCreateDefaultFormats),
	(PictureFindVisual), (PictureInitIndexedFormats),
	(PictureMatchVisual), (PictureInit):
	Switch from having a VisualPtr in an indexed picture format
	to a Visual ID.  Necessary because Composite reallocates the
	visual array which scrambles our pointers.  Only used during
	server startup, so there's no performance impact at all.

2003-11-17  Keith Packard  <keithp@keithp.com>

	* composite/compalloc.c: (compFreeClientWindow):
	Damage borderSize when switching from manual to automatic
	update.  This repaints the window.
	
	* composite/compwindow.c: (compSetRedirectBorderClip):
	Damage for exposed areas was computed backwards.

	* dix/window.c: (SetBorderSize):
	BorderSize was too large in each dimension by borderWidth

2003-11-17  Keith Packard  <keithp@keithp.com>

	* composite/compwindow.c: (compSetPixmapVisitWindow),
	(compSetPixmap):
	Recompute winSize/borderSize to fix them when changing
	redirection.  Sufficient, but not always necessary.

	* damageext/damageext.c: (ProcDamageCreate):
	Add borderClip to damage on creation so that clients
	needn't guess.

	* fb/fb.h:
	* fb/fbbits.h:
	* fb/fbpoint.c: (fbDots), (fbPolyPoint):
	Fix API to FbDots functions to make PolyPoint work
	with screen_x/screen_y offsets
	
	* fb/fbpixmap.c: (fbCheckPixmapPicturesFindRes),
	(fbCheckPixmapPictures), (fbDestroyPixmap):
	Add debugging code to make sure no pictures are left
	pointing at freed pixmaps. "Can't" happen, but it did once.

	* hw/kdrive/mach64/mach64video.c: (mach64StopVideo),
	(mach64VideoSave), (mach64PutImage):
	* hw/kdrive/src/kaa.c: (kaaPixmapSave), (kaaMoveOutPixmap),
	(kaaDestroyPixmap):
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/koffscreen.c: (KdOffscreenValidate),
	(KdOffscreenKickOut), (KdOffscreenAlloc), (KdOffscreenSwapOut),
	(KdOffscreenMerge), (KdOffscreenFree), (KdOffscreenInit),
	(KdOffscreenFini):
	Change KdOffscreenArea structure to eliminate separate private
	structure, eliminate the ScreenPtr, change from doubly linked to
	singly linked list.

	* miext/damage/damage.c: (damageDamageRegion), (damagePaintWindow),
	(DamageSubtract):
	Don't damage BackgroundNone windows on PW_BACKGROUND.
	Re-clip damage to borderClip in DamageSubtract.

2003-11-16  Keith Packard  <keithp@keithp.com>

	* composite/compalloc.c: (compFreeClientSubwindows):
	Clear window when Manual Subwindows redirect is destroyed

	* fb/fbfill.c: (fbFill):
	Fix Tile/Stipple origin with non-zero pixmap window origins

	* hw/kdrive/fbdev/fbdev.c: (fbdevScreenInitialize),
	(fbdevMapFramebuffer):
	Use computed depth for TrueColor visuals as fbdev doesn't
	have one.
	
2003-11-13  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/src/kaa.c: (kaaImageGlyphBlt):
	Accelerated image text code drew glyphs at wrong location when
	compositing manager enabled.

2003-11-13  Keith Packard  <keithp@keithp.com>

	* composite/Makefile.am:
	* composite/compalloc.c: (compRedirectSubwindows),
	(compFreeClientSubwindows):
	* composite/compinit.c: (compAddArgbVisual):
	* composite/compint.h:
	* damageext/damageext.c: (DamageExtNotify), (DamageExtSetCritical):
	* damageext/damageextint.h:
	Have the composite extension tell the damage extension about
	clients which have redirected subwindows in manual mode.  Those
	clients are marked Critical and given a significant scheduling
	boost whenever they receive a damage notify event.  This
	dramatically improves update frequency.

	* hw/kdrive/linux/keyboard.c: (readKernelMapping):
	If the kernel reported a large number of keys, readKernelMapping
	would walk off the end of the kdKeysym array.
	
	* hw/kdrive/vesa/vesa.c:
	Fix usage of _IOWR; the 'size' argument is actually a datatype.

2003-11-11  Eric Anholt  <anholt@FreeBSD.org>

	* configure.ac:
	Enable SERVER_LOCK, which prevents multiple servers from conflicting
	on a display.

2003-11-11  Eric Anholt  <anholt@FreeBSD.org>

	* os/Makefile.am:
	Remove the _*_SOURCE defines in os/Makefile.am except for _GNU_SOURCE
	as discussed on IRC.  Some of them cause important definitions to be
	hidden on FreeBSD.  With this, the xnest server compiles out of the
	box on FreeBSD.

2003-11-11  Eric Anholt  <anholt@FreeBSD.org>

	* hw/Makefile.am:
	Fix build without kdrive server.

2003-11-11  Keith Packard  <keithp@keithp.com>

	* configure.ac:
	Add compositeext to required modules when --enable-composite

2003-11-11  Keith Packard  <keithp@keithp.com>

	* include/.cvsignore:
	* include/Makefile.am:
	Eric neglected to add the proposed include/Makefile.am file
	to the repository yesterday.

2003-11-11  Keith Packard  <keithp@keithp.com>

	* composite/compext.c: (ProcCompositeCreateRegionFromBorderClip):
	* composite/compinit.c: (compAddArgbVisual), (compScreenInit):
	* composite/compint.h:
	* composite/compwindow.c: (compImplicitRedirect),
	(compReparentWindow), (compCreateWindow),
	(compSetRedirectBorderClip), (compWindowUpdateAutomatic):
	* miext/damage/damage.c: (DamageDamageRegion):
	* render/picture.c: (PictureMatchVisual):
	Add ARGB32 visual type with automatic update as needed.
	Fix a few more issues with damage being saved in window space.
	Damage windows that are moved.
	Fix overflow problem in PicturMatchVisual.

2003-11-10  Eric Anholt  <anholt@FreeBSD.org>

	* Makefile.am:
	* Xext/Makefile.am:
	* configure.ac:
	* dix/Makefile.am:
	* fb/Makefile.am:
	* hw/kdrive/fbdev/Makefile.am:
	* hw/kdrive/linux/Makefile.am:
	* hw/kdrive/smi/Makefile.am:
	* hw/kdrive/src/Makefile.am:
	* hw/kdrive/vesa/Makefile.am:
	* hw/xnest/Makefile.am:
	* include/Makefile.am:
	* mi/Makefile.am:
	* miext/damage/Makefile.am:
	* miext/layer/Makefile.am:
	* miext/shadow/Makefile.am:
	* os/Makefile.am:
	* randr/Makefile.am:
	Fix Makefile.am's to include header files needed for distcheck.
	Remove -Werror default and add --enable-werror switch to add it back.

2003-11-10  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/mach64/mach64video.c: (mach64PaintRegion),
	(mach64PutImage), (mach64ReputImage):
	* hw/kdrive/src/koffscreen.c: (KdOffscreenAlloc):
	* hw/kdrive/src/kxv.c: (KdXVRegetVideo), (KdXVReputVideo),
	(KdXVReputImage), (KdXVPutStill), (KdXVGetStill), (KdXVPutImage):
	* hw/kdrive/src/kxv.h:
	Fix KdXv interface to pass drawable down so that bits can be
	put into drawable pixmap rather than directly into the frame buffer.
	Rewrite logic in kdoffscreen to make space for new allocations,
	now deals correctly with locked areas.

2003-11-09  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/src/kaa.c: (kaaComposite):
	Must offset composite parameters by drawable coordinates in
	accelerated case.

2003-11-09  Keith Packard  <keithp@keithp.com>

	* fb/fbwindow.c: (fbFillRegionTiled):
	Misrotating (in y) tiled window background to offscreen pixmaps

2003-11-09  Keith Packard  <keithp@keithp.com>

	* mi/mivaltree.c:
	Cover usage of redirectDraw by COMPOSITE

2003-11-09  Keith Packard  <keithp@keithp.com>

	* miext/damage/damage.c: (DamageSubtract):
	Variable pClip was used without always being initialized

2003-11-08  Keith Packard  <keithp@keithp.com>

	* composite/compinit.c: (compCloseScreen), (compScreenInit):
	* composite/compint.h:
	* composite/compwindow.c: (compCheckWindow),
	(compPaintWindowBackground), (compDestroyWindow):
	* damageext/damageext.c: (DamageExtNotify), (DamageExtDestroy),
	(ProcDamageSubtract), (FreeDamageExt), (FreeDamageExtWin):
	* dix/window.c: (SetBorderSize):
	* miext/damage/damage.c: (damageDamageRegion), (damageDamageBox),
	(damageDestroyPixmap), (damagePaintWindow), (damageCopyWindow),
	(damageRestoreAreas), (damageSetWindowPixmap),
	(damageDestroyWindow), (DamageSetup), (DamageCreate),
	(DamageRegister), (DamageUnregister), (DamageSubtract),
	(DamageDamageRegion):
	* miext/damage/damagestr.h:
	* render/mirect.c: (miColorRects):

	Wrap PaintWindowBackground in composite extension to
	disable painting window background in manual Subwindows mode.

	compDestroyWindow needed to refetch cw and csw because
	CompFreeClientWindow/compFreeClientSubwindows zeroed them.

	Damage must store all damage in window relative
	coordinates so that damage tracks window movement.  I doubt
	this will work "right" with bitGravity, apps are likely to
	lose in that case anyway.

	Check for clientGone before trying to write events.

	Better checking for freeing datastructures in various orders

	dix/window.c: oops.  Was setting wrong region in COMPOSITE side
	of SetBorderSize.

	Damage must be associated with windows, not just underlying pixmap
	in case that changes.  Wrap SetWindowPixmap to track changes
	to window pixmaps (and DestroyWindow as well).

	Don't smash PaintWindow/CopyWindow regions in damageDamageRegion.
	Also, translate region back for those cases.

	render/mirect.c: track subWindowMode (oops)

2003-11-08  Phil Blundell  <pb@nexus.co.uk>

	* configure.ac: Avoid ugly shell error when libXdmcp isn't
	present.

	* hw/kdrive/linux/ts.c (TsEnable, TsDisable): New functions.
	(TsInit): Register them.

2003-11-07  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/src/kaa.c: (kaaGetOffscreenPixmap), (kaaFillSpans),
	(kaaCopyNtoN), (kaaPolyFillRect), (kaaSolidBoxClipped),
	(kaaCopyWindow), (kaaFillRegionSolid), (kaaComposite):
	Fix KAA to work with screen_x/screen_y hacks from COMPOSITE
	Also add kaaComposite acceleration for simple bltblt case.

2003-11-07  Keith Packard  <keithp@keithp.com>

	* composite/compalloc.c: (compReportDamage), (compRedirectWindow),
	(compFreeClientWindow), (compFreeClientSubwindows),
	(compRedirectOneSubwindow), (compUnredirectOneSubwindow),
	(compAllocPixmap), (compFreePixmap), (compReallocPixmap):
	* composite/compext.c: (CompositeExtensionInit):
	* composite/compinit.c: (compScreenInit):
	* composite/compint.h:
	* composite/compwindow.c: (compCheckRedirect),
	(compReparentWindow), (compCopyWindow), (compDestroyWindow),
	(compSetRedirectBorderClip), (compGetRedirectBorderClip),
	(compWindowUpdateAutomatic), (compWindowUpdate):
	* fb/fb.h:
	* fb/fbpixmap.c: (fbCreatePixmapBpp):
	* fb/fbwindow.c: (fbCopyWindow):
	* hw/kdrive/fbdev/fbdev.c: (fbdevInitialize), (fbdevScreenInit):
	* hw/kdrive/linux/keyboard.c: (readKernelMapping):
	* hw/kdrive/linux/linux.c: (LinuxInit), (LinuxSpecialKey),
	(LinuxFini):
	* hw/kdrive/linux/mouse.c: (MouseWaitForReadable), (MouseReadByte),
	(ps2SkipInit), (MouseRead):
	* hw/kdrive/smi/smi.c: (smiScreenInit):
	* include/pixmapstr.h:
	* mi/mi.h:
	* mi/midispcur.c:
	* mi/mivaltree.c: (miRegisterRedirectBorderClipProc),
	(miComputeClips):
	* miext/damage/damage.c: (DamageDamageRegion):
	* miext/damage/damage.h:
	* render/mipict.c: (miValidatePicture):
	Ok, Composite extension is semi-working; when no-one asks
	for redirection, the server seems to act as before.  With
	RedirectSubwindows (root, automatic), the server looks just
	like a regular X server.  Now to go rewrite the (currently lame)
	compositing manager to get some real action on the screen.
	
	Some of the fixes here are to make valgrind quiet with
	various ioctls used by kdrive/linux.

	Also fixed a bug where fbdev initialization was out of order
	in fbdev.c and smi.c

2003-11-07  Phil Blundell  <pb@nexus.co.uk>

	* hw/kdrive/linux/ts.c: Fix warnings.

2003-11-06  Keith Packard  <keithp@keithp.com>

	* composite/.cvsignore:
	* composite/compext.c: (CompositeClientCallback),
	(CompositeResetProc), (FreeCompositeClientWindow),
	(FreeCompositeClientSubwindows), (ProcCompositeQueryVersion),
	(ProcCompositeRedirectWindow), (ProcCompositeRedirectSubwindows),
	(ProcCompositeUnredirectWindow),
	(ProcCompositeUnredirectSubwindows),
	(ProcCompositeCreateRegionFromBorderClip),
	(CompositeNumberRequests), (ProcCompositeDispatch),
	(SProcCompositeQueryVersion), (SProcCompositeRedirectWindow),
	(SProcCompositeRedirectSubwindows),
	(SProcCompositeUnredirectWindow),
	(SProcCompositeUnredirectSubwindows),
	(SProcCompositeCreateRegionFromBorderClip),
	(SProcCompositeDispatch), (CompositeExtensionInit):
	Oops.  Forgot new file.

2003-11-06  Keith Packard  <keithp@keithp.com>

	* composite/Makefile.am:
	* composite/compalloc.c: (compRedirectWindow),
	(compFreeClientWindow), (compUnredirectWindow),
	(compRedirectSubwindows), (compFreeClientSubwindows),
	(compUnredirectSubwindows), (compAllocPixmap), (compFreePixmap):
	* composite/compinit.c: (compScreenInit):
	* composite/compint.h:
	* composite/compwindow.c: (compShouldBeRedirected),
	(compCheckRedirect), (compCreateWindow):
	* fb/fbwindow.c: (fbCopyWindow):
	* xfixes/region.c: (XFixesRegionCopy),
	(ProcXFixesCreateRegionFromWindow), (ProcXFixesCreateRegionFromGC),
	(ProcXFixesCreateRegionFromPicture), (ProcXFixesSetGCClipRegion),
	(ProcXFixesSetWindowShapeRegion):
	* xfixes/xfixes.h:
	Finish up preliminary Composite extension implementation.
	Export XFixesRegionCopy from xfixes for Composite.
	Use window pixmap for fbCopyWindow, not root window.

2003-11-06  Matthew Allum  <mallum@handhelds.org>

	* configure.ac,v
	* hw/kdrive/fbdev/Makefile.am,v
	* hw/kdrive/linux/tslib.c,v
	* hw/kdrive/mach64/Makefile.am,v
	* hw/kdrive/mga/Makefile.am,v
	* hw/kdrive/r128/Makefile.am,v
	* hw/kdrive/smi/Makefile.am,v
	* hw/kdrive/vesa/Makefile.am,v

	Got tslib support building again.
	Removed tslib.c warnings
	Added support for TSLIB_DEVICE env var
	Fixed configure.ac not to try and build both ipaq ts and tslib.

2003-11-04  Keith Packard  <keithp@keithp.com>

	* composite/compinit.c: (CompositeExtensionInit):
	* composite/compwindow.c: (compWindowUpdateAutomatic),
	(compWindowUpdate):
	* hw/kdrive/src/kinput.c: (KdMouseAccelerate),
	(KdEnqueueMouseEvent):
	Replace translucent compositing hacks with PictOpSrc to
	match eventual extension semantics.
	Replace mouse acceleration with quadratic.

2003-11-04  Keith Packard  <keithp@keithp.com>

	* Makefile.am:
	* composite/Makefile.am:
	* composite/compalloc.c: (compReportDamage), (compDestroyDamage),
	(compAllocPixmap), (compFreePixmap), (compReallocPixmap):
	* composite/compinit.c: (compCloseScreen), (compScreenUpdate),
	(compBlockHandler), (compScreenInit), (CompositeExtensionInit):
	* composite/compint.h:
	* composite/compwindow.c: (compCheckWindow), (compCheckTree),
	(compSetPixmapVisitWindow), (compSetPixmap),
	(compShouldBeRedirected), (compCheckRedirect),
	(compPositionWindow), (compRealizeWindow), (compUnrealizeWindow),
	(compReparentWindow), (compCopyWindow), (compCreateWindow),
	(compDestroyWindow), (compRedirectBorderClip),
	(compGetWindowVisual), (compWindowFormat),
	(compWindowUpdateAutomatic), (compWindowPaintBackground),
	(compWindowUpdate):
	* configure.ac:
	* dix/window.c: (SetWinSize), (SetBorderSize):
	* fb/fb.h:
	* fb/fbpict.c: (fbIn24), (fbCompositeTrans_0565xnx0565),
	(fbCompositeSrcSrc_nxn), (fbComposite):
	* fb/fbpict.h:
	* include/picturestr.h:
	* include/windowstr.h:
	* mi/Makefile.am:
	* mi/mi.h:
	* mi/miinitext.c:
	* mi/mivaltree.c: (miRegisterRedirectBorderClipProc),
	(miGetRedirectBorderClipProc), (miComputeClips):
	* miext/damage/damage.c: (damageDestroyPixmap):
	* render/mipict.c: (miValidatePicture):
	* render/picture.c: (SetPictureClipRects), (SetPictureClipRegion):
	* xfixes/region.c: (ProcXFixesSetPictureClipRegion):
	Initial import of Composite extension along with
	name change from Apportion.
	Added some accelerated code to fbpict to make this initial
	hack a bit faster.  "real" extension bits to follow.

2003-11-02  Keith Packard  <keithp@keithp.com>

	* os/osdep.h:
	* os/xdmauth.c: (XdmAuthenticationValidator),
	(XdmAuthenticationGenerator), (XdmAuthenticationAddAuth),
	(XdmAuthenticationInit):
	Fix warnings (prototypes and type errors)

2003-11-02  Keith Packard  <keithp@keithp.com>

	* Makefile.am:
	* Xext/Makefile.am:
	* Xext/bigreq.c: (BigReqExtensionInit):
	* Xext/mitmisc.c: (MITMiscExtensionInit):
	* Xext/saver.c: (ScreenSaverExtensionInit):
	* Xext/shape.c: (ShapeExtensionInit), (SendShapeNotify):
	* Xext/shm.c: (ShmExtensionInit), (ShmRegisterFuncs),
	(ShmSetPixmapFormat), (ShmRegisterFbFuncs), (miShmPutImage),
	(fbShmCreatePixmap):
	* Xext/shmint.h:
	* Xext/sleepuntil.c: (ClientSleepUntil):
	* Xext/sleepuntil.h:
	* Xext/sync.c: (SyncCreateSystemCounter), (SyncExtensionInit):
	* Xext/syncint.h:
	* Xext/xcmisc.c: (XCMiscExtensionInit):
	* Xext/xext.h:
	* Xext/xres.c:
	* Xext/xtest.c: (XTestExtensionInit):
	* Xext/xtest1di.c: (XTestExtension1Init):
	* Xext/xvmc.c: (XvMCFindXvImage):
	* Xext/xvmcext.h:
	* configure.ac:
	* damageext/.cvsignore:
	* damageext/Makefile.am:
	* damageext/damageext.c: (DamageExtNotify), (DamageExtReport),
	(DamageExtDestroy), (ProcDamageQueryVersion), (ProcDamageCreate),
	(ProcDamageDestroy), (ProcDamageSubtract), (XDamageNumberRequests),
	(ProcDamageDispatch), (SProcDamageQueryVersion),
	(SProcDamageCreate), (SProcDamageDestroy), (SProcDamageSubtract),
	(SProcDamageDispatch), (DamageClientCallback), (DamageResetProc),
	(FreeDamageExt), (FreeDamageExtWin), (SDamageNotifyEvent),
	(DamageExtensionInit):
	* damageext/damageext.h:
	* damageext/damageextint.h:
	* dix/Makefile.am:
	* dix/cursor.c:
	* dix/dispatch.c:
	* dix/extension.c: (CloseDownExtensions):
	* dix/property.c: (NullPropertyReply):
	* dix/window.c: (SetWinSize), (SetBorderSize):
	* dix/xpstubs.c: (XpClientIsBitmapClient), (XpClientIsPrintClient),
	(XprintOptions):
	* fb/Makefile.am:
	* fb/fbcmap.c:
	* fb/fbcopy.c: (fbCopyNtoN), (fbDoCopy), (fbCopyArea):
	* fb/fboverlay.c:
	* hw/kdrive/fbdev/Makefile.am:
	* hw/kdrive/fbdev/fbdev.c: (fbdevScreenInitialize),
	(fbdevMapFramebuffer), (fbdevSetScreenSizes),
	(fbdevUnmapFramebuffer), (fbdevSetShadow), (fbdevRandRSetConfig),
	(fbdevInitScreen), (fbdevFinishInitScreen), (fbdevCreateResources):
	* hw/kdrive/fbdev/fbdev.h:
	* hw/kdrive/fbdev/fbinit.c:
	* hw/kdrive/linux/Makefile.am:
	* hw/kdrive/linux/agp.c: (GARTInit):
	* hw/kdrive/linux/bus.c:
	* hw/kdrive/linux/keyboard.c: (readKernelMapping):
	* hw/kdrive/linux/linux.c: (LinuxInit):
	* hw/kdrive/linux/mouse.c:
	* hw/kdrive/linux/ms.c:
	* hw/kdrive/linux/ps2.c:
	* hw/kdrive/mach64/Makefile.am:
	* hw/kdrive/mach64/mach64.c: (mach64ScreenInit),
	(mach64InitScreen), (mach64CreateResources), (mach64ScreenFini),
	(mach64CardFini):
	* hw/kdrive/mach64/mach64.h:
	* hw/kdrive/mach64/mach64draw.c: (mach64Setup), (mach64DoneSolid),
	(mach64DoneCopy), (mach64DrawFini):
	* hw/kdrive/mach64/mach64video.c: (mach64InitVideo),
	(mach64FiniVideo):
	* hw/kdrive/mga/Makefile.am:
	* hw/kdrive/mga/mga.c: (mgaScreenInit), (mgaCreateResources):
	* hw/kdrive/mga/mgadraw.c: (mgaPrepareSolid), (mgaPrepareCopy):
	* hw/kdrive/nvidia/Makefile.am:
	* hw/kdrive/nvidia/nvidia.c: (nvidiaRandRSetConfig),
	(nvidiaPreserve), (nvidiaLockUnlock), (nvidiaEnable):
	* hw/kdrive/nvidia/nvidia.h:
	* hw/kdrive/nvidia/nvidiadraw.c: (nvidiaPrepareSolid),
	(nvidiaPrepareCopy), (nvidiaDrawInit), (nvidiaDrawEnable):
	* hw/kdrive/r128/Makefile.am:
	* hw/kdrive/r128/r128.c: (r128ScreenInit), (r128Preserve),
	(r128DPMS):
	* hw/kdrive/r128/r128.h:
	* hw/kdrive/r128/r128draw.c: (r128WaitAvail), (r128Setup),
	(r128PrepareSolid), (r128PrepareCopy), (r128DrawInit):
	* hw/kdrive/r128/r128stub.c: (InitCard):
	* hw/kdrive/smi/Makefile.am:
	* hw/kdrive/smi/smi.c: (smiRandRSetConfig), (smiPreserve),
	(smiDPMS), (smiRestore):
	* hw/kdrive/smi/smi.h:
	* hw/kdrive/smi/smidraw.c: (smiPrepareSolid), (smiPrepareCopy),
	(smiDrawInit):
	* hw/kdrive/smi/smistub.c:
	* hw/kdrive/src/Makefile.am:
	* hw/kdrive/src/kaa.c: (kaaDestroyPixmap), (kaaCreatePixmap),
	(kaaPixmapIsOffscreen), (kaaGetOffscreenPixmap),
	(kaaDrawableIsOffscreen), (kaaFillSpans), (kaaCopyNtoN),
	(kaaPolyFillRect), (kaaSolidBoxClipped), (kaaValidateGC),
	(kaaFillRegionSolid), (kaaDrawInit), (kaaDrawFini):
	* hw/kdrive/src/kasync.c:
	* hw/kdrive/src/kcmap.c:
	* hw/kdrive/src/kcurscol.c:
	* hw/kdrive/src/kdrive.c: (KdCreateScreenResources),
	(KdCloseScreen), (KdScreenInit):
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/kinput.c:
	* hw/kdrive/src/knoop.c:
	* hw/kdrive/src/koffscreen.c: (KdOffscreenValidate),
	(KdOffscreenAlloc), (KdOffscreenInit):
	* hw/kdrive/src/kshadow.c: (KdShadowFbAlloc), (KdShadowFbFree),
	(KdShadowSet), (KdShadowUnset):
	* hw/kdrive/src/vga.c:
	* hw/kdrive/src/vga.h:
	* hw/kdrive/vesa/Makefile.am:
	* hw/kdrive/vesa/vesa.c: (vesaScreenInitialize), (vesaUpdateMono),
	(vesaSetScreenSizes), (vesaSetShadow), (vesaMapFramebuffer),
	(vesaUnmapFramebuffer), (vesaRandRSetConfig), (vesaInitScreen),
	(vesaFinishInitScreen), (vesaCreateResources), (vesaScreenFini):
	* hw/kdrive/vesa/vesa.h:
	* hw/kdrive/vesa/vesainit.c:
	* hw/xnest/Color.c: (xnestCreateColormap), (xnestDestroyColormap),
	(xnestCountInstalledColormapWindows),
	(xnestGetInstalledColormapWindows),
	(xnestSameInstalledColormapWindows),
	(xnestSetInstalledColormapWindows),
	(xnestSetScreenSaverColormapWindow), (xnestDirectInstallColormaps),
	(xnestDirectUninstallColormaps), (xnestInstallColormap),
	(xnestUninstallColormap), (xnestListInstalledColormaps),
	(xnestStoreColors), (xnestResolveColor),
	(xnestCreateDefaultColormap):
	* hw/xnest/Color.h:
	* hw/xnest/Cursor.c: (xnestConstrainCursor), (xnestCursorLimits),
	(xnestDisplayCursor), (xnestRealizeCursor), (xnestUnrealizeCursor),
	(xnestRecolorCursor), (xnestSetCursorPosition):
	* hw/xnest/Display.c: (xnestOpenDisplay):
	* hw/xnest/Display.h:
	* hw/xnest/Events.c: (xnestExposurePredicate),
	(xnestNotExposurePredicate), (xnestCollectExposures),
	(xnestCollectEvents):
	* hw/xnest/Events.h:
	* hw/xnest/Font.c: (xnestRealizeFont), (xnestUnrealizeFont):
	* hw/xnest/GC.c: (xnestValidateGC), (xnestChangeGC), (xnestCopyGC),
	(xnestDestroyGC), (xnestDestroyClipHelper), (xnestChangeClip),
	(xnestDestroyClip), (xnestCopyClip), (xnestCreateGC):
	* hw/xnest/GCOps.c: (xnestFillSpans), (xnestSetSpans),
	(xnestGetSpans), (xnestQueryBestSize), (xnestPutImage),
	(xnestGetImage), (xnestBitBlitPredicate), (xnestBitBlitHelper),
	(xnestCopyArea), (xnestCopyPlane), (xnestPolyPoint),
	(xnestPolylines), (xnestPolySegment), (xnestPolyRectangle),
	(xnestPolyArc), (xnestFillPolygon), (xnestPolyFillRect),
	(xnestPolyFillArc), (xnestPolyText8), (xnestPolyText16),
	(xnestImageText8), (xnestImageText16), (xnestImageGlyphBlt),
	(xnestPolyGlyphBlt), (xnestPushPixels):
	* hw/xnest/GCOps.h:
	* hw/xnest/Handlers.c: (xnestBlockHandler), (xnestWakeupHandler):
	* hw/xnest/Handlers.h:
	* hw/xnest/Init.c: (InitOutput), (InitInput), (AbortDDX),
	(ddxGiveUp), (OsVendorInit), (OsVendorFatalError):
	* hw/xnest/Keyboard.c: (xnestBell), (xnestChangeKeyboardControl),
	(xnestKeyboardProc):
	* hw/xnest/Keyboard.h:
	* hw/xnest/Makefile.am:
	* hw/xnest/Pixmap.c: (xnestCreatePixmap), (xnestDestroyPixmap),
	(xnestPixmapToRegion):
	* hw/xnest/Pointer.c: (xnestChangePointerControl),
	(xnestPointerProc):
	* hw/xnest/Pointer.h:
	* hw/xnest/Screen.c: (xnestScreen), (offset), (xnestSaveScreen),
	(xnestCursorOffScreen), (xnestCrossScreen), (xnestOpenScreen),
	(xnestCloseScreen):
	* hw/xnest/Screen.h:
	* hw/xnest/Visual.c: (xnestVisual), (xnestVisualFromID),
	(xnestDefaultVisualColormap):
	* hw/xnest/Visual.h:
	* hw/xnest/Window.c: (xnestFindWindowMatch), (xnestWindowPtr),
	(xnestCreateWindow), (xnestDestroyWindow), (xnestPositionWindow),
	(xnestConfigureWindow), (xnestChangeWindowAttributes),
	(xnestRealizeWindow), (xnestUnrealizeWindow),
	(xnestPaintWindowBackground), (xnestPaintWindowBorder),
	(xnestCopyWindow), (xnestClipNotify),
	(xnestWindowExposurePredicate), (xnestWindowExposures),
	(xnestRegionEqual), (xnestShapeWindow):
	* hw/xnest/XNCursor.h:
	* hw/xnest/XNFont.h:
	* hw/xnest/XNGC.h:
	* hw/xnest/XNPixmap.h:
	* hw/xnest/XNWindow.h:
	* include/cursorstr.h:
	* include/extnsionst.h:
	* include/os.h:
	* include/picture.h:
	* include/window.h:
	* include/windowstr.h:
	* mi/Makefile.am:
	* mi/miinitext.c:
	* mi/miscrinit.c:
	* mi/misprite.c: (miSpriteReportDamage), (miSpriteCopyWindow):
	* mi/mispritest.h:
	* mi/mivaltree.c: (miComputeClips):
	* miext/Makefile.am:
	* miext/damage/.cvsignore:
	* miext/damage/Makefile.am:
	* miext/damage/damage.c: (GetDrawablePixmap), (damageDamageRegion),
	(damageDamageBox), (damageDamageRect), (damageCreateGC),
	(damageWrapGC), (damageUnwrapGC), (damageValidateGC),
	(damageDestroyGC), (damageChangeGC), (damageCopyGC),
	(damageChangeClip), (damageCopyClip), (damageDestroyClip),
	(damageComposite), (damageGlyphs), (damageFillSpans),
	(damageSetSpans), (damagePutImage), (damageCopyArea),
	(damageCopyPlane), (damagePolyPoint), (damagePolylines),
	(damagePolySegment), (damagePolyRectangle), (damagePolyArc),
	(damageFillPolygon), (damagePolyFillRect), (damagePolyFillArc),
	(damageDamageChars), (damageText), (damagePolyText8),
	(damagePolyText16), (damageImageText8), (damageImageText16),
	(damageImageGlyphBlt), (damagePolyGlyphBlt), (damagePushPixels),
	(damageRemoveDamage), (damageInsertDamage), (damageDestroyPixmap),
	(damagePaintWindow), (damageCopyWindow), (damageRestoreAreas),
	(damageCloseScreen), (DamageSetup), (DamageCreate),
	(DamageRegister), (DamageDrawInternal), (DamageUnregister),
	(DamageDestroy), (DamageSubtract), (DamageEmpty), (DamageRegion):
	* miext/damage/damage.h:
	* miext/damage/damagestr.h:
	* miext/layer/Makefile.am:
	* miext/layer/layerinit.c: (layerCloseScreen):
	* miext/shadow/Makefile.am:
	* miext/shadow/shadow.c: (shadowRedisplay), (shadowGetImage),
	(shadowCloseScreen), (shadowSetup), (shadowSet), (shadowUnset),
	(shadowInit):
	* miext/shadow/shadow.h:
	* miext/shadow/shpacked.c: (shadowUpdatePacked):
	* miext/shadow/shplanar.c: (shadowUpdatePlanar4):
	* miext/shadow/shplanar8.c: (shadowUpdatePlanar4x8):
	* miext/shadow/shrotate.c: (shadowUpdateRotatePacked):
	* miext/shadow/shrotpack.h:
	* os/Makefile.am:
	* os/connection.c: (ClientAuthorized):
	* os/hpsocket.c: (set_socket_option), (unset_socket_option):
	* os/xdmauth.c: (XdmCheckCookie), (XdmToID):
	* randr/Makefile.am:
	* render/Makefile.am:
	* xfixes/Makefile.am:
	* xfixes/cursor.c: (CursorDisplayCursor),
	(SProcXFixesSelectCursorInput), (SXFixesCursorNotifyEvent),
	(CopyCursorToImage), (ProcXFixesGetCursorImage),
	(SProcXFixesGetCursorImage), (ProcXFixesSetCursorName),
	(SProcXFixesSetCursorName), (ProcXFixesGetCursorName),
	(SProcXFixesGetCursorName), (ProcXFixesGetCursorImageAndName),
	(SProcXFixesGetCursorImageAndName), (ReplaceCursorLookup),
	(ReplaceCursor), (TestForCursor), (ProcXFixesChangeCursor),
	(SProcXFixesChangeCursor), (TestForCursorName),
	(ProcXFixesChangeCursorByName), (SProcXFixesChangeCursorByName):
	* xfixes/region.c: (RegionResFree), (RegionCopy),
	(XFixesRegionInit), (ProcXFixesCreateRegion),
	(SProcXFixesCreateRegion), (ProcXFixesCreateRegionFromBitmap),
	(SProcXFixesCreateRegionFromBitmap),
	(ProcXFixesCreateRegionFromWindow),
	(SProcXFixesCreateRegionFromWindow),
	(ProcXFixesCreateRegionFromGC), (SProcXFixesCreateRegionFromGC),
	(ProcXFixesCreateRegionFromPicture),
	(SProcXFixesCreateRegionFromPicture), (ProcXFixesDestroyRegion),
	(SProcXFixesDestroyRegion), (ProcXFixesSetRegion),
	(SProcXFixesSetRegion), (ProcXFixesCombineRegion),
	(SProcXFixesCombineRegion), (ProcXFixesInvertRegion),
	(SProcXFixesInvertRegion), (ProcXFixesRegionExtents),
	(SProcXFixesRegionExtents), (ProcXFixesFetchRegion),
	(SProcXFixesFetchRegion), (ProcXFixesSetGCClipRegion),
	(SProcXFixesSetGCClipRegion), (ProcXFixesSetWindowShapeRegion),
	(SProcXFixesSetWindowShapeRegion),
	(ProcXFixesSetPictureClipRegion),
	(SProcXFixesSetPictureClipRegion):
	* xfixes/xfixes.c: (ProcXFixesQueryVersion),
	(XFixesNumberRequests), (ProcXFixesDispatch),
	(SProcXFixesQueryVersion), (SProcXFixesDispatch),
	(XFixesClientCallback), (XFixesResetProc), (XFixesExtensionInit):
	* xfixes/xfixes.h:
	* xfixes/xfixesint.h:
	merge xfixes_2_branch back to HEAD

2003-11-02  Keith Packard  <keithp@keithp.com>

	* miext/damage/damage.c: (damageDamageChars):
	Window origin added to glyph damage box twice.

2003-11-02  Eric Anholt  <anholt@FreeBSD.org>

	* hw/kdrive/r128/r128.h:
	* hw/kdrive/r128/r128draw.c: (r128Setup):
	* hw/kdrive/r128/r128stub.c: (InitCard):
	Fix fill/copyarea of r128 by setting the scissor registers
	in setup, as XFree86 does on engine init.  Add another PCI
	ID to r128stub.c.

2003-10-31  Philip Blundell  <philb@gnu.org>

	* configure.ac: Conditionally define XDMCP and HASXDMAUTH.
	* os/Makefile.am (libos_a_SOURCES): Include xdmcp.c if XDMCP.
	* os/xdmcp.c, os/xdmauth.c: Tweak #include paths.

2003-10-31  Keith Packard  <keithp@keithp.com>

	* Xext/shm.c: (miShmPutImage), (fbShmCreatePixmap):
	* hw/xnest/GCOps.c: (xnestSetSpans), (xnestGetSpans),
	(xnestQueryBestSize), (xnestPutImage), (xnestGetImage),
	(xnestBitBlitHelper), (xnestCopyArea), (xnestCopyPlane),
	(xnestPolyPoint), (xnestPolylines), (xnestPolyText16),
	(xnestImageText16), (xnestImageGlyphBlt), (xnestPolyGlyphBlt),
	(xnestPushPixels):
	* hw/xnest/GCOps.h:
	* hw/xnest/Handlers.c: (xnestBlockHandler), (xnestWakeupHandler):
	* hw/xnest/Handlers.h:
	* hw/xnest/Init.c: (InitOutput), (InitInput), (AbortDDX),
	(ddxGiveUp), (OsVendorInit), (OsVendorFatalError):
	* hw/xnest/Keyboard.c: (xnestBell), (xnestChangeKeyboardControl),
	(xnestKeyboardProc):
	* hw/xnest/Keyboard.h:
	* hw/xnest/Pixmap.c: (xnestCreatePixmap), (xnestDestroyPixmap),
	(xnestPixmapToRegion):
	* hw/xnest/Pointer.c: (xnestChangePointerControl),
	(xnestPointerProc):
	* hw/xnest/Pointer.h:
	* hw/xnest/Screen.c: (offset), (xnestSaveScreen),
	(xnestCursorOffScreen), (xnestCrossScreen), (xnestOpenScreen),
	(xnestCloseScreen):
	* hw/xnest/Screen.h:
	* hw/xnest/Visual.c: (xnestDefaultVisualColormap):
	* hw/xnest/Visual.h:
	* hw/xnest/Window.c: (xnestFindWindowMatch), (xnestCreateWindow),
	(xnestDestroyWindow), (xnestPositionWindow),
	(xnestConfigureWindow), (xnestChangeWindowAttributes),
	(xnestRealizeWindow), (xnestUnrealizeWindow),
	(xnestPaintWindowBackground), (xnestPaintWindowBorder),
	(xnestCopyWindow), (xnestClipNotify),
	(xnestWindowExposurePredicate), (xnestWindowExposures),
	(xnestRegionEqual), (xnestShapeWindow):
	* hw/xnest/XNPixmap.h:
	* hw/xnest/XNWindow.h:
	* mi/miscrinit.c:
	* miext/damage/damage.c:
	* miext/shadow/shrotpack.h:
	Prototype fixes (mostly in Xnest).  Seems to build -Werror now.

2003-10-31  Keith Packard  <keithp@keithp.com>

	* Xext/shm.c: (ShmRegisterFbFuncs):
	* Xext/shmint.h:
	* dix/window.c: (SetWinSize), (SetBorderSize):
	* fb/Makefile.am:
	* fb/fbcmap.c:
	* fb/fboverlay.c:
	* include/windowstr.h:
	* mi/mivaltree.c: (miComputeClips):
	Move MIT-SHM server declarations to shmint.h
	Start APPORTION dix hooks
	Comment out fbHasVisualTypes as it appears unused

2003-10-29  Keith Packard  <keithp@keithp.com>

	* Xext/bigreq.c: (BigReqExtensionInit):
	* Xext/mitmisc.c: (MITMiscExtensionInit):
	* Xext/saver.c: (ScreenSaverExtensionInit):
	* Xext/shm.c: (ShmExtensionInit), (ShmRegisterFuncs),
	(ShmSetPixmapFormat):
	* Xext/shmint.h:
	* Xext/sleepuntil.c: (ClientSleepUntil):
	* Xext/sleepuntil.h:
	* Xext/sync.c: (SyncCreateSystemCounter), (SyncExtensionInit):
	* Xext/syncint.h:
	* Xext/xcmisc.c: (XCMiscExtensionInit):
	* Xext/xext.h:
	* Xext/xres.c:
	* Xext/xtest.c: (XTestExtensionInit):
	* Xext/xtest1di.c: (XTestExtension1Init):
	* Xext/xvmc.c: (XvMCFindXvImage):
	* Xext/xvmcext.h:
	* configure.ac:
	* dix/dispatch.c:
	* dix/extension.c: (CloseDownExtensions):
	* dix/property.c: (NullPropertyReply):
	* dix/xpstubs.c: (XpClientIsBitmapClient), (XpClientIsPrintClient),
	(XprintOptions):
	* hw/kdrive/fbdev/fbdev.c: (fbdevUnmapFramebuffer),
	(fbdevRandRSetConfig):
	* hw/kdrive/fbdev/fbdev.h:
	* hw/kdrive/linux/agp.c: (GARTInit):
	* hw/kdrive/linux/bus.c:
	* hw/kdrive/linux/keyboard.c: (readKernelMapping):
	* hw/kdrive/linux/linux.c: (LinuxInit):
	* hw/kdrive/linux/mouse.c:
	* hw/kdrive/linux/ms.c:
	* hw/kdrive/linux/ps2.c:
	* hw/kdrive/mach64/mach64.c:
	* hw/kdrive/mach64/mach64draw.c:
	* hw/kdrive/mga/mga.c:
	* hw/kdrive/mga/mgadraw.c: (mgaPrepareSolid), (mgaPrepareCopy):
	* hw/kdrive/nvidia/nvidia.c: (nvidiaLockUnlock):
	* hw/kdrive/nvidia/nvidia.h:
	* hw/kdrive/nvidia/nvidiadraw.c: (nvidiaPrepareSolid),
	(nvidiaPrepareCopy), (nvidiaDrawInit), (nvidiaDrawEnable):
	* hw/kdrive/r128/r128.c: (r128ScreenInit), (r128Preserve),
	(r128DPMS):
	* hw/kdrive/r128/r128draw.c: (r128WaitAvail), (r128Setup),
	(r128DrawInit):
	* hw/kdrive/r128/r128stub.c:
	* hw/kdrive/smi/smi.c: (smiRandRSetConfig), (smiPreserve),
	(smiDPMS), (smiRestore):
	* hw/kdrive/smi/smi.h:
	* hw/kdrive/smi/smidraw.c: (smiPrepareSolid), (smiPrepareCopy),
	(smiDrawInit):
	* hw/kdrive/smi/smistub.c:
	* hw/kdrive/src/kaa.c:
	* hw/kdrive/src/kcmap.c:
	* hw/kdrive/src/kcurscol.c:
	* hw/kdrive/src/kdrive.c: (KdCreateScreenResources):
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/kinput.c:
	* hw/kdrive/src/knoop.c:
	* hw/kdrive/src/vga.c:
	* hw/kdrive/src/vga.h:
	* hw/kdrive/vesa/vesa.h:
	* hw/xnest/Color.c: (xnestCreateColormap), (xnestDestroyColormap),
	(xnestCountInstalledColormapWindows),
	(xnestGetInstalledColormapWindows),
	(xnestSameInstalledColormapWindows),
	(xnestSetInstalledColormapWindows),
	(xnestSetScreenSaverColormapWindow), (xnestDirectInstallColormaps),
	(xnestDirectUninstallColormaps), (xnestInstallColormap),
	(xnestUninstallColormap), (xnestListInstalledColormaps),
	(xnestStoreColors), (xnestResolveColor),
	(xnestCreateDefaultColormap):
	* hw/xnest/Color.h:
	* hw/xnest/Cursor.c: (xnestConstrainCursor), (xnestCursorLimits),
	(xnestDisplayCursor), (xnestRealizeCursor), (xnestUnrealizeCursor),
	(xnestRecolorCursor), (xnestSetCursorPosition):
	* hw/xnest/Display.c: (xnestOpenDisplay):
	* hw/xnest/Display.h:
	* hw/xnest/Events.c: (xnestExposurePredicate),
	(xnestNotExposurePredicate), (xnestCollectExposures),
	(xnestCollectEvents):
	* hw/xnest/Events.h:
	* hw/xnest/Font.c: (xnestRealizeFont), (xnestUnrealizeFont):
	* hw/xnest/GC.c: (xnestValidateGC), (xnestChangeGC), (xnestCopyGC),
	(xnestDestroyGC), (xnestDestroyClipHelper), (xnestChangeClip),
	(xnestDestroyClip), (xnestCopyClip), (xnestCreateGC):
	* hw/xnest/GCOps.c: (xnestFillSpans), (xnestSetSpans),
	(xnestGetSpans), (xnestQueryBestSize), (xnestPutImage),
	(xnestGetImage), (xnestBitBlitPredicate), (xnestBitBlitHelper),
	(xnestCopyArea), (xnestCopyPlane), (xnestPolyPoint),
	(xnestPolylines), (xnestPolySegment), (xnestPolyRectangle),
	(xnestPolyArc), (xnestFillPolygon), (xnestPolyFillRect),
	(xnestPolyFillArc), (xnestPolyText8), (xnestPolyText16),
	(xnestImageText8), (xnestImageText16), (xnestImageGlyphBlt),
	(xnestPolyGlyphBlt), (xnestPushPixels):
	* hw/xnest/GCOps.h:
	* hw/xnest/Keyboard.h:
	* hw/xnest/Screen.c: (xnestScreen):
	* hw/xnest/Screen.h:
	* hw/xnest/Visual.c: (xnestVisual), (xnestVisualFromID):
	* hw/xnest/Visual.h:
	* hw/xnest/Window.c: (xnestWindowPtr):
	* hw/xnest/XNCursor.h:
	* hw/xnest/XNFont.h:
	* hw/xnest/XNGC.h:
	* hw/xnest/XNPixmap.h:
	* hw/xnest/XNWindow.h:
	* include/extnsionst.h:
	* mi/Makefile.am:
	* mi/miinitext.c:
	* os/Makefile.am:
	* os/connection.c: (ClientAuthorized):
	* os/hpsocket.c: (set_socket_option), (unset_socket_option):
	* os/xdmauth.c: (XdmCheckCookie), (XdmToID):
	Prototype fixes (various)
	Add GCC warnings (including -Werror.  clean up your code)
	Other warning fixes (unused variables, etc)
	Get rid of unused extension interfaces (aux screen procs)
	Make lots of functions in kdrive static
	Eliminate unused code from os library

2003-10-25  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/vesa/vesa.c: (vesaSetShadow), (vesaMapFramebuffer),
	(vesaRandRSetConfig), (vesaInitScreen):
	Was using byteStride before set in computing off_screen_base
	Also a couple of unused variables removed

2003-10-24  Keith Packard  <keithp@keithp.com>

	* Makefile.am:
	* Xext/Makefile.am:
	* configure.ac:
	* damageext/Makefile.am:
	* dix/Makefile.am:
	* fb/Makefile.am:
	* hw/kdrive/fbdev/Makefile.am:
	* hw/kdrive/linux/Makefile.am:
	* hw/kdrive/mach64/Makefile.am:
	* hw/kdrive/mga/Makefile.am:
	* hw/kdrive/nvidia/Makefile.am:
	* hw/kdrive/r128/Makefile.am:
	* hw/kdrive/smi/Makefile.am:
	* hw/kdrive/src/Makefile.am:
	* hw/kdrive/vesa/Makefile.am:
	* hw/xnest/Makefile.am:
	* mi/Makefile.am:
	* miext/damage/Makefile.am:
	* miext/shadow/Makefile.am:
	* os/Makefile.am:
	* randr/Makefile.am:
	* render/Makefile.am:
	* xfixes/Makefile.am:
	Make building (almost) work with automake 1.4 or 1.7.
	The dist-bzip2 option needs help still.

2003-10-24  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/mach64/mach64.c: (mach64ScreenInit):
	Function pointer initializers in wrong order (oops)
	* hw/kdrive/src/kshadow.c: (KdShadowSet):
	Missing return value
	* include/os.h:
	Not obeying autoconf HAVE_ALLOCA_H all of the time.

2003-10-24  Keith Packard  <keithp@keithp.com>

	* damageext/damageext.c: (DamageExtensionInit):
	* damageext/damageextint.h:
	Make sure miext/damage is initialized when enabling damage
	extension

2003-10-24  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/fbdev/fbdev.c: (fbdevScreenInitialize),
	(fbdevMapFramebuffer), (fbdevSetScreenSizes),
	(fbdevUnmapFramebuffer), (fbdevSetShadow), (fbdevRandRSetConfig),
	(fbdevInitScreen), (fbdevFinishInitScreen), (fbdevCreateResources):
	* hw/kdrive/fbdev/fbdev.h:
	* hw/kdrive/fbdev/fbinit.c:
	* hw/kdrive/mach64/mach64.c: (mach64CreateResources):
	* hw/kdrive/mga/Makefile.am:
	* hw/kdrive/mga/mga.c: (mgaCreateResources):
	* hw/kdrive/nvidia/Makefile.am:
	* hw/kdrive/nvidia/nvidia.c:
	* hw/kdrive/r128/Makefile.am:
	* hw/kdrive/r128/r128.c:
	* hw/kdrive/r128/r128draw.c: (r128PrepareSolid), (r128PrepareCopy):
	* hw/kdrive/smi/Makefile.am:
	* hw/kdrive/smi/smi.c:
	* hw/kdrive/smi/smi.h:
	* hw/kdrive/src/kdrive.c: (KdCreateScreenResources),
	(KdScreenInit):
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/kshadow.c: (KdShadowFbAlloc), (KdShadowFbFree),
	(KdShadowSet), (KdShadowUnset):
	* hw/kdrive/vesa/vesa.c: (vesaSetScreenSizes), (vesaSetShadow),
	(vesaMapFramebuffer), (vesaUnmapFramebuffer), (vesaRandRSetConfig),
	(vesaInitScreen), (vesaFinishInitScreen), (vesaCreateResources),
	(vesaScreenFini):
	* hw/kdrive/vesa/vesa.h:
	* hw/kdrive/vesa/vesainit.c:
	Add function called at CreateScreenResources to get shadow set up
	on pixmap correctly.  Rework vesa and fbdev code to handle
	shadows right with the non-layer world.
	* mi/misprite.c:
	* mi/mispritest.h:
	Use GetScreenPixmap directly for damage detection of sprite.
	Avoids problems during server shutdown with windows disappearing
	before the sprite layer is closed.

2003-10-23  Keith Packard  <keithp@keithp.com>

	* Makefile.am:
	* configure.ac:
	* damageext/Makefile.am:
	* damageext/damageext.c: (DamageExtNotify), (DamageExtReport),
	(DamageExtDestroy), (ProcDamageQueryVersion), (ProcDamageCreate),
	(ProcDamageDestroy), (ProcDamageSubtract), (XDamageNumberRequests),
	(ProcDamageDispatch), (SProcDamageQueryVersion),
	(SProcDamageCreate), (SProcDamageDestroy), (SProcDamageSubtract),
	(SProcDamageDispatch), (DamageClientCallback), (DamageResetProc),
	(FreeDamageExt), (FreeDamageExtWin), (SDamageNotifyEvent),
	(DamageExtensionInit):
	* damageext/damageext.h:
	* damageext/damageextint.h:
	* hw/kdrive/fbdev/Makefile.am:
	* hw/kdrive/linux/Makefile.am:
	* hw/kdrive/mach64/Makefile.am:
	* hw/kdrive/mga/Makefile.am:
	* hw/kdrive/nvidia/Makefile.am:
	* hw/kdrive/r128/Makefile.am:
	* hw/kdrive/smi/Makefile.am:
	* hw/kdrive/src/Makefile.am:
	* hw/kdrive/vesa/Makefile.am:
	* hw/xnest/Makefile.am:
	* mi/Makefile.am:
	* mi/miinitext.c:
	* mi/misprite.c:
	* miext/damage/damage.c: (damageDamageRegion), (DamageCreate),
	(DamageDestroy):
	* miext/damage/damage.h:
	* miext/damage/damagestr.h:
	* miext/shadow/shadow.c: (shadowSetup):
	* xfixes/region.c:
	* xfixes/xfixes.h:
	* xfixes/xfixesint.h:
	Ok, so this change is way bigger than it needed to be, but I
	couldn't stand it anymore.  The "real" change here is the
	addition of the damage extension server side pieces and a
	minor change of the miext/damage interface to add a callback
	on damage destroy.  All of the configuration changes are to
	add macros for various sets of libraries so that we don't have to
	keep editing every Makefile.am whenever we add another extension
	to the library.  The xfixes changes expose VERIFY_REGION so
	that damageext can use it.

2003-10-23  Keith Packard  <keithp@keithp.com>

	* fb/fbcopy.c: (fbDoCopy):
	Always call SourceValidate, even if src and dst are the same.
	This lets the software cursor code use Damage and not have to
	wrap all copy functions to see source effects.

2003-10-22  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/mach64/mach64draw.c: (mach64Setup), (mach64DoneSolid),
	(mach64DoneCopy):
	Added SYNC_ALWAYS for debugging (sync after each operation)
	* mi/misprite.c: (miSpriteReportDamage), (miSpriteCopyWindow):
	Add SPRITE_DEBUG_ENABLE to help debug cursor problems
	* miext/damage/damage.c: (damageDamageRegion), (damageDamageBox),
	(damageDamageRect), (damageValidateGC):
	Leave all GCs redirected through Damage GC ops so that adding
	damage doesn't require revalidating all GCs (that would require
	walking the window tree and resetting all serial numbers).
	Add DAMAGE_DEBUG_ENABLE to help debug damage problems

2003-10-22  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/src/kaa.c: (kaaCreatePixmap):
	Don't start pixmaps differing from root format in off-screen memory

2003-10-21  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/src/kaa.c: (kaaDestroyPixmap), (kaaGetOffscreenPixmap):
	oops.  Failed to set window offsets in kaaGetOffscreenPixmap
	
	* hw/kdrive/vesa/vesa.c: (vesaInitScreen), (vesaFinishInitScreen):
	Initialized shadow too early; acceleration stomped damage

2003-10-21  Keith Packard  <keithp@keithp.com>

	* configure.ac:
	Build damage infrastructure.  Don't build layer
	
	* fb/fbcopy.c: (fbCopyNtoN), (fbCopyArea):
	Move check for 24/32 copy to fbCopyNtoN so that other users will hit
	it
	
	* hw/kdrive/fbdev/Makefile.am:
	* hw/kdrive/fbdev/fbdev.c: (fbdevScreenInitialize),
	(fbdevGetPixmap), (fbdevPixmapSet), (fbdevRandRSetConfig),
	(fbdevInitScreen), (fbdevFinishInitScreen):
	* hw/kdrive/fbdev/fbdev.h:
	Eliminate miext/layer
	
	* hw/kdrive/linux/Makefile.am:
	Build damage infrastructure.  Don't build layer
	
	* hw/kdrive/mach64/Makefile.am:
	Build damage infrastructure.  Don't build layer
	
	* hw/kdrive/mach64/mach64.c: (mach64ScreenInit),
	(mach64InitScreen), (mach64ScreenFini), (mach64CardFini):
	* hw/kdrive/mach64/mach64.h:
	* hw/kdrive/mach64/mach64draw.c: (mach64DrawFini):
	* hw/kdrive/mach64/mach64video.c: (mach64InitVideo),
	(mach64FiniVideo):
	Memory leak fix of mach64c on server reset
	Memory leak fix for video on server reset.
	Eliminate layer
	
	* hw/kdrive/mga/Makefile.am:
	* hw/kdrive/mga/mga.c: (mgaScreenInit):
	Build damage infrastructure.  Don't build layer
	
	* hw/kdrive/nvidia/Makefile.am:
	* hw/kdrive/nvidia/nvidia.c: (nvidiaRandRSetConfig),
	(nvidiaPreserve), (nvidiaEnable):
	Build damage infrastructure.  Don't build layer
	
	* hw/kdrive/r128/Makefile.am:
	* hw/kdrive/smi/Makefile.am:
	Build damage infrastructure.  Don't build layer
	
	* hw/kdrive/src/Makefile.am:
	Build damage infrastructure.  Don't build layer
	
	* hw/kdrive/src/kaa.c: (kaaDestroyPixmap), (kaaCreatePixmap),
	(kaaPixmapIsOffscreen), (kaaGetOffscreenPixmap),
	(kaaDrawableIsOffscreen), (kaaFillSpans), (kaaCopyNtoN),
	(kaaPolyFillRect), (kaaSolidBoxClipped), (kaaValidateGC),
	(kaaFillRegionSolid), (kaaDrawInit), (kaaDrawFini):
	Don't assume windows are onscreen, use GetWindowPixmap
	and test devPrivate.ptr.  Make sure depth 24 pixmaps are 24bpp
	when hardware format is 24bpp.
	
	* hw/kdrive/src/kasync.c:
	Get rid of debug KdAssertSync function
	
	* hw/kdrive/src/kdrive.c: (KdCloseScreen), (KdScreenInit):
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/koffscreen.c: (KdOffscreenValidate),
	(KdOffscreenAlloc), (KdOffscreenInit):
	add memory_size to KdScreenInfo, eliminate off_screen_size,
	fix tests to suit.
	
	* hw/kdrive/vesa/Makefile.am:
	* hw/kdrive/vesa/vesa.c: (vesaScreenInitialize), (vesaUpdateMono),
	(vesaGetPixmap), (vesaMapFramebuffer), (vesaPixmapSet),
	(vesaRandRSetConfig), (vesaInitScreen), (vesaFinishInitScreen),
	(vesaScreenFini):
	* hw/kdrive/vesa/vesa.h:
	Build damage infrastructure.  Don't build layer
	
	* hw/xnest/Makefile.am:
	Use damage (for software cursor, I guess)

	* mi/Makefile.am:
	* mi/misprite.c: (miSpriteReportDamage), (miSpriteCopyWindow):
	* mi/mispritest.h:
	Damage is used for software cursor

	* miext/Makefile.am:
	* miext/layer/Makefile.am:
	* miext/layer/layerinit.c: (layerCloseScreen):
	Build damage infrastructure.  Don't build layer
	
	* miext/shadow/Makefile.am:
	* miext/shadow/shadow.c: (shadowRedisplay), (shadowGetImage),
	(shadowCloseScreen), (shadowSetup), (shadowSet), (shadowUnset),
	(shadowInit):
	* miext/shadow/shadow.h:
	* miext/shadow/shpacked.c: (shadowUpdatePacked):
	* miext/shadow/shplanar.c: (shadowUpdatePlanar4):
	* miext/shadow/shplanar8.c: (shadowUpdatePlanar4x8):
	* miext/shadow/shrotate.c: (shadowUpdateRotatePacked):
	* miext/shadow/shrotpack.h:
	Use damage to track changes

	* xfixes/xfixes.c: (XFixesResetProc):
	Fix memory leak

2003-10-19  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/src/kaa.c: (kaaDestroyPixmap):
	* hw/kdrive/src/koffscreen.c: (KdOffscreenKickOut),
	(KdOffscreenSwapOut):
	Minor cleanups -- remove a couple of bogus KdCheckSync calls,
	restructure KdOffscreenSwapOut to avoid unneeded 'continue'

2003-10-19  Keith Packard  <keithp@keithp.com>

	* hw/kdrive/src/kaa.c: (kaaDestroyPixmap):
	* hw/kdrive/src/koffscreen.c: (KdOffscreenKickOut),
	(KdOffscreenSwapOut):
	Minor cleanups -- remove a couple of bogus KdCheckSync calls,
	restructure KdOffscreenSwapOut to avoid unneeded 'continue'

2003-10-19  Keith Packard  <keithp@keithp.com>

	* Xext/shape.c: (ShapeExtensionInit), (SendShapeNotify):
	* Xext/shapeint.h:
	* dix/cursor.c:
	* dix/window.c:
	* include/cursorstr.h:
	* include/picture.h:
	* include/window.h:
	* xfixes/Makefile.am:
	* xfixes/cursor.c: (CursorDisplayCursor),
	(SProcXFixesSelectCursorInput), (SXFixesCursorNotifyEvent),
	(CopyCursorToImage), (ProcXFixesGetCursorImage),
	(SProcXFixesGetCursorImage), (ProcXFixesSetCursorName),
	(SProcXFixesSetCursorName), (ProcXFixesGetCursorName),
	(SProcXFixesGetCursorName), (ProcXFixesGetCursorImageAndName),
	(SProcXFixesGetCursorImageAndName), (ReplaceCursorLookup),
	(ReplaceCursor), (TestForCursor), (ProcXFixesChangeCursor),
	(SProcXFixesChangeCursor), (TestForCursorName),
	(ProcXFixesChangeCursorByName), (SProcXFixesChangeCursorByName):
	* xfixes/xfixes.c: (ProcXFixesQueryVersion),
	(XFixesNumberRequests), (ProcXFixesDispatch),
	(SProcXFixesQueryVersion), (SProcXFixesDispatch),
	(XFixesClientCallback), (XFixesExtensionInit):
	* xfixes/xfixesint.h:
	Add cursor name and region requests to XFixes extension for
	version 2 support

2003-10-16  Keith Packard <keithp@keithp.com>
	* hw/kdrive/src/kdoffscreen.c: (KdOffscreenSwapOut/KdOffscreenSwapIn)
	Discard/reconstruct list of offscreen areas on VT switch so no
	allocations can occur while switched away.
	* hw/kdrive/src/kdrive.h: (KdScreenInfo)
	Set type of off_screen_areas member to actual type instead of pointer

2003-10-15  Anders Carlsson  <andersca@gnome.org>

	* hw/kdrive/mach64/mach64.c: (mach64ScreenInit):
	* hw/kdrive/mach64/mach64.h:
	* hw/kdrive/mach64/mach64draw.c: (mach64Setup):
	* hw/kdrive/mga/mga.c: (mgaScreenInit):
	* hw/kdrive/mga/mga.h:
	* hw/kdrive/mga/mgadraw.c: (mgaPrepareSolid), (mgaPrepareCopy):
	* hw/kdrive/src/kaa.c: (kaaPixmapAllocArea):
	* hw/kdrive/src/kdrive.h:
	Add a memory_base variable and use it.
	
2003-10-14  Keith Packard <keithp@keithp.com>
	* hw/kdrive/*/Makefile.am
	Libraries in local dir must not use global path or make
	doesn't build things in the right order (-j)
	* hw/kdrive/mga/mga.h, mgadraw.c
	Fix warnings

2003-10-14  Keith Packard <keithp@keithp.com>
	* hw/kdrive/src/kaa.c: various
	Split out pixmap allocation debug statements
	Fix bogus offscreen pixmap size test
	Add migration to composite function for source operands
	* hw/kdrive/vesa/vbe.c, vbe.h, vesa.c, vm86.c: VbeDPMS
	Remove extraneous call to VbeGetVib.

2003-10-14  Keith Packard <keithp@keithp.com>

	* hw/kdrive/mach64/mach64draw.c:
	Avoid attempting acceleration on non-screen formats (for now)
	* hw/kdrive/mach64/mach64video.c:
	Offscreen allocator API changes.
	

2003-10-14  Keith Packard <keithp@keithp.com>

	* miext/layer/layerpict.c:
	Use same assumptions as layergc about what layer kind
	is approprate for unwrapping pixmap operations.  This
	makes sure the accelerated code gets invoked for pixmaps
	* hw/kdrive/src/kaa.c:
	* hw/kdrive/src/kasync.c:
	* hw/kdrive/src/kdrive.c:
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/koffscreen.c:
	Add pixmap migration support to kaa.  Can't quite automatically
	migrate pixmaps off-screen, but soon we will.  Can kick objects
	out of video memory.
	Move per-screen linked list pointers to pixmap private.
	Wrap Composite in preparation for migrating pixmaps.
	Have kasync ignore drawable type so that pixmaps trigger sync
	Add KdOffscreenFini to cleanup on server reset.
	Switch off screen area to have only a 'save' function;
	moving objects to off screen memory is done by saving then
	freeing the area.

2003-10-13  Anders Carlsson  <andersca@gnome.org>

	* hw/kdrive/mga/mgadraw.c: (mgaPrepareSolid), (mgaPrepareCopy):
	* hw/kdrive/src/kaa.c: (kaaMoveInPixmap), (kaaGetDrawingPixmap),
	(kaaFillSpans), (kaaCopyNtoN), (kaaPolyFillRect),
	(kaaSolidBoxClipped), (kaaValidateGC), (kaaFillRegionSolid):
	* hw/kdrive/src/kdrive.h:
	Use pixmaps instead of drawables in the kaa functions. Have the
	mga server support accelerated operations on offscreen pixmaps.
	
2003-10-13  Anders Carlsson  <andersca@gnome.org>

	* hw/kdrive/mga/mgadraw.c:
	* hw/kdrive/src/kaa.c: (kaaMoveOutPixmap), (kaaMoveInPixmap),
	(kaaDestroyPixmap), (kaaCreatePixmap), (kaaDrawInit):
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/koffscreen.c: (KdOffscreenSwapOut):
	Add support for offscreen pixmaps. 
	
2003-10-13  Anders Carlsson  <andersca@gnome.org>

	* hw/kdrive/src/koffscreen.c: (KdOffscreenAlloc),
	(KdOffscreenSwapOut), (KdOffscreenSwapIn), (KdOffscreenInit):
	Fix a couple of bugs.
	
2003-10-13  Anders Carlsson  <andersca@gnome.org>

	* hw/kdrive/mach64/mach64draw.c:
	* hw/kdrive/mga/mga.c: (mgaScreenInit), (mgaPreserve), (mgaDPMS),
	(mgaDisable):
	* hw/kdrive/mga/mga.h:
	* hw/kdrive/mga/mgadraw.c: (mgaWaitAvail), (mgaSetup),
	(mgaPrepareSolid), (mgaSolid), (mgaPrepareCopy), (mgaCopy),
	(mgaDrawInit):
	* hw/kdrive/nvidia/nvidiadraw.c:
	* hw/kdrive/r128/r128draw.c:
	* hw/kdrive/smi/smidraw.c:
	* hw/kdrive/src/Makefile.am:
	* hw/kdrive/src/kaa.c: (kaaFillSpans), (kaaCopyNtoN),
	(kaaPolyFillRect), (kaaSolidBoxClipped), (kaaFillRegionSolid),
	(kaaDrawInit):
	* hw/kdrive/src/kdrive.c: (KdDisableScreen), (KdEnableScreen),
	(KdScreenInit), (KdInitScreen):
	* hw/kdrive/src/kdrive.h:
	* hw/kdrive/src/koffscreen.c: (KdOffscreenAlloc),
	(KdOffscreenSwapOut), (KdOffscreenSwapIn), (KdOffscreenFree),
	(KdOffscreenInit):
	Add offscreen memory manager and update the servers to reflect the name
	change for the kaa structure.
	
2003-10-12  Phil Blundell  <pb@nexus.co.uk>

	* configure.ac: Put x11 and xext in XNESTSERVER_LIBS not
	XSERVER_LIBS, to avoid linking all servers against those
	libraries.
	* hw/xnest/Makefile.am: Use XNESTSERVER_LIBS, XNESTSERVER_CFLAGS.

2003-10-12  Anders Carlsson  <andersca@gnome.org>

	* configure.ac: Add x11 and xext to the list of required modules
	since xnest uses those.

2003-10-12  Anders Carlsson  <andersca@gnome.org>

	* configure.ac: Enable warnings.

2003-10-11  Phil Blundell  <pb@nexus.co.uk>

	* configure.ac
	* hw/Makefile.am: Add Xnest server.

2003-10-09  Anders Carlsson  <andersca@gnome.org>

	* hw/kdrive/Makefile.am (SUBDIRS): Build smi after vesa.

2003-10-03  Keith Packard <keithp@keithp.com>

	* configure.ac Makefile.am os/oscolor.c Xext/saver.c
	  Xext/Makefile.am hw/kdrive/linux/ts.c hw/kdrive/src/Makefile.am
	  hw/kdrive/src/kdrive.h hw/kdrive/src/kinput.c hw/kdrive/src/kmap.c
	Autodetect VM86 (for vesa), AGPGART, APM, MTRR, tslib and
	handhelds.org touch screen.
	Add USE_RGB_BUILTIN and code for fileless RGB database.
	Add MIT-SCREEN-SAVER

2003-09-30  Matthew Allum <mallum@handhelds.org>

	* hw/kdrive/linux/tslib.c
	Fixed tslib driver to handle VT switches

2003-09-30  Matthew Allum <mallum@handhelds.org>

	* configure.ac
	* hw/kdrive/linux/Makefile.am
	* hw/kdrive/linux/fbdev/Makefile.am
	Added --enable-tslib configure switch and related 
	Makefile.am gubbins to build with tslib.

2003-09-26  Anders Carlsson  <andersca@gnome.org>

	* configure.ac (PIXPRIV): Define PIXPRIV.

2003-09-25  Anders Carlsson  <andersca@gnome.org>

	* hw/kdrive/src/koffscreen.c: Add beginnings of offscreen
	memory manager.

2003-09-23  Keith Packard    <keithp@keithp.com>

	* hw/kdrive/src/kdrive.c
	* hw/kdrive/src/kdrive.h
	Add -switchCmd option to set command that is executed
	whenever the VT is enabled or disabled.  This permits
	input device to be customized by external apps when switching
	to X.

2003-09-22  Anders Carlsson  <andersca@gnome.org>

	* hw/kdrive/mga/mga.h:
	* hw/kdrive/mga/mgadraw.c: (mgaSetup), (mgaPrepareSolid),
	(mgaPrepareCopy), (mgaCopy):
	Accelerate server.
	
2003-09-18  Anders Carlsson  <andersca@gnome.org>

	* configure.ac:
	* hw/kdrive/Makefile.am:
	Add mga server to the build.
	
2003-09-16  Anders Carlsson  <andersca@gnome.org>

	* configure.ac:
	* hw/kdrive/Makefile.am:
	* hw/kdrive/fbdev/Makefile.am:
	* hw/kdrive/vesa/Makefile.am:
	Add fbdev server to the build.
