diff options
author | jhartmann <jhartmann> | 2000-03-16 03:37:29 +0000 |
---|---|---|
committer | jhartmann <jhartmann> | 2000-03-16 03:37:29 +0000 |
commit | dbfdbdf2daa5f159d7a0e88ac3ec6de3f2915d9f (patch) | |
tree | 0f8c858a1252c25efe22f0105e4e90af90503fdd /xc/programs | |
parent | 0cf0f696438eca09b6d27cd555bf638227b43c4f (diff) |
Merge with 4.0X_4_0-20000315-merge
Diffstat (limited to 'xc/programs')
237 files changed, 1126 insertions, 5890 deletions
diff --git a/xc/programs/Imakefile b/xc/programs/Imakefile index 88e77c7c5..253d16893 100644 --- a/xc/programs/Imakefile +++ b/xc/programs/Imakefile @@ -2,7 +2,7 @@ XCOMM $TOG: Imakefile /main/85 1998/02/26 17:14:44 kaleb $ XCOMM XCOMM XCOMM -XCOMM $XFree86: xc/programs/Imakefile,v 3.26 2000/02/13 03:26:04 dawes Exp $ +XCOMM $XFree86: xc/programs/Imakefile,v 3.28 2000/02/26 05:35:07 dawes Exp $ #define IHaveSubdirs #define PassCDebugFlags CDEBUGFLAGS="$(CDEBUGFLAGS)" diff --git a/xc/programs/Xserver/GL/dri/dri.c b/xc/programs/Xserver/GL/dri/dri.c index a2d1d66a6..68e638f27 100644 --- a/xc/programs/Xserver/GL/dri/dri.c +++ b/xc/programs/Xserver/GL/dri/dri.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/GL/dri/dri.c,v 1.11 2000/02/15 07:13:32 martin Exp $ */ +/* $XFree86: xc/programs/Xserver/GL/dri/dri.c,v 1.13 2000/03/04 01:53:01 martin Exp $ */ /************************************************************************** Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas. diff --git a/xc/programs/Xserver/GL/dri/dri.h b/xc/programs/Xserver/GL/dri/dri.h index 545694377..d82ec5359 100644 --- a/xc/programs/Xserver/GL/dri/dri.h +++ b/xc/programs/Xserver/GL/dri/dri.h @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/GL/dri/dri.h,v 1.7 2000/02/14 06:27:13 martin Exp $ */ +/* $XFree86: xc/programs/Xserver/GL/dri/dri.h,v 1.9 2000/03/04 01:53:02 martin Exp $ */ /************************************************************************** Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas. diff --git a/xc/programs/Xserver/GL/dri/dristruct.h b/xc/programs/Xserver/GL/dri/dristruct.h index 0ebfc720c..392be3d97 100644 --- a/xc/programs/Xserver/GL/dri/dristruct.h +++ b/xc/programs/Xserver/GL/dri/dristruct.h @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/GL/dri/dristruct.h,v 1.5 2000/02/14 06:27:14 martin Exp $ */ +/* $XFree86: xc/programs/Xserver/GL/dri/dristruct.h,v 1.7 2000/03/02 16:07:38 martin Exp $ */ /************************************************************************** Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas. @@ -30,7 +30,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * Authors: * Jens Owen <jens@precisioninsight.com> * - * $PI: xc/programs/Xserver/GL/dri/dristruct.h,v 1.28 1999/08/04 18:12:56 faith Exp $ */ #ifndef DRI_STRUCT_H diff --git a/xc/programs/Xserver/GL/mesa/include/GL/Imakefile b/xc/programs/Xserver/GL/mesa/include/GL/Imakefile index 654d183fd..3bef7e2db 100644 --- a/xc/programs/Xserver/GL/mesa/include/GL/Imakefile +++ b/xc/programs/Xserver/GL/mesa/include/GL/Imakefile @@ -1,5 +1,4 @@ -XCOMM $XFree86: xc/programs/Xserver/GL/mesa/include/GL/Imakefile,v 1.3 2000/02/08 17:18:51 dawes Exp $ -XCOMM $PI: xc/programs/Xserver/GL/mesa/include/GL/Imakefile,v 1.6 1999/03/15 21:36:09 martin Exp $ +XCOMM $XFree86: xc/programs/Xserver/GL/mesa/include/GL/Imakefile,v 1.4 2000/02/23 04:46:55 martin Exp $ #define IHaveModules #include <Server.tmpl> diff --git a/xc/programs/Xserver/GL/mesa/src/Imakefile b/xc/programs/Xserver/GL/mesa/src/Imakefile index 1dd376dce..29ae102d4 100644 --- a/xc/programs/Xserver/GL/mesa/src/Imakefile +++ b/xc/programs/Xserver/GL/mesa/src/Imakefile @@ -1,5 +1,4 @@ -XCOMM $XFree86: xc/programs/Xserver/GL/mesa/src/Imakefile,v 1.11 2000/02/18 12:18:56 tsi Exp $ -XCOMM $PI: xc/programs/Xserver/GL/mesa/src/Imakefile,v 1.9 1999/05/27 03:43:46 jens Exp $ +XCOMM $XFree86: xc/programs/Xserver/GL/mesa/src/Imakefile,v 1.13 2000/03/02 16:07:38 martin Exp $ #define IHaveModules #include <Server.tmpl> diff --git a/xc/programs/Xserver/GL/mesa/src/X/Imakefile b/xc/programs/Xserver/GL/mesa/src/X/Imakefile index 9dd8819e4..83d864cb7 100644 --- a/xc/programs/Xserver/GL/mesa/src/X/Imakefile +++ b/xc/programs/Xserver/GL/mesa/src/X/Imakefile @@ -1,5 +1,4 @@ -XCOMM $XFree86: xc/programs/Xserver/GL/mesa/src/X/Imakefile,v 1.6 2000/02/08 17:18:52 dawes Exp $ -XCOMM $PI: xc/programs/Xserver/GL/mesa/src/X/Imakefile,v 1.6 1999/03/15 21:36:10 martin Exp $ +XCOMM $XFree86: xc/programs/Xserver/GL/mesa/src/X/Imakefile,v 1.7 2000/02/23 04:46:56 martin Exp $ #define IHaveModules #include <Server.tmpl> diff --git a/xc/programs/Xserver/GL/mesa/src/X/xf86glx.c b/xc/programs/Xserver/GL/mesa/src/X/xf86glx.c index 3555ba070..f305e3488 100644 --- a/xc/programs/Xserver/GL/mesa/src/X/xf86glx.c +++ b/xc/programs/Xserver/GL/mesa/src/X/xf86glx.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/GL/mesa/src/X/xf86glx.c,v 1.6 2000/02/08 17:18:52 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/GL/mesa/src/X/xf86glx.c,v 1.7 2000/02/23 04:46:56 martin Exp $ */ /************************************************************************** Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas. @@ -30,7 +30,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * Authors: * Kevin E. Martin <kevin@precisioninsight.com> * - * $PI: xc/programs/Xserver/GL/mesa/src/X/xf86glx.c,v 1.15 1999/08/04 18:14:14 faith Exp $ */ #include <miscstruct.h> diff --git a/xc/programs/Xserver/GL/mesa/src/X/xf86glx_util.c b/xc/programs/Xserver/GL/mesa/src/X/xf86glx_util.c index d9bdae17d..ff2654830 100644 --- a/xc/programs/Xserver/GL/mesa/src/X/xf86glx_util.c +++ b/xc/programs/Xserver/GL/mesa/src/X/xf86glx_util.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/GL/mesa/src/X/xf86glx_util.c,v 1.3 1999/06/14 07:31:43 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/GL/mesa/src/X/xf86glx_util.c,v 1.5 2000/03/02 16:07:39 martin Exp $ */ /************************************************************************** Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas. diff --git a/xc/programs/Xserver/GL/mesa/src/X/xf86glx_util.h b/xc/programs/Xserver/GL/mesa/src/X/xf86glx_util.h index 71965b318..ba9a04f9d 100644 --- a/xc/programs/Xserver/GL/mesa/src/X/xf86glx_util.h +++ b/xc/programs/Xserver/GL/mesa/src/X/xf86glx_util.h @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/GL/mesa/src/X/xf86glx_util.h,v 1.2 1999/06/14 07:31:43 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/GL/mesa/src/X/xf86glx_util.h,v 1.4 2000/03/02 16:07:39 martin Exp $ */ /************************************************************************** Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas. diff --git a/xc/programs/Xserver/Imakefile b/xc/programs/Xserver/Imakefile index f0ca1ff94..45300d897 100644 --- a/xc/programs/Xserver/Imakefile +++ b/xc/programs/Xserver/Imakefile @@ -2,7 +2,7 @@ XCOMM $TOG: Imakefile /main/249 1997/12/11 11:18:14 kaleb $ /* * Server Master Makefile */ -XCOMM $XFree86: xc/programs/Xserver/Imakefile,v 3.180 2000/02/11 18:06:39 dawes Exp $ +XCOMM $XFree86: xc/programs/Xserver/Imakefile,v 3.182 2000/02/29 15:24:15 tsi Exp $ #ifndef InstallXserverSetUID #define InstallXserverSetUID NO @@ -612,13 +612,14 @@ XF86IDRIVERLIB = $(XF86SRC)/input/LibraryTargetName(idriver) #if !DoLoadableServer XF86DRVOBJS = $(XF86SRC)/drivers/drvConf.o XF86DRVLIBS = $(XF86DRIVERLIB) $(XF86RAMDACLIB) $(XF86DDCLIB) $(XF86I2CLIB) \ - $(XF86INT10LIB) $(XF86XAALIB) $(XF86VGAHWLIB) $(XF86FBDEVHWLIB) \ + $(XF86XAALIB) $(XF86VGAHWLIB) $(XF86FBDEVHWLIB) \ $(XF8_32BPPLIB) $(XF8_16BPPLIB) $(XF24_32BPPLIB) \ $(XF4BPPLIB) $(XF1BPPLIB) $(XFSHADOWFBLIB) $(AFBLIB) XF86IDRVOBJS = $(XF86SRC)/input/drvConf.o XF86IDRVLIBS = $(XF86IDRIVERLIB) XF86SCANLIB = $(XF86SRC)/scanpci/LibraryTargetName(scanpci) -XF86LIBS = $(XF86INIT) $(XF86COMLIB) $(XF86RACLIB) $(XF86PARSLIB) $(XF86OSLIB) +XF86LIBS = $(XF86INIT) $(XF86COMLIB) $(XF86RACLIB) $(XF86PARSLIB) \ + $(XF86OSLIB) $(XF86INT10LIB) #else XF86LIBS = $(XF86INIT) $(XF86COMLIB) $(XF86PARSLIB) $(XF86OSLIB) #endif @@ -637,7 +638,7 @@ XF86SERVERLIBS = $(XF86DRVLIBS) $(XF86IDRVLIBS) $(XF86LIBS) $(XF86LOADERLIB) \ #if HasParallelMake MakeMutex($(XF86SERVERSUBDIRS) $(XF86SERVERLIBS) $(XF86SERVERSYSLIBS)) #endif -#if HasGnuMake +#if ForceServerRemake $(XF86SERVERLIBS) $(XF86SERVERSYSLIBS):: $(XF86SERVERSUBDIRS) @if [ -f $@ ]; then touch $@; fi #endif @@ -695,7 +696,7 @@ FBDEVSYSLIBS = StdKdSysLibs #if HasParallelMake MakeMutex($(FBDEVDIRS) $(FBDEVOBJS) $(FBDEVLIBS) $(FBDEVSYSLIBS)) #endif -#if HasGnuMake +#if ForceServerRemake $(FBDEVOBJS) $(XFBDEV) $(FBDEVLIBS) $(FBDEVSYSLIBS):: $(FBDEVDIRS) @if [ -f $@ ]; then touch $@; fi #endif @@ -720,7 +721,7 @@ SAVAGESYSLIBS = StdKdSysLibs #if HasParallelMake MakeMutex($(SAVAGEDIRS) $(SAVAGEOBJS) $(SAVAGELIBS) $(SAVAGESYSLIBS)) #endif -#if HasGnuMake +#if ForceServerRemake $(SAVAGEOBJS) $(XSAVAGE) $(SAVAGELIBS) $(SAVAGESYSLIBS):: $(SAVAGEDIRS) @if [ -f $@ ]; then touch $@; fi #endif @@ -747,7 +748,7 @@ TRIDENTSYSLIBS = StdKdSysLibs #if HasParallelMake MakeMutex($(TRIDENTDIRS) $(TRIDENTLIBS) $(TRIDENTSYSLIBS)) #endif -#if HasGnuMake +#if ForceServerRemake $(TRIDENTOBJS) $(TRIDENTLIBS) $(TRIDENTSYSLIBS):: $(TRIDENTDIRS) @if [ -f $@ ]; then touch $@; fi #endif @@ -772,7 +773,7 @@ SIS530SYSLIBS = StdKdSysLibs #if HasParallelMake MakeMutex($(SIS530DIRS) $(SIS530OBJS) $(SIS530LIBS) $(SIS530SYSLIBS)) #endif -#if HasGnuMake +#if ForceServerRemake $(SIS530OBJS) $(SIS530LIBS) $(SIS530SYSLIBS):: $(SIS530DIRS) @if [ -f $@ ]; then touch $@; fi #endif @@ -797,7 +798,7 @@ TRIOSYSLIBS = StdKdSysLibs #if HasParallelMake MakeMutex($(TRIODIRS) $(TRIOOBJS) $(TRIOLIBS) $(TRIOSYSLIBS)) #endif -#if HasGnuMake +#if ForceServerRemake $(TRIOOBJS) $(TRIOLIBS) $(TRIOSYSLIBS):: $(TRIODIRS) @if [ -f $@ ]; then touch $@; fi #endif @@ -828,7 +829,7 @@ XCOMM #if HasParallelMake MakeMutex($(TS300DIRS) $(TS300OBJS) $(TS300LIBS) $(TS300SYSLIBS)) #endif -#if HasGnuMake +#if ForceServerRemake $(TS300OBJS) $(TS300LIBS) $(TS300SYSLIBS):: $(TS300DIRS) @if [ -f $@ ]; then touch $@; fi #endif @@ -852,7 +853,7 @@ ITSYSYSLIBS = StdKdSysLibs #if HasParallelMake MakeMutex($(ITSYDIRS) $(ITSYOBJS) $(ITSYLIBS) $(ITSYSYSLIBS)) #endif -#if HasGnuMake +#if ForceServerRemake $(ITSYOBJS) $(ITSYLIBS) $(ITSYSYSLIBS):: $(ITSYDIRS) @if [ -f $@ ]; then touch $@; fi #endif @@ -888,7 +889,7 @@ XPSYSLIBS = $(FONTLIBS) $(CBRT) $(SYSLIBS) #if HasParallelMake MakeMutex($(XPSUBDIRS) $(XPOBJS) $(XPLIBS) $(XPSYSLIBS)) #endif -#if HasGnuMake +#if ForceServerRemake $(XPOBJS) $(XPLIBS) $(XPSYSLIBS):: $(XPSUBDIRS) @if [ -f $@ ]; then touch $@; fi #endif @@ -920,7 +921,7 @@ XNESTSYSLIBS = $(FONTLIBS) $(LDPRELIBS) $(XLIB) $(SYSLIBS) #if HasParallelMake MakeMutex($(XNESTDIRS) $(XNESTOBJS) $(XNESTLIBS) $(XNESTSYSLIBS)) #endif -#if HasGnuMake +#if ForceServerRemake $(XNESTOBJS) $(XNESTLIBS) $(XNESTSYSLIBS):: $(XNESTDIRS) @if [ -f $@ ]; then touch $@; fi #endif @@ -977,7 +978,7 @@ XVFBSYSLIBS = $(FONTLIBS) $(SYSLIBS) #if HasParallelMake MakeMutex($(XVFBDIRS) $(XVFBOBJS) $(XVFB) $(XVFBLIBS) $(XVFBSYSLIBS)) #endif -#if HasGnuMake +#if ForceServerRemake $(XVFBOBJS) $(XVFB) $(XVFBLIBS) $(XVFBSYSLIBS):: $(XVFBDIRS) @if [ -f $@ ]; then touch $@; fi #endif diff --git a/xc/programs/Xserver/Xext/panoramiXsrv.h b/xc/programs/Xserver/Xext/panoramiXsrv.h index 0020cd2eb..c12986093 100644 --- a/xc/programs/Xserver/Xext/panoramiXsrv.h +++ b/xc/programs/Xserver/Xext/panoramiXsrv.h @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/Xext/panoramiXsrv.h,v 1.4 2000/01/22 01:59:03 mvojkovi Exp $ */ +/* $XFree86: xc/programs/Xserver/Xext/panoramiXsrv.h,v 1.5 2000/03/03 22:17:37 mvojkovi Exp $ */ #ifndef _PANORAMIXSRV_H_ #define _PANORAMIXSRV_H_ @@ -15,6 +15,8 @@ extern Bool PanoramiXCreateConnectionBlock(void); extern PanoramiXRes * PanoramiXFindIDByScrnum(RESTYPE, XID, int); extern PanoramiXRes * PanoramiXFindIDOnAnyScreen(RESTYPE, XID); extern WindowPtr PanoramiXChangeWindow(int, WindowPtr); +extern Bool XineramaRegisterConnectionBlockCallback(void (*func)(void)); + extern RegionRec XineramaScreenRegions[MAXSCREENS]; extern unsigned long XRC_DRAWABLE; diff --git a/xc/programs/Xserver/hw/xfree86/DGA b/xc/programs/Xserver/hw/xfree86/DGA deleted file mode 100644 index 3d4f21a5b..000000000 --- a/xc/programs/Xserver/hw/xfree86/DGA +++ /dev/null @@ -1,476 +0,0 @@ - - -#include <X11/extensions/xf86dga.h> - - - XFree86 DGA is not intended as a direct rendering API, but rather, -as a mechanism to "get the X-Server out of the way" so that a direct -rendering API, such as OpenGL, can have full access to the hardware. -With this in mind, DGA does provide clients some direct access to -the hardware without requiring a separate rendering API, but this -access is limited to direct linear framebuffer access. - - DGA is initialized by passing a number corresponding to a valid -XDGAMode to XDGASetMode(). Clients can get a list of valid modes -from XDGAQueryModes(). Each XDGAMode corresponds to a different -framebuffer layout. - -typedef struct { - int num; - char *name; - float verticalRefresh; - int flags; - int imageWidth; - int imageHeight; - int pixmapWidth; - int pixmapHeight; - int bytesPerScanline; - int byteOrder; - int depth; - int bitsPerPixel; - unsigned long redMask; - unsigned long greenMask; - unsigned long blueMask; - short visualClass; - int viewportWidth; - int viewportHeight; - int xViewportStep; - int yViewportStep; - int maxViewportX; - int maxViewportY; - int viewportFlags; -} XDGAMode; - - num - - A unique identifying number (num > 0) for the mode. This is the - number referenced when initializing the mode. - - name - - The name of the corresponding modeline as given in the XF86Config file. - - verticalRefresh - - The vertical refresh rate for the modeline (in Hz). - - flags - - Any of the following may be OR'd together: - - XDGAConcurrentAccess - - Indicates that concurrent client/server access to the - framebuffer is possible. If this flag is not set it is - very important to call XDGASync() before directly accessing - the framebuffer if a call to XDGAFillRectangle(), - XDGACopyArea() or XDGACopyTransparentArea() or any Xlib - rendering function has been made prior to such accesses. - - XDGASolidFillRect - - Indicates that XDGAFillRectangle() is supported. - - XDGABlitRect - - Indicates that XDGACopyArea() is supported. - - XDGABlitTransRect - - Indicates that XDGACopyTransparentArea() is supported. - - XDGAPixmap - - Indicates that a Pixmap will be returned when the mode is - initialized. This means that rendering with Xlib is possible - for this mode. - - XDGAInterlaced - XDGADoublescan - - Indicates that the mode is an interlaced or doublescan mode. - - - imageWidth - imageHeight - - The width and height of the framebuffer area accessible by the client. - This rectangle is always justified to the upper left-hand corner. - - pixmapWidth - pixmapHeight - - The width and height of the framebuffer area accessible by Xlib. - This rectangle is always justified to the upper left-hand corner. - These fields are only valid if the XDGAPixmap flag is set in the - "flags" field. - - bytesPerScanline - - The pitch of the framebuffer in bytes. - - byteOrder - - MSBFirst or LSBFirst. - - depth - - The number of bits in each pixel which contain usable data. - - bitsPerPixel - - The number of bits taken up by each pixel. - - redMask - greenMask - blueMask - - The RGB masks. These do not apply to color-indexed modes. - - visualClass - - TrueColor, PseudoColor, DirectColor, etc... - - viewportWidth - viewportHeight - - The dimensions of the portion of the framebuffer which will be - displayed on the screen. - - xViewPortStep - yViewPortStep - - The granularity of the x,y viewport positioning possible with - the XDGASetViewport function. - - maxViewportX - maxViewportY - - The maximimum x and y positions possible with the XDGASetViewport - function. - - viewportFlags - - Any of the following may be OR'd together: - - XDGAFlipRetrace - - Indicates that the hardware can switch viewports during - the vertical retrace. - - XDGAFlipImmediate - - Indicates that the hardware can switch viewports immediately - without waiting for the vertical retrace. - - - -XDGAMode* XDGAQueryModes( - Display *dpy, - int screen, - int *num -); - - XDGAQueryModes() returns a pointer to an array of XDGAModes which -are valid for the given screen. "num" is the number of elements in the -array. The returned array can be freed with XFree(); - - - -XDGADevice* XDGASetMode( - Display *dpy, - int screen, - int num -); - - A XDGAMode will be initialized when its "num" is passed to -XDGASetMode(). To exit DGA mode and return to normal server operation, -pass number zero to XDGASetMode(). XDGASetMode() returns a pointer -to an XDGADevice if successful. The XDGADevice can be freed with -XFree(). - - struct { - XDGAMode mode; - unsigned char *data; - Pixmap pixmap; - } XDGADevice; - - - mode - - The XDGAMode structure, identical to the information returned - by XDGAQueryModes. - - data - - If direct framebuffer access is desired and possible, this field - will contain a pointer to the mapped framebuffer memory. Generally, - this field will be zero unless a call to XDGAOpenFramebuffer() - is made prior to initialization of the mode. - - pixmap - - If the mode supports Xlib rendering as indicated by XDGAPixmap - in the flags field, this will contain a Pixmap handle suitable - for passing as the drawable argument to Xlib functions. This - field will be zero if Xlib rendering is not supported. - - -Bool XDGAQueryExtension( - Display *dpy, - int *eventBase, - int *errorBase -); - - XDGAQueryExtension() checks for the prescence of the extension -and returns the event and error bases. - - -Bool XDGAQueryVersion( - Display *dpy, - int *majorVersion, - int *minorVersion -); - - XDGAQueryVersion() returns the major and minor version numbers (duh). - - -Bool XDGAOpenFramebuffer( - Display *dpy, - int screen -); - -void XDGACloseFramebuffer( - Display *dpy, - int screen -); - - - XDGAOpenFramebuffer() maps the framebuffer memory. The client -needs sufficient privledges to be able to do this. - - XDGAOpenFramebuffer() should be called prior to initializing -a dga mode if direct framebuffer access is desired for that mode. -XDGAOpenFramebuffer() does not need to be called if direct framebuffer -access is not required. If the framebuffer is opened, -XDGACloseFramebuffer() should be called prior to client exit to -unmap the memory. - - - -void XDGAChangePixmapMode( - Display *dpy, - int screen, - int *x, - int *y, - int mode -); - - In the case where a Pixmap is available for Xlib rendering, this -function allows changing between two pixmap sizes. The following -values for "mode" are possible. - - XDGAPixmapModeLarge - - The pixmap size is defined by the pixmapWidth and pixmapHeight - fields in the XDGAMode structure. The "x" and "y" values are - ignored in this case. - - XDGAPixmapModeSmall - - The pixmap size is defined by the viewportWidth and viewportHeight - fields in the XDGAMode structure. In this mode, the "x" and "y" - values specify where in the framebuffer this pixmap rectangle - is located. It may be placed anywhere within the Xlib renderable - region described by the pixmapWidth and pixmapHeight fields in - the XDGAMode. The "x" and "y" values returned are the resultant - location of the pixmap and may be different from the requested - x,y location due to platform specific alignment constraints. - All Xlib rendering is clipped to this pixmap rectangle. - - -void XDGASetViewport( - Display *dpy, - int screen, - int x, - int y, - int flags -); - - Set the upper left-hand corner of the rectangle of framebuffer -that is to be displayed on the screen. Not all locations may be -supported by the hardware and requested locations will be adjusted -according to the xViewPortStep and yViewPortStep fields in the XDGAMode. - - "flags" can be XDGAFlipRetrace or XDGAFlipImmediate to adjust -the viewport location at the next vertical retrace or immediately. -Values other than the supported values advertised in the mode's -viewportFlags field will result in hardware-specific default behavior. -XDGAFlipImmediate will block until the flip is completed. -XDGAFlipRetrace will generally NOT block so it is necessary to -monitor the viewport status with XDGAGetViewportStatus(). - - FlipImmediate requests during pending FlipRetrace requests -will be ignored. - - -int XDGAGetViewportStatus( - Display *dpy, - int screen -); - - - XDGAGetViewportStatus() keeps track of the XDGASetViewport() -requests still pending. The return value of the function will -have consecutive bits set (LSB justified), each bit representing -a pending viewport change. For example: - - while(XDGAGetViewportStatus(dpy, screen)); - - waits for all pending viewport changes to finish. - - while(0x2 & XDGAGetViewportStatus(dpy, screen)); - - waits until all but the last viewport changes have completed. - - -Colormap XDGACreateColormap( - Display *dpy, - int screen, - XDGADevice *device, - int alloc -); - -void XDGAInstallColormap( - Display *dpy, - int screen, - Colormap cmap -); - - XDGACreateColormap() is similar to the Xlib function XCreateColormap() -except that it takes an XDGADevice as an argument instead of a Window -and Visual. Though XCreateColormap() may create useable colormaps in -some cases, XDGACreateColormap() is the prefered method for creating -colormaps in DGA since there may not be an advertised visual compatible -with the DGA device. - - XDGAInstallColormap() must be used to install colormaps in DGA -mode. XInstallColormap() will not work. - - - -void XDGASelectInput( - Display *dpy, - int screen, - long event_mask -); - - DGA provides its own events. These can be enabled by calling -XDGASelectInput(). This function is similar to XSelectInput() -and all Xlib Key, Button and Motion masks are supported. - - - The following DGA events are defined. - -typedef struct { - int type; /* ButtonPress or ButtonRelease + the DGA event base*/ - unsigned long serial; /* # or last request processed by the server */ - Display *display; /* Display the event was read from */ - int screen; /* The screen number the event came from */ - Time time; /* milliseconds */ - unsigned int state; /* key or button mask */ - unsigned int button; /* detail */ -} XDGAButtonEvent; - -typedef struct { - int type; /* KeyPress or KeyRelease + the DGA event base*/ - unsigned long serial; /* # or last request processed by the server */ - Display *display; /* Display the event was read from */ - int screen; /* The screen number the event came from */ - Time time; /* milliseconds */ - unsigned int state; /* key or button mask */ - unsigned int keycode; /* detail */ -} XDGAKeyEvent; - -typedef struct { - int type; /* MotionNotify + the DGA event base*/ - unsigned long serial; /* # or last request processed by the server */ - Display *display; /* Display the event was read from */ - int screen; /* The screen number the event came from */ - Time time; /* milliseconds */ - unsigned int state; /* key or button mask */ - int dx; /* relative pointer motion */ - int dy; /* relative pointer motion */ -} XDGAMotionEvent; - - -void -XDGAKeyEventToXKeyEvent(XDGAKeyEvent* dk, XKeyEvent* xk); - - XDGAKeyEventToXKeyEvent() is a helper function to translate -XDGAKeyEvents into XKeyEvents suitable for use with XLookupKeysym(). - - -void XDGAFillRectangle( - Display *dpy, - int screen, - int x, - int y, - unsigned int width, - unsigned int height, - unsigned long color -); - - -void XDGACopyArea( - Display *dpy, - int screen, - int srcx, - int srcy, - unsigned int width, - unsigned int height, - int dstx, - int dsty -); - - -void XDGACopyTransparentArea( - Display *dpy, - int screen, - int srcx, - int srcy, - unsigned int width, - unsigned int height, - int dstx, - int dsty, - unsigned long key /* source pixels of this value will not be copied */ -); - - These three functions are included with some reserveration since -DGA is not intended as a rendering API. These are merely convience -routines and are optionally supported. The associated flags will -be set in the XDGAMode's "flags" field if these functions are supported. -These functions will be no-ops otherwise. - - These functions do not provide direct access to the hardware, -but are merely context-less operations performed by the server. - - -void XDGASync( - Display *dpy, - int screen -); - - This function blocks until all server rendering to the framebuffer -completes. If Xlib or the 3 rendering functions above are used, XDGASync() -must be called before the client directly accesses the framebuffer as -the server rendering is asynchronous with the client and may have not -completed. This is especially important if the XDGAConcurrentAccess -flag is not set in the XDGAMode's "flags" field since concurrent access -by the server and client may result in a system lockup. - - - - - -$XFree86: xc/programs/Xserver/hw/xfree86/DGA,v 1.1 1999/11/19 13:54:09 hohndel Exp $ diff --git a/xc/programs/Xserver/hw/xfree86/XF86Conf.man b/xc/programs/Xserver/hw/xfree86/XF86Conf.man deleted file mode 100644 index dc4f0c44d..000000000 --- a/xc/programs/Xserver/hw/xfree86/XF86Conf.man +++ /dev/null @@ -1,1134 +0,0 @@ -.\" $XFree86: xc/programs/Xserver/hw/xfree86/XF86Conf.man,v 3.62 1999/04/25 10:01:54 dawes Exp $ -.TH XF86Config 4/5 "Version 4.0" "XFree86" -.SH NAME -XF86Config - Configuration File for XFree86 -.SH DESCRIPTION -.I XFree86 -uses a configuration file called \fBXF86Config\fP for its initial -setup. This configuration file is searched for in the following -places: -.sp -.in 8 -.nf -/etc/XF86Config -<XRoot>/lib/X11/XF86Config.\fIhostname\fP -<XRoot>/lib/X11/XF86Config -.fi -.in -8 -.LP -where <XRoot> refers to the root of the X11 install tree. -When an X server is started by a `root' user, it will first search for -an \fBXF86Config\fP file in that user's home directory. -.PP -This file is composed of a number of sections. Each section has -the form: -.sp -.in 8 -.nf -Section "\fISectionName\fP" - \fISectionEntry\fP - ... -EndSection -.fi -.in -8 -.PP -The section names are: -.sp -.in 8 -.nf -\fBFiles\fP (File pathnames) -\fBModule\fP (Dynamic module loading) -\fBServerFlags\fP (Server flags) -\fBKeyboard\fP (Keyboard configuration) -\fBPointer\fP (Pointer configuration) -\fBMonitor\fP (Monitor description) -\fBDevice\fP (Graphics device description) -\fBScreen\fP (Screen configuration) -\fBXInput\fP (Extended Input devices configuration) -.fi -.PP -The \fBFiles\fP section is used to specify the default font path -and the path to the RGB database. These paths can also be set from -the command line (see \fIXserver(1)\fP). The entries available -for this section are: -.TP 8 -.B FontPath \fI"path"\fP -sets the search path for fonts. This path is a comma separated -list of directories which the X server searches for font databases. -Multiple \fBFontPath\fP entries may be specified, and they will be -concatenated to build up the fontpath used by the server. -.sp -X11R6 allows the X server to request fonts from a font server. A -font server is specified by placing a "<trans>/<hostname>:<port_number>" -entry into the fontpath. For example, the fontpath -"/usr/X11R6/lib/X11/fonts/misc/,tcp/zok:7100" tells the X server -to first try to locate the font in the local directory -/usr/X11R6/lib/X11/fonts/misc. If that fails, then request the -font from the \fIfont server\fP running on machine zok listening -for connections on TCP port number 7100. -.TP 8 -.B RGBPath \fI"path"\fP -sets the path name for the RGB color database. -.TP 8 -.B ModulePath \fI"path"\fP -sets the search path for dynamic modules. This path is a comma separated -list fo directories which the X server searches for dynamic module loading -in the order specified. -Multiple \fBModulePath\fP entries may be specified, and they will be -concatenated to build the modulepath used by the server. -.PP -The -.B Module -section is used to specify which dynamic modules should be loaded. -At present dynamic modules are only used for XInput devices, and are -only supported on some systems (currently Linux ELF, FreeBSD 2.x and -NetBSD 1.x). The entry available for this section is: -.TP 8 -.B Load \fI"module"\fP -This instructs the server to load \fI"module"\fP. If the module -is not specified with a full pathname, the directories specified in -the \fBModulePath\fP are searched. -Modules are currently available to support extended input devices. The -names of these are: -.sp -.in 20 -.nf -.B xf86Elo.so -.B xf86Jstk.so -.B xf86Wacom.so -.B xf86Summa.so -.fi -.in -20 -The PEX and XIE extension are also be available as modules on some -systems. The names for these are: -.sp -.in 20 -.nf -.B pex5.so -.B xie.so -.fi -.in -20 -.RS 8 -For an up-to-date listing, check in <XRoot>/lib/modules. -.RE -.PP -The \fBServerFlags\fP section is used to specify some miscellaneous -X server options. The entries available for this section are: -.TP 8 -.B NoTrapSignals -This prevents the X server from trapping a range of unexpected -fatal signals and exiting cleanly. Instead, the X server will die -and drop core where the fault occurred. The default behaviour is -for the X server exit cleanly, but still drop a core file. In -general you never want to use this option unless you are debugging -an X server problem. -.TP 8 -.B DontZap -This disallows the use of the \fBCtrl+Alt+Backspace\fP sequence. -This sequence allows you to terminate the X server. -Setting \fBDontZap\fP allows this key sequence to be passed to clients. -.TP 8 -.B DontZoom -This disallows the use of the \fBCtrl+Alt+Keypad-Plus\fP and -\fBCtrl+Alt+Keypad-Minus\fP sequences. These sequences allows you to -switch between video modes. -Setting \fBDontZoom\fP allows these key sequences to be passed to clients. -.TP 8 -.B AllowNonLocalXvidtune -This allows the xvidtune client to connect from another host. By default -non-local connections are not allowed. -.TP 8 -.B DisableVidMode -This disables the parts of the VidMode extension used by the xvidtune client -that can be used to change the video modes. -.TP 8 -.B AllowNonLocalModInDev -This allows a client to connect from another host and change keyboard -and mouse settings in the running server. By default -non-local connections are not allowed. -.TP 8 -.B DisableModInDev -This disables the parts of the Misc extension that can be used to -modify the input device settings dynamically. -.TP 8 -.B AllowMouseOpenFail -This allows the server to start up even if the mouse device can't be -opened/initialised. -.PP -The \fBKeyboard\fP section is used to specify the keyboard input -device, parameters and some default keyboard mapping options. The -entries available for this section are: -.TP 8 -.B Protocol \fI"kbd-protocol"\fP -\fIkbd-protocol\fP may be either \fBStandard\fP or \fBXqueue\fP. -\fBXqueue\fP is specified when using the event queue driver on SVR3 -or SVR4. -.TP -.B AutoRepeat \fIdelay rate\fP -changes the behavior of the autorepeat of the keyboard. This does -not work on all platforms. -.TP 8 -.B ServerNumLock -forces the X server to handle the numlock key internally. The X -server sends a different set of keycodes for the numpad when the -numlock key is active. This enables applications to make use of -the numpad. -.PP -.nf -.B LeftAlt \fImapping\fP -.B RightAlt \fImapping\fP -.B AltGr \fImapping\fP -.B ScrollLock \fImapping\fP -.B RightCtl \fImapping\fP -.fi -.RS 8 -Allows a default mapping to be set for the above keys (note that -\fBAltGr\fP is a synonym for \fBRightAlt\fP). The values that may -be specified for \fImapping\fP are: -.sp -.in 20 -.nf -Meta -Compose -ModeShift -ModeLock -ScrollLock -Control -.fi -.PP -The default mapping when none of these options are specified is: -.sp -.in 20 -.nf -LeftAlt Meta -RightAlt Meta -ScrollLock Compose -RightCtl Control -.fi -.RE -.TP 8 -.B XLeds \fIled\fP ... -makes \fIled\fP available for clients instead of using the traditional -function (Scroll Lock, Caps Lock & Num Lock). \fIled\fP is a list -of numbers in the range 1 to 3. -.TP 8 -.B VTSysReq -enables the SYSV-style VT switch sequence for non-SYSV systems -which support VT switching. This sequence is Alt-SysRq followed -by a function key (Fn). This prevents the X server trapping the -keys used for the default VT switch sequence. -.TP 8 -.B VTInit \fI"command"\fP -Runs \fIcommand\fP after the VT used by the server has been opened. -The command string is passed to "/bin/sh -c", and is run with the -real user's id with stdin and stdout set to the VT. The purpose -of this option is to allow system dependent VT initialisation -commands to be run. One example is a command to disable the 2-key -VT switching sequence which is the default on some systems. -.TP 8 -.B XkbDisable -Turns the XKEYBOARD extension off, equivalent to using the -kb -command line option. -.PP -.nf -.B XkbRules \fI"rulesfile"\fP -.B XkbModel \fI"model"\fP -.B XkbLayout \fI"layout"\fP -.B XkbVariant \fI"variant"\fP -.B XkbOptions \fI"optionlist"\fP -.fi -.RS 8 -These specify the definitions which are used to determine which -XKEYBOARD components to use. The optionlist, should be a comma -separated list of options. -The default mappings for each these are: -.sp -.in 20 -.nf -XkbRules "xfree86" -XkbModel "pc101" -XkbLayout "us" -XkbVariant "" -XkbOptions "" -.fi -.RE -.PP -This is the preferred method of specifying the keyboard configuration, -however, you can also specify the components directly with: -.sp -.nf -.B XkbKeymap \fI"keymap"\fP -.B XkbKeycodes \fI"keycodes"\fP -.B XkbTypes \fI"types"\fP -.B XkbCompat \fI"compat"\fP -.B XkbSymbols \fI"symbols"\fP -.B XkbGeometry \fI"geometry"\fP -.fi -.RS 8 -If you specify only some of the components, the remaining components -will use these default values: -.sp -.in 20 -.nf -XkbKeymap none -XkbKeycodes "xfree86" -XkbTypes "default" -XkbCompat "default" -XkbSymbols "us(pc101)" -XkbGeometry "pc" -.fi -.RE -.PP -The \fBPointer\fP section is used to specify the pointer device -and parameters. The entries available for this section are: -.TP 8 -.B Protocol \fI"protocol-type\fP" -specifies the pointer device protocol type. The protocol types -available are: -.sp -.in 20 -.nf -.B Auto -.B BusMouse -.B GlidePoint -.B GlidePointPS/2 -.B IntelliMouse -.B IMPS/2 -.B Logitech -.B Microsoft -.B MMHitTab -.B MMSeries -.B Mouseman -.B MouseManPlusPS/2 -.B MouseSystems -.B NetMousePS/2 -.B NetScrollPS/2 -.B OSMouse -.B PS/2 -.B SysMouse -.B ThinkingMouse -.B ThinkingMousePS/2 -.B Xqueue -.fi -.in -20 -.RS 8 -.PP -One should specify \fBBusMouse\fP for the Logitech bus mouse and -bus or InPort mice from Microsoft and ATI. -The \fBLogitech\fP protocol is for old serial mouse models from Logitech. -Many newer Logitech serial mice use either the \fBMicrosoft\fP -or \fBMouseMan\fP protocol. \fBXqueue\fP should be specified here -if it was used in the \fBKeyboard\fP section. \fBOSMouse\fP refers -to the event-driver mouse interface available on SCO's SVR3, and the -mouse interface provided for OS/2. This -may optionally be followed by a number specifying the number of -buttons the mouse has. -\fBSysMouse\fP refers to the system mouse device, /dev/sysmouse, in -FreeBSD. -.PP -The \fBPS/2\fP and other \fBXXXXPS/2\fP protocol types are for PS/2 mice. -\fBPS/2\fP should always work with any PS/2 mouse -regardless of the model of the PS/2 mouse. -The other \fBXXXXPS/2\fP protocol types may or may not be supported by -your OS. -.PP -The rest of the protocol types are for serial mice. -If your serial mouse is of a relatively new model, you may specify -\fBAuto\fP, then the X server will try to select an appropriate -protocol type automatically. The \fBAuto\fP protocol type may -also work for the PS/2 and bus mice on some OSs. -.RE -.TP 8 -.B Device \fI"pointer-dev"\fP -specifies the device the server should open for pointer input (eg, -\fB/dev/tty00\fP or \fB/dev/mouse\fP). A device should not be -specified when using the \fBXqueue\fP or \fBOSMouse\fP protocols. -.TP 8 -.B Port \fI"pointer-dev"\fP -is an alternate form of the \fBDevice\fP entry. -.TP 8 -.B BaudRate \fIrate\fP -sets the baudrate of the serial mouse to \fIrate\fP. For mice that -allow dynamic speed adjustments (like older Logitechs) the baudrate is -changed in the mouse. Otherwise the rate is simply set on the -computer's side to allow mice with non-standard rates (the standard -rate is 1200). For 99% of mice you should not set this to anything -other than the default (1200). -.TP 8 -.B Buttons \fIN\fP -This option tells the X server the number of buttons on the mouse. -Currently there is no reliable way to automatically detect the correct -number. -This option is the only means for the X server to obtain it. -The default value is three. -Note that if you intend to assign Z axis movement to button events -using the \fBZAxisMapping\fP option below, you need to take account -of those buttons into \fIN\fP too. -.TP 8 -.B Emulate3Buttons -enables the emulation of the third mouse button for mice which only -have two physical buttons. The third button is emulated by pressing -both buttons simultaneously. -.TP 8 -.B Emulate3Timeout \fItimeout\fP -sets the time (in milliseconds) that the server waits before deciding if -two buttons were pressed ``simultaneously'' when 3 button emulation is -enabled. The default timeout is 50ms. -.TP 8 -.B ChordMiddle -handles mice which send left+right events when the middle button -is used (like some Logitech Mouseman mice). -.TP 8 -.B SampleRate \fIrate\fP -sets the number of motion/button-events the mouse sends per second. -This is currently only supported for some Logitech mice. -.TP 8 -.B Resolution \fIcount\fP -sets the resolution of the device in counts per inch. -This is not always supported by all the mice. -.TP 8 -.B ClearDTR -This option clears the DTR line on the serial port used by the -mouse. This option is only valid for a mouse using the \fBMouseSystems\fP -protocol. Some dual-protocol mice require DTR to be cleared to -operate in MouseSystems mode. Note, in versions of XFree86 prior -to 2.1, this option also cleared the RTS line. A separate -\fBClearRTS\fP option has since been added for mice which require -this. -.TP 8 -.B ClearRTS -This option clears the RTS line on the serial port used by the -mouse. This option is only valid for a mouse using the \fBMouseSystems\fP -protocol. Some dual-protocol mice require both DTR and RTS to be -cleared to operate in MouseSystems mode. Both the \fBClearDTR\fP -and \fBClearRTS\fP options should be used for such mice. -.TP 8 -.B ZAxisMapping X -.TP 8 -.B ZAxisMapping Y -.TP 8 -.B ZAxisMapping \fIN M\fP -Some mouse devices have a wheel or a roller. Its action is -reported as the Z (third) axis movement in the X server. -The Z axis movement can be assigned to another axis (\fIX\fP or \fIY\fP) -or a pair of buttons (the button \fIN\fP for negative movement -and \fIM\fP for positive movement) with this option. -.PP -The \fBMonitor\fP sections are used to define the specifications -of a monitor and a list of video modes suitable for use with a -monitor. More than one \fBMonitor\fP section may be present in an -XF86Config file. The entries available for this section are: -.TP 8 -.B Identifier \fI"ID string"\fP -This specifies a string by which the monitor can be referred to in -a later \fBScreen\fP section. Each \fBMonitor\fP section should -have a unique ID string. -.TP 8 -.B VendorName \fI"vendor"\fP -This optional entry specifies the monitor's manufacturer. -.TP 8 -.B ModelName \fI"model"\fP -This optional entry specifies the monitor's model. -.TP 8 -.B HorizSync \fIhorizsync-range\fP -gives the range(s) of horizontal sync frequencies supported by the -monitor. \fIhorizsync-range\fP may be a comma separated list of -either discrete values or ranges of values. A range of values is -two values separated by a dash. By default the values are in units -of kHz. They may be specified in MHz or Hz if \fBMHz\fP or \fBHz\fP -is added to the end of the line. The data given here is used by the X -server to determine if video modes are within the specifications -of the monitor. This information should be available in the -monitor's handbook. -.TP 8 -.B VertRefresh \fIvertrefresh-range\fP -gives the range(s) of vertical refresh frequencies supported by -the monitor. \fIvertrefresh-range\fP may be a comma separated list -of either discrete values or ranges of values. A range of values -is two values separated by a dash. By default the values are in -units of Hz. They may be specified in MHz or kHz if \fBMHz\fP or -\fBkHz\fP is added to the end of the line. The data given here is used -by the X server to determine if video modes are within the -specifications of the monitor. This information should be available -in the monitor's handbook. -.TP 8 -.B Gamma \fIgamma-value(s)\fP -This is an optional entry that can be used to specify the gamma -correction for the monitor. It may be specified as either a single -value or as three separate RGB values. Not all X servers are capable -of using this information. -.TP 8 -.B Mode \fI"name"\fP -indicates the start of a multi-line video mode description. The -mode description is terminated with an \fBEndMode\fP line. The -mode description consists of the following entries: -.sp -.RS 8 -.TP 4 -.B DotClock \fIclock\fP -is the dot clock rate to be used for the mode. -.TP 4 -.B HTimings \fIhdisp hsyncstart hsyncend htotal\fP -specifies the horizontal timings for the mode. -.TP 4 -.B VTimings \fIvdisp vsyncstart vsyncend vtotal\fP -specifies the vertical timings for the mode. -.TP 4 -.B Flags \fI"flag" ...\fP -specifies an optional set of mode flags. \fB"Interlace"\fP indicates -that the mode is interlaced. \fB"DoubleScan"\fP indicates a mode where -each scanline is doubled. \fB"+HSync"\fP and \fB"-HSync"\fP can -be used to select the polarity of the HSync signal. \fB"+VSync"\fP -and \fB"-VSync"\fP can be used to select the polarity of the VSync -signal. \fB"Composite"\fP, can be used to specify composite sync on -hardware where this is supported. Additionally, on some hardware, -\fB"+CSync"\fP and \fB"-CSync"\fP may be used to select the composite -sync polarity. -.TP 4 -.B HSkew \fIhskew\fP -specifies the number of pixels (towards the right edge of the screen) by which -the display enable signal is to be skewed. Not all drivers use this -information. This option might become necessary to override the default -value supplied by the server (if any). "Roving" horizontal lines indicate this -value needs to be increased. If the last few pixels on a scan line appear on -the left of the screen, this value should be decreased. -.TP 4 -.B VScan \fIvscan\fP -specifies the number of times each scanline is painted on the screen. Not all -drivers use this information. Values less than 1 are treated as 1, which is -the default. Generally, the \fB"DoubleScan"\fP flag mentionned above doubles -this value. -.RE -.TP 8 -.B Modeline \fI"name" mode-description\fP -is a single line format for specifying video modes. The -\fImode-description\fP is in four sections, the first three of -which are mandatory. The first is the pixel clock. This is a -single number specifying the pixel clock rate for the mode. The -second section is a list of four numbers specifying the horizontal -timings. These numbers are the \fIhdisp\fP, \fIhsyncstart\fP, -\fIhsyncend\fP, \fIhtotal\fP. The third section is a list of four -numbers specifying the vertical timings. These numbers are -\fIvdisp\fP, \fIvsyncstart\fP, \fIvsyncend\fP, \fIvtotal\fP. The -final section is a list of flags specifying other characteristics -of the mode. \fBInterlace\fP indicates that the mode is interlaced. -\fBDoubleScan\fP indicates a mode where each scanline is doubled. -\fB+HSync\fP and \fB\-HSync\fP can be used to select the polarity -of the HSync signal. \fB+VSync\fP and \fB\-VSync\fP can be used -to select the polarity of the VSync signal. \fBComposite\fP can be -used to specify composite sync on hardware where this is supported. -Additionally, on some hardware, -\fB+CSync\fP and \fB-CSync\fP may be used to select the composite -sync polarity. The \fBHSkew\fP and \fBVScan\fP options mentioned above can -also be used here. -.PP -The \fBDevice\fP sections are used to define a graphics device -(video board). More than one \fBDevice\fP section may be present -in an XF86Config file. The entries available for this section are: -.TP 8 -.B Identifier \fI"ID string"\fP -This specifies a string by which the graphics device can be referred -to in a later \fBScreen\fP section. Each \fBDevice\fP section -should have a unique ID string. -.TP 8 -.B VendorName \fI"vendor"\fP -This optional entry specifies the graphics device's manufacturer. -.TP 8 -.B BoardName \fI"model"\fP -This optional entry specifies the name of the graphics device. -.TP 8 -.B Chipset \fI"chipset-type"\fP -This optional entry specifies the chipset used on the graphics -board. In most cases this entry is not required because the X -servers will probe the hardware to determine the chipset type. -.TP 8 -.B Ramdac \fI"ramdac-type"\fP -This optional entry specifies the type of RAMDAC used on the graphics -board. This is only used by a few of the X servers, and in most -cases it is not required because the X servers will probe the -hardware to determine the RAMDAC type where possible. -.TP 8 -.B DacSpeed \fIspeed\fP -This optional entry specifies the RAMDAC speed rating (which is -usually printed on the RAMDAC chip). The speed is in MHz. This -is only used by a few of the X servers, and only needs to be -specified when the speed rating of the RAMDAC is different from -the default built in to the X server. -.TP 8 -.B Clocks \fIclock ...\fP -specifies the dotclocks that are on your graphics board. The clocks -are in MHz, and may be specified as a floating point number. The -value is stored internally to the nearest kHz. The ordering of -the clocks is important. It must match the order in which they -are selected on the graphics board. Multiple \fBClocks\fP lines -may be specified. For boards with programmable clock chips, the -\fBClockChip\fP entry should be used instead of this. A \fBClocks\fP -entry is not mandatory for boards with non-programmable clock chips, -but is highly recommended because it prevents the clock probing -phase during server startup. This clock probing phase can cause -problems for some monitors. -.TP 8 -.B ClockChip \fI"clockchip-type"\fP -This optional entry is used to specify the clock chip type on -graphics boards which have a programmable clock generator. Only -a few X servers support programmable clock chips. For details, -see the appropriate X server manual page. -.TP 8 -.B ClockProg \fI"command"\fP [\fItextclock\fP] -This optional entry runs \fIcommand\fP to set the clock on the -graphics board instead of using the internal code. The command -string must consist of the full pathname (and no flags). When -using this option, and no \fBClocks\fP entry is specified, -it is assumed that the card has a fully programmable clock -generator; for a card with a set of preset clocks a \fBClocks\fP -entry is required to specify which clock values are to be made -available to the server (up to 128 clocks may be specified). -The optional \fItextclock\fP value is used to tell the server that -\fIcommand\fP must be run to restore the textmode clock at server -exit (or when VT switching). \fItextclock\fP must match one of the -values in the \fBClocks\fP entry. This parameter is required when -the clock used for text mode is a programmable clock. - -The command is run with the real user's id with stdin and stdout -set to the graphics console device. Two arguments are passed to -the command. The first is the clock frequency in MHz as a floating -point number and the second is the index of the clock in the -\fBClocks\fP entry. The command should return an exit status of -0 when successful, and something in the range 1\-254 otherwise. - -The command is run when the initial graphics mode is set and when -changing screen resolution with the hot-key sequences. If the -program fails at initialisation the server exits. If it fails -during a mode switch, the mode switch is aborted but the server -keeps running. It is assumed that if the command fails the clock -has not been changed. -.TP 8 -.B Option \fI"optionstring"\fP -This optional entry allows the user to select certain options -provided by the drivers. Multiple \fBOption\fP entries may be -given. The supported values for \fIoptionstring\fP are given in -the appropriate X server manual pages. -.TP 8 -.B VideoRam \fImem\fP -This optional entry specifies the amount of videoram that is -installed on the graphics board. This is measured in kBytes. In -most cases this is not required because the X server probes the -graphics board to determine this quantity. -.TP 8 -.B BIOSBase \fIbaseaddress\fP -This optional entry specifies the base address of the video BIOS -for the VGA board. This address is normally 0xC0000, which is the -default the X servers will use. Some systems, particularly those -with on-board VGA hardware, have the BIOS located at an alternate -address, usually 0xE0000. If your video BIOS is at an address -other than 0xC0000, you must specify the base address in the -XF86Config file. Note that some X servers don't access the BIOS -at all, and those which do only use the BIOS when searching for -information during the hardware probe phase. -.TP 8 -.B MemBase \fIbaseaddress\fP -This optional entry specifies the memory base address of a graphics -board's linear frame buffer. This entry is only used by a few -X servers, and the interpretation of this base address may be different -for different X servers. Refer to the appropriate X server manual -page for details. -.TP 8 -.B IOBase \fIbaseaddress\fP -This optional entry specifies the IO base address. This entry is only -used for a few X servers. Refer to the appropriate X server manual page -for details. -.TP 8 -.B DACBase \fIbaseaddress\fP -This optional entry specifies the DAC base address. This entry is only -used for a few X servers. Refer to the appropriate X server manual page -for details. -.TP 8 -.B POSBase \fIbaseaddress\fP -This optional entry specifies the POS base address. This entry is only -used for a few X servers. Refer to the appropriate X server manual page -for details. -.TP 8 -.B COPBase \fIbaseaddress\fP -This optional entry specifies the coprocessor base address. This entry -is only used for a few X servers. Refer to the appropriate X server -manual page for details. -.TP 8 -.B VGABase \fIbaseaddress\fP -This optional entry specifies the VGA memory base address. This entry -is only used for a few X servers. Refer to the appropriate X server -manual page for details. -.TP 8 -.B Instance \fInumber\fP -This optional entry specifies the instance (which indicates if the -chip is integrated on the motherboard or on an expansion card). -This entry is only used for a few X servers. Refer to the appropriate -X server manual page for details. -.TP 8 -.B Speedup \fI"selection"\fP -This optional entry specifies the selection of speedups to be -enabled. This entry is only used for a few X servers. Refer to -the appropriate X server manual page for details. -.TP 8 -.B S3MNAdjust \fIM N\fP -This optional entry is specific to the S3 X server. For details, refer -to the \fIXF86_S3(1)\fP manual page. -.TP 8 -.B S3MClk \fIclock\fP -This optional entry is specific to the S3 X server. For details, refer -to the \fIXF86_S3(1)\fP manual page. -.TP 8 -.B S3RefClock \fIclock\fP -This optional entry is specific to the S3 X server. For details, refer -to the \fIXF86_S3(1)\fP manual page. -.PP -The \fBScreen\fP sections are used to specify which graphics boards -and monitors will be used with a particular X server, and the -configuration in which they are to be used. The entries available -for this section are: -.TP 8 -.B Driver \fI"driver-name"\fP -Each \fBScreen\fP section must begin with a \fBDriver\fP entry, -and the \fIdriver-name\fP given in each \fBScreen\fP section must -be unique. The driver name determines which X server (or driver -type within an X server when an X server supports more than one -head) reads and uses a particular \fBScreen\fP section. The driver -names available are: -.sp -.in 20 -.nf -.B Accel -.B Mono -.B SVGA -.B VGA2 -.B VGA16 -.fi -.in -20 -.RS 8 -.PP -\fBAccel\fP is used by all the accelerated X servers (see -\fIXF86_Accel(1)\fP). \fBMono\fP is used by the non-VGA mono -drivers in the 2-bit and 4-bit X servers (see \fIXF86_Mono(1)\fP -and \fIXF86_VGA16(1)\fP). \fBVGA2\fP and \fBVGA16\fP are used by -the VGA drivers in the 2-bit and 4-bit X servers respectively. -\fBSVGA\fP is used by the XF86_SVGA X server. -.RE -.TP 8 -.B Device \fI"device-id"\fP -specifies which graphics device description is to be used. -.TP 8 -.B Monitor \fI"monitor-id"\fP -specifies which monitor description is to be used. -.TP 8 -.B DefaultColorDepth \fIbpp-number\fP -specifies which color depth the server should use, when no -bpp command -line parameter was given. -.TP 8 -.B ScreenNo \fIscrnum\fP -This optional entry overrides the default screen numbering in a -multi-headed configuration. The default numbering is determined by -the ordering of the \fBScreen\fP sections in the \fIXF86Config\fP -file. To override this, all relevant \fBScreen\fP sections must have -this entry specified. -.TP 8 -.B BlankTime \fItime\fP -sets the inactivity timeout for the blanking phase of the screensaver. -\fItime\fP is in minutes, and the default is 10. -This is equivalent to the Xserver's `-s' flag, and the value can be -changed at run-time with \fIxset(1)\fP. -.TP 8 -.B StandbyTime \fItime\fP -sets the inactivity timeout for the ``standby'' phase of DPMS mode. -\fItime\fP is in minutes, the default is 20, and it can be changed -at run-time with \fIxset(1)\fP. -This is only suitable for VESA DPMS compatible monitors, and is only -supported currently by some Xservers. The "power_saver" -Option must be set for this to be enabled. -.TP 8 -.B SuspendTime \fItime\fP -sets the inactivity timeout for the ``suspend'' phase of DPMS mode. -\fItime\fP is in minutes, the default is 30, and it can be changed -at run-time with \fIxset(1)\fP. -This is only suitable for VESA DPMS compatible monitors, and is only -supported currently by some Xservers. The "power_saver" -Option must be set for this to be enabled. -.TP 8 -.B OffTime \fItime\fP -sets the inactivity timeout for the ``off'' phase of DPMS mode. -\fItime\fP is in minutes, the default is 40, and it can be changed -at run-time with \fIxset(1)\fP. -This is only suitable for VESA DPMS compatible monitors, and is only -supported currently by some Xservers. The "power_saver" -Option must be set for this to be enabled. -.TP -.B SubSection \fB"Display"\fP -This entry is a subsection which is used to specify some display -specific parameters. This subsection is terminated by an -\fBEndSubSection\fP entry. For some X servers and drivers (those -requiring a list of video modes) this subsection is mandatory. -For X servers which support multiple display depths, more than one -\fBDisplay\fP subsection may be present. When multiple \fBDisplay\fP -subsections are present, each must have a unique \fBDepth\fP entry. -The entries available for the \fBDisplay\fP subsection are: -.RS 8 -.TP 4 -.B Depth \fIbpp\fP -This entry is mandatory when more than one \fBDisplay\fP subsection -is present in a \fBScreen\fP section. When only one \fBDisplay\fP -subsection is present, it specifies the default depth that the X -server will run at. When more than one \fBDisplay\fP subsection -is present, the depth determines which gets used by the X server. -The subsection used is the one matching the depth at which the X -server is run at. Not all X servers (or drivers) support more than -one depth. Permitted values for \fIbpp\fP are 8, 15, 16, 24 and 32. -Not all X servers (or drivers) support all of these values. -\fIbpp\fP values of 24 and 32 are treated equivalently by those X -servers which support them. -.TP 4 -.B Weight \fIRGB\fP -This optional entry specifies the relative RGB weighting to be used -for an X server running at 16bpp. This may also be specified from -the command line (see \fIXFree86(1)\fP). Values supported by most -16bpp X servers are \fB555\fP and \fB565\fP. For further details, -refer to the appropriate X server manual page. -.TP 4 -.B Virtual \fIxdim ydim\fP -This optional entry specifies the virtual screen resolution to be -used. \fIxdim\fP must be a multiple of either 8 or 16 for most -colour X servers, and a multiple of 32 for the monochrome X server. -The given value will be rounded down if this is not the case. For -most X servers, video modes which are too large for the specified -virtual size will be rejected. If this entry is not present, the -virtual screen resolution will be set to accommodate all the valid -video modes given in the \fBModes\fP entry. Some X servers do not -support this entry. Refer to the appropriate X server manual pages -for details. -.TP 4 -.B ViewPort \fIx0 y0\fP -This optional entry sets the upper left corner of the initial -display. This is only relevant when the virtual screen resolution -is different from the resolution of the initial video mode. If -this entry is not given, then the initial display will be centered -in the virtual display area. -.TP 4 -.B Modes \fI"modename" ...\fP -This entry is mandatory for most X servers, and it specifies the -list of video modes to use. The video mode names must correspond -to those specified in the appropriate \fBMonitor\fP section. Most -X servers will delete modes from this list which don't satisfy -various requirements. The first valid mode in this list will be -the default display mode for startup. The list of valid modes is -converted internally into a circular list. It is possible to switch -to the next mode with \fBCtrl+Alt+Keypad-Plus\fP and to the previous -mode with \fBCtrl+Alt+Keypad-Minus\fP. -.TP 4 -.B InvertVCLK \fI"modename"\fP \fR0|1\fP -This optional entry is specific to the S3 server only. It may be used -to change the default VCLK invert/non-invert state for individual modes. -If \fI"modename"\fP is "\(**" the setting applies to all modes unless -unless overridden by later entries. -.TP 4 -.B EarlySC \fI"modename"\fP \fR0|1\fP -This optional entry is specific to the S3 server only. It may be used -to change the default EarlySC setting for individual modes. This -setting can affect screen wrapping. -If \fI"modename"\fP is "\(**" the setting applies to all modes unless -unless overridden by later entries. -.TP 4 -.B BlankDelay \fI"modename" value1 value2\fP -This optional entry is specific to the S3 server only. It may be used -to change the default blank delay settings for individual modes. This -can affect screen wrapping. \fIvalue1\fP and \fIvalue2\fP must be -integers in the range 0\-7. -If \fI"modename"\fP is "\(**" the setting applies to all modes unless -unless overridden by later entries. -.TP 4 -.B Visual \fI"visual-name"\fP -This optional entry sets the default root visual type. This may -also be specified from the command line (see \fIXserver(1)\fP). -The visual types available for 8bpp X servers are (default is -\fBPseudoColor\fP): -.RE -.sp -.in 20 -.nf -.B StaticGray -.B GrayScale -.B StaticColor -.B PseudoColor -.B TrueColor -.B DirectColor -.fi -.in -20 -.RS 12 -.PP -The visual type available for the 16bpp and 32bpp X servers is -\fBTrueColor\fP. -.PP -The visual type available for the 1bpp X server is \fBStaticGray\fP. -.PP -The visual types available for the 4bpp X server are (default is -\fBStaticColor\fP): -.RE -.sp -.in 20 -.nf -.B StaticGray -.B GrayScale -.B StaticColor -.B PseudoColor -.fi -.in -20 -.RS 8 -.TP 4 -.B Option \fI"optionstring"\fP -This optional entry allows the user to select certain options -provided by the drivers. Multiple \fBOption\fP entries may be -given. The supported values for \fIoptionstring\fP are given in -the appropriate X server manual pages. -.TP 4 -.B Black \fIred green blue\fP -This optional entry allows the ``black'' colour to be specified. This -is only supported with the VGA2 driver in the XF86_Mono server (for -details see \fIXF86_Mono(1)\fP). -.TP 4 -.B White \fIred green blue\fP -This optional entry allows the ``white'' colour to be specified. This -is only supported with the VGA2 driver in the XF86_Mono server (for -details see \fIXF86_Mono(1)\fP). -.RE -.PP -The optional \fBXInput\fP section is used to specify configuration options -for the extended input devices. For some OSs, the extended device support is -dynamically loaded, and in this case you need to specify which Modules to -load in the \fBModule\fP section (this is documented above). -Each extended device has its own -subsection. To enable an extended device the corresponding subsection -must appear. The subsections names are: -.sp -.in 8 -.nf -\fBJoystick\fP (only on supported systems ie. Linux, FreeBSD and NetBSD) -\fBWacomStylus\fP (stylus of a Wacom tablet) -\fBWacomEraser\fP (eraser of a Wacom tablet) -\fBWacomCursor\fP (cursor of a Wacom tablet) -\fBElographics\fP (Elographics touchscreen) -\fBSummaSketch\fP (SummaSketch tablet) -\fBMouse\fP (Mouse) -.fi -.TP -The \fBJoystick\fP subsection supports the following entries: -.RS 8 -.TP 4 -.B Port \fI"path"\fP -sets the path to the special file which represents the device driver. -.TP 4 -.B DeviceName \fI"name"\fP -sets the name of the X device. -.TP 4 -.B TimeOut \fItimeout\fP -sets the time (in milliseconds) between two polls of the device driver. -The value given here may be overriden by the Operating System's joystick -driver. -.TP 4 -.B MaximumXPosition \fIvalue\fP -sets the maximum X value reported by the device driver. -.TP 4 -.B MinimumXPosition \fIvalue\fP -sets the minimum X value reported by the device driver. -.TP 4 -.B MaximumYPosition \fIvalue\fP -sets the maximum Y value reported by the device driver. -.TP 4 -.B MinimumYPosition \fIvalue\fP -sets the minimum Y value reported by the device driver. -.TP 4 -.B CenterX \fIvalue\fP -sets the X center reported by the device driver when the joystick -is idle. If this value is omitted, it is assumed that the joystick -is centered when it is first enabled. -.TP 4 -.B CenterY \fIvalue\fP -sets the Y center reported by the device driver when the joystick -is idle. If this value is omitted, it is assumed that the joystick -is centered when it is first enabled. -.TP 4 -.B Delta \fIvalue\fP -sets the maximum value reported to the X server. i.e. coordinates will -be incremented of \fI(+/\-)value/2\fP at maximum deflection. This determines -the sensitivity. -.TP 4 -.B AlwaysCore -enables the sharing of the core pointer. When this feature is enabled you -cannot put the device in extended mode (i.e. sending extended events). You -can also use the latest integer feedback to control this feature. When the -value of the feedback is zero, the feature is disabled. The feature -is enabled for any other value. -.RE -.TP -Multiple instances of the Wacom devices can cohabit. It can be useful -to define multiple devices with different active zones. The -\fBWacomStylus\fP, \fBWacomEraser\fP and \fBWacomCursor\fP subsections -support the following entries: -.RS 8 -.TP 4 -.B Port \fI"path"\fP -sets the path to the special file which represents serial line where -the tablet is plugged. You have to specify it for each subsection with -the same value if you want to have multiple devices with the same tablet. -.TP 4 -.B DeviceName \fI"name"\fP -sets the name of the X device. -.TP 4 -.B Suppress \fInumber\fP -sets the position increment under which not to transmit coordinates. -This entry must be specified only in the first Wacom subsection if you have -multiple devices for one tablet. -.TP 4 -.B Mode \fIRelative|Absolute\fP -sets the mode of the device. -.TP 4 -.B TiltMode -enables tilt report if your tablet supports it (ROM version 1.4 and above). -If this is enabled, multiple devices at the same time will not be reported. -.TP 4 -.B HistorySize \fInumber\fP -sets the motion history size. By default the value is zero. -.TP 4 -.B AlwaysCore -enables the sharing of the core pointer. When this feature is enabled you -cannot put the device in extended mode (i.e. sending extended events). You -can also use the latest integer feedback to control this feature. When the -value of the feedback is zero, the feature is disabled. The feature -is enabled for any other value. -.TP 4 -.B TopX \fInumber\fP -X coordinate of the top corner of the active zone. -.TP 4 -.B TopY \fInumber\fP -Y coordinate of the top corner of the active zone. -.TP 4 -.B BottomX \fInumber\fP -X coordinate of the bottom corner of the active zone. -.TP 4 -.B BottomY \fInumber\fP -Y coordinate of the bottom corner of the active zone. -.TP 4 -.B KeepShape -When this option is enabled, the active zone begins according to TopX -and TopY. The bottom corner is calculated to keep shapes ie. the -ratio width/heigth of the active zone is calculated to have the same -ratio as the one of the screen. -.RE -.TP -The \fBElographics\fP subsection support the following entries: -.RS 8 -.TP 4 -.B Port \fI"path"\fP -sets the path to the special file which represents the device driver. -.TP 4 -.B DeviceName \fI"name"\fP -sets the name of the X device. -.TP 4 -.B MaximumXPosition \fIposition\fP -sets the maximum X position reported by the touchscreen. -.TP 4 -.B MinimumXPosition \fIposition\fP -sets the minimum X position reported by the touchscreen. -.TP 4 -.B MaximumYPosition \fIposition\fP -sets the maximum Y position reported by the touchscreen. -.TP 4 -.B MinimumYPosition \fIposition\fP -sets the minimum Y position reported by the touchscreen. -.TP 4 -.B ScreenNo \fInumber\fP -sets the screen number where the touchscreen is connected. -.TP 4 -.B UntouchDelay \fIvalue\fP -sets the delay (in tens of milliseconds) after which the device -considers that an untouch occurs. -.TP 4 -.B ReportDelay \fIvalue\fP -sets the delay (in ten of milliseconds) between two reports -of positions. -.TP 4 -.B AlwaysCore -enables the sharing of the core pointer. When this feature is enabled you -cannot put the device in extended mode (i.e. sending extended events). You -can also use the latest integer feedback to control this feature. When the -value of the feedback is zero, the feature is disabled. The feature -is enabled for any other value. -.RE -.TP -The \fBSummaSketch\fP subsection support the following entries: -.RS 8 -.TP 4 -.B Port \fI"path"\fP -sets the path to the special file which represents the device driver. -.TP 4 -.B DeviceName \fI"name"\fP -sets the name of the X device. -.TP 4 -.B Mode \fIRelative|Absolute\fP -sets the mode of the device. -.TP 4 -.B Cursor \fIStylus|Puck\fP -sets the cursor type, stylus or 4 button puck. -.TP 4 -.B Increment \fIvalue\fP -sets the maximum change in coordinates before new report. -.TP 4 -.B ActiveArea \fIXValue YValue\fP -sets the size of the active area on the tablet, in 10ths of an inch. -.TP 4 -.B ActiveOffset \fIXValue YValue\fP -sets the upper left of the active area on the tablet, in 10ths of an inch. -If no value is specefied, it will center the active area. -.TP 4 -.B HistorySize \fInumber\fP -sets the motion history size. By default the value is zero. -.TP 4 -.B AlwaysCore -enables the sharing of the core pointer. When this feature is enabled you -cannot put the device in extended mode (i.e. sending extended events). You -can also use the latest integer feedback to control this feature. When the -value of the feedback is zero, the feature is disabled. The feature -is enabled for any other value. -.RE -.TP -The \fBMouse\fP subsection support the same entries as the -standard \fBPointer\fP section, plus the following: -.RS 8 -.TP 4 -.B DeviceName \fI"name"\fP -sets the name of the X device. -.TP 4 -.B AlwaysCore -enables the sharing of the core pointer. When this feature is enabled you -cannot put the device in extended mode (i.e. sending extended events). You -can also use the latest integer feedback to control this feature. When the -value of the feedback is zero, the feature is disabled. The feature -is enabled for any other value. -.RE -.PP -For an example of an XF86Config file, see the file installed as -<XRoot>/lib/X11/XF86Config.eg. -.SH FILES -.PP -.nf -/etc/XF86Config -<XRoot>/lib/X11/XF86Config.\fIhostname\fP -<XRoot>/lib/X11/XF86Config -.sp 1 -Note: <XRoot> refers to the root of the X11 install tree. -.fi -.SH "SEE ALSO" -X(1), Xserver(1), XFree86(1), XF86_SVGA(1), XF86_VGA16(1), -XF86_Mono(1), XF86_S3(1), XF86_8514(1), XF86_Mach8(1), XF86_Mach32(1), -XF86_P9000(1), XF86_AGX(1). -.SH AUTHORS -.PP -Refer to the -.I XFree86(1) -manual page. -.\" $TOG: XF86Conf.man /main/28 1997/07/19 09:22:00 kaleb $ diff --git a/xc/programs/Xserver/hw/xfree86/XFree86.man b/xc/programs/Xserver/hw/xfree86/XFree86.man deleted file mode 100644 index 9858ed6d2..000000000 --- a/xc/programs/Xserver/hw/xfree86/XFree86.man +++ /dev/null @@ -1,556 +0,0 @@ -.\" $XFree86: xc/programs/Xserver/hw/xfree86/XFree86.man,v 3.43 1998/07/25 16:54:46 dawes Exp $ -.TH XFree86 1 "Version 4.0" "XFree86" -.SH NAME -XFree86 - X11R6 X server -.SH SYNOPSIS -.B XFree86 -[:display] [option ...] -.SH DESCRIPTION -XFree86 is an X servers for UNIX-like OSs on Intel x86 and other platforms. -This work is derived from -.I "X386\ 1.2" -which was contributed to X11R5 by Snitily Graphics Consulting Service. -The current XFree86 release is based on X11R6.3. -The XFree86 X server architecture was redesigned for the 4.0 release, and -it includes among other things a loadable module system donated by -Metro Link, Inc. -.SH CONFIGURATIONS -.PP -.I XFree86 -operates under the following operating systems: -.RS .5i -.na -.PP --- SVR3.2: SCO 3.2.2, 3.2.4, ISC 3.x, 4.x -.br --- SVR4.0: ESIX, Microport, Dell, UHC, Consensys, MST, ISC, AT&T, NCR -.br --- SVR4.2: Consensys, Univel (UnixWare) -.br --- Solaris (x86) 2.5, 2.6 -.br --- FreeBSD 2.1.x, 2.2.x, 3.0-current -.br --- NetBSD 1.2, 1.3 -.br --- OpenBSD -.ig -.br --- BSD/386 version 1.1 and BSD/OS 2.0 -.br --- Mach (from CMU) -.. -.br --- Linux -.ig -.br --- Amoeba version 5.1 -.br --- Minix-386vm version 1.6.25.1 -.. -.br --- LynxOS AT versions 2.2.1, 2.3.0 and 2.4.0, LynxOS microSPARC 2.4.0 -.ad -.RE -.PP -.SH "NETWORK CONNECTIONS" -\fIXFree86\fP supports connections made using the following reliable -byte-streams: -.TP 4 -.I "Local" -\fIXFree86\fP supports local connections via Streams pipe via various mechanisms, -using the following paths (\fIn\fP represents the display number): -.sp .5v -.in 8 -.nf -/dev/X/server.\fBn\fR (SVR3 and SVR4) -/dev/X/Nserver.\fBn\fR (SVR4) -.ig -/tmp/.X11-unix/X\fBn\fR (ISC SVR3) -.. -/dev/X\fBn\fRS and /dev/X\fBn\fRR (SCO SVR3) -.fi -.in -.sp .5v -On SVR4.0.4, if the \fIAdvanced Compatibility Package\fP -is installed, and in SVR4.2, \fIXFree86\fP supports local connections -from clients for SCO XSight/ODT, and (with modifications to the binary) -clients for ISC SVR3. -.TP 4 -.I "Unix Domain" -\fIXFree86\fP uses \fI/tmp/.X11-unix/X\fBn\fR as the filename for the socket, -where \fIn\fP is the display number. -.TP 4 -.I TCP\/IP -\fIXFree86\fP listens on port htons(6000+\fIn\fP), where \fIn\fP is the display -number. -.ig -.TP 4 -.I "Amoeba RPC" -This is the default communication medium used under native Amoeba. -Note that under Amoeba, the server should be started -with a ``\fIhostname\fP:\fIdisplaynumber\fP'' argument. -.. -.SH "ENVIRONMENT VARIABLES" -For operating systems that support local connections other than Unix Domain -sockets (SVR3 and SVR4), there is a compiled-in list specifying the order -in which local connections should be attempted. This list can be overridden by -the \fIXLOCAL\fP environment variable described below. If the display name -indicates a best-choice connection should be made (e.g. \fI:0.0\fP), each -connection mechanism is tried until a connection succeeds or no more -mechanisms are available. Note: for these OSs, the Unix Domain socket -connection is treated differently from the other local connection types. -To use it the connection must be made to \fIunix:0.0\fP. -.PP -The \fIXLOCAL\fP environment variable should contain a list of one more -more of the following: -.sp .5v -.in 8 -.nf -NAMED -PTS -SCO -ISC -.fi -.in -.sp .5v -which represent SVR4 Named Streams pipe, Old-style USL -Streams pipe, SCO XSight Streams pipe, and ISC Streams pipe, respectively. -You can select a single mechanism (e.g. \fIXLOCAL=NAMED\fP), or an ordered -list (e.g. \fIXLOCAL="NAMED:PTS:SCO"\fP). This variable overrides the -compiled-in defaults. For SVR4 it is recommended that \fINAMED\fP be -the first preference connection. The default setting is -\fIPTS:NAMED:ISC:SCO\fP. -.PP -To globally override the compiled-in defaults, you should define (and -export if using \fIsh\fP or \fIksh\fP) \fIXLOCAL\fP globally. If you -use \fIstartx/xinit\fP, the definition should be at the top of -your \fI.xinitrc\fP file. If you use \fIxdm\fP, the definitions should be -early on in the \fI<XRoot>/lib/X11/xdm/Xsession\fP script. -.SH OPTIONS -In addition to the normal server options described in the \fIXserver(1)\fP -manual page, \fIXFree86\fP accepts the following command line switches: -.TP 8 -.B vt\fIXX\fP -\fIXX\fP specifies the Virtual Terminal device number which -\fIXFree86\fP will use. Without this option, \fIXFree86\fP will pick the first -available Virtual Terminal that it can locate. This option applies only -to SVR3, SVR4, Linux, and BSD OSs with the `syscons' or `pcvt' driver. -.TP 8 -.B -crt /dev/tty\fIXX\fP -SCO only. This is the same as the \fBvt\fP option, and is provided for -compatibility with the native SCO X server. -.TP 8 -.B \-probeonly -Causes the server to exit after the device probing stage. The XF86Config file -is still used when this option is given, so information that can be -auto-detected should be commented out. -.TP 8 -.B \-quiet -Suppress most informational messages at startup. -.TP 8 -.B \-bpp \fIn\fP -Set number of bits per pixel. The default is 8. Legal values are -1, 4, 8, 15, 16, 24, 32. Not all servers support all values. -.TP 8 -.B \-weight \fInnn\fP -Set RGB weighting at 16 bpp. The default is 565. This applies -only to those servers which support 16 bpp. -.TP 8 -.B \-flipPixels -Swap the default values for the black and white pixels. -.TP 8 -.B \-disableVidMode -Disable the the parts of the VidMode extension used by the xvidtune client -that can be used to change the video modes. -.TP 8 -.B \-allowNonLocalXvidtune -Allow the xvidtune client to connect from another host. By default non-local -connections are not allowed. -.TP 8 -.B \-disableModInDev -Disable dynamic modification of input device settings. -.TP 8 -.B \-allowNonLocalModInDev -Allow changes to keyboard and mouse settings from non-local clients. -By default, connections from non-local clients are not allowed to do this. -.TP -.B \-allowMouseOpenFail -Allow the server to start up even if the mouse device can't be opened or -initialised. -.TP 8 -.B \-gamma \fIvalue\fP -Set the gamma correction. \fIvalue\fP must be between 0.1 and 10. The -default is 1.0 -This value is applied equally to the R, G and B values. Not all servers -support this. -.TP 8 -.B \-rgamma \fIvalue\fP -Set the red gamma correction. \fIvalue\fP must be between 0.1 and 10. The -default is 1.0 -Not all servers support this. -.TP 8 -.B \-ggamma \fIvalue\fP -Set the green gamma correction. \fIvalue\fP must be between 0.1 and 10. The -default is 1.0 -Not all servers support this. -.TP 8 -.B \-bgamma \fIvalue\fP -Set the blue gamma correction. \fIvalue\fP must be between 0.1 and 10. The -default is 1.0 -Not all servers support this. -.TP 8 -.B \-showconfig -Print out the server version, patchlevel, and a list of screen drivers -configured in the server. -.TP 8 -.B \-verbose -Multiple occurrences of this flag increase the amount of information printed on -stderr (more than the default). -.TP 8 -.B \-version -Same as \fB\-showconfig\fP. -.TP 8 -.B \-xf86config \fIfile\fP -Read the server configuration from \fIfile\fP. This option is only available -when the server is run as root (i.e, with real-uid 0). -.TP 8 -.B \-keeptty -Prevent the server from detaching its initial controlling terminal. This -option is only useful when debugging the server. -.SH "KEYBOARD" -Multiple key presses recognized directly by \fIXFree86\fP are: -.TP 8 -.B Ctrl+Alt+Backspace -Immediately kills the server -- no questions asked. (Can be disabled by -specifying "DontZap" in the \fBServerFlags\fP section of the XF86Config file.) -.TP 8 -.B Ctrl+Alt+Keypad-Plus -Change video mode to next one specified in the configuration file, -(increasing video resolution order). -.TP 8 -.B Ctrl+Alt+Keypad-Minus -Change video mode to previous one specified in the configuration file, -(decreasing video resolution order). -.TP 8 -.B Ctrl+Alt+F1...F12 -For BSD systems using the syscons driver and Linux, these keystroke -combinations are used to switch to Virtual -Console 1 through 12. -.SH SETUP -.I XFree86 -uses a configuration file called \fBXF86Config\fP for its initial setup. -Refer to the -.I XF86Config(4/5) -manual page for more information. -.SH FILES -.TP 30 -/etc/XF86Config -Server configuration file -.TP 30 -<XRoot>/lib/X11/XF86Config.\fIhostname\fP -Server configuration file -.TP 30 -<XRoot>/lib/X11/XF86Config -Server configuration file -.TP 30 -<XRoot>/bin/\(** -Client binaries -.TP 30 -<XRoot>/include/\(** -Header files -.TP 30 -<XRoot>/lib/\(** -Libraries -.TP 30 -<XRoot>/lib/X11/fonts/\(** -Fonts -.TP 30 -<XRoot>/lib/X11/rgb.txt -Color names to RGB mapping -.TP 30 -<XRoot>/lib/X11/XErrorDB -Client error message database -.TP 30 -<XRoot>/lib/X11/app-defaults/\(** -Client resource specifications -.TP 30 -<XRoot>/man/man?/\(** -Manual pages -.TP 30 -/etc/X\fIn\fP.hosts -Initial access control list for display \fIn\fP -.LP -Note: <XRoot> refers to the root of the X11 install tree. -.SH "SEE ALSO" -X(1), Xserver(1), xdm(1), xinit(1), XF86Config(4/5), xf86config(1), -XF86_SVGA(1), XF86_VGA16(1), XF86_Mono(1), XF86_Accel(1), xvidtune(1) -.SH AUTHORS -.PP -For X11R5, \fIXF86 1.2\fP was provided by: -.TP 8 -Thomas Roell, \fIroell@informatik.tu-muenchen.de\fP -TU-Muenchen: Server and SVR4 stuff -.TP 8 -Mark W. Snitily, \fImark@sgcs.com\fP -SGCS: SVR3 support, X Consortium Sponsor -.PP - ... and many more people out there on the net who helped with ideas and -bug-fixes. -.PP -XFree86 was integrated into X11R6 by the following team: -.PP -.nf -Stuart Anderson \fIanderson@metrolink.com\fP -Doug Anson \fIdanson@lgc.com\fP -Gertjan Akkerman \fIakkerman@dutiba.twi.tudelft.nl\fP -Mike Bernson \fImike@mbsun.mlb.org\fP -Robin Cutshaw \fIrobin@XFree86.org\fP -David Dawes \fIdawes@XFree86.org\fP -Marc Evans \fImarc@XFree86.org\fP -Pascal Haible \fIhaible@izfm.uni-stuttgart.de\fP -Matthieu Herrb \fIMatthieu.Herrb@laas.fr\fP -Dirk Hohndel \fIhohndel@XFree86.org\fP -David Holland \fIdavidh@use.com\fP -Alan Hourihane \fIalanh@fairlite.demon.co.uk\fP -Jeffrey Hsu \fIhsu@soda.berkeley.edu\fP -Glenn Lai \fIglenn@cs.utexas.edu\fP -Ted Lemon \fImellon@ncd.com\fP -Rich Murphey \fIrich@XFree86.org\fP -Hans Nasten \fInasten@everyware.se\fP -Mark Snitily \fImark@sgcs.com\fP -Randy Terbush \fIrandyt@cse.unl.edu\fP -Jon Tombs \fItombs@XFree86.org\fP -Kees Verstoep \fIversto@cs.vu.nl\fP -Paul Vixie \fIpaul@vix.com\fP -Mark Weaver \fIMark_Weaver@brown.edu\fP -David Wexelblat \fIdwex@XFree86.org\fP -Philip Wheatley \fIPhilip.Wheatley@ColumbiaSC.NCR.COM\fP -Thomas Wolfram \fIwolf@prz.tu-berlin.de\fP -Orest Zborowski \fIorestz@eskimo.com\fP -.fi -.PP -The \fIXFree86\fP enhancement package was provided by: -.TP 8 -David Dawes, \fIdawes@XFree86.org\fP -Release coordination, administration of FTP repository and mailing lists. -Source tree management -and integration, accelerated server integration, fixing, and coding. -.TP 8 -Glenn Lai, \fIglenn@cs.utexas.edu\fP -The SpeedUp code for ET4000 based SVGA cards, and ET4000/W32 accelerated -server. -.TP 8 -Jim Tsillas, \fIjtsilla@ccs.neu.edu\fP -Many server speedups from the fX386 series of enhancements. -.TP 8 -David Wexelblat, \fIdwex@XFree86.org\fP -Integration of the fX386 code into the default server, -many driver fixes, and driver documentation, assembly of the VGA -card/monitor database, development of the generic video mode listing. -Accelerated server integration, fixing, and coding. -.TP 8 -Dirk Hohndel, \fIhohndel@XFree86.org\fP -Linux shared libraries and release coordination. Accelerated server -integration and fixing. Generic administrivia and documentation. -.PP -.TP 8 -Amancio Hasty Jr., \fIhasty@netcom.com\fP -Porting to \fB386BSD\fP version 0.1 and XS3 development. -.TP 8 -Rich Murphey, \fIrich@XFree86.org\fP -Ported to \fB386BSD\fP version 0.1 based on the original port by Pace Willison. -Support for \fB386BSD\fP, \fBFreeBSD\fP, and \fBNetBSD\fP. -.TP 8 -Robert Baron, \fIRobert.Baron@ernst.mach.cs.cmu.edu\fP -Ported to \fBMach\fP. -.TP 8 -Orest Zborowski, \fIorestz@eskimo.com\fP -Ported to \fBLinux\fP. -.TP 8 -Doug Anson, \fIdanson@lgc.com\fP -Ported to \fBSolaris x86\fP. -.TP 8 -David Holland, \fIdavidh@use.com\fP -Ported to \fBSolaris x86\fP. -.TP 8 -David McCullough, \fIdavidm@stallion.oz.au\fP -Ported to \fBSCO SVR3\fP. -.TP 8 -Michael Rohleder, \fImichael.rohleder@stadt-frankfurt.de\fP -Ported to \fBISC SVR3\fP. -.TP 8 -Kees Verstoep, \fIversto@cs.vu.nl\fP -Ported to \fBAmoeba\fP based on Leendert van Doorn's original Amoeba port of -X11R5. -.TP 8 -Marc Evans, \fIMarc@XFree86.org\fP -Ported to \fBOSF/1\fP. -.TP 8 -Philip Homburg, \fIphilip@cs.vu.nl\fP -Ported to \fBMinix-386vm\fP. -.TP 8 -Thomas Mueller, \fItm@systrix.de\fP -Ported to \fBLynxOS\fP. -.TP 8 -Jon Tombs, \fItombs@XFree86.org\fP -S3 server and accelerated server coordination. -.TP 8 -Harald Koenig, \fIkoenig@tat.physik.uni-tuebingen.de\fP -S3 server development. -.TP 8 -Bernhard Bender, \fIbr@elsa.mhs.compuserve.com\fP -S3 server development. -.TP 8 -Kevin Martin, \fImartin@cs.unc.edu\fP -Overall work on the base accelerated servers (ATI and 8514/A), and Mach64 -server. -.TP 8 -Rik Faith, \fIfaith@cs.unc.edu\fP -Overall work on the base accelerated servers (ATI and 8514/A). -.TP 8 -Tiago Gons, \fItiago@comosjn.hobby.nl\fP -Mach8 and 8514/A server development -.TP 8 -Hans Nasten, \fInasten@everyware.se\fP -Mach8, 8514/A, and S3 server development and BSD/386 support -.TP 8 -Mike Bernson, \fImike@mbsun.mlb.org\fP -Mach32 server development. -.TP 8 -Mark Weaver, \fIMark_Weaver@brown.edu\fP -Mach32 server development. -.TP 8 -Craig Groeschel, \fIcraig@metrolink.com\fP -Mach32 server development. -.TP 8 -Henry Worth, \fIHenry.Worth@amail.amdahl.com\fP -AGX server. -.TP 8 -Erik Nygren, \fInygren@mit.edu\fP -P9000 server. -.TP 8 -Harry Langenbacher \fIharry@brain.jpl.nasa.gov\fP -P9000 server. -.TP 8 -Chris Mason, \fImason@mail.csh.rit.edu\fP -P9000 server. -.TP 8 -Henrik Harmsen \fIharmsen@eritel.se\fP -P9000 server. -.TP 8 -Simon Cooper, \fIscooper@vizlab.rutgers.edu\fP -Cirrus accelerated code (based on work by Bill Reynolds). -.TP 8 -Harm Hanemaayer, \fIhhanemaa@cs.ruu.nl\fP -Cirrus accelerated code, and ARK driver. -.TP 8 -Thomas Zerucha, \fIzerucha@shell.portal.com\fP -Support for Cirrus CL-GD7543. -.TP 8 -Leon Bottou, \fIbottou@laforia.ibp.fr\fP -ARK driver. -.TP 8 -Mike Tierney, \fIfloyd@eng.umd.edu\fP -WD accelerated code. -.TP 8 -Bill Conn, \fIconn@bnr.ca\fP -WD accelerated code. -.TP 8 -Brad Bosch, \fIbrad@lachman.com\fP -WD 90C24A support. -.TP 8 -Alan Hourihane, \fIalanh@fairlite.demon.co.uk\fP -Trident SVGA driver, SiS SVGA driver and DEC 21030 server. -.TP 8 -Marc Aurele La France, \fItsi@ualberta.ca\fP -ATI SVGA driver -.TP 8 -Steve Goldman, \fIsgoldman@encore.com\fP -Oak 067/077 SVGA driver. -.TP 8 -Jorge Delgado, \fIernar@dit.upm.es\fP -Oak SVGA driver, and 087 accelerated code. -.TP 8 -Bill Conn, \fIconn@bnr.ca\fP -WD accelerated code. -.TP 8 -Paolo Severini, \fIlendl@dist.dist.unige.it\fP -AL2101 SVGA driver -.TP 8 -Ching-Tai Chiu, \fIcchiu@netcom.com\fP -Avance Logic ALI SVGA driver -.TP 8 -Manfred Brands, \fImb@oceonics.nl\fP -Cirrus 64xx SVGA driver -.TP 8 -Randy Hendry, \fIrandy@sgi.com\fP -Cirrus 6440 support in the cl64xx SVGA driver -.TP 8 -Frank Dikker, \fIdikker@cs.utwente.nl\fP -MX SVGA driver -.TP 8 -Regis Cridlig, \fIcridlig@dmi.ens.fr\fP -Chips & Technologies driver -.TP 8 -Jon Block, \fIblock@frc.com\fP -Chips & Technologies driver -.TP 8 -Mike Hollick, \fIhollick@graphics.cis.upenn.edu\fP -Chips & Technologies driver -.TP 8 -Nozomi Ytow -Chips & Technologies driver -.TP 8 -Egbert Eich, \fIEgbert.Eich@Physik.TH-Darmstadt.DE\fP -Chips & Technologies driver -.TP 8 -David Bateman, \fIdbateman@ee.uts.edu.au\fP -Chips & Technologies driver -.TP 8 -Xavier Ducoin, \fIxavier@rd.lectra.fr\fP -Chips & Technologies driver -.TP 8 -Peter Trattler, \fIpeter@sbox.tu-graz.ac.at\fP -RealTek SVGA driver -.TP 8 -Craig Struble, \fIcstruble@acm.vt.edu\fP -Video7 SVGA driver -.TP 8 -Gertjan Akkerman, \fIakkerman@dutiba.twi.tudelft.nl\fP -16 colour VGA server, and XF86Config parser. -.TP 8 -Davor Matic, \fIdmatic@Athena.MIT.EDU\fP -Hercules driver. -.TP 8 -Pascal Haible, \fIhaible@izfm.uni-stuttgart.de\fP -Banked monochrome VGA support, Hercules support, and mono frame buffer -support for dumb monochrome devices -.TP 8 -Martin Schaller, -.TP 8 -Geert Uytterhoeven,\fIGeert.Uytterhoeven@cs.kuleuven.ac.be\fP -Linux/m68k Frame Buffer Device driver -.TP 8 -Andreas Schwab, \fIschwab@issan.informatik.uni-dortmund.de\fP -Linux/m68k Frame Buffer Device driver -.TP 8 -Guenther Kelleter, \fIguenther@Pool.Informatik.RWTH-Aachen.de\fP -Linux/m68k Frame Buffer Device driver -.TP 8 -Frederic Lepied, \fLepied@XFree86.Org\fP -XInput extension integration. Wacom, joystick and extended mouse drivers. -.TP 8 -Patrick Lecoanet, \flecoanet@cena.dgac.fr\fP -Elographics touchscreen driver. -.TP 8 -Steven Lang, \ftiger@tyger.org\fP -SummaSketch tablet driver. -.PP - ... and many more people out there on the net who helped with beta-testing -this enhancement. -.PP -\fIXFree86\fP source is available from the FTP server -\fIftp.XFree86.org\fP, among others. Send email to -\fIXFree86@XFree86.org\fP for details. -.\" $XConsortium: XFree86.man /main/25 1996/12/09 17:33:22 kaleb $ diff --git a/xc/programs/Xserver/hw/xfree86/common/xf86Config.c b/xc/programs/Xserver/hw/xfree86/common/xf86Config.c index 18baa01f7..e68780d39 100644 --- a/xc/programs/Xserver/hw/xfree86/common/xf86Config.c +++ b/xc/programs/Xserver/hw/xfree86/common/xf86Config.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86Config.c,v 3.209 2000/02/18 00:47:35 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86Config.c,v 3.214 2000/03/08 05:38:36 dawes Exp $ */ /* @@ -52,15 +52,19 @@ extern Bool noPanoramiXExtension; "%E," "%F," \ "/etc/X11/%F," "%P/etc/X11/%F," \ "%D/%X," \ - "/etc/X11/%X," "/etc/%X," "%P/etc/X11/%X.%H," \ - "%P/etc/X11/%X," "%P/lib/X11/%X.%H," \ + "/etc/X11/%X-%M," "/etc/X11/%X," "/etc/%X," \ + "%P/etc/X11/%X.%H," "%P/etc/X11/%X-%M," \ + "%P/etc/X11/%X," \ + "%P/lib/X11/%X.%H," "%P/lib/X11/%X-%M," \ "%P/lib/X11/%X" #endif #ifndef USER_CONFIGPATH #define USER_CONFIGPATH "/etc/X11/%S," "%P/etc/X11/%S," \ "/etc/X11/%G," "%P/etc/X11/%G," \ - "/etc/X11/%X," "/etc/%X," "%P/etc/X11/%X.%H," \ - "%P/etc/X11/%X," "%P/lib/X11/%X.%H," \ + "/etc/X11/%X-%M," "/etc/X11/%X," "/etc/%X," \ + "%P/etc/X11/%X.%H," "%P/etc/X11/%X-%M," \ + "%P/etc/X11/%X," \ + "%P/lib/X11/%X.%H," "%P/lib/X11/%X-%M," \ "%P/lib/X11/%X" #endif #ifndef PROJECTROOT @@ -244,6 +248,8 @@ xf86ModulelistFromConfig(pointer **optlist) optarray[count] = NULL; if (optlist) *optlist = optarray; + else + xfree(optarray); return modulearray; } @@ -382,6 +388,134 @@ xf86InputDriverlistFromConfig() /* + * Generate a compiled-in list of driver names. This is used to produce a + * consistent probe order. For the loader server, we also look for vendor- + * provided modules, pre-pending them to our own list. + */ +static char ** +GenerateDriverlist(char * dirname, char * drivernames) +{ + char *cp, **driverlist; + int count; + + /* Count the number needed */ + count = 0; + cp = drivernames; + while (*cp) { + while (*cp && isspace(*cp)) cp++; + if (!*cp) break; + count++; + while (*cp && !isspace(*cp)) cp++; + } + + if (!count) + return NULL; + + /* Now allocate the array of pointers to 0-terminated driver names */ + driverlist = (char **)xnfalloc((count + 1) * sizeof(char *)); + count = 0; + cp = drivernames; + while (*cp) { + while (*cp && isspace(*cp)) cp++; + if (!*cp) break; + driverlist[count++] = cp; + while (*cp && !isspace(*cp)) cp++; + if (!*cp) break; + *cp++ = 0; + } + driverlist[count] = NULL; + +#ifdef XFree86LOADER + { + const char *subdirs[] = {NULL, NULL}; + static const char *patlist[] = {"(.*)_drv\\.so", "(.*)_drv\\.o", NULL}; + char **dlist, **clist, **dcp, **ccp; + + subdirs[0] = dirname; + + /* Get module list */ + dlist = LoaderListDirs(subdirs, patlist); + if (!dlist) { + xfree(driverlist); + return NULL; /* No modules, no list */ + } + + clist = driverlist; + + /* The resulting list cannot be longer than the module list */ + for (dcp = dlist, count = 0; *dcp++; count++); + driverlist = (char **)xnfalloc((count + 1) * sizeof(char *)); + + /* First, add modules not in compiled-in list */ + for (count = 0, dcp = dlist; *dcp; dcp++) { + for (ccp = clist; ; ccp++) { + if (!*ccp) { + driverlist[count++] = *dcp; + break; + } + if (!strcmp(*ccp, *dcp)) + break; + } + } + + /* Next, add compiled-in names that are also modules */ + for (ccp = clist; *ccp; ccp++) { + for (dcp = dlist; *dcp; dcp++) { + if (!strcmp(*ccp, *dcp)) { + driverlist[count++] = *ccp; + break; + } + } + } + + driverlist[count++] = NULL; + xfree(clist); + xfree(dlist); + driverlist = xnfrealloc(driverlist, count * sizeof(char *)); + } +#endif /* XFree86LOADER */ + + return driverlist; +} + + +char ** +xf86DriverlistFromCompile(void) +{ + static char **driverlist = NULL; + static Bool generated = FALSE; + + /* This string is modified in-place */ + static char drivernames[] = DRIVERS; + + if (!generated) { + generated = TRUE; + driverlist = GenerateDriverlist("drivers", drivernames); + } + + return driverlist; +} + + +char ** +xf86InputDriverlistFromCompile(void) +{ + static char **driverlist = NULL; + static Bool generated = FALSE; + + /* This string is modified in-place */ + static char drivernames[] = IDRIVERS; + + if (!generated) { + generated = TRUE; + driverlist = GenerateDriverlist("input", drivernames); + } + + return driverlist; +} + + +/* * xf86ConfigError -- * Print a READABLE ErrorMessage!!! All information that is * available is printed. @@ -575,6 +709,8 @@ static OptionInfoRec FlagOptions[] = { {0}, FALSE }, { FLAG_PIXMAP, "Pixmap", OPTV_INTEGER, {0}, FALSE }, + { FLAG_PC98, "PC98", OPTV_BOOLEAN, + {0}, FALSE }, { FLAG_ESTIMATE_SIZES_AGGRESSIVELY,"EstimateSizesAggressively",OPTV_INTEGER, {0}, FALSE }, { FLAG_NOPM, "NoPM", OPTV_BOOLEAN, @@ -673,6 +809,10 @@ configServerFlags(XF86ConfFlagsPtr flagsconf, XF86OptionPtr layoutopts) xf86Info.pciFlags = PCIForceConfig1; if (xf86IsOptionSet(FlagOptions, FLAG_PCIFORCECONFIG2)) xf86Info.pciFlags = PCIForceConfig2; + /* + * XXX This should be handled like a proper boolean option -- see further + * above for examples. + */ if (xf86IsOptionSet(FlagOptions, FLAG_NOPM)) xf86Info.pmFlag = FALSE; else @@ -1176,7 +1316,6 @@ configLayout(serverLayoutPtr servlayoutp, XF86ConfLayoutPtr conf_layout, } } -#define LAYOUT_DEBUG #ifdef LAYOUT_DEBUG ErrorF("Layout \"%s\"\n", conf_layout->lay_identifier); for (i = 0; i < count; i++) { @@ -1664,9 +1803,6 @@ configDevice(GDevPtr devicep, XF86ConfDevicePtr conf_device, Bool active) xf86Msg(X_CONFIG, "|-->Inactive Device \"%s\"\n", conf_device->dev_identifier); - /* - * some things (like clocks) are missing here - */ devicep->identifier = conf_device->dev_identifier; devicep->vendor = conf_device->dev_vendor; devicep->board = conf_device->dev_board; diff --git a/xc/programs/Xserver/hw/xfree86/common/xf86DoProbe.c b/xc/programs/Xserver/hw/xfree86/common/xf86DoProbe.c index 81d79ddd0..c87684639 100644 --- a/xc/programs/Xserver/hw/xfree86/common/xf86DoProbe.c +++ b/xc/programs/Xserver/hw/xfree86/common/xf86DoProbe.c @@ -1,5 +1,5 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86DoProbe.c,v 1.7 2000/02/18 17:16:25 tsi Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86DoProbe.c,v 1.9 2000/03/01 16:00:51 tsi Exp $ */ /* * finish setting up the server * Load the driver modules and call their probe functions. @@ -15,7 +15,8 @@ #include "os.h" #ifdef XFree86LOADER #include "loaderProcs.h" -#endif +#include "xf86Config.h" +#endif /* XFree86LOADER */ #include "xf86.h" #include "xf86Priv.h" @@ -28,22 +29,13 @@ void DoProbe() { int i; - Bool probeResultISA, probeResultPCI, probeResultFBDEV; + Bool probeResult; #ifdef XFree86LOADER /* Find the list of video driver modules. */ - char **list, **l; - const char *subdirs[] = { - "drivers", - NULL - }; - const char *patlist[] = { - "(.*)_drv\\.so", - "(.*)_drv\\.o", - NULL - }; + char **list = xf86DriverlistFromCompile(); + char **l; - list = LoaderListDirs(subdirs, NULL); if (list) { ErrorF("List of video driver modules:\n"); for (l = list; *l; l++) @@ -61,38 +53,21 @@ DoProbe() /* Call all of the probe functions, reporting the results. */ for (i = 0; i < xf86NumDrivers; i++) { - probeResultISA = probeResultPCI = probeResultFBDEV = FALSE; - if (xf86DriverList[i]->Probe != NULL) { - probeResultISA = - xf86DriverList[i]->Probe(xf86DriverList[i], PROBE_DETECTISA); - ErrorF("Probe ISA capabilities in driver `%s' returns %s\n", - xf86DriverList[i]->driverName, BOOLTOSTRING(probeResultISA)); - } - if (xf86DriverList[i]->Probe != NULL) { - probeResultPCI = - xf86DriverList[i]->Probe(xf86DriverList[i], PROBE_DETECTPCI); - ErrorF("Probe PCI capabilities in driver `%s' returns %s\n", - xf86DriverList[i]->driverName, BOOLTOSTRING(probeResultPCI)); - } - if (xf86DriverList[i]->Probe != NULL) { - probeResultFBDEV = - xf86DriverList[i]->Probe(xf86DriverList[i], PROBE_DETECTFBDEV); - ErrorF("Probe FBDEV capabilities in driver `%s' returns %s\n", - xf86DriverList[i]->driverName, BOOLTOSTRING(probeResultFBDEV)); - } + if (xf86DriverList[i]->Probe == NULL) continue; + + probeResult = + (*xf86DriverList[i]->Probe)(xf86DriverList[i], PROBE_DETECT); + ErrorF("Probe in driver `%s' returns %s\n", + xf86DriverList[i]->driverName, BOOLTOSTRING(probeResult)); /* If we have a result, then call driver's Identify function */ - if (probeResultISA || probeResultPCI || probeResultFBDEV) { + if (probeResult) { if (xf86DriverList[i]->Identify != NULL) { - xf86DriverList[i]->Identify(0); + (*xf86DriverList[i]->Identify)(0); } } } -#ifdef XFree86LOADER - LoaderFreeDirList(list); -#endif /* XFree86LOADER */ - OsCleanup(); AbortDDX(); fflush(stderr); diff --git a/xc/programs/Xserver/hw/xfree86/common/xf86pciBus.c b/xc/programs/Xserver/hw/xfree86/common/xf86pciBus.c index 4e583bf9c..3fb5b6ba4 100644 --- a/xc/programs/Xserver/hw/xfree86/common/xf86pciBus.c +++ b/xc/programs/Xserver/hw/xfree86/common/xf86pciBus.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86pciBus.c,v 3.10 2000/02/21 18:09:59 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86pciBus.c,v 3.13 2000/03/05 23:47:48 dawes Exp $ */ /* * Copyright (c) 1997-1999 by The XFree86 Project, Inc. @@ -7,7 +7,6 @@ /* * This file contains the interfaces to the bus-specific code */ -#define DEBUG #include <ctype.h> #include <stdlib.h> #include <unistd.h> @@ -350,35 +349,35 @@ FindPCIVideoInfo(void) xf86Msg(X_PROBED, "PCI: (%d:%d:%d) ", info->bus, info->device, info->func); if (vendorname) - ErrorF("%s ", vendorname); + xf86ErrorF("%s ", vendorname); else - ErrorF("unknown vendor (0x%04x) ", info->vendor); + xf86ErrorF("unknown vendor (0x%04x) ", info->vendor); if (chipname) - ErrorF("%s ", chipname); + xf86ErrorF("%s ", chipname); else - ErrorF("unknown chipset (0x%04x) ", info->chipType); - ErrorF("rev %d", info->chipRev); + xf86ErrorF("unknown chipset (0x%04x) ", info->chipType); + xf86ErrorF("rev %d", info->chipRev); for (i = 0; i < 6; i++) { if (info->memBase[i]) { if (!memdone) { - ErrorF(", Mem @ "); + xf86ErrorF(", Mem @ "); memdone = TRUE; } else - ErrorF(", "); - ErrorF("0x%08x/%d", info->memBase[i], info->size[i]); + xf86ErrorF(", "); + xf86ErrorF("0x%08x/%d", info->memBase[i], info->size[i]); } } for (i = 0; i < 6; i++) { if (info->ioBase[i]) { if (!iodone) { - ErrorF(", I/O @ "); + xf86ErrorF(", I/O @ "); iodone = TRUE; } else - ErrorF(", "); - ErrorF("0x%04x/%d", info->ioBase[i], info->size[i]); + xf86ErrorF(", "); + xf86ErrorF("0x%04x/%d", info->ioBase[i], info->size[i]); } } - ErrorF("\n"); + xf86ErrorF("\n"); } } } @@ -1397,14 +1396,15 @@ getValidBIOSBase(PCITAG tag, int num) void xf86PciProbe(void) { - void (* DataSetupFunc)(SymTabPtr *, pciVendorDeviceInfo **, - pciVendorCardInfo **); + typedef void DataSetupFuncType(SymTabPtr *, pciVendorDeviceInfo **, + pciVendorCardInfo **); + DataSetupFuncType *DataSetupFunc; #ifdef XFree86LOADER /* * we need to get the pointer to the pci data structures initialized */ - DataSetupFunc = LoaderSymbol("xf86SetupPciData"); + DataSetupFunc = (DataSetupFuncType *)LoaderSymbol("xf86SetupPciData"); #else DataSetupFunc = xf86SetupScanPci; #endif diff --git a/xc/programs/Xserver/hw/xfree86/ddc/ddcProperty.c b/xc/programs/Xserver/hw/xfree86/ddc/ddcProperty.c index 926a2c404..4ad9a88da 100644 --- a/xc/programs/Xserver/hw/xfree86/ddc/ddcProperty.c +++ b/xc/programs/Xserver/hw/xfree86/ddc/ddcProperty.c @@ -3,7 +3,7 @@ * * Copyright 1999 by Andrew C Aitchison <A.C.Aitchison@dpmms.cam.ac.uk> */ -/* $XFree86: xc/programs/Xserver/hw/xfree86/ddc/ddcProperty.c,v 1.2 1999/11/19 14:59:16 hohndel Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/ddc/ddcProperty.c,v 1.3 2000/03/05 23:47:50 dawes Exp $ */ #include "misc.h" #include "xf86.h" @@ -27,15 +27,19 @@ xf86SetDDCproperties(ScrnInfoPtr pScrnInfo, xf86MonPtr DDC) CARD8 *VDIFrawdata = NULL; int i, ret; +#ifdef DEBUG ErrorF("xf86SetXDDCprop(%p, %p)\n", pScrnInfo, DDC); +#endif if (pScrnInfo==NULL || pScrnInfo->monitor==NULL || DDC==NULL) { return FALSE; } +#ifdef DEBUG ErrorF("pScrnInfo->scrnIndex %d\n", pScrnInfo->scrnIndex); ErrorF("pScrnInfo->monitor was %p\n", pScrnInfo->monitor); +#endif pScrnInfo->monitor->DDC = DDC; @@ -52,11 +56,13 @@ xf86SetDDCproperties(ScrnInfoPtr pScrnInfo, xf86MonPtr DDC) EDID1rawdata[i] = DDC->rawData[i]; } +#ifdef DEBUG ErrorF("xf86RegisterRootWindowProperty %p(%d,%d,%d,%d,%d,%p)\n", xf86RegisterRootWindowProperty, pScrnInfo->scrnIndex, EDID1Atom, XA_STRING, 8, 128, (unsigned char *)EDID1rawdata ); +#endif ret = xf86RegisterRootWindowProperty(pScrnInfo->scrnIndex, EDID1Atom, XA_INTEGER, 8, @@ -68,7 +74,9 @@ xf86SetDDCproperties(ScrnInfoPtr pScrnInfo, xf86MonPtr DDC) EDID1_DUMMY_STRING #endif ); +#ifdef DEBUG ErrorF("xf86RegisterRootWindowProperty returns %d\n", ret ); +#endif } else if (DDC->ver.version == 2) { if ( (EDID2rawdata = xalloc(256*sizeof(CARD8)))==NULL ) { @@ -89,12 +97,14 @@ xf86SetDDCproperties(ScrnInfoPtr pScrnInfo, xf86MonPtr DDC) if (DDC->vdif) { #define VDIF_DUMMY_STRING "setting dummy VDIF property - please insert correct values\n" +#ifdef DEBUG ErrorF("xf86RegisterRootWindowProperty %p(%d,%d,%d,%d,%d,%p)\n", xf86RegisterRootWindowProperty, pScrnInfo->scrnIndex, VDIFAtom, XA_STRING, 8, strlen(VDIF_DUMMY_STRING), VDIF_DUMMY_STRING ); +#endif VDIFAtom = MakeAtom(VDIF_ATOM_NAME, sizeof(VDIF_ATOM_NAME), TRUE); @@ -104,7 +114,9 @@ xf86SetDDCproperties(ScrnInfoPtr pScrnInfo, xf86MonPtr DDC) strlen(VDIF_DUMMY_STRING), VDIF_DUMMY_STRING ); +#ifdef DEBUG ErrorF("xf86RegisterRootWindowProperty returns %d\n", ret ); +#endif } return TRUE; diff --git a/xc/programs/Xserver/hw/xfree86/doc/BetaReport b/xc/programs/Xserver/hw/xfree86/doc/BetaReport deleted file mode 100644 index 350babb70..000000000 --- a/xc/programs/Xserver/hw/xfree86/doc/BetaReport +++ /dev/null @@ -1,57 +0,0 @@ - XFree86 Beta Test Report Form - -Please fill in as many of the fields a possible, and return this form to -report@XFree86.org. Replace the comments in [] with your own text. - -VERSION: - -3.2A - -XSERVER: - -[e.g. XF86_S3] - -OPERATING SYSTEM: - -[e.g. Linux] - -VIDEO CARD: - - [Fill out each relevant entry. If you don't know some of the details, - just leave them blank.] - - MODEL: - - [Include a precise description of the model. There are often subtle - differences in card model names.] - - GRAPHICS CHIPSET: - - [e.g. S3 968] - - RAMDAC: - - [e.g. AT&T 20C498 Note: visual inspection of the card is the most - reliable way to determine the RAMDAC type] - - CLOCKCHIP: - - [e.g. ICD2061A Note: visual inspection of the card is the most reliable - way to determine the ClockChip type] - - VIDEO MEMORY: - - [e.g. 2MB DRAM Include both the amount, and type (if known)] - - BUS TYPE: - - [e.g. PCI] - -REPORT: - - [Include details of any problems you encountered. If you didn't have - any problems, just say "no problems". Indicate what modes and colour - depths you tested. If you found a bug, give a description of how to - reproduce it.] - - diff --git a/xc/programs/Xserver/hw/xfree86/doc/README.DGux b/xc/programs/Xserver/hw/xfree86/doc/README.DGux deleted file mode 100644 index 8daf55d75..000000000 --- a/xc/programs/Xserver/hw/xfree86/doc/README.DGux +++ /dev/null @@ -1,694 +0,0 @@ - Instructions for Building XFree86 on an Intel Pentium Aviion machine with - DG/ux R4.20MU04 - - Takis Psarogiannakopoulos - - July 27, 1999 - -1. Whats new - -July 27, 1999 - -DG has fix the streams bug in /usr/lib/tcpip.so . (Read below) The workaround -in the July 25 source code has been removed. I've been told from DG that BSD -sockets perform better in DGUX than SVR4 native STREAMS. From R4.20MU06 DG/ux -will have the correct tcpip.so lib (no bug in STREAMS). If you have MU05,MU04 -and you want for some reason STREAMS definitely conntact DG for an upated -/usr/lib/tcpip.so in /usr/lib (patch for your MU04,5). - -DG/ux at the moment lacks the sysi86 syscall and the definition of SYSI86IOPL -(that is in <sys/sysi86.h> but guarded by a UNIXWARE defintion that of course -cannot be applicable to DG/ux). Until this header is accessible by a simple --DDGUX , and _sysi86, sysi86 subroutines added to libc (or some other extra -library) we need to define the DG_NO_SYSI86 to be 1. If DG makes the above -modifications , you will need to manually edit the files (before building) - xc/programs/Xserver/hw/xfree86/SuperProbe/OS_DGUX.c - xc/programs/Xserver/hw/xfree86/etc/scanpci.c - xc/programs/Xserver/hw/xfree86/os-support/dgux/dgux_video.c -and eliminate DG_NO_SYSI86 flag by changing DG_NO_SYSI86 1-->0. - -July 25, 1999 - -A major bug has now been corrected in this release. According to this since -the STREAMS interface of DG/ux were broken the server was listening not to -port 6000 (= 0x1770) but to 0x7017. All binaries that you have from 3.3.3.1, -3.3.3 they will work locally (if you run them in the same machine) but NOT -remotely because they use an Xlib that tries to connect to port 28365. If -you want to run them remotely YOU MUST recompile them! Steve thank you for -bringing this to my attension initially but was too bussy then to look at it -in detail... Perhaps I should have... - -We now use sockets intead of ioctls. But I 've fix and tested the STREAMS -also. - -David thanks for making me realize that this was indeed a problem in DG/ux. - -I 've also take the trouble to port gdb-4.17/8 and ddd (X inter) in -pub/XFree86/3.3.5/binaries/DGUX-ix86/GDB_BETA (both binaries and source code) -in order to be able to send me traces of core files produced by Xservers. Try - - gdb /usr/X11R6/bin/X location of core/core - gdb: where - -and send me what you see. (I suppose that the Xserver executable is in -/usr/X11R6.3/bin) - -From 3.3.3.1: Several bugs are now fixed. DG/ux support is on this official -patch. All configuration is in xc/config/cf/DGUX.cf and in xf86site.def. Also -Imake autodetects (thanks to David Dawes) the DGUX OS (including Release ver- -sion). So only a simple "make World" is needed anymore to build in ix86 -DG/ux. Usually the process to build is (after unpacking and patching the -source "xc" tree) to go to xc/config/cf copy the file xf86site.def to -site.def and edit the files DGUX.cf ,site.def for whatever changes you need -to do. - -Default ProjectRoot in 3.3.5 is /usr/X11R6 (except if you set this specifi- -cally in DGUX.cf either as /usr/X11R6.3-- --my choice, or in whatever you -like). - -From: December 1, 1998 IMPORTANT: PLEASE READ THE FILE README-GCC-2.8.1 GCC -VERSION 2.8.1 is recommended for the DGUX build of X11R6.3 You can ignore -below the _old_ converstation about gcc compiler if you already run a -gcc-2.8.1 in your machine. - -2. GENERAL: - -Get from ftp.xfree86.org the XFree 3.3.x source code: - - ftp ftp.xfree86.org - login: ftp - passwd: your e-mail address - cd pub/XFree86/3.3.5/source - You need the files: - X335src-1.tgz - X335src-2.tgz - X335src-3.tgz - -Get also the contributed X software - - cd /pub/XFree86/3.3.5/source - X335contrib.tgz - -If you have the source tarballs of 3.3.3 go to /pub/XfFree86/3.3.5/bina- -ries/DGUX-ix86/SOURCE get the DGUX source patch - - 3.3.3-3.3.5-DGUX.diff.gz - X335contrib-DGUX.diff.gz (patch for the contrib software). - -to avoid downloading all the source code again. - -Sorry some DGUX changes they didnt make in time for the official release date -of 3.3.4... I do this for free, so some times I may be excused for something -like this... - -To build X11R6.3 you need also the tools for DG/ux (see discussion below). -They will be in ftp dpmms.cam.ac.uk (University of Cambridge,Department of -Pure Mathematics) in /pub/takis/DGUX-Tools/BuildXtools.tar.gz (anonymous ftp) -or in the ftp.xfree86.org ... (pub/XFree86/3.3.5/binaries/DGUX- -ix86/SOURCE/BUILD-TOOLS/ BuildXtools.tar.gz). - -Using a big filesytem (I use a virtual disk "xf86work" mounted on /xf86work -of size 1400000 blocks) copy the source as: - - cp X335src-1.tgz /xf86work/X335src-1.tar.gz - cp X335src-2.tgz /xf86work/X335src-2.tar.gz - cp X335src-3.tgz /xf86work/X335src-3.tar.gz - -(or X333src-1,2,3.tar.gz as above plus the DG/ux patch to 3.3.5 i.e. the file -3.3.3-3.3.5-DGUX.diff.gz) - -And maybe the contributed software: - - cp X335contrib.tgz /xf86work - - (cp X335contrib-DGUX.diff.gz /xf86work). - -If you get the patches from DGUX-ix86, to build from source 3.3.3 your first -problem is that in order to apply the source patch you need "patch" a very -common GNU program that DG/ux doesnt have!? This program is in BuildX- -tools.tar.gz (or ftp prep.ai.mit.edu cd/pub/gnu get patch-2.5.tar.gz) So lets -speak about these tools before anything else: Using "sysadm" mount a filesys- -tem usr_local under /usr/local with size 200000 blocks. Then copy the BuildX- -tools file in /usr and give: - - gzip -d < BuildXtools.tar.gz | tar xvf - - -It will unfold in the new filesytem /usr/local. Then go to your ".profile" -(in your Home dir , mine eg is /admin) and add the /usr/local/bin in your -path and the /usr/local/lib in your lib-path. - -What you need is like that: (vi .profile) - - PATH=/usr/local/bin:/sbin:/usr/sbin:/usr/bin - if [ -d /usr/opt/X11/bin ] - then - PATH=$PATH:/usr/opt/X11/bin - fi - export PATH - (/usr/local/bin is before any other path!) - - LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:/usr/ccs/lib - export LD_LIBRARY_PATH - -then exit and re-login so that your new modified .profile will take effect. - -Now do the following: - - cd /usr/sbin - cp install install_dg - rm install - cp /usr/local/bin - cp install /usr/bin *(make the GNU install the default install)* - (DG/ux install is useless) - (Look also the file xc/config/cf/DGUX.cf , below). - - (Or get GNU make-3.77 and copy install.sh (or -sh) to a /usr/bin/install) - - cd /usr/bin - cp true /usr/local/bin - cd /usr/local/bin - ln -s true ranlib (Install true as ranlib in the DG/ux system) - -Usually giving -v,-V or --version will give you build info on all the tools -in /usr/local/bin (try it). - -**Look the discussion for gcc before you build (below)** - -Now untarr the source tree: In /xf86work (or whatever name you gave to the -big filesystem for the build) - - gzip -d < X335src-1.tar.gz | tar xvf - - gzip -d < X335src-2.tar.gz | tar xvf - - gzip -d < X335src-3.tar.gz | tar xvf - - -(If you have X-3.3.3 do the same for the 3.3.3 sources and then apply the -3.3.5-DGUX source patch - - gzip -d < 3.3.3-3.3.5-DGUX.diff.gz | patch -p0 -E). - -The directory xc in now present in your build filesystem. - -3. Configuration for the build: - -Almost all you need is in "DGUX.cf" located in xc/config/cf. Edit the file -DGUX.cf and site.def and change what ever you need. Remember DGUX.cf over- -writes site.def. The default ProjectRoot for XFree86-3.3.5 is now /usr/X11R6 -(located in site.def). If you want to change this to whatever you like (I -prefer /usr/X11R6.3 and a link in /usr X11R6->X11R6.3) edit DGUX.cf and -locate the entry: - - #if 0 - #define ProjectRoot /usr/X11R6.3 - #endif - -Eliminate the #if 0 , #endif. Then change this to whatever you prefer. (I -prefer the above for the precompiled binaries) - -The DG/ux malloc is crap and keeps bringing problems with some X software so -I dont use it. Instead there is a port of GNU malloc in /usr/local (it came -with the BuildXtools file). Dont try to build with the /lib/libmalloc.a of -DG/ux and then send me e-mails that some programs they dont work properly. -In my build I use tcl8.0 and tk8.0 since the xconfig of R4.20MU03 is report- -ing incorrect values for the monitors and XF86Setup need to be build in order -to manage to adjust the display. If you dont have this (or dont want this) -comment out the lines about tcl,tk, (in DGUX.cf) - - /*******TCL TK DEFINITIONS ***********/ - #define HasTk YES-->NO - ... - #define HasTcl YES-->NO - -Also 'GNU make' is required for the correct X11R6.3 build. (it is in Buildx- -tools file). If you decide yes to tcl,tk obtain the files - - tcl8.0.3.tar.gz - tk8.0.3.tar.gz (from some ftp) - -(or newer versions) and compile them before the building of X11R6.3 (Build -first tcl8.0.3 then tk8.0.3). - -4. DISCUSSION ABOUT GCC - -There are so much things that I can say for the system gcc of DG/ux. If I was -keeping track for the programs that fail using this compiler I will certainly -have fill a book (conveniently for the DG of course). But my work is not to -correct bugs for the DG/ux compiler or anything else) , and in particular to -collect reports for the genius of DG. (DG:Sorry guys nothing personal. I am -a pure Mathematician , I am doing all this work for pleasure, I dont want any -money from DG or anybody else , I am not looking to become a employer of -DG,and I am NOT a trouble shooter of the DG/ux in general. But maybe some -times if you help I may be able to help you also). - -What I wanted to do is to build X11. Thats why you will find in BuildXtools a -new gcc. This gcc is build for DG/ux R4.20MU02. so you have to upgrade your -DG/ux OS version to the above. But it is solid to build not only X11 but -whatever else you want. DO NOT use gcc of DG/ux. If you do I cannot tell you -anything about any problems that you have. To complete the installation of -this new gcc do the following: - - cp -r /usr/local/gcc-dgux /usr/opt/sdk/sde/ix86dgux/usr/lib - cd /usr/opt/sdk/sde/ix86dgux/usr/lib - rm gcc - ln -s gcc-dgux gcc (set link gcc--->gcc-dgux) - - cd /usr/local - cp -r /usr/local/gcc-dgux /usr/sde/ix86dgux/usr/lib - cd /usr/sde/ix86dgux/usr/lib - rm gcc - ln -s gcc-dgux gcc (set link gcc-->gcc-dgux) - -To come back to your old DG/ux gcc just change the above two links gcc-->gcc- -dgux to gcc-->gcc-2 with the command: (in both the above two dirs) - - rm gcc - ln -s gcc-2 gcc - -/usr/bin/gcc -v should report the version that you have. To build succes- -fully this version of X11 gcc is a *MUST*. - -Dynamic loading Servers: Edit xc/config/cf/DGUX.cf and change the entry - -#ifndef BuildDynamicLoading #define BuildDynamicLoading NO --->YES. #endif - -Remeber when you build you will see lots of errors and the servers will NOT -build! This is because the dynamic linker doesnt know the locatios of the -newly created R6 libX's. So after the (seem faulty) building do a - -make DESTDIR=ProjectRoot/lib install - -(look below for install, ProjectRoot the location that you choose in the file -xc/config/cf/DGUX.cf above) - -So that all your new libXR6 libraries will go there. (do a cd Project- -Root/lib to make sure). - -Then go to your home dir and declare the path ProjectRoot/lib dir in you -LD_LIBRARY_PATH (your profile) as: - -LD_LIBRARY_PATH=ProjectRoot/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH - -Then relogin! - -Now just _rebuild_ A FULL XFree86-3.3.5 with the entry - -#define BuildDynamicLoading YES in your DGUX.cf. - -This time you will build _all_ XFree86-3.3.5 correctly. - -5. BUILD - -In the usual X11R5 of DG (mwm) open an xterm and give: (/bin/sh = Bourne -shell) - - cd xc - make World > Build-dg.log - -In that way you will get all the error meggages in your screen. Dont worry -with messages about -znodefs. - -Note: the old command - - make World BOOTSTRAPCFLAGS="-DDGUX" > Build-dg.log - -is no longer needed since imake will detect the DGUX OS (in Version => -3.3.3.1) and set up things. However this command will also work. - -And in another xterm give cd xc tail -f Build-dg.log to watch the building -progress. - -To install X11R6.3 XFree version 3.3.5 after the build you must have a -filesystem say usr_X11R6.3 mounted to the directory /usr/X11R6 size 350000 -blocks. (or whatever you choose to be your ProjectRoot, if you modify -DGUX.cf for another ProjectRoot than the default /usr/X11R6 in site.def). -Then give - - make install - make install.man (install the man pages) - -The installation will not put an XF86Config in your /usr/X11R6.3/lib/X11/ and -so if you give startx the new X11 will not start. Read the file README- -X3331.DGUX in this ftp site (located in the binaries) about the whole instal- -lation procedure of X11R6.3. Or quickly you can do: (I remind: DG/ux mouse -device "/dev/mouse") cd /usr/X11R6.3/bin ln -s XF86_VGA16 X Then put in your -.profile the path /usr/X11R6.3/bin and run the XF86Setup program. Ajust first -the mouse device then everything else. (You need to read really the file -README-DGUX.INSTALL-> look in the end of this file). - -To build the contributed software with XFree86-3.3.5 get the X335contrib.tgz -and do - - gzip -d < X335contrib.tgz | tar xvf - - -(Or for 3.3.3 sources unpack X333contrib.tgz and apply the DGUX patch as - - gzip -d < X335contrib-DGUX.diff.gz | patch -p0 -E ). - -Please note: You must have already install and active the X11R6.3 that you -build so that the imake is working properly for your system. Read below for -how to install this Xwindow system. After that you could do: - - cd contrib - xmkmf -a - make - make install - make install.man (for installing the man pages) - -6. INSTALLATION OF THE BINARY: - -NOTE:This executable has been compiled with the macro -DPENTIUM_CHANGE (that -all the new Aviion machines support). If you have an old i486 (rather -unlikely) the executable will NOT RUN correctly. But we havent use --mcpu=pentiumpro, so the executable will work on ALL PENTIUM machines. - - o About Project Root: I choose as ProjectRoot for ix86 DG/ux the location - /usr/X11R6.3. The default (in 3.3.5 sources) is the /usr/X11R6. To cover - this we make a link in /usr as X11R6->X11R6.3 (read below) ;so dont for- - get to do this link. I dont like the location /usr/opt/X11 (default - location of DG X11) that some of you have suggested to me, I believe it - is a good idea to keep the original X11 as is for several reasons. - - o Make a filesystem,using sysadm, mounted under "/usr/X11R6.3". This is - the default location of X11R6.3 , you cannot change this except if you - recompile the whole source of X. (Please dont send e-mails about this). - The size of this filesystem should be around 175 MB(350000 blocks). - - The list of files is: - - X3353DL.tgz 3D_Labs XServer ... etc - X3358514.tgz - X335AGX.tgz - X335I128.tgz - X335Ma32.tgz Mach32 Xserver - X335Ma64.tgz Mach64 Xserver - X335Ma8.tgz - X335Mono.tgz - X335P9K.tgz - X335S3.tgz - X335S3V.tgz - X335SVGA.tgz SuperVGA Xserver (Supports AV3700 Cirrus) - X335VG16.tgz VGA16 Xserver (needed by XF86Setup) - X335W32.tgz - X335bin.tgz BIN (you must have this) - X335cfg.tgz - X335doc.tgz - X335f100.tgz - X335fcyr.tgz - X335fnon.tgz - X335fnts.tgz - X335fscl.tgz - X335fsrv.tgz - X335lib.tgz LIB (you must have this) - X335lkit.tgz Linkkit (X development) - X335man.tgz Man pages - X335nest.tgz - X335prog.tgz - X335prt.tgz - X335set.tgz - X335vfb.tgz - preinst.sh Install script - extract The XFree86 extract program (for ix86 DG/ux) - - SUMS.md5 CheckSums for the integrity of the files - - (Try compile the GNU textutils-1.22.tar.gz from prep.ai.mit.edu - /pub/gnu. md5sum is there). - - You need at least: - - X335bin.tgz - X335lib.tgz - - And the correct Xserver for your machine/Graphics card. In my opinion - take all files , in the future you may need to switch to another graph- - ics device etc ... (mget *). Generally it is good to have the full dis- - tribution of the X11R6.3 window system ,it should make life easier in - DG/ux. - - (Trivial:you must have root privilege). - - o Unpack the *.tgz files in your / so that it will go directly inside to - the new filesystem /usr/X11R6.3. After you do that cd /usr and do a link - : ln -s X11R6.3 X11R6. (Use the install script). This link will indi- - cate in XF86 programs like XF86Setup where the new X11 window system is. - - o cd your home dir and backup your .profile as "cp .profile myprofile". - Then cd /usr/X11R6.3. Copy the file HOME.profile-X11R6.3 to your home - dir as "cp HOME.profile-X11R6.3 your home dir/.profile" ,then cd your - home dir and "chmod 644 .profile" to make sure that the new profile is - active. This is because you need to tell to the system to look for the X - software in a different location than the usual /usr/bin/X11 of DG/ux. - Also you need to tell to the system that the new X libraries are in - /usr/X11R6.3/lib. - - **You NEED to re-login in order to make the new .profile active !** ** - DO NOT GIVE "startx" AFTER THAT, READ Configuration below !** - - o About Configuration: DG/ux has a program (actually a script) called - xconfig that makes the configuration for you. Usually when you run xcon- - fig in the DG/ux-X11R5 it creates a file XdgConfig in /var/X11/Xserver - which is the corresponding of the XF86-configuration file located in - /usr/X11R6.3/lib/X11/XF86Config. This file ,in the section monitor, has - all values for your monitor. Please Note: Unfortunately in DG/ux - R4.20MU02 things change. Instead of going forwards we going backwards... - xconfig reports crazy values for my DG-DA1765VA monitor. So if you have - a CDROM of DG/ux R4.11MU02,or MU03 use it to find an xconfig that will - give you reliable values for your monitor. - - Your best bet is to use XF86Setup for correct adjustments. - - Thats the reason that in this binary there is a mininum tcl,tk(version - 8.0). Before you run XF86Setup read the relevant documents found in - www.xfree86.org. (Or read below for a hand-made configuration). - - Notice about XF86Setup: You will will see the message "The program is - running on a different virtual" "Please switch to the correct virtual - terminal" - - DG/ux does NOT have any virtual terminals. But XF86Setup uses a script - that doesnt checks for this. So it is printing this message anyway. - Ignore it and dont send e-mails asking how to set the virtual terminal! - XF86Setup WORKS for SURE (if you use it correctly) to set your configu- - ration. Just remember: - - 1. make a link in /usr/X11R6.3/bin: ln -s XF86_VGA16 X - - 2. set mouse device in your XF86Config to /dev/mouse (this the mouse - in DGUX) - - 3. set the correct mouse protocol. (usually for a typical AViiON - PS/2). - - Or just cd /usr/X11R6.3/lib/X11 and copy XF86Config.eg.dgux to XF86Con- - fig (it is for a PS/2 protocol mouse that almost all AViiON's have) , - then run XF86Setup and choose to use this XF86Config file as default (so - mouse works). - - Alternatively, you can run xf86config, a non-graphical configuration - utility but you will need to enter manually the values for your monitor. - If you have the small booklet that came with the monitor they are - inside. - - Hand made configuration: I have an DG/ux Medium resolution (1280x1024) - 17 inch DG-26059,DA1765VA. ONLY IF YOU HAVE THE ***EXACT SAME*** MONI- - TOR USE THE FILE XF86Config_SVGA_DGUX that you will find in - /usr/X11R6.3/. IT IS IN YOUR OWN RISK IF YOU DECIDE TO USE THIS FILE - WHEN YOU DONT HAVE THE SAME MOTINOR AS MINE. YOU CAN DAMAGE YOUR VIDEO - MONITOR OR YOUR GRAPHICS CARD. - - An examble of how to use the Accel Servers (eg ATI=XF86_Mach64) is in - the file XF86Config_ATI_DGUX. Again remember: I have an DG/ux Medium - resolution (1280x1024) 17 inch DG-26059,DA1765VA. ONLY IF YOU HAVE THE - ***EXACT SAME*** MONITOR USE THE FILE XF86Config_ATI_DGUX that you will - find in /usr/X11R6.3/. IT IS IN YOUR OWN RISK IF YOU DECIDE TO USE THIS - FILE WHEN YOU DONT HAVE THE SAME MOTINOR AS MINE. YOU CAN DAMAGE YOUR - VIDEO MONITOR. - - Start with the file XF86Config.eg as a prototype. READ the REAME.Config - . In Cirrus chips you need to read the file README.cirrus located in - /usr/X11R6.3 There is a problem with the accelarated XAA code ,so you - need to try to put the following option in your XF86Config: - - Option "no_mmio" (in Section Screen ,subsection display). - - Look in the XF86Config_SVGA_DGUX to see how this can be done . If this - doesnt work (it will probably) try Option "noaccel" or "no_bitblt".Again - READ the file README.cirrus (and README.Config). I suggest to print (in - paper) the file XdgConfig and have a look in it. Then it should be quite - trivial to figure out what you have to do with the XF86 file ie XF86Con- - fig in the sections mouse, keyboard, screen ... After you have a cor- - rect XF86Config in /usr/X11R6.3/lib/X11 give - - chmod 444 XF86Config. - - Supposing that you have already re-login so that the new .profile is - active and you have the correct XF86Config file (as your XdgConfig sug- - gest) (DO not forget for a cirrus to put the Option "no_mmio" in section - screen !), give startx and the new X11 will start . Remember: You can - shut down at any point the Xserver by pressing CONTROL+ALT+BACKSPACE (if - something goes wrong). Also Xservers dont produce messages unless to - want them to do so. This is because the DG/ux console driver some times - causes corruption of the screen if you print text during the startup of - the Xserver. If you require messages try in bash shell to give: (bash# - ) - - X -verbose >& info1 or even - X -verbose -verbose >& info2 for more messages. - - Then when the server is up press CONTROL+ALT+BACKSPACE to shutdown the - Xserver. File info1 (or info2) have all relevant info about your graph- - ics card , display memory etc ... I suggest you do that at least one - time before start using the new X11R6.3. Read this info file to see if - all ok. If not try change settings in your XF86Config to make thinks - correct. - - If you have an ATI Rage II (or RageII+) use the server XF86_Mach64 (make - a link link X--->XF86_MACH64, or run xf86config, or use XF86Setup - above). - - o If you want to compile programs with the X11R6.3 the headers in - /usr/include /X11 pointing to /usr/opt/X11 of DG/ux is a problem . Do: - - a): unmounting the /usr/opt/X11 will prevent the sysadm to use the X - graphical interface. But this will be the only thing that you loose. - The correct thing to do for X11R6.3 is to delete the filesystem - /usr/opt/X11 and make a link /usr/opt/X11--->/usr/X11R6.3 , so that the - libraries from dglib and /usr/lib point correctly to the new ones in - /usr/X11r6.3/lib. Before you unmount this filesystem you need to do - this: - - cd /usr/opt/X11/include - cp -r Mrm /usr/X11R6.3/include - cp -r uil /usr/X11R6.3/include - cp -r Xm /usr/X11R6.3/include - cd /usr/X11R6.3/include - ln -s uil Uil - - LIBRARIES: - - and cd /usr/opt/X11/lib - cp libXm.a /usr/X11R6.3/lib - - and similarly copy the following libraries: - - libX11.so.2, libX11.so.5, libXIM.so.1, libXaw.so.1, libXaw.so.2, - libXext.so.2, libXi.so.2, libXimp.so.1, libXm.so.2, libXmu.so.2, - libXsess.so.1, libXsi.so.1, libXt.so.2, libXt.so.5.0, libMrm.a, - libUil.a, libX11_s, libXR4sco_s - - into /usr/X11R6.3/lib. - - Then cd /usr/X11R6.3/lib and make links: - - ln -s libXm.so.2 libXm.so - ln -s libXm.so.2 libXm.so.1 - ln -s libXm.so.2 libXm.so.5.0 - - ln -s libX11.so.5.0 libX11.so.1 - - ln -s libXIM.so.1 libXIM.so.5.0 - - ln -s libXaw.so.2 libXaw.so.5.0 - - ln -s libXext.so.2 libXext.so.5.0 - ln -s libXext.so.2 libXext.so.1 - - ln -s libXi.so.2 libXi.so.1 - ln -s libXi.so.2 libXi.so.5.0 - - ln -s libXimp.so.1 libXimp.so.5.0 - - ln -s libXmu.so.2 libXmu.so.5.0 - - ln -s libXt.so.2 libXt.so.5.0 - - ln -s libXsi.so.1 libXi.so.5.0 - - cd /usr/X11R6.3/lib - rm libXmu.so (to avoid undefs when building X software) - - Also you need to correct the links in /usr/dglib at least! (the correct - thing to do is modify also /usr/lib links to /usr/opt/X11 libs). Try - - cd /usr/ - tar -cvf dglib-orig.tar dglib - gzip dglib-orig.tar - - (to minimize the space dglib-backup takes) then - - cd /usr/dglib - - and delete ALL links to libraries in /usr/opt/X11. Then copy the script - create_new_links_in_dglib (found in /usr/X11R6.3 to /usr/dglib and cd - /usr/dglib execute script. This will create all new links with the - X11R6.3 X window system. - - But remember to do in the end : - - cd /usr/dglib - rm *.a (no static libs links in dglib) - - Then unmount (delete) the old X11 by giving "umount /usr/opt/X11". - - NOTE: If you compile programs in the X11R6 make sure that you unmount - /usr/opt/X11 or you eliminate the links in /usr/lib to the OLD libX's in - /usr/opt/X11/lib. Otherwise gcc will link these old libraries! and the - binary will not run correctly. Always after an R6 compilation do "ldd - prog" to make sure that the binary loads only R6 version libraries - (except maybe the motif library libXm.so.2), --if you dont use the - static libXm.a - - b:) - - cd /usr/include - tar -cvf old-X11headers.tar X11 - gzip old-X11headers.tar - - so that you store your old headers in /usr/include. - - Then cd /usr/include/ and delete - - rm -r X11 - rm Xm - rm Mrm - rm Uil - rm uil - Make new links as: - cd /usr/include - ln -s ../X11R6.3/include/X11 X11 - ln -s ../X11R6.3/include/uil Uil - ln -s ../X11R6.3/include/uil uil - ln -s ../X11R6.3/include/Xm Xm - ln -s ../X11R6.3/include/Mrm Mrm - -7. What is about: - -This new X11R6 are not simply an upgrade of the servers to the latest ones. -It is a new programming platform in your DG/ux system to allow you to import -all this *FREE* or not software for the X window system. This software will -not compile in the old (and ungly) X11 of Data General. The imake command -that is implemented in almost all the (source) software for X11 (free or not) -will not work with the totally broken "imake" command of /usr/opt/X11 of -DG/ux. - -The imake of DG/ux X11R5 is badly broken: I have seen DG/ux releases -R4.11,MU01, ...MU04, R420, R4.20MU02 ,R4.20MU03 and nobody bother to look in -all these releases the imake command... - -While until now DG was rather hostile to the prospect of a new X11 in DG/ux -some new folks there they have turn their interest in X11R6 (XFree86) these -days. That is good of cource because the ultimate target is to make XFree86 -(3.3.5 or whatever version) to run in _their_ DG/ux Unix! I will be able to -make a much better X11 in DG/ux if I could had some access to DG/ux sources -(i.e. the original R5 sources , but not only --eg kernel driver sources as -for examble the DG/ux kernel console driver sources). - -I have compile almost anything that runs for Linux in DG/ux using this X11. -In doing this work in XFree86 I would like to express my thanks to David -Dawes that he help me all the time with several techical questions. Also D.T. -is one of the people that offer valuable help. Finally I want to express my -thanks to John H. for enlight me in some syscall issues. - - Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/DGux.sgml,v 1.1.2.2 1999/07/26 06:54:45 hohndel Exp $ - - -$XFree86: xc/programs/Xserver/hw/xfree86/doc/README.DGux,v 1.2 1999/08/23 06:54:16 dawes Exp $ diff --git a/xc/programs/Xserver/hw/xfree86/doc/VideoModes.doc b/xc/programs/Xserver/hw/xfree86/doc/VideoModes.doc index 33208b39c..f73ea6340 100644 --- a/xc/programs/Xserver/hw/xfree86/doc/VideoModes.doc +++ b/xc/programs/Xserver/hw/xfree86/doc/VideoModes.doc @@ -1123,7 +1123,7 @@ Here is a copy of modeplot: # # Do `modeplot -?' to see the control options. # - # ($Id: VideoModes.doc,v 1.3 2000/02/22 22:10:27 kem Exp $) + # ($Id: VideoModes.doc,v 1.4 2000/03/16 03:37:30 jhartmann Exp $) # Monitor description. Bandwidth in MHz, horizontal frequencies in kHz # and vertical frequencies in Hz. @@ -1162,7 +1162,7 @@ Here is a copy of modeplot: The modeplot tool was created by Eric S. Raymond <esr@thyrsus.com> based on analysis and scratch code by Martin Lottermoser <Martin.Lottermoser@mch.sni.de> - This is modeplot $Revision: 1.3 $ + This is modeplot $Revision: 1.4 $ EOF exit;; esac @@ -1314,9 +1314,9 @@ using gnuplot to make mode diagrams and did the mathematical analysis behind modeplot. The distributed modeplot was redesigned and generalized by ESR from Martin's original gnuplot code for one case. - Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/VidModes.sgml,v 3.15 2000/01/24 19:38:29 dawes Exp $ + Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/VidModes.sgml,v 3.16 2000/02/23 20:30:16 dawes Exp $ $XConsortium: VidModes.sgml /main/7 1996/02/21 17:46:17 kaleb $ -$XFree86: xc/programs/Xserver/hw/xfree86/doc/VideoModes.doc,v 3.20 2000/02/21 22:44:46 dawes Exp $ +$XFree86: xc/programs/Xserver/hw/xfree86/doc/VideoModes.doc,v 3.22 2000/03/01 01:48:31 dawes Exp $ diff --git a/xc/programs/Xserver/hw/xfree86/doc/sgml/DGux.sgml b/xc/programs/Xserver/hw/xfree86/doc/sgml/DGux.sgml deleted file mode 100644 index 355fc87aa..000000000 --- a/xc/programs/Xserver/hw/xfree86/doc/sgml/DGux.sgml +++ /dev/null @@ -1,789 +0,0 @@ - -<!DOCTYPE linuxdoc PUBLIC "-//XFree86//DTD linuxdoc//EN"> - -<article> - -<title>Instructions for Building XFree86 on an Intel Pentium Aviion machine with DG/ux R4.20MU04 -<author>Takis Psarogiannakopoulos -<date>July 27, 1999 -<toc> - -<sect>Whats new <p> - -July 27, 1999<p> - DG has fix the streams bug in /usr/lib/tcpip.so . (Read below) - The workaround in the July 25 source code has been removed. - I've been told from DG that BSD sockets perform better in DGUX - than SVR4 native STREAMS. From R4.20MU06 DG/ux will have the correct - tcpip.so lib (no bug in STREAMS). If you have MU05,MU04 and you - want for some reason STREAMS definitely contact DG for an updated - /usr/lib/tcpip.so in /usr/lib (patch for your MU04,5). -<p> - DG/ux at the moment lacks the sysi86 syscall and the definition - of SYSI86IOPL (that is in <sys/sysi86.h> but guarded by a - UNIXWARE defintion that of course cannot be applicable to DG/ux). - Until this header is accessible by a simple -DDGUX , and _sysi86, - sysi86 subroutines added to libc (or some other extra library) - we need to define the DG_NO_SYSI86 to be 1. If DG makes the above - modifications , you will need to manually edit the files (before - building!) - xc/programs/Xserver/hw/xfree86/SuperProbe/OS_DGUX.c - xc/programs/Xserver/hw/xfree86/etc/scanpci.c - xc/programs/Xserver/hw/xfree86/os-support/dgux/dgux_video.c - and eliminate DG_NO_SYSI86 flag by changing DG_NO_SYSI86 1-->0. -<p> -July 25, 1999<p> - A major bug has now been corrected in this release. According to this - since the STREAMS interface of DG/ux were broken the server was - listening not to port 6000 (= 0x1770) but to 0x7017. - All binaries that you have from 3.3.3.1, 3.3.3 they will work - locally (if you run them in the same machine) but NOT remotely - because they use an Xlib that tries to connect to port 28365. - If you want to run them remotely YOU MUST recompile them! - Steve thank you for bringing this to my attention initially but - was too busy then to look at it in detail... Perhaps I should - have... -<p> - We now use sockets instead of ioctls. - But I've fix and tested the STREAMS also. -<p> - David thanks for making me realize that this was indeed a problem - in DG/ux. -<p> - I 've also take the trouble to port gdb-4.17/8 and ddd (X inter) - in pub/XFree86/3.3.5/binaries/DGUX-ix86/GDB_BETA (both binaries - and source code) in order to be able to send me traces of core - files produced by Xservers. Try -<verb> - gdb /usr/X11R6/bin/X location of core/core - gdb: where -</verb> - and send me what you see. - (I suppose that the Xserver executable is in /usr/X11R6.3/bin) -<p> - From 3.3.3.1: - Several bugs are now fixed. DG/ux support is on this official - patch. All configuration is in xc/config/cf/DGUX.cf and in - xf86site.def. Also Imake autodetects (thanks to David Dawes) - the DGUX OS (including Release version). So only a simple - "make World" is needed anymore to build in ix86 DG/ux. - Usually the process to build is (after unpacking and patching - the source "xc" tree) to go to xc/config/cf copy the file - xf86site.def to site.def and edit the files DGUX.cf ,site.def - for whatever changes you need to do. -<p> - Default ProjectRoot in 3.3.5 is /usr/X11R6 (except if you - set this specifically in DGUX.cf either as /usr/X11R6.3-- - --my choice, or in whatever you like). -<p> - From: - December 1, 1998 - IMPORTANT: PLEASE READ THE FILE README-GCC-2.8.1 - GCC VERSION 2.8.1 is recommended for the DGUX build of X11R6.3 - You can ignore below the _old_ conversation about gcc compiler - if you already run a gcc-2.8.1 in your machine. - -<sect> GENERAL: <p> - - Get from ftp.xfree86.org the XFree 3.3.x source code: -<verb> - ftp ftp.xfree86.org - login: ftp - passwd: your e-mail address - cd pub/XFree86/3.3.5/source - You need the files: - X335src-1.tgz - X335src-2.tgz - X335src-3.tgz -</verb> -<p> - Get also the contributed X software -<verb> - cd /pub/XFree86/3.3.5/source - X335contrib.tgz -</verb> -<p> - If you have the source tarballs of 3.3.3 go to - /pub/XFree86/3.3.5/binaries/DGUX-ix86/SOURCE get the DGUX source - patch -<p> -<verb> - 3.3.3-3.3.5-DGUX.diff.gz - X335contrib-DGUX.diff.gz (patch for the contrib software). -</verb> -<p> - to avoid downloading all the source code again. -<p> - Sorry some DGUX changes they didn't make in time for the official - release date of 3.3.4... - I do this for free, so some times I may be excused for something - like this... -<p> - To build X11R6.3 you need also the tools for DG/ux (see discussion - below). They will be in - ftp dpmms.cam.ac.uk - (University of Cambridge,Department of Pure Mathematics) - in /pub/takis/DGUX-Tools/BuildXtools.tar.gz (anonymous ftp) - or in the ftp.xfree86.org ... - (pub/XFree86/3.3.5/binaries/DGUX-ix86/SOURCE/BUILD-TOOLS/ - BuildXtools.tar.gz). -<p> - Using a big filesystem (I use a virtual disk "xf86work" mounted on - /xf86work of size 1400000 blocks) copy the source as: -<p> -<verb> - cp X335src-1.tgz /xf86work/X335src-1.tar.gz - cp X335src-2.tgz /xf86work/X335src-2.tar.gz - cp X335src-3.tgz /xf86work/X335src-3.tar.gz -</verb> -<p> - (or X333src-1,2,3.tar.gz as above plus the DG/ux patch to 3.3.5 - i.e. the file 3.3.3-3.3.5-DGUX.diff.gz) -<p> - And maybe the contributed software: -<verb> - cp X335contrib.tgz /xf86work - - (cp X335contrib-DGUX.diff.gz /xf86work). -</verb> -<p> - If you get the patches from DGUX-ix86, to build from source 3.3.3 - your first problem is that in order to apply the source patch you - need "patch" a very common GNU program that DG/ux doesn't have!? - This program is in BuildXtools.tar.gz - (or ftp prep.ai.mit.edu cd/pub/gnu get patch-2.5.tar.gz) - So lets speak about these tools before anything else: - Using "sysadm" mount a filesystem usr_local under /usr/local with - size 200000 blocks. Then copy the BuildXtools file in /usr and give: -<verb> - gzip -d < BuildXtools.tar.gz | tar xvf - -</verb> -<p> - It will unfold in the new filesystem /usr/local. - Then go to your ".profile" (in your Home dir , mine eg is /admin) - and add the /usr/local/bin in your path and the /usr/local/lib in - your lib-path. -<p> - What you need is like that: - (vi .profile) -<p> -<verb> - PATH=/usr/local/bin:/sbin:/usr/sbin:/usr/bin - if [ -d /usr/opt/X11/bin ] - then - PATH=$PATH:/usr/opt/X11/bin - fi - export PATH - (/usr/local/bin is before any other path!) - - LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:/usr/ccs/lib - export LD_LIBRARY_PATH -</verb> -<p> - then exit and re-login so that your new modified .profile will take effect. -<p> - Now do the following: -<verb> - cd /usr/sbin - cp install install_dg - rm install - cp /usr/local/bin - cp install /usr/bin *(make the GNU install the default install)* - (DG/ux install is useless) - (Look also the file xc/config/cf/DGUX.cf , below). - - (Or get GNU make-3.77 and copy install.sh (or -sh) to a /usr/bin/install) - - cd /usr/bin - cp true /usr/local/bin - cd /usr/local/bin - ln -s true ranlib (Install true as ranlib in the DG/ux system) -</verb> - Usually giving -v,-V or --version will give you build info on all - the tools in /usr/local/bin (try it). -<p> - **Look the discussion for gcc before you build (below)** -<p> - Now untar the source tree: - In /xf86work (or whatever name you gave to the big filesystem for the build) -<verb> - gzip -d < X335src-1.tar.gz | tar xvf - - gzip -d < X335src-2.tar.gz | tar xvf - - gzip -d < X335src-3.tar.gz | tar xvf - -</verb> - - (If you have X-3.3.3 do the same for the 3.3.3 sources and - then apply the 3.3.5-DGUX source patch - -<verb> - gzip -d < 3.3.3-3.3.5-DGUX.diff.gz | patch -p0 -E). -</verb> - - The directory xc in now present in your build filesystem. - - -<sect> Configuration for the build:<p> - Almost all you need is in "DGUX.cf" located in xc/config/cf. - Edit the file DGUX.cf and site.def and change what ever you need. - Remember DGUX.cf overwrites site.def. - The default ProjectRoot for XFree86-3.3.5 is now /usr/X11R6 - (located in site.def). If you want to change this to whatever - you like (I prefer /usr/X11R6.3 and a link in /usr X11R6->X11R6.3) - edit DGUX.cf and locate the entry: -<p> -<verb> - #if 0 - #define ProjectRoot /usr/X11R6.3 - #endif -</verb> - Eliminate the #if 0 , #endif. - Then change this to whatever you prefer. - (I prefer the above for the precompiled binaries) -<p> - The DG/ux malloc is crap and keeps bringing problems with some - X software so I don't use it. Instead there is a port of GNU - malloc in /usr/local (it came with the BuildXtools file). - Don't try to build with the /lib/libmalloc.a of DG/ux and then - send me e-mails that some programs they don't work properly. - In my build I use tcl8.0 and tk8.0 since the xconfig of R4.20MU03 - is reporting incorrect values for the monitors and XF86Setup - need to be build in order to manage to adjust the display. - If you don't have this (or don't want this) comment out the lines - about tcl,tk, (in DGUX.cf) -<p> -<verb> - /*******TCL TK DEFINITIONS ***********/ - #define HasTk YES-->NO - ... - #define HasTcl YES-->NO -</verb> - Also 'GNU make' is required for the correct X11R6.3 build. - (it is in Buildxtools file). - If you decide yes to tcl,tk obtain the files -<verb> - tcl8.0.3.tar.gz - tk8.0.3.tar.gz (from some ftp) -</verb> - (or newer versions) and compile them before the building - of X11R6.3 (Build first tcl8.0.3 then tk8.0.3). -<p> -<sect> DISCUSSION ABOUT GCC<p> - There are so much things that I can say for the system gcc of - DG/ux. If I was keeping track for the programs that fail using - this compiler I will certainly have fill a book (conveniently - for the DG of course). - But my work is not to correct bugs for the DG/ux compiler or - anything else) , and in particular to collect reports for - the genius of DG. - (DG:Sorry guys nothing personal. I am a pure Mathematician , - I am doing all this work for pleasure, I don't want any money - from DG or anybody else , I am not looking to become a employer - of DG,and I am NOT a trouble shooter of the DG/ux in general. - But maybe some times if you help I may be able to help you also). -<p> - What I wanted to do is to build X11. Thats why you will find - in BuildXtools a new gcc. This gcc is build for DG/ux R4.20MU02. - so you have to upgrade your DG/ux OS version to the above. - But it is solid to build not only X11 but whatever else you want. - DO NOT use gcc of DG/ux. If you do I cannot tell you anything - about any problems that you have. - To complete the installation of this new gcc do the following: -<p> -<verb> - cp -r /usr/local/gcc-dgux /usr/opt/sdk/sde/ix86dgux/usr/lib - cd /usr/opt/sdk/sde/ix86dgux/usr/lib - rm gcc - ln -s gcc-dgux gcc (set link gcc--->gcc-dgux) - - cd /usr/local - cp -r /usr/local/gcc-dgux /usr/sde/ix86dgux/usr/lib - cd /usr/sde/ix86dgux/usr/lib - rm gcc - ln -s gcc-dgux gcc (set link gcc-->gcc-dgux) -</verb> - - To come back to your old DG/ux gcc just change the above two - links gcc-->gcc-dgux - to gcc-->gcc-2 - with the command: (in both the above two dirs) -<verb> - rm gcc - ln -s gcc-2 gcc -</verb> - - /usr/bin/gcc -v should report the version that you have. - To build successfully this version of X11 gcc is a *MUST*. -<p> - Dynamic loading Servers: - Edit xc/config/cf/DGUX.cf and change the entry -<p> - #ifndef BuildDynamicLoading - #define BuildDynamicLoading NO --->YES. - #endif -<p> - Remember when you build you will see lots of errors and the servers - will NOT build! This is because the dynamic linker doesn't know - the locations of the newly created R6 libX's. - So after the (seem faulty) building do a -<p> - make DESTDIR=ProjectRoot/lib install -<p> - (look below for install, ProjectRoot the location that you choose - in the file xc/config/cf/DGUX.cf above) -<p> - So that all your new libXR6 libraries will go there. - (do a cd ProjectRoot/lib to make sure). -<p> - Then go to your home dir and declare the path ProjectRoot/lib dir - in you LD_LIBRARY_PATH (your profile) as: -<p> - LD_LIBRARY_PATH=ProjectRoot/lib:$LD_LIBRARY_PATH - export LD_LIBRARY_PATH -<p> - Then relogin! -<p> - Now just _rebuild_ A FULL XFree86-3.3.5 with the entry -<p> - #define BuildDynamicLoading YES in your DGUX.cf. -<p> - This time you will build _all_ XFree86-3.3.5 correctly. -<p> - -<sect> BUILD <p> - In the usual X11R5 of DG (mwm) open an xterm and give: - (/bin/sh = Bourne shell) -<p> -<verb> - cd xc - make World > Build-dg.log -</verb> - - In that way you will get all the error messages in your - screen. - Don't worry with messages about -znodefs. -<p> - Note: the old command -<verb> - make World BOOTSTRAPCFLAGS="-DDGUX" > Build-dg.log -</verb> - is no longer needed since imake will detect the DGUX OS - (in Version => 3.3.3.1) and set up things. However this - command will also work. -<p> - And in another xterm give cd xc - tail -f Build-dg.log to watch the building progress. -<p> - To install X11R6.3 XFree version 3.3.5 after the build - you must have a filesystem say usr_X11R6.3 mounted to - the directory /usr/X11R6 size 350000 blocks. - (or whatever you choose to be your ProjectRoot, if you - modify DGUX.cf for another ProjectRoot than the default - /usr/X11R6 in site.def). - Then give -<verb> - make install - make install.man (install the man pages) -</verb> - The installation will not put an XF86Config in your - /usr/X11R6.3/lib/X11/ and so if you give startx the new - X11 will not start. Read the file README-X3331.DGUX in - this ftp site (located in the binaries) about the whole - installation procedure of X11R6.3. - Or quickly you can do: - (I remind: DG/ux mouse device "/dev/mouse") - cd /usr/X11R6.3/bin - ln -s XF86_VGA16 X - Then put in your .profile the path /usr/X11R6.3/bin and - run the XF86Setup program. Adjust first the mouse device - then everything else. - (You need to read really the file README-DGUX.INSTALL-> look - in the end of this file). -<p> - To build the contributed software with XFree86-3.3.5 get - the X335contrib.tgz and do -<verb> - gzip -d < X335contrib.tgz | tar xvf - -</verb> - - (Or for 3.3.3 sources unpack X333contrib.tgz and apply the DGUX - patch as -<verb> - gzip -d < X335contrib-DGUX.diff.gz | patch -p0 -E ). -</verb> - Please note: - You must have already install and active the X11R6.3 that you - build so that the imake is working properly for your system. - Read below for how to install this X window system. - After that you could do: - -<verb> - cd contrib - xmkmf -a - make - make install - make install.man (for installing the man pages) -</verb> - - -<sect> INSTALLATION OF THE BINARY:<p> - - NOTE:This executable has been compiled with the macro -DPENTIUM_CHANGE - (that all the new Aviion machines support). If you have an old i486 - (rather unlikely) the executable will NOT RUN correctly. - But we haven't use -mcpu=pentiumpro, so the executable will work on - ALL PENTIUM machines. - -<itemize> -<item> About Project Root: I choose as ProjectRoot for ix86 DG/ux the location - /usr/X11R6.3. The default (in 3.3.5 sources) is the /usr/X11R6. To - cover this we make a link in /usr as X11R6->X11R6.3 (read below); - so don't forget to do this link. I don't like the location /usr/opt/X11 - (default location of DG X11) that some of you have suggested to me, I - believe it is a good idea to keep the original X11 as is for several - reasons. - -<item> Make a filesystem,using sysadm, mounted under "/usr/X11R6.3". - This is the default location of X11R6.3 , you cannot change this - except if you recompile the whole source of X. - (Please don't send e-mails about this). - The size of this filesystem should be around 175 MB(350000 blocks). - - The list of files is: - -<verb> - X3353DL.tgz 3D_Labs XServer ... etc - X3358514.tgz - X335AGX.tgz - X335I128.tgz - X335Ma32.tgz Mach32 Xserver - X335Ma64.tgz Mach64 Xserver - X335Ma8.tgz - X335Mono.tgz - X335P9K.tgz - X335S3.tgz - X335S3V.tgz - X335SVGA.tgz SuperVGA Xserver (Supports AV3700 Cirrus) - X335VG16.tgz VGA16 Xserver (needed by XF86Setup) - X335W32.tgz - X335bin.tgz BIN (you must have this) - X335cfg.tgz - X335doc.tgz - X335f100.tgz - X335fcyr.tgz - X335fnon.tgz - X335fnts.tgz - X335fscl.tgz - X335fsrv.tgz - X335lib.tgz LIB (you must have this) - X335lkit.tgz Linkkit (X development) - X335man.tgz Man pages - X335nest.tgz - X335prog.tgz - X335prt.tgz - X335set.tgz - X335vfb.tgz - preinst.sh Install script - extract The XFree86 extract program (for ix86 DG/ux) - - SUMS.md5 Checksums for the integrity of the files -</verb> - (Try compile the GNU textutils-1.22.tar.gz from - prep.ai.mit.edu /pub/gnu. md5sum is there). -<p> - You need at least: -<verb> - X335bin.tgz - X335lib.tgz -</verb> - And the correct Xserver for your machine/Graphics card. - In my opinion take all files , in the future you may need to - switch to another graphics device etc ... (mget *). - Generally it is good to have the full distribution of the - X11R6.3 window system ,it should make life easier in DG/ux. -<p> - (Trivial:you must have root privilege). -<p> -<item> Unpack the *.tgz files in your / so that it will go directly inside to - the new filesystem /usr/X11R6.3. After you do that cd /usr and do a link : - ln -s X11R6.3 X11R6. (Use the install script). - This link will indicate in XF86 programs like XF86Setup where the new X11 - window system is. - -<item> cd your home dir and backup your .profile as "cp .profile myprofile". Then - cd /usr/X11R6.3. Copy the file HOME.profile-X11R6.3 to your home dir as - "cp HOME.profile-X11R6.3 your home dir/.profile" ,then cd your home dir and - "chmod 644 .profile" to make sure that the new profile is active. This is - because you need to tell to the system to look for the X software in a - different location than the usual /usr/bin/X11 of DG/ux. Also you need - to tell to the system that the new X libraries are in /usr/X11R6.3/lib. -<p> - **You NEED to re-login in order to make the new .profile active !** - ** DO NOT GIVE "startx" AFTER THAT, READ Configuration below !** - -<item> About Configuration: - DG/ux has a program (actually a script) called xconfig that makes the - configuration for you. Usually when you run xconfig in the DG/ux-X11R5 - it creates a file XdgConfig in /var/X11/Xserver which is the corresponding - of the XF86-configuration file located in /usr/X11R6.3/lib/X11/XF86Config. - This file ,in the section monitor, has all values for your monitor. - Please Note: - Unfortunately in DG/ux R4.20MU02 things change. Instead of going forwards we - going backwards... xconfig reports crazy values for my DG-DA1765VA monitor. - So if you have a CDROM of DG/ux R4.11MU02,or MU03 use it to find an xconfig - that will give you reliable values for your monitor. -<p> - Your best bet is to use XF86Setup for correct adjustments. -<p> - Thats the reason that in this binary there is a minimum tcl,tk(version 8.0). - Before you run XF86Setup read the relevant documents found in www.xfree86.org. - (Or read below for a hand-made configuration). -<p> - Notice about XF86Setup: You will will see the message - "The program is running on a different virtual" - "Please switch to the correct virtual terminal" -<p> - DG/ux does NOT have any virtual terminals. But XF86Setup uses a script - that doesn't checks for this. So it is printing this message anyway. - Ignore it and don't send e-mails asking how to set the virtual terminal! - XF86Setup WORKS for SURE (if you use it correctly) to set your configuration. - Just remember: - <enum> - <item> make a link in /usr/X11R6.3/bin: ln -s XF86_VGA16 X - <item> set mouse device in your XF86Config to /dev/mouse (this the mouse in DGUX) - <item> set the correct mouse protocol. (usually for a typical AViiON PS/2). - </enum> - Or just cd /usr/X11R6.3/lib/X11 and copy XF86Config.eg.dgux to XF86Config - (it is for a PS/2 protocol mouse that almost all AViiON's have) , then - run XF86Setup and choose to use this XF86Config file as default (so mouse - works). -<p> - Alternatively, you can run xf86config, a non-graphical configuration utility - but you will need to enter manually the values for your monitor. - If you have the small booklet that came with the monitor they are inside. -<p> - Hand made configuration: - I have an DG/ux Medium resolution (1280x1024) 17 inch DG-26059,DA1765VA. -<bf> - ONLY IF YOU HAVE THE - ***EXACT SAME*** - MONITOR USE THE FILE XF86Config_SVGA_DGUX that you will find in /usr/X11R6.3/. - IT IS IN YOUR OWN RISK IF YOU DECIDE TO USE THIS FILE WHEN YOU DON'T HAVE THE - SAME MONITOR AS MINE. YOU CAN DAMAGE YOUR VIDEO MONITOR OR YOUR GRAPHICS CARD. -</bf> -<p> - An example of how to use the Accel Servers (eg ATI=XF86_Mach64) is in the file - XF86Config_ATI_DGUX. - Again remember: - I have an DG/ux Medium resolution (1280x1024) 17 inch DG-26059,DA1765VA. -<bf> - ONLY IF YOU HAVE THE - ***EXACT SAME*** - MONITOR USE THE FILE XF86Config_ATI_DGUX that you will find in /usr/X11R6.3/. - IT IS IN YOUR OWN RISK IF YOU DECIDE TO USE THIS FILE WHEN YOU DON'T HAVE THE - SAME MONITOR AS MINE. YOU CAN DAMAGE YOUR VIDEO MONITOR. -</bf> -<p> - Start with the file XF86Config.eg as a prototype. READ the README.Config . - In Cirrus chips you need to read the file README.cirrus located in /usr/X11R6.3 - There is a problem with the accelerated XAA code ,so you need to try to put - the following option in your XF86Config: -<verb> - Option "no_mmio" (in Section Screen ,subsection display). -</verb> - Look in the XF86Config_SVGA_DGUX to see how this can be done . - If this doesn't work (it will probably) try Option "noaccel" or "no_bitblt".Again - READ the file README.cirrus (and README.Config). - I suggest to print (in paper) the file XdgConfig and have a look in it. Then it - should be quite trivial to figure out what you have to do with the XF86 file - ie XF86Config in the sections mouse, keyboard, screen ... - After you have a correct XF86Config in /usr/X11R6.3/lib/X11 give -<verb> - chmod 444 XF86Config. -</verb> -<p> - Supposing that you have already re-login so that the new .profile is active - and you have the correct XF86Config file (as your XdgConfig suggest) (DO not - forget for a cirrus to put the Option "no_mmio" in section screen !), give - startx and the new X11 will start . - Remember: You can shut down at any point the Xserver by pressing - CONTROL+ALT+BACKSPACE (if something goes wrong). - Also Xservers don't produce messages unless to want them to do so. This is - because the DG/ux console driver some times causes corruption of the screen - if you print text during the startup of the Xserver. - If you require messages try in bash shell to give: (bash# ) -<verb> - X -verbose >& info1 or even - X -verbose -verbose >& info2 for more messages. -</verb> - Then when the server is up press CONTROL+ALT+BACKSPACE to shutdown the - Xserver. File info1 (or info2) have all relevant info about your graphics - card , display memory etc ... - I suggest you do that at least one time before start using the new X11R6.3. - Read this info file to see if all ok. If not try change settings in your - XF86Config to make thinks correct. -<p> - If you have an ATI Rage II (or RageII+) use the server XF86_Mach64 (make - a link link X--->XF86_MACH64, or run xf86config, or use XF86Setup above). - -<item> If you want to compile programs with the X11R6.3 the headers in /usr/include - /X11 pointing to /usr/opt/X11 of DG/ux is a problem . - Do: -<p> - a): unmounting the /usr/opt/X11 will prevent the sysadm to use the X - graphical interface. But this will be the only thing that you loose. - The correct thing to do for X11R6.3 is to delete the filesystem /usr/opt/X11 - and make a link /usr/opt/X11--->/usr/X11R6.3 , so that the libraries - from dglib and /usr/lib point correctly to the new ones in /usr/X11r6.3/lib. - Before you unmount this filesystem you need to do this: -<verb> - cd /usr/opt/X11/include - cp -r Mrm /usr/X11R6.3/include - cp -r uil /usr/X11R6.3/include - cp -r Xm /usr/X11R6.3/include - cd /usr/X11R6.3/include - ln -s uil Uil -</verb> - - LIBRARIES: -<verb> - and cd /usr/opt/X11/lib - cp libXm.a /usr/X11R6.3/lib -</verb> - - and similarly copy the following libraries: - -<verb> - libX11.so.2, libX11.so.5, libXIM.so.1, libXaw.so.1, libXaw.so.2, - libXext.so.2, libXi.so.2, libXimp.so.1, libXm.so.2, libXmu.so.2, - libXsess.so.1, libXsi.so.1, libXt.so.2, libXt.so.5.0, libMrm.a, - libUil.a, libX11_s, libXR4sco_s -</verb> - - into /usr/X11R6.3/lib. -<p> - Then cd /usr/X11R6.3/lib and make links: - -<verb> - ln -s libXm.so.2 libXm.so - ln -s libXm.so.2 libXm.so.1 - ln -s libXm.so.2 libXm.so.5.0 - - ln -s libX11.so.5.0 libX11.so.1 - - ln -s libXIM.so.1 libXIM.so.5.0 - - ln -s libXaw.so.2 libXaw.so.5.0 - - ln -s libXext.so.2 libXext.so.5.0 - ln -s libXext.so.2 libXext.so.1 - - ln -s libXi.so.2 libXi.so.1 - ln -s libXi.so.2 libXi.so.5.0 - - ln -s libXimp.so.1 libXimp.so.5.0 - - ln -s libXmu.so.2 libXmu.so.5.0 - - ln -s libXt.so.2 libXt.so.5.0 - - ln -s libXsi.so.1 libXi.so.5.0 - - cd /usr/X11R6.3/lib - rm libXmu.so (to avoid undefs when building X software) -</verb> - - Also you need to correct the links in /usr/dglib at least! - (the correct thing to do is modify also /usr/lib links to - /usr/opt/X11 libs). - Try -<verb> - cd /usr/ - tar -cvf dglib-orig.tar dglib - gzip dglib-orig.tar -</verb> - (to minimize the space dglib-backup takes) then -<verb> - cd /usr/dglib -</verb> - and delete ALL links to libraries in - /usr/opt/X11. Then copy the script create_new_links_in_dglib (found - in /usr/X11R6.3 to /usr/dglib and cd /usr/dglib execute script. - This will create all new links with the X11R6.3 X window system. -<p> - But remember to do in the end : -<p> -<verb> - cd /usr/dglib - rm *.a (no static libs links in dglib) -</verb> - - Then unmount (delete) the old X11 by giving "umount /usr/opt/X11". -<p> - NOTE: If you compile programs in the X11R6 make sure that you - unmount /usr/opt/X11 or you eliminate the links in /usr/lib - to the OLD libX's in /usr/opt/X11/lib. - Otherwise gcc will link these old libraries! and the binary will - not run correctly. - Always after an R6 compilation do "ldd prog" to make sure that the - binary loads only R6 version libraries (except maybe the motif - library libXm.so.2), --if you don't use the static libXm.a -<p> - b:) -<verb> - cd /usr/include - tar -cvf old-X11headers.tar X11 - gzip old-X11headers.tar -</verb> - so that you store your old headers in /usr/include. - - Then cd /usr/include/ and delete -<verb> - rm -r X11 - rm Xm - rm Mrm - rm Uil - rm uil - Make new links as: - cd /usr/include - ln -s ../X11R6.3/include/X11 X11 - ln -s ../X11R6.3/include/uil Uil - ln -s ../X11R6.3/include/uil uil - ln -s ../X11R6.3/include/Xm Xm - ln -s ../X11R6.3/include/Mrm Mrm -</verb> -</itemize> - -<sect> What is about:<p> - This new X11R6 are not simply an upgrade of the servers to the latest ones. - It is a new programming platform in your DG/ux system to allow you to import - all this *FREE* or not software for the X window system. - This software will not compile in the old (and ugly) X11 of Data General. - The imake command that is implemented in almost all the (source) software - for X11 (free or not) will not work with the totally broken "imake" command - of /usr/opt/X11 of DG/ux. -<p> - The imake of DG/ux X11R5 is badly broken: - I have seen DG/ux releases R4.11,MU01, ...MU04, R420, R4.20MU02 ,R4.20MU03 - and nobody bother to look in all these releases the imake command... -<p> - While until now DG was rather hostile to the prospect of a new X11 in DG/ux - some new folks there they have turn their interest in X11R6 (XFree86) these - days. That is good of course because the ultimate target is to make XFree86 - (3.3.5 or whatever version) to run in _their_ DG/ux Unix! I will be able to - make a much better X11 in DG/ux if I could had some access to DG/ux sources - (i.e. the original R5 sources , but not only --eg kernel driver sources as - for example the DG/ux kernel console driver sources). -<p> - I have compile almost anything that runs for Linux in DG/ux using this X11. - In doing this work in XFree86 I would like to express my thanks to David Dawes - that he help me all the time with several technical questions. Also D.T. is one - of the people that offer valuable help. - Finally I want to express my thanks to John H. for enlightening me in some syscall - issues. - - -<verb> -$XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/DGux.sgml,v 1.3 1999/08/28 10:43:32 dawes Exp $ -</verb> - -</article> diff --git a/xc/programs/Xserver/hw/xfree86/doc/sgml/DocIndex.sgml b/xc/programs/Xserver/hw/xfree86/doc/sgml/DocIndex.sgml deleted file mode 100644 index 6327a190c..000000000 --- a/xc/programs/Xserver/hw/xfree86/doc/sgml/DocIndex.sgml +++ /dev/null @@ -1,132 +0,0 @@ -<!DOCTYPE linuxdoc PUBLIC "-//XFree86//DTD linuxdoc//EN"[ -<!ENTITY % defs SYSTEM "defs.ent"> %defs; -]> - -<article> - -<!-- Title information --> -<title>Documentation for XFree86™ version &relvers; -<author>The XFree86 Project, Inc -<date>19 July 1999 - -<ident> -$XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/DocIndex.sgml,v 3.34 1999/08/23 09:06:03 dawes Exp $ -</ident> - -<p> -<itemize> -<item><htmlurl name="README for XFree86&tm; &relvers;" - url="README.html"> -<item><htmlurl name="Release Notes for XFree86™ &relvers;" - url="RELNOTES.html"> -<item><htmlurl name="Licenses" - url="LICENSE.html"> -<!-- -<item><htmlurl name="Quick Start Guide for XFree86" - url="QuickStart.html"> -<item><htmlurl name="The XInput extension in XFree86" - url="xinput.html"> ---> -<item><htmlurl name="XFree86 X server ``New Design'' (DRAFT)" - url="DESIGN.html"> -<item><htmlurl name="Mouse Support in XFree86" - url="mouse.html"> -<item><htmlurl name="Fonts in XFree86" - url="fonts.html"> -<!-- -<item><htmlurl name="README for XFree86 3.1.2 on BSD/OS 2.0" - url="Bsdi.html"> ---> -<!-- -<item><htmlurl name="README for XFree86 on FreeBSD" - url="FreeBSD.html"> ---> -<item><htmlurl name="Information for ISC Users" - url="isc.html"> -<!-- -<item><htmlurl name="Information for Linux Users" - url="Linux.html"> -<item><htmlurl name="README for XFree86 3.2A on LynxOS" - url="LynxOS.html"> ---> -<!-- -<item><htmlurl name="README for XFree86 3.1 on Mach" - url="Mach.html"> ---> -<!-- -<item><htmlurl name="README for XFree86 3.2 on NetBSD and OpenBSD" - url="NetBSD.html"> -<item><htmlurl name="README for XFree86 3.2 on OS/2" - url="OS2.html"> -<item><htmlurl name="Notes on Rebuilding XFree86/OS2 from Scratch" - url="OS2Notes.html"> -<item><htmlurl name="Information for SCO Users" - url="SCO.html"> -<item><htmlurl name="Information for Solaris for x86 Users" - url="SOLX86.html"> -<item><htmlurl name="Information for SVR4 Users" - url="SVR4.html"> -<item><htmlurl name="Configuring XFree86" - url="Config.html"> -<item><htmlurl name="Building XFre86" - url="BUILD.html"> ---> -<!-- -<item><htmlurl name="The Hitchhiker's Guide to X386/XFree86 Video Timing" - url="VideoModes.html"> -<item><htmlurl name="Readme for the XFree86 3.1.2 LinkKit" - url="LinkKit.html"> ---> -<!-- -<item><htmlurl name="How to add an (S)VGA driver to XFree86" - url="VGADriver.html"> -<item><htmlurl name="Notes on the AGX Server" - url="agx.html"> -<item><htmlurl name="Information for ARK Logic Chipset Users" - url="ark.html"> ---> -<item><htmlurl name="ATI Adapters README file" - url="ati.html"> -<item><htmlurl name="Information for Chips and Technologies Users" - url="chips.html"> -<!-- -<item><htmlurl name="Information for Cirrus Chipset Users" - url="cirrus.html"> ---> -<item><htmlurl name="Information for DEC 21030 Users (aka TGA)" - url="DECtga.html"> -<!-- -<item><htmlurl name="Notes for Mach32 X Server" - url="Mach32.html"> -<item><htmlurl name="Notes for Mach64 X Server" - url="Mach64.html"> -<item><htmlurl name="Information for Matrox Millennium Users" - url="MGA.html"> -<item><htmlurl name="Information for NVidia NV1 / SGS-Thomson Users" - url="NV1.html"> -<item><htmlurl name="Information for Oak Technologies Inc. Chipset Users" - url="Oak.html"> -<item><htmlurl name="XFree86 3.2 P9000 Server Release Notes" - url="P9000.html"> -<item><htmlurl name="Information for S3 Chipset Users" - url="S3.html"> ---> -<item><htmlurl name="Information for S3 ViRGE Users" - url="s3virge.html"> -<item><htmlurl name="Information for SiS Users" - url="SiS.html"> -<!-- -<item><htmlurl name="Information for Trident Chipset Users" - url="trident.html"> -<item><htmlurl name="Information for Tseng Chipset Users" - url="tseng.html"> -<item><htmlurl name="README.VIDEO7" - url="Video7.html"> -<item><htmlurl name="Information for Western Digital Chipset Users" - url="WstDig.html"> -<item><htmlurl name="The Linux/m68k Frame Buffer Device" - url="fbdev.html"> ---> -</itemize> - -</article> diff --git a/xc/programs/Xserver/hw/xfree86/doc/sgml/VGADriv.sgml b/xc/programs/Xserver/hw/xfree86/doc/sgml/VGADriv.sgml deleted file mode 100644 index 555551310..000000000 --- a/xc/programs/Xserver/hw/xfree86/doc/sgml/VGADriv.sgml +++ /dev/null @@ -1,916 +0,0 @@ -<!DOCTYPE linuxdoc PUBLIC "-//XFree86//DTD linuxdoc//EN"> - -<article> - -<title> How to add an (S)VGA driver to XFree86 -<author> Copyright (c) 1993, 1994 David E. Wexelblat - <tt/<dwex@XFree86.org>/ -<date> Issue 1.3 - May 29, 1994 - -<toc> - -<sect> Introduction <p> -Adding support for a new SVGA chipset to XFree86 is a challenging project -for someone who wants to learn more about hardware-level programming. It -can be fraught with hazards (in particular, crashing the machine is all too -common). But in the end, when the server comes up and functions, it is -immensely satisfying. - -Adding support for an SVGA chipset does not change any of the basic -functioning of the server. It is still a dumb 8-bit PseudoColor server or -1-bit StaticGray server. Adding support for new hardware (e.g. accelerated -chips) is a major undertaking, and is not anywhere near formalized enough yet -that it can be documented. - -Nonetheless, the driver-level programming here is a good introduction. And -can well be the first step for adding support for an accelerated chipset, as -many are SVGA-supersets. Writing an SVGA-level driver for the chipset can -provide a stable development platform for making use of new features (in fact, -this has been done for the S3, Cirrus, and WD accelerated chipsets, for -internal use as the accelerated servers are developed for XFree86 2.0). - -Now let's get down to it. In addition to this documentation, a stub driver has -been provided. This should provide you a complete framework for your new -driver. Don't let the size of this document persuade you that this is an -overly difficult task. A lot of work has been put into making this document -as close to complete as possible; hence it should, in theory, be possible to -use this as a cookbook, and come out with a working driver when you reach the -end. I do advise that you read it all the way through before starting. - -<sect> Getting Started <p> -The first step in developing a new driver is to get the documentation for -your chipset. I've included a list of vendor contact information that I have -collected so far (it's far from complete, so if you have any that isn't on -the list, please send it to me). You need to obtain the databook for the -chipset. Make sure that the person you speak to is aware that you intend to -do register-level programming (so they don't send you the EE-style datasheet). -Ask for any example code, or developer's kits, etc. I've learned that at the -SVGA level, in general, a databook that lists and describes the registers is -the most you can hope to find. - -If you are not familiar with VGA register-level programming, you should get -(and read!) a copy of Richard Ferraro's bible (see references below). The -best way to understand what is happening in the server is to study the -workings of the monochrome server's ``generic'' server, and compare it with -the documentation in Ferraro's book (be aware that there are a few errors -in the book). You can find the generic-VGA-register handling functions in -the file ``vgaHW.c''. - -Once you understand what's happening in the generic server, you should study -one or more of the existing SVGA drivers. Obtain the databook for a supported -SVGA chipset, and study the documentation along with the code. When you have -a good understanding of what that driver does over and above the generic VGA, -you will know what information you need to obtain from the databook for the -new chipset. Once you have this information, you are ready to begin work on -your new driver. - -<sect> Directory Tree Structure <p> -Here is an outline of the directory tree structure for the source tree. -Only directories/files that are relevant to writing a driver are presented. -The structure for the Link Kit is presented below. - -<descrip> -<tag>xc/config/cf/</tag> - <descrip> - <tag>site.def</tag> - Local configuration customization - <tag>xf86site.def</tag> - XFree86 local configuration customization - </descrip> - -<tag>xc/programs/Xserver/hw/xfree86/</tag> - The server source - <descrip> - <tag>common/</tag> - Files common to all of the server (XF86Config - parser, I/O device handlers, etc) - <descrip> - <tag>xf86.h</tag> - Contains the `ScrnInfoRec' data structure - <tag>xf86_Option.h</tag> - Contains option flags - <tag>compiler.h</tag> - Contains in-line assembler macros and - utility functions - </descrip> - <tag>os-support/</tag> OS-support layer - <descrip> - <tag>assyntax.h</tag> - Contains macro-ized assembler mnemonics - <tag>xf86_OSlib.h</tag> - OS-support includes, defines, and prototypes - </descrip> - <tag>LinkKit/</tag> - <descrip> - <tag>site.def.LK</tag> - Template for Link Kit site.def - </descrip> - <tag>vga256/</tag> 256-color VGA server directories - <descrip> - <tag>vga/</tag> - The generic VGA handling code - <descrip> - <tag>vga.h</tag> - Contains the `vgaVideoChipRec' and `vgaHWRec' - data structures - <tag>vgaHW.c</tag> - Contains the generic-VGA-register handling - functions <bf>vgaHWInit()</bf>, - <bf>vgaHWSave()</bf> and - <bf>vgaHWRestore()</bf>. - </descrip> - <tag>drivers/</tag> Contains the SVGA driver subdirectories. - Each contains an Imakefile, a .c file for - the driver, and a .s file for the bank- - switching functions. - </descrip> - <tag>vga2/</tag> - The monochrome vga server directories. Most of - the files are linked from vga256, and the - differences handled by conditional compilation. - <descrip> - <tag>drivers/</tag> - The SVGA driver subdirectories. The `generic' - VGA driver is also located here. - </descrip> - <tag>vga16/</tag> - The 16-color vga server directories. Most of - the files are linked from vga256, and the - differences handled by conditional compilation. - <descrip> - <tag>drivers/</tag> The SVGA driver subdirectories. - </descrip> - <tag>VGADriverDoc/</tag> This documentation and the stub driver. - </descrip> -</descrip> -The Link Kit is usually installed in /usr/X11R6/lib/Server. -The Link Kit -contains everything that is needed to relink the server. It is possible -to write a new driver and build a new server without having even the server -source installed. -<descrip> -<tag>Server/</tag> - <descrip> - <tag>site.def</tag> - Local configuration customization - <tag>include/</tag> - All of the include files listed under the - `common' directory above - <tag>drivers/</tag> - All of the SVGA drivers - <descrip> - <tag>vga2/</tag> The SVGA driver subdirectories. - <tag>vga16/</tag> The SVGA driver subdirectories. - <tag>vga256/</tag> The SVGA driver subdirectories. - </descrip> - <tag>VGADriverDoc/</tag> The directory with this documentation and - the stub driver. `vgaHW.c' is also copied - here, for reference (it is not built as - part of the Link Kit). - </descrip> -</descrip> - -<sect> Setting Up The Build Information <p> - This section describes the peripheral configuration and build steps that -must be performed to set up for your new driver. The steps are the same -whether you are building from the source tree of from the Link Kit; only -the locations of the files is different. Here are the configuration steps -that must be followed: - -<enum> -<item> Choose the name for your driver subdirectory and data structures. - Since the current driver scheme allows (in fact, encourages) - putting drivers for multiple related chipsets in a single driver, - it is usually best to use the vendor name, rather than a chipset - version. The fact that older XFree86 drivers do not follow this - convention should not deter you from using it now - most of that - code was developed before the driver interface had been made - flexible and extensible. - - For this documentation, we'll use chips from the SuperDuper Chips - vendor. Hence, we'll use `sdc' for the name of the driver. - -<item> Decide whether your driver will support the color server, the - monochrome server, or both. For this documentation, we will - assume that both the color and monochrome servers will be - supported. If you intend to support only the color server, the - steps for the monochrome server can be ignored. If you intend - to support only the monochrome server, the steps for the color - server listed should be performed for the monochrome server, - and the monochrome steps ignored. Most of the existing drivers - support only the color or both servers; the ``generic'' driver is - the only driver (currently) that supports just the monochrome - server. - -<item> Create your driver directories: - - <itemize> - <item>If you are working in the source tree, create the - following directories: - -<verb> - xc/programs/Xserver/hw/xfree86/vga256/drivers/sdc - xc/programs/Xserver/hw/xfree86/vga16/drivers/sdc - xc/programs/Xserver/hw/xfree86/vga2/drivers/sdc -</verb> - - <item>If you are working in the Link Kit, create the - following directories: - -<verb> - /usr/X11R6/lib/Server/drivers/vga256/sdc - /usr/X11R6/lib/Server/drivers/vga16/sdc - /usr/X11R6/lib/Server/drivers/vga2/sdc -</verb> - </itemize> - -<item> Set up the Imakefile parameters to cause your driver to be - built: - - <itemize> - <item>If you are working in the source tree: - <enum> - <item>Edit the file xc/config/cf/xfree86.cf, - and add - `sdc' to the list for the definitions for - `XF86Vga256Drivers', `XF86Vga16Drivers' and - `XF86Vga2Drivers'. - You should put `sdc' just before `generic' in the - list (i.e. second last), to ensure that none of the - other driver's probe functions incorrectly detect - the `sdc' chipset . - <item>Edit the file xc/config/cf/xf86site.def, - and add - the same entries in this file (this is just a - comment that shows the default values). - <item>Edit the site.def.LK file in - xc/programs/Xserver/hw/xfree86/LinkKit/, - and add the same entries in this file. This is - the prototype `site.def' file that will be - installed in the Link Kit. - </enum> - - <item>If you are working in the Link Kit, edit the file - /usr/X11R6/lib/Server/site.def, and add `sdc' to - the `XF86Vga256Drivers', `XF86Vga16Drivers' and - `XF86Vga2Drivers' definitions as described in (a) above. - </itemize> -<item> Now copy the prototype files into your new directories: - <itemize> - <item>If you are working in the source tree, copy the `stub' - files as follows (directories are below xc/programs/Xserver): - <descrip> - <tag>Imakefile.stub =></tag> - hw/xfree86/vga256/drivers/sdc/Imakefile - <tag>stub_driver.c =></tag> - hw/xfree86/vga256/drivers/sdc/sdc_driver.c - <tag>stub_bank.s =></tag> - hw/xfree86/vga256/drivers/sdc/sdc_bank.s - <tag>Imakefile.stub =></tag> - hw/xfree86/vga16/drivers/sdc/Imakefile - (then edit this Imakefile and make the changes - described in the comments). - <tag>Imakefile.stub =></tag> - hw/xfree86/vga2/drivers/sdc/Imakefile - (then edit this Imakefile and make the changes - described in the comments). - </descrip> - <item>If you are working in the Link Kit, copy the `stub' files - as follows: - <descrip> - <tag>Imakefile.stub => </tag> - /usr/X11R6/lib/Server/drivers/vga256/sdc/Imakefile - <tag>stub_driver.c => </tag> - /usr/X11R6/lib/Server/drivers/vga256/sdc/sdc_driver.c - <tag>stub_bank.s => </tag> - /usr/X11R6/lib/Server/drivers/vga256/sdc/sdc_bank.s - <tag>Imakefile.stub => </tag> - /usr/X11R6/lib/Server/drivers/vga16/sdc/Imakefile - (then edit this Imakefile and make the changes - described in the comments). - <tag>Imakefile.stub => </tag> - /usr/X11R6/lib/Server/drivers/vga2/sdc/Imakefile - (then edit this Imakefile and make the changes - described in the comments). - </descrip> - </itemize> -<item> Edit each of the files you've just copied, and replace `stub' - with `sdc' and `STUB' with `SDC' wherever they appear. -</enum> -That's all the prep work needed. Now it's time to work on the actual driver. - -<sect> The Bank-Switching Functions <p> -The normal VGA memory map is 64k starting at address 0xA0000. To access -more than 64k of memory, SuperVGA chipsets implement ``bank switching'' - -the high-order address bits are used to select the bank of memory in which -operations will take place. The size and number of these banks varies, -and will be spelled out in the chipset documentation. A chipset will -have zero, one or two bank registers. Likely the ONLY case of zero bank -registers is a generic VGA, and hence is not a concern. - -Note that some of the newer chipsets (e.g. Trident 8900CL, Cirrus) allow -for a linear mapping of the video memory. While using such a scheme would -improve the performance of the server, it is not currently supported. Hence -there is no way to use such features for a new chipset. - -Most SVGA chipsets have two bank registers. This is the most desirable -structure (if any banking structure can be called ``desirable''), because -data can be moved from one area of the screen to another with a simple -`mov' instruction. There are two forms of dual-banking - one where the -two bank operations define a read-only bank and a write-only bank, and -one with two read/write windows. With the first form, the entire SVGA -memory window is used for both read a write operations, and the two -bank registers determine which bank is actually used (e.g. ET3000, ET4000). -With the second form, the SVGA memory window is split into two read/write -banks, with each bank pointer being used to control one window. In -this case, one window is used for read operations and the other for write -operations (e.g. PVGA1/Western Digital, Cirrus). - -A chipset that has a single bank register uses that one bank for both -read and write access. This is problematic, because copying information -from one part of the screen to another requires that the data be read in, -stored, and then written out. Fortunately, the server is able to handle -both one-bank and two-bank chipsets; the determination of behavior is -defined by an entry in the driver data structure described below. - -A driver requires that three assembly-language functions be written, in -the file `<tt>sdc_bank.s</tt>'. -These functions set the read bank - <bf>SDCSetRead()</bf>, -the write bank - <bf>SDCSetWrite()</bf>, and set both banks - -<bf>SDCSetReadWrite()</bf>. -For a chipset with only one bank, all three will be declared as entry points -to the same function (see the ``tvga8900'' driver for an example). - -The functions are fairly simple - the bank number is passed to the function -in register %al. The function will shift, bitmask, etc - whatever is -required to put the bank number into the correct form - and then write -it to the correct I/O port. For chipsets where the two banks are read-only -HERE -and write-only, the <bf>SetReadWrite()</bf> function will have to do this twice - once -for each bank. For chipsets with two independent read/write windows, the -<bf>SetReadWrite()</bf> function should use the same bank as the <bf>SetWrite()</bf> function. - -A special note - these functions MUST be written in the macroized assembler -format defined in the header file ``assyntax.h''. This will ensure that -the correct assembler code will be generated, regardless of OS. This -macroized format currently supports USL, GNU, and Intel assembler formats. - -That's all there is to the banking functions. Usually the chipset reference -will give examples of this code; if not, it is not difficult to figure out, -especially using the other drivers as examples. - -<sect> The Driver Itself <p> - Now it's time to get down to the real work - writing the major driver -functions in the files sdc_driver.c. First, an overview of what the -responsibilities of the driver are: - -<enum> -<item> Provide a chipset-descriptor data structure to the server. This - data structure contains pointers to the driver functions and - some data-structure initialization as well. -<item> Provide a driver-local data structure to hold the contents of - the chipset registers. This data structure will contain a - generic part and a driver-specific part. It is used to save the - initial chipset state, and is initialized by the driver to put - the chipset into different modes. -<item> Provide an identification function that the server will call to - list the chipsets that the driver is capable of supporting. -<item> Provide a probe function that will identify this chipset as - different from all others, and return a positive response if - the chipset this driver supports is installed, and a negative - response otherwise. -<item> Provide a function to select dot-clocks available on the board. -<item> Provide functions to save, restore, and initialize the driver- - local data structure. -<item> Provide a function to set the starting address for display in - the video memory. This implements the virtual-screen for the - server. -<item> Perhaps provide a function for use during VT-switching. -<item> Perhaps provide a function to check if each mode is suitable for - the chipset being used. -</enum> - -Before stepping through the driver file in detail, here are some important -issues: - -<enum> -<item> If your driver supports both the color and monochrome servers, - you should take care of both cases in the same file. Most things - are the same - you can differentiate between the two with the - MONOVGA <tt>#define</tt>. If the 16 color server is supported, - code specific to it can be enabled with the XF86VGA16 - <tt>#define</tt>. In most cases it is sufficient to put - the following near the top of the stub_driver.c file: - -<verb> - #ifdef XF86VGA16 - #define MONOVGA - #endif -</verb> - -<item> The color server uses the SVGA's 8-bit packed-pixel mode. The - monochrome and vga16 servers uses the VGA's 16-color mode - (4 bit-planes). Only one plane is enabled for the monochrome - server. -<item> It is possible for you to define your monochrome driver so that - no bank-switching is done. This is not particularly desirable, - as it yields only 64k of viewing area. -</enum> -Keeping these things in mind, you need to find the registers from your -SVGA chipset that control the desired features. In particular, registers -that control: -<enum> -<item> Clock select bits. The two low-order bits are part of the - standard Miscellaneous Output Register; most SVGA chipsets - will include 1 or 2 more bits, allowing the use of 8 or 16 - discrete clocks. -<item> Bank selection. The SVGA chipset will have one or two registers - that control read/write bank selection. -<item> CRTC extensions. The standard VGA registers don't have enough - bits to address large displays. So the SVGA chipsets have - extension bits. -<item> Interlaced mode. Standard VGA does not support interlaced - displays. So the SVGA chipset will have a bit somewhere to - control interlaced mode. Some chipsets require additional - registers to be set up to control interlaced mode -<item> Starting address. The standard VGA only has 16 bits in which - to specify the starting address for the display. This restricts - the screen size usable by the virtual screen feature. The SVGA - chipset will usually provide one or more extension bits. -<item> Lock registers. Many SVGA chipset prevent modification of - extended registers unless the registers are first ``unlocked''. - You will need to disable protection of any registers you will - need for other purposes. -<item> Any other facilities. Some chipset may, for example, require - that certain bits be set before you can access extended VGA - memory (beyond the IBM-standard 256k). Or other facilities; - read through all of the extended register descriptions and see - if anything important leaps out at you. -</enum> - -If you are fortunate, the chipset vendor will include in the databook some -tables of register settings for various BIOS modes. You can learn a lot -about what manipulations you must do by looking at the various BIOS modes. - -<sect1> Multiple Chipsets And Options <p> -It is possible, and in fact desirable, to have a single driver support -multiple chipsets from the same vendor. If there are multiple supported -chipsets, then you would have a series of #define's for them, and a -variable `SDCchipset', which would be used throughout the driver when -distinctions must be made. See the Trident and PVGA1/WD drivers for -examples (the Tseng ET3000 and ET4000 are counter-examples - these were -implemented before the driver interface allowed for multiple chipsets, so -this example should NOT be followed). Note that you should only distinguish -versions when your driver needs to do things differently for them. For -example, suppose the SDC driver supports the SDC-1a, SDC-1b, and SDC-2 -chipsets. The -1a and -1b are essentially the same, but different from the --2 chipset. Your driver should support the -1 and -2 chipsets, and not -distinguish between the -1a and -1b. This will simplify things for the -end user. - -In cases where you want to give the user control of driver behavior, or -there are things that cannot be determined without user intervention, you -should use ``option'' flags. Say that board vendors that use the SDC -chipsets have the option of providing 8 or 16 clocks. There's no way you -can determine this from the chipset probe, so you provide an option flag to -let the user select the behavior from the XF86Config file. The option flags -are defined in the file ``xf86_option.h''. You should look to see if there is -already a flag that can be reused. If so, use it in your driver. If not, -add a new #define, and define the string->symbol mapping in the table in -that file. To see how option flags are used, look at the ET4000, -PVGA1/WD, and Trident drivers. - -<sect1> Data Structures <p> -Once you have an understanding of what is needed from the above description, -it is time to fill in the driver data structures. First we will deal with -the `vgaSDCRec' structure. This data structure is the driver-local structure -that holds the SVGA state information. The first entry in this data structure -is ALWAYS `vgaHWRec std'. This piece holds the generic VGA portion of the -information. After that, you will have one `unsigned char' field for each -register that will be manipulated by your driver. That's all there is to -this data structure. - -Next you must initialize the `SDC' structure (type `vgaVideoChipRec'). This -is the global structure that identifies your driver to the server. Its name -MUST be `SDC', in all caps - i.e. it must match the directory name for your -driver. This is required so that the Link Kit reconfiguration can identify -all of the requisite directories and global data structures. - -The first section of this structure simply holds pointers to the driver -functions. - -Next, you must initialize the information about how your chipset does -bank switching. The following fields must be filled in: -<enum> -<item> ChipMapSize - the amount of memory that must be mapped into - the server's address space. This is almost always 64k (from - 0xA0000 to 0xAFFFF). Some chipsets use a 128k map (from - 0xA0000 to 0xBFFFF). If your chipset gives an option, use the - 64k window, as a 128k window rules out using a Hercules or - Monochrome Display Adapter card with the SVGA. -<item> ChipSegmentSize - the size of each bank within the ChipMapSize - window. This is usually also 64k, however, some chipsets split - the mapped window into a read portion and a write portion (for - example the PVGA1/Western Digital chipsets). -<item> ChipSegmentShift - the number of bits by which an address will - be shifted right to mask of the bank number. This is log-base-2 - of ChipSegmentSize. -<item> ChipSegmentMask - a bitmask used to mask off the address within - a given bank. This is (ChipSegmentSize-1). -<item> ChipReadBottom,ChipReadTop - the addresses within the mapped - window in which read operations can be done. Usually 0, and - 64k, respectively, except for those chipset that have separate - read and write windows. -<item> ChipWriteBottom,ChipWriteTop - same as above, for write operations. -<item> ChipUse2Banks - a boolean value for whether this chipset has one - or two bank registers. This is used to set up the screen-to-screen - operations properly. -</enum> -There are three more fields that must be filled in: -<enum> -<item> ChipInterlaceType - this is either VGA_NO_DIVIDE_VERT or - VGA_DIVIDE_VERT. Some chipsets require that the vertical timing - numbers be divided in half for interlaced modes. Setting this - flag will take care of that. -<item> ChipOptionFlags - this should always be `{0,}' in the data - structure initialization. This is a bitfield that contains - the Option flags that are valid for this driver. The appropriate - bits are initialized at the end of the Probe function. -<item> ChipRounding - this gets set to the multiple by which the - virtual width of the display must be rounded for the 256-color - server. This value is usually 8, but may be 4 or 16 for some - chipsets. -</enum> - -<sect1> The Ident() function <p> -The <bf>Ident()</bf> function is a very simple function. The server will call -this function repeatedly, until a NULL is returned, when printing out the -list of configured drivers. The <bf>Ident()</bf> function should return a chipset -name for a supported chipset. The function is passed a number which -increments from 0 on each iteration. - -<sect1> The ClockSelect() function <p> -The <bf>ClockSelect()</bf> function is used during clock probing (i.e. when no -`Clocks' line is specified in the XF86Config file) to select the dot-clock -indicated by the number passed in the parameter. The function should -set the chipset's clock-select bits according to the passed-in number. -Two dummy values will be passed in as well (CLK_REG_SAVE, CLK_SAVE_RESTORE). -When CLK_REG_SAVE is passed, the function should save away copies of -any registers that will be modified during clock selection. When -CLK_REG_RESTORE is passed, the function should restore these registers. -This ensure that the clock-probing cannot corrupt registers. - -This function should return FALSE if the passed-in index value is invalid -or if the clock can't be set for some reason. - -<sect1> The Probe() function <p> -The <bf>Probe()</bf> function is perhaps the most important, and perhaps the -least intuitive function in the driver. The Probe function is required -to identify the chipset independent of all other chipsets. If the user -has specified a `<tt>Chipset</tt>' line in the XF86Config file, this is a simple -string comparison check. Otherwise, you must use some other technique -to figure out what chipset is installed. If you are lucky, the chipset -will have an identification mechanism (ident/version registers, etc), and -this will be documented in the databook. Otherwise, you will have to -determine some scheme, using the reference materials listed below. - -The identification is often done by looking for particular patterns in -register, or for the existence of certain extended registers. Or with -some boards/chipsets, the requisite information can be obtained by reading -the BIOS for certain signature strings. The best advise is to study the -existing probe functions, and use the reference documentation. You -must be certain that your probe is non-destructive - if you modify a -register, it must be saved before, and restored after. - -Once the chipset is successfully identified, the <bf>Probe()</bf> function must -do some other initializations: -<enum> -<item> If the user has not specified the `<tt>VideoRam</tt>' parameter in the - XF86Config file, the amount of installed memory must be determined. -<item> If the user has not specified the `<tt>Clocks</tt>' parameter in the - XF86Config file, the values for the available dot-clocks must - be determined. This is done by calling the <bf>vgaGetClocks()</bf> - function, and passing it the number of clocks available and - a pointer to the <bf>ClockSelect()</bf> function. -<item> It is recommended that the `maxClock' field of the server's - `vga256InfoRec' structure be filled in with the maximum - dot-clock rate allowed for this chipset (specified in KHz). - If this is not filled in a probe time, a default (currently - 90MHz) will be used. -<item> The `chipset' field of the server's `vga256InfoRec' structure - must be initialized to the name of the installed chipset. -<item> If the driver will be used with the monochrome server, the - `bankedMono' field of the server's `vga256InfoRec' structure - must be set to indicate whether the monochrome driver supports - banking. -<item> If any option flags are used by this driver, the `ChipOptionFlags' - structure in the `vgaVideoChipRec' must be initialized with the - allowed option flags using the <bf>OFLG_SET()</bf> macro. -</enum> - -<sect1> The EnterLeave() function <p> -The <bf>EnterLeave()</bf> function is called whenever the virtual console on which -the server runs is entered or left (for OSs without virtual consoles, the -function is called when the server starts and again when it exits). The -purpose of this function is to enable and disable I/O permissions (for -OSs where such is required), and to unlock and relock access to ``protected'' -registers that the driver must manipulate. It is a fairly trivial function, -and can be implemented by following the comments in the stub driver. - -<sect1> The Restore() function <p> -The <bf>Restore()</bf> function is used for restoring a saved video state. Note -that `restore' is a bit of a misnomer - this function is used to both -restore a saved state and to install a new one created by the server. The -<bf>Restore()</bf> function must complete the following actions: -<enum> -<item> Ensure that Bank 0 is selected, and that any other state - information required prior to writing out a new state has been - set up. -<item> Call <bf>vgaHWRestore()</bf> to restore the generic VGA portion of the - state information. This function is in the vgaHW.c file. -<item> Restore the chipset-specific portion of the state information. - This may be done by simply writing out the register, or by - doing a read/modify/write cycle if only certain bits are to - be modified. Be sure to note the comment in the sample driver - about how to handle clock-select bits. -</enum> -<sect1> The Save() function <p> -The <bf>Save()</bf> function is used to extract the initial video state information -when the server starts. The <bf>Save()</bf> function must complete the following -actions: -<enum> -<item> Ensure that Bank 0 is selected. -<item> Call <bf>vgaHWSave()</bf> to extract the generic VGA portion of the state - information. This function is in the vgaHW.c file. -<item> Extract the chipset-specific portion of the state information. -</enum> -<sect1> The Init() function <p> - The <bf>Init()</bf> function is the second most important function in the driver -(after the <bf>Probe()</bf> function). It is used to initialize a data structure -for each of the defined display modes in the server. This function is -required to initialize the entire `vgaSDCRec' data structure with the -information needed to put the SVGA chipset into the required state. The -generic VGA portion of the structure is initialized with a call to -<bf>vgaHWInit()</bf> (also located in vgaHW.c). - -Once the generic portion is initialized, the <bf>Init()</bf> function can override -any of the generic register initialization, if necessary. All of the other -fields are filled in with the correct initialization. The information -about the particular mode being initialized is passed in the `mode' -parameter, a pointer to a `DisplayModeRec' structure. This can be -dereferenced to determine the needed parameters. - -If you only know how to initialize certain bits of the register, do that -here, and make sure that the <bf>Restore()</bf> function does a read/modify/write -to only manipulate those bits. Again, refer to the existing drivers -for examples of what happens in this function. - -<sect1> The Adjust() function <p> -The <bf>Adjust()</bf> function is another fairly basic function. It is called -whenever the server needs to adjust the start of the displayed part of -the video memory, due to scrolling of the virtual screen or when changing -the displayed resolution. All it does is set the starting address on the -chipset to match the specified coordinate. Follow the comments in the -stub driver for details on how to implement it. - -<sect1> The ValidMode() function <p> -The <bf>ValidMode()</bf> function is required. It is used to check -for any chipset-dependent reasons why a graphics mode might not be valid. It -gets called by higher levels of the code after the Probe() stage. In -many cases no special checking will be required and this function will -simply return TRUE always. - -<sect1> The SaveScreen() function <p> -The <bf>SaveScreen()</bf> function is not needed by most chipsets. This function -would only be required if the extended registers that your driver needs -will be modified when a synchronous reset is performed on the SVGA chipset -(your databook should tell you this). If you do NOT need this function, -simply don't define it, and put `NoopDDA' in its place in the vgaVideoChipRec -structure initialization (NoopDDA is a generic-use empty function). - -If you DO need this function, it is fairly simple to do. It will be -called twice - once before the reset, and again after. It will be passed -a parameter of SS_START in the former case, and SS_FINISH in the latter. -All that needs to be done is to save any registers that will be affected -by the reset into static variables on the SS_START call, and then restore -them on the SS_FINISH call. - -<sect1> The GetMode() function <p> -The <bf>GetMode()</bf> function is not used as of XFree86 1.3; its place in the -vgaVideoChipRec should be initialized to `NoopDDA'. - -At some point in the future, this function will be used to enable the server -and/or a standalone program using the server's driver libraries to do -interactive video mode adjustments. This function will read the SVGA -registers and fill in a DisplayModeRec structure with the current video -mode. - -<sect1> The FbInit() function <p> -The <bf>FbInit()</bf> function is required for drivers with accelerated graphics -support. It is used to replace default cfb.banked functions with -accelerated chip-specific versions. vga256LowlevFuncs is a struct containing -a list of functions which can be replaced. This struct defined in -vga256.h. Examples of <bf>FbInit()</bf> functions can be found in the et4000, -pvga1 and cirrus drivers. - -If you do NOT need this function, simply don't define it, and put `NoopDDA' -in its place in the vgaVideoChipRec structure initialization. - -<sect> Building The New Server <p> -As in the setup work, the steps for building the server depend whether -you are working in the source tree or in the Link Kit. Here are the -steps for the initial build after installing your new driver files: -<itemize> - <item>If you are working in the source tree, follow these steps: - - Go to xc/programs/Xserver, and enter - `<tt>make Makefile</tt>', then - `<tt>make Makefiles depend all</tt>' - - <item>If you are working in the Link Kit, follow these steps: - - <enum> - <item>Go to /usr/X11R6/lib/Server, and enter - `<tt>./mkmf</tt>' - <item>In the same directory, enter `<tt>make</tt>' - </enum> -</itemize> -To rebuild the server after the initial build (e.g. after making changes -to your driver): - -<itemize> -<item> If you are working in the source tree, follow these steps: - - <enum> - <item> Go to the appropriate drivers/ directory (e.g., - xc/programs/Xserver/hw/xfree86/vga256/drivers), - and enter `<tt>make</tt>'. - <item> Go to xc/programs/Xserver, and enter - `<tt>make loadXF86_SVGA</tt>' (to link the color server), - `<tt>make loadXF86_VGA16</tt>' (to link the 16 color server) or - `<tt>make loadXF86_Mono</tt>' (to link the mono server). - </enum> - -<item> If you are working in the Link Kit, follow these steps: - - <enum> - <item> Go to the appropriate driver directory, and enter - `<tt>make</tt>'. - <item> Go to /usr/X11R6/lib/server, and enter - `<tt>make loadXF86_SVGA</tt>' (to link the color server) or - `<tt>make loadXF86_VGA16</tt>' (to link the 16 color server) or - `<tt>make loadXF86_Mono</tt>' (to link the mono server). - </enum> -</itemize> - -<sect> Debugging <p> -Debugging a new driver can be a painful experience, unfortunately. It -is likely that incorrect programming of the SVGA chipset can lock up your -machine. More likely, however, is that the display will be lost, potentially -requiring a reboot to correct. It is HIGHLY recommended that the server -be run from an attached terminal or a network login. This is the only -rational way in which a debugger can be used on the server. Attempting -to use multiple VTs for debugging is basically a waste of time. - -Because of the potential for locking up the machine, it is a VERY good idea -to remember to do a `sync' or two before starting the server. In addition, -any unnecessary filesystems should be unmounted while the debugging session -is going on (to avoid having to run unnecessary fsck's). - -By default the server is built without debugging symbols. The server can -grow VERY large with debugging enabled. It is very simple to rebuild -your driver for debugging, though. Do the following: - -<enum> - <item>Go to the driver directory. - <item>Edit the Makefile. Look for the SECOND definition of - `<tt>CDEBUGFLAGS</tt>'. Change this definition to - - <verb> - CDEBUGFLAGS = -g -DNO_INLINE - </verb> - - (this will enable debugging symbols and disable inlining of - functions, which can make single-stepping a nightmare). - <item>Remove the `sdc_driver.o' file. - <item>Now follow the steps above for rebuilding the server. - - (Alternatively, instead of editing the Makefile, you can simply - do `<tt>make CDEBUGFLAGS="-g -DNO_INLINE"</tt>' after removing the - old .o file, then rebuild the server as described above). -</enum> - -This will give you a server with which you can set breakpoints in the driver -functions and single-step them. If you are working in the source tree, -and just learning about SVGA programming, it may be useful to rebuild -vgaHW.c with debugging as well. - -<sect> Advice <p> -I cannot stress this enough - study all available references, and the -existing code, until you understand what is happening. Do this BEFORE you -begin writing a driver. This will save you a massive amount of headache. -Try to find a driver for a chipset that is similar to yours, if possible. -Use this as an example, and perhaps derive your driver from it. - -Do not let the gloom-and-doom in the debugging section discourage you. -While you will probably have problems initially (I still do), careful, -deliberate debugging steps can bear fruit very quickly. It is likely -that, given a good understanding of the chipset, a driver can be written -and debugged in a day or two. For someone just learning about this kind -of programming, a week is more reasonable. - -<sect> Advanced Topics <p> -Newer chipsets are getting into two advanced areas: programmable clock -generators, and accelerated capabilities (BitBlt, line drawing, HW cursor). -These are new areas, and the formal interfaces to them are not yet defined. -It is advised that you contact the XFree86 team and get involved with the -development/beta-testing team if you need to be working in these areas. - -<sect> References <p> -<itemize> -<item>Programmer's Guide to the EGA and VGA Cards, 3rd ed. <newline> - Richard Ferraro <newline> - Addison-Wesley, 1994 <newline> - ISBN 0-201-62490-7 <newline> - (This is the bible of SVGA programming - it has a few errors, so watch out. - The third edition also covers several accelerated video cards.) - -<item>vgadoc4.zip <newline> - Finn Thoegersen <newline> - (This is a collection of SVGA and other chipset documentation. It is - available on most MS-DOS/Windows related FTP archives, including wuarchive. - It is DOS/BIOS oriented, but is still extremely useful, especially for - developing probe functions.) -</itemize> - -<sect> Vendor Contact Information <p> -<descrip> -<tag/ATI Technologies (VGA-Wonder, Mach8, Mach32, Mach64) - 33 Commerce Valley Drive East/ -Thornhill, Ontario <newline> -Canada L3T 7N6 <newline> -(905) 882-2600 (sales) <newline> -(905) 882-2626 (tech support) <newline> -(905) 764-9404 (BBS) <newline> -(905) 882-0546 (fax) <newline> - -<tag/Chips & Technologies/ -??? - -<tag/Cirrus Logic (SVGA, Accelerators - CL-GD5426)/ -3100 West Warren Ave. <newline> -Fremont, CA 94538 <newline> -(510) 623-8300 (N. CA, USA) <newline> -(49) 8152-40084 (Germany) <newline> -(44) 0727-872424 (UK) <newline> - -<tag/Genoa Systems (GVGA)/ -75 E. Trimble Road <newline> -San Jose, CA 95131 <newline> -(408) 432-9090 (sales) <newline> -(408) 432-8324 (tech support) <newline> - -<tag/Headland Technologies, Inc (Video-7 VGA 1024i, VRAM II)/ -46221 Landing Parkway <newline> -Fremont, CA 94538 <newline> -(415) 623-7857 <newline> - -<tag/Oak Technology, Inc (OTI-067,OTI-077)/ -139 Kifer Ct. <newline> -Sunnyvale, CA 94086 <newline> -(408) 737-0888 <newline> -(408) 737-3838 (fax) - -<tag>S3 (911, 924, 801/805, 928, 864, 868, 964, 968, 764, 765)</tag> -(408) 980-5400 - -<tag/Trident Microsystems Inc (8800, 8900, 9000)/ -205 Ravendale Dr <newline> -Mountainside, CA 94043 <newline> -(415) 691-9211 - -<tag/Tseng Labs Inc,/ -6 Terry Drive <newline> -Newtown, PA 18940 <newline> -(215) 968-0502 - -<tag/Weitek (Power9000, 5186)/ -1060 E. Arques Ave, <newline> -Sunnyvale, CA 94086 <newline> -(408) 738-5765 - -<tag/Western Digital/ -(714) 932-4900 -</descrip> - -<verb> -$XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/VGADriv.sgml,v 3.14 1998/03/20 21:06:26 hohndel Exp $ - - - - - -$XConsortium: VGADriv.sgml /main/9 1996/10/28 05:13:22 kaleb $ -</verb> - -</article> diff --git a/xc/programs/Xserver/hw/xfree86/doc/sgml/VidModes.sgml b/xc/programs/Xserver/hw/xfree86/doc/sgml/VidModes.sgml index 29a2b96ae..8c0a80702 100644 --- a/xc/programs/Xserver/hw/xfree86/doc/sgml/VidModes.sgml +++ b/xc/programs/Xserver/hw/xfree86/doc/sgml/VidModes.sgml @@ -1196,7 +1196,7 @@ Here is a copy of modeplot: # # Do `modeplot -?' to see the control options. # -# ($Id: VidModes.sgml,v 1.3 2000/02/22 22:10:27 kem Exp $) +# ($Id: VidModes.sgml,v 1.4 2000/03/16 03:37:30 jhartmann Exp $) # Monitor description. Bandwidth in MHz, horizontal frequencies in kHz # and vertical frequencies in Hz. @@ -1235,7 +1235,7 @@ output can be redirected to a printer. See gnuplot(1) for details. The modeplot tool was created by Eric S. Raymond <esr@thyrsus.com> based on analysis and scratch code by Martin Lottermoser <Martin.Lottermoser@mch.sni.de> -This is modeplot $Revision: 1.3 $ +This is modeplot $Revision: 1.4 $ EOF exit;; esac @@ -1408,7 +1408,7 @@ mathematical analysis behind <TT>modeplot</TT>. The distributed <TT>modeplot</TT> was redesigned and generalized by ESR from Martin's original gnuplot code for one case. <verb> -$XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/VidModes.sgml,v 3.15 2000/01/24 19:38:29 dawes Exp $ +$XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/VidModes.sgml,v 3.16 2000/02/23 20:30:16 dawes Exp $ diff --git a/xc/programs/Xserver/hw/xfree86/doc/sgml/r128.sgml b/xc/programs/Xserver/hw/xfree86/doc/sgml/r128.sgml index 94f3997bf..18fdb4a5e 100644 --- a/xc/programs/Xserver/hw/xfree86/doc/sgml/r128.sgml +++ b/xc/programs/Xserver/hw/xfree86/doc/sgml/r128.sgml @@ -8,11 +8,8 @@ <date>12 November 1999 <ident> -$XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/r128.sgml,v 1.4 2000/01/24 19:38:30 dawes Exp $ +$XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/r128.sgml,v 1.7 2000/03/08 15:14:48 dawes Exp $ </ident> -<!-- -$PI: xc/programs/Xserver/hw/xfree86/doc/sgml/r128.sgml,v 1.2 1999/10/21 20:51:15 faith Exp $ ---> <toc> @@ -27,7 +24,7 @@ $PI: xc/programs/Xserver/hw/xfree86/doc/sgml/r128.sgml,v 1.2 1999/10/21 20:51:15 <p> <itemize> <item>Full support (including hardware accelerated 2D drawing) for 8, 15, - 16, 24, and 32 bit per pixel depths. + 16, 24 bit pixel depths. <item>Hardware cursor support to reduce sprite flicker. <item>Support for high resolution video modes up to 1800x1440 @ 70Hz. <item>Support for doublescan video modes (e.g., 320x200 and 320x240). @@ -60,11 +57,11 @@ initialize the card. The only lines you need in the "Device" section of your XF86Config file are: <verb> Section "Device" - Identifier "Rage 128" - Driver "r128" + Identifier "Rage 128" + Driver "r128" EndSection </verb> -or let xf86config or XF86Setup do this for you. +or let <tt>xf86config</tt> do this for you. However, if you have problems with auto-detection, you can specify: <itemize> @@ -89,19 +86,19 @@ However, if you have problems with auto-detection, you can specify: <sect>Known Limitations <p> <itemize> - <item>None + <item>DGA is not supported yet </itemize> <sect>Authors <p> -The XFree86 3.9 driver was ported from XFree86 3.3 and enhanced by: +The XFree86 4 driver was ported from XFree86 3.3.x and enhanced by: <itemize> <item>Rickard E. (Rik) Faith <email>faith@precisioninsight.com</email> <item>Kevin E. Martin <email>kevin@precisioninsight.com</email> </itemize> <p> -The XFree86 3.9 driver was funded by ATI and was donated to The XFree86 +The XFree86 4 driver was funded by ATI and was donated to The XFree86 Project by: <verb> Precision Insight, Inc. @@ -109,12 +106,12 @@ Project by: USA </verb> <p> -The XFree86 3.3 driver used for the port was written by: +The XFree86 3.3.x driver used for the port was written by: <itemize> <item>Rickard E. (Rik) Faith <email>faith@precisioninsight.com</email> <item>Kevin E. Martin <email>kevin@precisioninsight.com</email> </itemize> -The XFree86 3.3 driver was funded by ATI and was donated to The XFree86 +The XFree86 3.3.x driver was funded by ATI and was donated to The XFree86 Project by Precision Insight, Inc. It was based in part on an earlier driver that was written by: <itemize> diff --git a/xc/programs/Xserver/hw/xfree86/drivers/chips/chips.cpp b/xc/programs/Xserver/hw/xfree86/drivers/chips/chips.cpp index 5bd02cfb2..3c9842327 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/chips/chips.cpp +++ b/xc/programs/Xserver/hw/xfree86/drivers/chips/chips.cpp @@ -1,5 +1,5 @@ -.\" $XFree86: xc/programs/Xserver/hw/xfree86/drivers/chips/chips.cpp,v 1.2 1999/11/19 14:59:17 hohndel Exp $ -.TH CHIPS __drivermansuffix__ "Version 3.9.16" "XFree86" +.\" $XFree86: xc/programs/Xserver/hw/xfree86/drivers/chips/chips.cpp,v 1.3 2000/03/03 01:05:34 dawes Exp $ +.TH CHIPS __drivermansuffix__ "Version 4.0" "XFree86" .SH NAME chips \- Chips and Technologies video driver .SH SYNOPSIS diff --git a/xc/programs/Xserver/hw/xfree86/drivers/cirrus/alp_driver.c b/xc/programs/Xserver/hw/xfree86/drivers/cirrus/alp_driver.c index 2da62431a..4513adfa8 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/cirrus/alp_driver.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/cirrus/alp_driver.c @@ -9,7 +9,7 @@ * Guy DESBIEF */ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/cirrus/alp_driver.c,v 1.6 2000/02/21 19:22:59 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/cirrus/alp_driver.c,v 1.8 2000/02/27 02:45:26 alanh Exp $ */ /* Everything using inb/outb, etc needs "compiler.h" */ #include "compiler.h" @@ -511,6 +511,8 @@ AlpPreInit(ScrnInfoPtr pScrn, int flags) ClockRangePtr clockRanges; char *mod = NULL; char *s; + + if (flags & PROBE_DETECT) return FALSE; #ifdef ALP_DEBUG ErrorF("AlpPreInit\n"); @@ -1627,7 +1629,7 @@ AlpScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) XF86VideoAdaptorPtr *ptr; int n; - n = xf86XVListGenericAdaptors(&ptr); + n = xf86XVListGenericAdaptors(pScrn,&ptr); if (n) xf86XVScreenInit(pScreen, ptr, n); } diff --git a/xc/programs/Xserver/hw/xfree86/drivers/glint/glint_dri.c b/xc/programs/Xserver/hw/xfree86/drivers/glint/glint_dri.c index a014daa05..9acce4b54 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/glint/glint_dri.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/glint/glint_dri.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/glint/glint_dri.c,v 1.10 2000/02/14 20:31:19 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/glint/glint_dri.c,v 1.12 2000/03/02 16:07:47 martin Exp $ */ /************************************************************************** Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas. @@ -31,7 +31,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * Author: * Jens Owen <jens@precisioninsight.com> * - * $PI: xc/programs/Xserver/hw/xfree86/drivers/glint/glint_dri.c,v 1.54 1999/08/04 18:18:58 faith Exp $ */ #include "xf86.h" @@ -558,7 +557,7 @@ GLINTDRIScreenInit(ScreenPtr pScreen) pGlint->drmBufs->count); /* tell the generic kernel driver how to handle Gamma DMA */ - if (!pGlint->irq) { + if (pGlint->irq <= 0) { pGlint->irq = drmGetInterruptFromBusID(pGlint->drmSubFD, ((pciConfigPtr)pGlint->PciInfo ->thisCard)->busnum, diff --git a/xc/programs/Xserver/hw/xfree86/drivers/i810/Imakefile b/xc/programs/Xserver/hw/xfree86/drivers/i810/Imakefile index d53553127..331396f38 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/i810/Imakefile +++ b/xc/programs/Xserver/hw/xfree86/drivers/i810/Imakefile @@ -1,4 +1,4 @@ -XCOMM $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/Imakefile,v 1.2 1999/08/30 01:25:03 dawes Exp $ +XCOMM $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/Imakefile,v 1.4 2000/03/03 01:05:38 dawes Exp $ XCOMM XCOMM This is the Imakefile for the i810 driver. XCOMM @@ -49,9 +49,10 @@ ObjectModuleTarget(i810,$(OBJS)) InstallObjectModule(i810,$(MODULEDIR),drivers) -XCOMM To install a man page remove the x and add these lines -XCOMM xCppManTarget(i810,) -XCOMM xInstallModuleManPage(i810) +#if !defined(XF86DriverSDK) +CppManTarget(i810,) +InstallModuleManPage(i810) +#endif DependTarget() diff --git a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810.h b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810.h index 9e38c8303..6aceea540 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810.h +++ b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810.h @@ -25,13 +25,12 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. **************************************************************************/ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810.h,v 1.1 1999/08/29 12:20:58 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810.h,v 1.4 2000/03/02 16:07:48 martin Exp $ */ /* * Authors: * Keith Whitwell <keithw@precisioninsight.com> * - * $PI$ */ #ifndef _I810_H_ diff --git a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_accel.c b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_accel.c index ab9c6e266..0f67180d2 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_accel.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_accel.c @@ -30,7 +30,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * Authors: * Keith Whitwell <keithw@precisioninsight.com> * - * $PI$ */ #include "xf86_ansic.h" diff --git a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_cursor.c b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_cursor.c index 23b8d6371..903ecd5b9 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_cursor.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_cursor.c @@ -25,13 +25,12 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. **************************************************************************/ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810_cursor.c,v 1.2 1999/09/27 06:29:51 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810_cursor.c,v 1.2 2000/02/23 04:47:15 martin Exp $ */ /* * Authors: * Keith Whitwell <keithw@precisioninsight.com> * - * $PI$ */ #include "xf86.h" diff --git a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dri.h b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dri.h index 2d1130509..e593f36b2 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dri.h +++ b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dri.h @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dri.h,v 1.1 1999/08/29 12:21:03 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dri.h,v 1.2 2000/03/02 16:07:49 martin Exp $ */ #ifndef _I810_DRI_ #define _I810_DRI_ diff --git a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dripriv.h b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dripriv.h index a56fecc97..b4bbab133 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dripriv.h +++ b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dripriv.h @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dripriv.h,v 1.1 1999/08/29 12:21:03 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dripriv.h,v 1.1 2000/03/02 16:07:50 martin Exp $ */ #ifndef _I810_DRIPRIV_H_ #define _I810_DRIPRIV_H_ diff --git a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c index 1e3f08750..e489d17c9 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c @@ -25,13 +25,12 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. **************************************************************************/ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i740/i740_driver.c,v 1.3 1999/09/27 06:29:51 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c,v 1.7 2000/03/02 16:07:50 martin Exp $ */ /* * Authors: * Keith Whitwell <keithw@precisioninsight.com> * - * $PI$ */ /* @@ -1724,7 +1723,7 @@ I810ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) { XF86VideoAdaptorPtr *ptr; int n; - n = xf86XVListGenericAdaptors(&ptr); + n = xf86XVListGenericAdaptors(pScrn, &ptr); if (n) { xf86XVScreenInit(pScreen, ptr, n); } diff --git a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_io.c b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_io.c index bacdbb051..4378e060d 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_io.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_io.c @@ -24,13 +24,12 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. **************************************************************************/ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i740/i810_io.c,v 1.1 1999/08/29 12:20:59 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810_io.c,v 1.2 2000/02/23 04:47:16 martin Exp $ */ /* * Authors: * Daryll Strauss <daryll@precisioninsight.com> * - * $PI$ */ #include "xf86.h" diff --git a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c index 4f98961a7..2cedd9682 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c @@ -30,7 +30,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * Authors: * Keith Whitwell <keithw@precisioninsight.com> * - * $PI$ */ diff --git a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_reg.h b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_reg.h index 1a21b79b9..db67793ab 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_reg.h +++ b/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_reg.h @@ -34,7 +34,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * Kevin E. Martin <kevin@precisioninsight.com> * * - * $PI$ */ /* I/O register offsets diff --git a/xc/programs/Xserver/hw/xfree86/drivers/mga/mga_video.c b/xc/programs/Xserver/hw/xfree86/drivers/mga/mga_video.c index 88c1784d4..26ee6f8dc 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/mga/mga_video.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/mga/mga_video.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/mga/mga_video.c,v 1.8 2000/01/18 16:35:51 tsi Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/mga/mga_video.c,v 1.12 2000/03/08 01:14:27 mvojkovi Exp $ */ #include "xf86.h" #include "xf86_OSproc.h" @@ -20,7 +20,14 @@ #include "xaalocal.h" #include "dixstruct.h" -#define OFF_DELAY 200 /* milliseconds */ +#define OFF_DELAY 200 /* milliseconds */ +#define FREE_DELAY 60000 + +#define OFF_TIMER 0x01 +#define FREE_TIMER 0x02 +#define CLIENT_VIDEO_ON 0x04 + +#define TIMER_MASK (OFF_TIMER | FREE_TIMER) #ifndef XvExtension void MGAInitVideo(ScreenPtr pScreen) {} @@ -28,7 +35,7 @@ void MGAResetVideo(ScrnInfoPtr pScrn) {} #else static XF86VideoAdaptorPtr MGASetupImageVideoG(ScreenPtr); - +static void MGAInitOffscreenImages(ScreenPtr); static void MGAStopVideoG(ScrnInfoPtr, pointer, Bool); static int MGASetPortAttributeG(ScrnInfoPtr, Atom, INT32, pointer); static int MGAGetPortAttributeG(ScrnInfoPtr, Atom ,INT32 *, pointer); @@ -49,49 +56,55 @@ static Atom xvBrightness, xvContrast, xvColorKey; void MGAInitVideo(ScreenPtr pScreen) { ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; - XF86VideoAdaptorPtr *adaptors, *newAdaptors; - XF86VideoAdaptorPtr newAdaptor; + XF86VideoAdaptorPtr *adaptors, *newAdaptors = NULL; + XF86VideoAdaptorPtr newAdaptor = NULL; MGAPtr pMga = MGAPTR(pScrn); int num_adaptors; - Bool freeAdaptors = FALSE; - num_adaptors = xf86XVListGenericAdaptors(&adaptors); - if((pScrn->bitsPerPixel != 8) && !pMga->Overlay8Plus24 && ((pMga->Chipset == PCI_CHIP_MGAG200) || (pMga->Chipset == PCI_CHIP_MGAG200_PCI) || (pMga->Chipset == PCI_CHIP_MGAG400))) { - if((newAdaptor = MGASetupImageVideoG(pScreen))) { + newAdaptor = MGASetupImageVideoG(pScreen); + MGAInitOffscreenImages(pScreen); + } - newAdaptors = xalloc((num_adaptors + 1) * - sizeof(XF86VideoAdaptorPtr*)); - if(newAdaptors) { - if(num_adaptors) - memcpy(newAdaptors, adaptors, num_adaptors * + num_adaptors = xf86XVListGenericAdaptors(pScrn, &adaptors); + + if(newAdaptor) { + if(!num_adaptors) { + num_adaptors = 1; + adaptors = &newAdaptor; + } else { + newAdaptors = /* need to free this someplace */ + xalloc((num_adaptors + 1) * sizeof(XF86VideoAdaptorPtr*)); + if(newAdaptors) { + memcpy(newAdaptors, adaptors, num_adaptors * sizeof(XF86VideoAdaptorPtr)); newAdaptors[num_adaptors] = newAdaptor; adaptors = newAdaptors; num_adaptors++; - freeAdaptors = TRUE; - } + } } } if(num_adaptors) xf86XVScreenInit(pScreen, adaptors, num_adaptors); - if(freeAdaptors) - xfree(adaptors); + if(newAdaptors) + xfree(newAdaptors); } /* client libraries expect an encoding */ static XF86VideoEncodingRec DummyEncoding[1] = { + { 0, "XV_IMAGE", 1024, 1024, {1, 1} + } }; #define NUM_FORMATS_G 3 @@ -170,12 +183,18 @@ static XF86ImageRec ImagesG[NUM_IMAGES_G] = typedef struct { unsigned char brightness; unsigned char contrast; - FBAreaPtr area; - RegionRec clip; - CARD32 colorKey; + FBAreaPtr area; + RegionRec clip; + CARD32 colorKey; + CARD32 videoStatus; + Time offTime; + Time freeTime; } MGAPortPrivRec, *MGAPortPrivPtr; +#define GET_PORT_PRIVATE(pScrn) \ + (MGAPortPrivPtr)((MGAPTR(pScrn))->adaptor->pPortPrivates[0].ptr) + #define outMGAdreg(reg, val) OUTREG8(RAMDAC_OFFSET + (reg), val) #define outMGAdac(reg, val) \ (outMGAdreg(MGA1064_INDEX, reg), outMGAdreg(MGA1064_DATA, val)) @@ -210,7 +229,6 @@ MGASetupImageVideoG(ScreenPtr pScreen) MGAPtr pMga = MGAPTR(pScrn); XF86VideoAdaptorPtr adapt; MGAPortPrivPtr pPriv; - int i; if(!(adapt = xcalloc(1, sizeof(XF86VideoAdaptorRec) + sizeof(MGAPortPrivRec) + @@ -248,11 +266,11 @@ MGASetupImageVideoG(ScreenPtr pScreen) adapt->PutImage = MGAPutImageG; adapt->QueryImageAttributes = MGAQueryImageAttributesG; + pPriv->colorKey = pMga->videoKey; + pPriv->videoStatus = 0; pPriv->brightness = 0; pPriv->contrast = 128; - pPriv->colorKey = (1 << pScrn->offset.red) | (1 << pScrn->offset.green) | - (((pScrn->mask.blue >> pScrn->offset.blue) - 1) << pScrn->offset.blue); - + /* gotta uninit this someplace */ REGION_INIT(pScreen, &pPriv->clip, NullBox, 0); @@ -384,13 +402,18 @@ MGAStopVideoG(ScrnInfoPtr pScrn, pointer data, Bool exit) REGION_EMPTY(pScrn->pScreen, &pPriv->clip); if(exit) { - OUTREG(MGAREG_BESCTL, 0); - pMga->timerIsOn = FALSE; + if(pPriv->videoStatus & CLIENT_VIDEO_ON) + OUTREG(MGAREG_BESCTL, 0); + if(pPriv->area) { + xf86FreeOffscreenArea(pPriv->area); + pPriv->area = NULL; + } + pPriv->videoStatus = 0; } else { - /* if it's being clipped delay turning off video for a short - while to avoid flicker */ - pMga->timerIsOn = TRUE; - pMga->offTime = currentTime.milliseconds + OFF_DELAY; + if(pPriv->videoStatus & CLIENT_VIDEO_ON) { + pPriv->videoStatus |= OFF_TIMER; + pPriv->offTime = currentTime.milliseconds + OFF_DELAY; + } } } @@ -440,7 +463,6 @@ MGAGetPortAttributeG( pointer data ){ MGAPortPrivPtr pPriv = (MGAPortPrivPtr)data; - MGAPtr pMga = MGAPTR(pScrn); if(attribute == xvBrightness) { *value = pPriv->brightness; @@ -521,6 +543,108 @@ MGACopyMungedData( } +static FBAreaPtr +MGAAllocateMemory( + ScrnInfoPtr pScrn, + FBAreaPtr area, + int numlines +){ + ScreenPtr pScreen; + FBAreaPtr new_area; + + if(area) { + if((area->box.y2 - area->box.y1) >= numlines) + return area; + + if(xf86ResizeOffscreenArea(area, pScrn->displayWidth, numlines)) + return area; + + xf86FreeOffscreenArea(area); + } + + pScreen = screenInfo.screens[pScrn->scrnIndex]; + + new_area = xf86AllocateOffscreenArea(pScreen, pScrn->displayWidth, + numlines, 0, NULL, NULL, NULL); + + if(!new_area) { + int max_w, max_h; + + xf86QueryLargestOffscreenArea(pScreen, &max_w, &max_h, 0, + FAVOR_WIDTH_THEN_AREA, PRIORITY_EXTREME); + + if((max_w < pScrn->displayWidth) || (max_h < numlines)) + return NULL; + + xf86PurgeUnlockedOffscreenAreas(pScreen); + new_area = xf86AllocateOffscreenArea(pScreen, pScrn->displayWidth, + numlines, 0, NULL, NULL, NULL); + } + + return new_area; +} + +static void +MGADisplayVideo( + ScrnInfoPtr pScrn, + int id, + int offset, + short width, short height, + int pitch, + int x1, int y1, int x2, int y2, + BoxPtr dstBox, + short src_w, short src_h, + short drw_w, short drw_h +){ + MGAPtr pMga = MGAPTR(pScrn); + int tmp; + + /* got 64 scanlines to do it in */ + tmp = INREG(MGAREG_VCOUNT) + 64; + if(tmp > pScrn->currentMode->VDisplay) + tmp -= pScrn->currentMode->VDisplay; + + switch(id) { + case 0x59565955: + OUTREG(MGAREG_BESGLOBCTL, 0x000000c3 | (tmp << 16)); + break; + case 0x32595559: + default: + OUTREG(MGAREG_BESGLOBCTL, 0x00000083 | (tmp << 16)); + break; + } + + OUTREG(MGAREG_BESA1ORG, offset); + + if(y1 & 0x00010000) + OUTREG(MGAREG_BESCTL, 0x00050c41); + else + OUTREG(MGAREG_BESCTL, 0x00050c01); + + OUTREG(MGAREG_BESHCOORD, (dstBox->x1 << 16) | (dstBox->x2 - 1)); + OUTREG(MGAREG_BESVCOORD, (dstBox->y1 << 16) | (dstBox->y2 - 1)); + + OUTREG(MGAREG_BESHSRCST, x1 & 0x03fffffc); + OUTREG(MGAREG_BESHSRCEND, (x2 - 0x00010000) & 0x03fffffc); + OUTREG(MGAREG_BESHSRCLST, (width - 1) << 16); + + OUTREG(MGAREG_BESPITCH, pitch >> 1); + + OUTREG(MGAREG_BESV1WGHT, y1 & 0x0000fffc); + OUTREG(MGAREG_BESV1SRCLST, height - 1 - (y1 >> 16)); + + tmp = ((src_h - 1) << 16)/drw_h; + if(tmp >= (32 << 16)) + tmp = (32 << 16) - 1; + OUTREG(MGAREG_BESVISCAL, tmp & 0x001ffffc); + + tmp = (((src_w - 1) << 16)/drw_w) << 1; + if(tmp >= (32 << 16)) + tmp = (32 << 16) - 1; + OUTREG(MGAREG_BESHISCAL, tmp & 0x001ffffc); + +} + static int MGAPutImageG( ScrnInfoPtr pScrn, @@ -534,14 +658,11 @@ MGAPutImageG( RegionPtr clipBoxes, pointer data ){ MGAPortPrivPtr pPriv = (MGAPortPrivPtr)data; - ScreenPtr pScreen = pScrn->pScreen; MGAPtr pMga = MGAPTR(pScrn); INT32 x1, x2, y1, y2; - unsigned char *dst, *src; unsigned char *dst_start; - int i, j, pitch, Bpp, new_h, offset, offset2, offset3, visHeight; - FBAreaPtr area; - int srcPitch, dstPitch, srcPitch2; + int pitch, new_h, offset, offset2, offset3; + int srcPitch, srcPitch2, dstPitch; int top, left, npixels, nlines; BoxRec dstBox; CARD32 tmp; @@ -570,73 +691,36 @@ MGAPutImageG( dstBox.y1 -= pScrn->frameY0; dstBox.y2 -= pScrn->frameY0; - Bpp = pScrn->bitsPerPixel >> 3; - pitch = Bpp * pScrn->displayWidth; + pitch = pScrn->bitsPerPixel * pScrn->displayWidth >> 3; + + dstPitch = ((width << 1) + 15) & ~15; + new_h = ((dstPitch * height) + pitch - 1) / pitch; switch(id) { case 0x32315659: - dstPitch = ((width << 1) + 31) & ~31; srcPitch = (width + 3) & ~3; offset2 = srcPitch * height; srcPitch2 = ((width >> 1) + 3) & ~3; - offset = srcPitch2 * (height >> 1); - offset3 = offset + offset2; - offset += offset3; - new_h = (offset + pitch - 1) / pitch; + offset3 = (srcPitch2 * (height >> 1)) + offset2; break; case 0x59565955: case 0x32595559: default: srcPitch = (width << 1); - dstPitch = (srcPitch + 15) & ~15; - offset = dstPitch * height; - new_h = (offset + pitch - 1) / pitch; break; } - area = pPriv->area; - - /* Allocate offscreen memory */ - if(!area || ((area->box.y2 - area->box.y1) < new_h)) { - Bool nukeMem = FALSE; - - if(!area) { - if(!(area = xf86AllocateOffscreenArea(pScreen, - pScrn->displayWidth, new_h, 0, NULL, NULL, NULL))) - { - nukeMem = TRUE; - } - } else { - if(!xf86ResizeOffscreenArea(area, pScrn->displayWidth, new_h)) { - xf86FreeOffscreenArea(area); - pPriv->area = area = NULL; - nukeMem = TRUE; - } - } - if(nukeMem) { - int max_w, max_h; - xf86QueryLargestOffscreenArea(pScreen, &max_w, &max_h, 0, - FAVOR_WIDTH_THEN_AREA, PRIORITY_EXTREME); - - if((max_w < pScrn->displayWidth) || (max_h < new_h)) - return BadAlloc; - - xf86PurgeUnlockedOffscreenAreas(pScreen); - area = xf86AllocateOffscreenArea(pScreen, - pScrn->displayWidth, new_h, 0, NULL, NULL, NULL); - } + if(!(pPriv->area = MGAAllocateMemory(pScrn, pPriv->area, new_h))) + return BadAlloc; - pPriv->area = area; - } - /* copy data */ top = y1 >> 16; left = (x1 >> 16) & ~1; npixels = ((((x2 + 0xffff) >> 16) + 1) & ~1) - left; left <<= 1; - offset = (area->box.y1 * pitch) + (top * dstPitch); + offset = (pPriv->area->box.y1 * pitch) + (top * dstPitch); dst_start = pMga->FbStart + offset + left; switch(id) { @@ -668,52 +752,11 @@ MGAPutImageG( REGION_RECTS(clipBoxes)); } - /* got 64 scanlines to do it in */ - tmp = INREG(MGAREG_VCOUNT) + 64; - if(tmp > pScrn->currentMode->VDisplay) - tmp -= pScrn->currentMode->VDisplay; - - switch(id) { - case 0x59565955: - OUTREG(MGAREG_BESGLOBCTL, 0x000000c3 | (tmp << 16)); - break; - case 0x32595559: - default: - OUTREG(MGAREG_BESGLOBCTL, 0x00000083 | (tmp << 16)); - break; - } - - OUTREG(MGAREG_BESA1ORG, offset); - if(y1 & 0x00010000) - OUTREG(MGAREG_BESCTL, 0x00050c41); - else - OUTREG(MGAREG_BESCTL, 0x00050c01); - - OUTREG(MGAREG_BESHCOORD, (dstBox.x1 << 16) | (dstBox.x2 - 1)); - OUTREG(MGAREG_BESVCOORD, (dstBox.y1 << 16) | (dstBox.y2 - 1)); - - OUTREG(MGAREG_BESHSRCST, x1 & 0x03fffffc); - OUTREG(MGAREG_BESHSRCEND, (x2 - 0x00010000) & 0x03fffffc); - OUTREG(MGAREG_BESHSRCLST, (width - 1) << 16); - - OUTREG(MGAREG_BESPITCH, dstPitch >> 1); + MGADisplayVideo(pScrn, id, offset, width, height, dstPitch, + x1, y1, x2, y2, &dstBox, src_w, src_h, drw_w, drw_h); - - OUTREG(MGAREG_BESV1WGHT, y1 & 0x0000fffc); - OUTREG(MGAREG_BESV1SRCLST, height - 1 - (y1 >> 16)); - - tmp = ((src_h - 1) << 16)/drw_h; - if(tmp >= (32 << 16)) - tmp = (32 << 16) - 1; - OUTREG(MGAREG_BESVISCAL, tmp & 0x001ffffc); - - tmp = (((src_w - 1) << 16)/drw_w) << 1; - if(tmp >= (32 << 16)) - tmp = (32 << 16) - 1; - OUTREG(MGAREG_BESHISCAL, tmp & 0x001ffffc); - - pMga->timerIsOn = FALSE; + pPriv->videoStatus = CLIENT_VIDEO_ON; return Success; } @@ -770,6 +813,7 @@ MGABlockHandler ( ScreenPtr pScreen = screenInfo.screens[i]; ScrnInfoPtr pScrn = xf86Screens[i]; MGAPtr pMga = MGAPTR(pScrn); + MGAPortPrivPtr pPriv = GET_PORT_PRIVATE(pScrn); pScreen->BlockHandler = pMga->BlockHandler; @@ -777,14 +821,237 @@ MGABlockHandler ( pScreen->BlockHandler = MGABlockHandler; - if(pMga->timerIsOn) { + if(pPriv->videoStatus & TIMER_MASK) { UpdateCurrentTime(); - if(pMga->offTime < currentTime.milliseconds) { - pMga->timerIsOn = FALSE; - OUTREG(MGAREG_BESCTL, 0); - } + if(pPriv->videoStatus & OFF_TIMER) { + if(pPriv->offTime < currentTime.milliseconds) { + OUTREG(MGAREG_BESCTL, 0); + pPriv->videoStatus = FREE_TIMER; + pPriv->freeTime = currentTime.milliseconds + FREE_DELAY; + } + } else { /* FREE_TIMER */ + if(pPriv->freeTime < currentTime.milliseconds) { + if(pPriv->area) { + xf86FreeOffscreenArea(pPriv->area); + pPriv->area = NULL; + } + pPriv->videoStatus = 0; + } + } + } +} + + +/****************** Offscreen stuff ***************/ + +typedef struct { + FBAreaPtr area; + Bool isOn; +} OffscreenPrivRec, * OffscreenPrivPtr; + +static int +MGAAllocateSurface( + ScrnInfoPtr pScrn, + int id, + unsigned short w, + unsigned short h, + XF86SurfacePtr surface +){ + FBAreaPtr area; + int pitch, fbpitch, numlines; + OffscreenPrivPtr pPriv; + + if((w > 1024) || (h > 1024)) + return BadAlloc; + + w = (w + 1) & ~1; + pitch = ((w << 1) + 15) & ~15; + fbpitch = pScrn->bitsPerPixel * pScrn->displayWidth >> 3; + numlines = ((pitch * h) + fbpitch - 1) / fbpitch; + + if(!(area = MGAAllocateMemory(pScrn, NULL, numlines))) + return BadAlloc; + + surface->width = w; + surface->height = h; + + if(!(surface->pitches = xalloc(sizeof(int)))) + return BadAlloc; + if(!(surface->offsets = xalloc(sizeof(int)))) { + xfree(surface->pitches); + return BadAlloc; + } + if(!(pPriv = xalloc(sizeof(OffscreenPrivRec)))) { + xfree(surface->pitches); + xfree(surface->offsets); + return BadAlloc; } + + pPriv->area = area; + pPriv->isOn = FALSE; + + surface->pScrn = pScrn; + surface->id = id; + surface->pitches[0] = pitch; + surface->offsets[0] = area->box.y1 * fbpitch; + surface->devPrivate.ptr = (pointer)pPriv; + + return Success; } +static int +MGAStopSurface( + XF86SurfacePtr surface +){ + OffscreenPrivPtr pPriv = (OffscreenPrivPtr)surface->devPrivate.ptr; + + if(pPriv->isOn) { + MGAPtr pMga = MGAPTR(surface->pScrn); + OUTREG(MGAREG_BESCTL, 0); + pPriv->isOn = FALSE; + } + + return Success; +} + + +static int +MGAFreeSurface( + XF86SurfacePtr surface +){ + OffscreenPrivPtr pPriv = (OffscreenPrivPtr)surface->devPrivate.ptr; + + if(pPriv->isOn) + MGAStopSurface(surface); + xf86FreeOffscreenArea(pPriv->area); + xfree(surface->pitches); + xfree(surface->offsets); + xfree(surface->devPrivate.ptr); + + return Success; +} + +static int +MGAGetSurfaceAttribute( + XF86SurfacePtr surface, + Atom attribute, + INT32 *value +){ + return MGAGetPortAttributeG(surface->pScrn, attribute, value, + (pointer)(GET_PORT_PRIVATE(surface->pScrn))); +} + +static int +MGASetSurfaceAttribute( + XF86SurfacePtr surface, + Atom attribute, + INT32 value +){ + return MGASetPortAttributeG(surface->pScrn, attribute, value, + (pointer)(GET_PORT_PRIVATE(surface->pScrn))); +} + + +static int +MGADisplaySurface( + XF86SurfacePtr surface, + short src_x, short src_y, + short drw_x, short drw_y, + short src_w, short src_h, + short drw_w, short drw_h, + RegionPtr clipBoxes +){ + OffscreenPrivPtr pPriv = (OffscreenPrivPtr)surface->devPrivate.ptr; + ScrnInfoPtr pScrn = surface->pScrn; + MGAPortPrivPtr portPriv = GET_PORT_PRIVATE(pScrn); + INT32 x1, y1, x2, y2; + BoxRec dstBox; + + x1 = src_x; + x2 = src_x + src_w; + y1 = src_y; + y2 = src_y + src_h; + + dstBox.x1 = drw_x; + dstBox.x2 = drw_x + drw_w; + dstBox.y1 = drw_y; + dstBox.y2 = drw_y + drw_h; + + MGAClipVideo(&dstBox, &x1, &x2, &y1, &y2, + REGION_EXTENTS(pScreen, clipBoxes), + surface->width, surface->height); + + if((x1 >= x2) || (y1 >= y2)) + return Success; + + dstBox.x1 -= pScrn->frameX0; + dstBox.x2 -= pScrn->frameX0; + dstBox.y1 -= pScrn->frameY0; + dstBox.y2 -= pScrn->frameY0; + + XAAFillSolidRects(pScrn, portPriv->colorKey, GXcopy, ~0, + REGION_NUM_RECTS(clipBoxes), + REGION_RECTS(clipBoxes)); + + MGADisplayVideo(pScrn, surface->id, surface->offsets[0], + surface->width, surface->height, surface->pitches[0], + x1, y1, x2, y2, &dstBox, src_w, src_h, drw_w, drw_h); + + pPriv->isOn = TRUE; + if(portPriv->videoStatus & CLIENT_VIDEO_ON) { + REGION_EMPTY(pScrn->pScreen, &portPriv->clip); + UpdateCurrentTime(); + portPriv->videoStatus = FREE_TIMER; + portPriv->freeTime = currentTime.milliseconds + FREE_DELAY; + } + + return Success; +} + + +static void +MGAInitOffscreenImages(ScreenPtr pScreen) +{ + ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; + MGAPtr pMga = MGAPTR(pScrn); + int num = (pMga->Chipset == PCI_CHIP_MGAG400) ? 2 : 1; + XF86OffscreenImagePtr offscreenImages; + + /* need to free this someplace */ + if(!(offscreenImages = xalloc(num * sizeof(XF86OffscreenImageRec)))) + return; + + offscreenImages[0].image = &ImagesG[0]; + offscreenImages[0].flags = VIDEO_OVERLAID_IMAGES | + VIDEO_CLIP_TO_VIEWPORT; + offscreenImages[0].alloc_surface = MGAAllocateSurface; + offscreenImages[0].free_surface = MGAFreeSurface; + offscreenImages[0].display = MGADisplaySurface; + offscreenImages[0].stop = MGAStopSurface; + offscreenImages[0].setAttribute = MGASetSurfaceAttribute; + offscreenImages[0].getAttribute = MGAGetSurfaceAttribute; + offscreenImages[0].max_width = 1024; + offscreenImages[0].max_height = 1024; + offscreenImages[0].num_attributes = (num == 1) ? 1 : 3; + offscreenImages[0].attributes = AttributesG; + + if(num == 2) { + offscreenImages[1].image = &ImagesG[2]; + offscreenImages[1].flags = VIDEO_OVERLAID_IMAGES | + VIDEO_CLIP_TO_VIEWPORT; + offscreenImages[1].alloc_surface = MGAAllocateSurface; + offscreenImages[1].free_surface = MGAFreeSurface; + offscreenImages[1].display = MGADisplaySurface; + offscreenImages[1].stop = MGAStopSurface; + offscreenImages[1].setAttribute = MGASetSurfaceAttribute; + offscreenImages[1].getAttribute = MGAGetSurfaceAttribute; + offscreenImages[1].max_width = 1024; + offscreenImages[1].max_height = 1024; + offscreenImages[1].num_attributes = 3; + offscreenImages[1].attributes = AttributesG; + } + + xf86XVRegisterOffscreenImages(pScreen, offscreenImages, num); +} -#endif +#endif /* !XvExtension */ diff --git a/xc/programs/Xserver/hw/xfree86/drivers/r128/Imakefile b/xc/programs/Xserver/hw/xfree86/drivers/r128/Imakefile index 86cf766a4..e3f7178bf 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/r128/Imakefile +++ b/xc/programs/Xserver/hw/xfree86/drivers/r128/Imakefile @@ -1,4 +1,4 @@ -XCOMM $XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/Imakefile,v 1.4 2000/02/14 19:20:49 dawes Exp $ +XCOMM $XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/Imakefile,v 1.6 2000/03/03 01:05:40 dawes Exp $ XCOMM XCOMM This is the Imakefile for the ATI Rage 128 (r128) driver. XCOMM @@ -19,7 +19,7 @@ INCLUDES = -I. -I$(XF86COMSRC) -I$(XF86OSSRC) \ -I$(SERVERSRC)/fb \ -I$(SERVERSRC)/cfb -I$(XF86SRC)/xaa -I$(XF86SRC)/ramdac \ -I$(XF86SRC)/vgahw -I$(XF86SRC)/fbdevhw \ - -I$(XF86SRC)/ddc -I$(XF86SRC)/i2c \ + -I$(XF86SRC)/ddc -I$(XF86SRC)/i2c -I$(XF86OSSRC)/vbe \ -I$(XF86SRC)/int10 -I$(SERVERSRC)/Xext \ -I$(FONTINCSRC) -I$(SERVERSRC)/include -I$(XINCLUDESRC) \ -I$(EXTINCSRC) -I$(XF86SRC)/xf24_32bpp @@ -35,9 +35,10 @@ ObjectModuleTarget(r128,$(OBJS)) InstallObjectModule(r128,$(MODULEDIR),drivers) -XCOMM To install a man page remove the x and add these lines -XCOMM xCppManTarget(r128,) -XCOMM xInstallModuleManPage(r128) +#if !defined(XF86DriverSDK) +CppManTarget(r128,) +InstallModuleManPage(r128) +#endif DependTarget() diff --git a/xc/programs/Xserver/hw/xfree86/drivers/r128/README b/xc/programs/Xserver/hw/xfree86/drivers/r128/README index 74c69486b..27adcbbbd 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/r128/README +++ b/xc/programs/Xserver/hw/xfree86/drivers/r128/README @@ -44,7 +44,8 @@ section of your XF86Config file are: Section "Device" - Identifier "r128" + Identifier "Rage 128" + Driver "r128" EndSection or let xf86config or XF86Setup do this for you. @@ -68,7 +69,7 @@ 7. Known Limitations - * None + * DGA is not supported yet 8. Authors @@ -110,5 +111,4 @@ http://www.suse.com -$XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/README,v 1.1 1999/11/19 13:54:42 hohndel Exp $ -$PI$ +$XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/README,v 1.3 2000/03/08 15:14:50 dawes Exp $ diff --git a/xc/programs/Xserver/hw/xfree86/drivers/r128/r128.h b/xc/programs/Xserver/hw/xfree86/drivers/r128/r128.h index bf282c937..d5d120153 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/r128/r128.h +++ b/xc/programs/Xserver/hw/xfree86/drivers/r128/r128.h @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/r128.h,v 1.7 2000/02/18 16:23:22 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/r128.h,v 1.8 2000/02/23 04:47:18 martin Exp $ */ /************************************************************************** Copyright 1999 ATI Technologies Inc. and Precision Insight, Inc., @@ -31,7 +31,6 @@ USE OR OTHER DEALINGS IN THE SOFTWARE. * Rickard E. Faith <faith@precisioninsight.com> * Kevin E. Martin <kevin@precisioninsight.com> * - * $PI$ */ #ifndef _R128_H_ diff --git a/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_accel.c b/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_accel.c index cb3faf061..5b0223661 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_accel.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_accel.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/r128_accel.c,v 1.6 2000/02/13 19:33:55 martin Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/r128_accel.c,v 1.7 2000/02/23 04:47:18 martin Exp $ */ /************************************************************************** Copyright 1999 ATI Technologies Inc. and Precision Insight, Inc., @@ -68,7 +68,6 @@ USE OR OTHER DEALINGS IN THE SOFTWARE. * method slows down common operations. Perhaps additional * XAA flags to use this only for some operations would help. * - * $PI$ */ #define R128_CLIPPING 1 diff --git a/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_cursor.c b/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_cursor.c index eb9f93381..a96872702 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_cursor.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_cursor.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/r128_cursor.c,v 1.4 2000/02/13 19:33:56 martin Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/r128_cursor.c,v 1.6 2000/03/06 22:59:26 dawes Exp $ */ /************************************************************************** Copyright 1999 ATI Technologies Inc. and Precision Insight, Inc., @@ -40,7 +40,6 @@ USE OR OTHER DEALINGS IN THE SOFTWARE. * RAGE 128 Software Development Manual (Technical Reference Manual P/N * SDK-G04000 Rev. 0.01), ATI Technologies: June 1999. * - * $PI$ */ /* X and server generic header files */ @@ -66,11 +65,17 @@ USE OR OTHER DEALINGS IN THE SOFTWARE. #include "r128_reg.h" #if X_BYTE_ORDER == X_BIG_ENDIAN -#define P_SWAP( a , b ) \ - ((char *)a)[0] = ((char *)b)[3]; \ - ((char *)a)[1] = ((char *)b)[2]; \ - ((char *)a)[2] = ((char *)b)[1]; \ +#define P_SWAP32( a , b ) \ + ((char *)a)[0] = ((char *)b)[3]; \ + ((char *)a)[1] = ((char *)b)[2]; \ + ((char *)a)[2] = ((char *)b)[1]; \ ((char *)a)[3] = ((char *)b)[0] + +#define P_SWAP16( a , b ) \ + ((char *)a)[0] = ((char *)b)[1]; \ + ((char *)a)[1] = ((char *)b)[0]; \ + ((char *)a)[2] = ((char *)b)[3]; \ + ((char *)a)[3] = ((char *)b)[2] #endif @@ -118,23 +123,50 @@ static void R128LoadCursorImage(ScrnInfoPtr pScrn, unsigned char *image) save = INREG(R128_CRTC_GEN_CNTL); OUTREG(R128_CRTC_GEN_CNTL, save & ~R128_CRTC_CUR_EN); - for (y = 0; y < 64; y++) { + #if X_BYTE_ORDER == X_BIG_ENDIAN - P_SWAP(d,s); - d++; s++; - P_SWAP(d,s); - d++; s++; - P_SWAP(d,s); - d++; s++; - P_SWAP(d,s); - d++; s++; + switch(info->pixel_bytes) { + case 4: + case 3: + for (y = 0; y < 64; y++) { + P_SWAP32(d,s); + d++; s++; + P_SWAP32(d,s); + d++; s++; + P_SWAP32(d,s); + d++; s++; + P_SWAP32(d,s); + d++; s++; + } + break; + case 2: + for (y = 0; y < 64; y++) { + P_SWAP16(d,s); + d++; s++; + P_SWAP16(d,s); + d++; s++; + P_SWAP16(d,s); + d++; s++; + P_SWAP16(d,s); + d++; s++; + } + break; + default: + for (y = 0; y < 64; y++) { + *d++ = *s++; + *d++ = *s++; + *d++ = *s++; + *d++ = *s++; + } + } #else + for (y = 0; y < 64; y++) { *d++ = *s++; *d++ = *s++; *d++ = *s++; *d++ = *s++; -#endif } +#endif OUTREG(R128_CRTC_GEN_CNTL, save); } diff --git a/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_driver.c b/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_driver.c index 11fdc40b1..b5da4cb6e 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_driver.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_driver.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/r128_driver.c,v 1.18 2000/02/21 19:23:07 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/r128_driver.c,v 1.26 2000/03/06 23:17:44 martin Exp $ */ /************************************************************************** Copyright 1999 ATI Technologies Inc. and Precision Insight, Inc., @@ -52,7 +52,6 @@ USE OR OTHER DEALINGS IN THE SOFTWARE. * overlay planes * DGA * - * $PI$ */ @@ -105,6 +104,9 @@ USE OR OTHER DEALINGS IN THE SOFTWARE. /* DDC support */ #include "xf86DDC.h" + /* VESA support */ +#include "vbe.h" + /* Driver data structures */ #include "r128.h" #include "r128_reg.h" @@ -235,6 +237,12 @@ static const char *fbdevHWSymbols[] = { NULL }; +static const char *vbeSymbols[] = { + "VBEInit", + "vbeDoEDID", + NULL +}; + #if 0 /* Not used until DDC is supported. */ static const char *ddcSymbols[] = { @@ -340,6 +348,7 @@ static pointer R128Setup(pointer module, pointer opts, int *errmaj, xf8_32bppSymbols, ramdacSymbols, fbdevHWSymbols, + vbeSymbols, 0 /* ddcsymbols */, 0 /* i2csymbols */, 0 /* shadowSymbols */, @@ -624,9 +633,6 @@ static Bool R128Probe(DriverPtr drv, int flags) Bool foundScreen = FALSE; int i; - if (flags & PROBE_DETECTISA) return FALSE; - if (flags & PROBE_DETECTFBDEV) return FALSE; - if ((numDevSections = xf86MatchDevice(R128_NAME, &devSections)) <= 0) return FALSE; @@ -643,10 +649,9 @@ static Bool R128Probe(DriverPtr drv, int flags) if (numUsed<=0) return FALSE; - if (flags & PROBE_DETECTPCI) - return TRUE; - - for (i = 0; i < numUsed; i++) { + if (flags & PROBE_DETECT) + foundScreen = TRUE; + else for (i = 0; i < numUsed; i++) { pEnt = xf86GetEntityInfo(usedChips[i]); if (pEnt->active) { @@ -1048,6 +1053,18 @@ static Bool R128PreInitInt10(ScrnInfoPtr pScrn) return TRUE; } +extern xf86MonPtr ConfiguredMonitor; + +static void +R128ProbeDDC(ScrnInfoPtr pScrn, int index) +{ + vbeInfoPtr pVbe; + if (xf86LoadSubModule(pScrn, "vbe")) { + pVbe = VBEInit(NULL,index); + ConfiguredMonitor = vbeDoEDID(pVbe); + } +} + /* R128PreInit is called once at server startup. */ static Bool R128PreInit(ScrnInfoPtr pScrn, int flags) { @@ -1056,19 +1073,25 @@ static Bool R128PreInit(ScrnInfoPtr pScrn, int flags) R128TRACE(("R128PreInit\n")); if (pScrn->numEntities != 1) return FALSE; - if (!xf86LoadSubModule(pScrn, "vgahw")) return FALSE; - xf86LoaderReqSymLists(vgahwSymbols, NULL); - if (!vgaHWGetHWRec(pScrn)) return FALSE; - if (!R128GetRec(pScrn)) { - vgaHWFreeHWRec(pScrn); - return FALSE; - } + if (!R128GetRec(pScrn)) return FALSE; info = R128PTR(pScrn); info->pEnt = xf86GetEntityInfo(pScrn->entityList[0]); if (info->pEnt->location.type != BUS_PCI) goto fail; + if (flags & PROBE_DETECT) { + R128ProbeDDC(pScrn, info->pEnt->index); + return TRUE; + } + + if (!xf86LoadSubModule(pScrn, "vgahw")) return FALSE; + xf86LoaderReqSymLists(vgahwSymbols, NULL); + if (!vgaHWGetHWRec(pScrn)) { + R128FreeRec(pScrn); + return FALSE; + } + info->PciInfo = xf86GetPciInfoForEntity(info->pEnt->index); info->PciTag = pciTag(info->PciInfo->bus, info->PciInfo->device, @@ -1414,7 +1437,7 @@ static Bool R128ScreenInit(int scrnIndex, ScreenPtr pScreen, XF86VideoAdaptorPtr *ptr; int n; - if ((n = xf86XVListGenericAdaptors(&ptr))) + if ((n = xf86XVListGenericAdaptors(pScrn, &ptr))) xf86XVScreenInit(pScreen, ptr, n); } #endif diff --git a/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_reg.h b/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_reg.h index e7b5e2b3d..86652affa 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_reg.h +++ b/xc/programs/Xserver/hw/xfree86/drivers/r128/r128_reg.h @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/r128_reg.h,v 1.5 2000/02/18 16:23:23 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/r128/r128_reg.h,v 1.6 2000/02/23 04:47:19 martin Exp $ */ /************************************************************************** Copyright 1999 ATI Technologies Inc. and Precision Insight, Inc., @@ -40,7 +40,6 @@ USE OR OTHER DEALINGS IN THE SOFTWARE. * RAGE 128 Software Development Manual (Technical Reference Manual P/N * SDK-G04000 Rev. 0.01), ATI Technologies: June 1999. * - * $PI$ */ #ifndef _R128_REG_H_ diff --git a/xc/programs/Xserver/hw/xfree86/drivers/rendition/accelX.c b/xc/programs/Xserver/hw/xfree86/drivers/rendition/accelX.c index d2b3b8426..4678c192c 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/rendition/accelX.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/rendition/accelX.c @@ -3,7 +3,8 @@ * * accelerator functions for X */ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/rendition/accelX.c,v 1.5 2000/01/18 16:35:51 tsi Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/rendition/accelX.c,v 1.6 2000/02/25 21:02:59 dawes Exp $ */ + @@ -28,19 +29,21 @@ /* * defines */ +#if 1 /* Global imported during compile-time */ char MICROCODE_DIR [PATH_MAX] = MODULEDIR; +#endif -#define waitfifo(size) { int c=0; \ +#define waitfifo(size) do { int c=0; \ while ((c++<0xfffff)&&((v_in8(iob+FIFOINFREE)&0x1f)<size)) /* if(!(c%0xffff))ErrorF("#1# !0x%x! -- ",v_in8(iob+FIFOINFREE)) */; \ if (c >= 0xfffff) { \ ErrorF("RENDITION: Input fifo full (1) FIFO in == %d\n",v_in8(iob+FIFOINFREE)&0x1f); \ - /* return; */\ + return; \ } \ - } + } while (0) -#define waitfifo2(size, rv) { int c=0; \ +#define waitfifo2(size, rv) do { int c=0; \ while ((c++<0xfffff)&&((v_in8(iob+FIFOINFREE)&0x1f)<size)) /* if(!(c%0xffff))ErrorF("#2# !0x%x! -- ",v_in8(iob+FIFOINFREE)) */; \ if (c >= 0xfffff) { \ ErrorF("RENDITION: Input fifo full (2) FIFO in ==%d\n",v_in8(iob+FIFOINFREE)&0x1f); \ @@ -48,7 +51,7 @@ char MICROCODE_DIR [PATH_MAX] = MODULEDIR; pRendition->board.accel=0; \ return rv; \ } \ - } + } while (0) #define P1(x) ((vu32)x) #define P2(x, y) ((((vu16)x)<<16)+((vu16)y)) @@ -110,7 +113,8 @@ static int Rop2Rop[]={ * functions */ -void RENDITIONAccelPreInit(ScrnInfoPtr pScreenInfo) +void +RENDITIONAccelPreInit(ScrnInfoPtr pScreenInfo) { renditionPtr pRendition = RENDITIONPTR(pScreenInfo); int c; @@ -125,6 +129,13 @@ void RENDITIONAccelPreInit(ScrnInfoPtr pScreenInfo) memset (pRendition->board.vmem_base,0,MC_SIZE); #endif +#if 0 + if (RENDITIONLoadUcode(pScreenInfo)){ + ErrorF ("RENDITION: AccelPreInit - Warning. Loading of microcode failed!!\n"); + } +#endif + +#if 1 /* Test */ if (V1000_DEVICE == pRendition->board.chip){ c=v_load_ucfile(pScreenInfo, strcat ((char *)MICROCODE_DIR,"v10002d.uc")); } @@ -139,25 +150,27 @@ void RENDITIONAccelPreInit(ScrnInfoPtr pScreenInfo) } pRendition->board.ucode_entry=c; - RENDITIONSaveUcode(pScreenInfo); - pRendition->board.fbOffset += MC_SIZE; + ErrorF("UCode_Entry == 0x%x\n",pRendition->board.ucode_entry); +#endif #ifdef DEBUG + pRendition->board.fbOffset += MC_SIZE; ErrorF("RENDITION: Offset is now %d\n",pRendition->board.fbOffset); - ErrorF("RENDITION: RENDITIONAccelPreInit End \n"); sleep(2); #endif } -void RENDITIONAccelXAAInit(ScreenPtr pScreen) +void +RENDITIONAccelXAAInit(ScreenPtr pScreen) { ScrnInfoPtr pScreenInfo = xf86Screens[pScreen->myNum]; renditionPtr pRendition = RENDITIONPTR(pScreenInfo); XAAInfoRecPtr pXAAinfo; BoxRec AvailFBArea; + int c; #ifdef DEBUG ErrorF("RENDITION: RENDITIONAccelInit called\n"); @@ -197,28 +210,32 @@ void RENDITIONAccelXAAInit(ScreenPtr pScreen) RENDITIONSetupForSolidFill; pXAAinfo->SubsequentSolidFillRect= RENDITIONSubsequentSolidFillRect; -#endif -#if 0 /* line */ xf86AccelInfoRec.SubsequentTwoPointLine = RENDITIONSubsequentTwoPointLine; #endif /* #if 0 */ -#ifdef DEBUG - ErrorF("RENDITION: RENDITIONAccelInit restore\n"); - sleep(2); -#endif + if (RENDITIONLoadUcode(pScreenInfo)) return; - /* Restore u-code previously loaded in PreInit-stage */ - RENDITIONRestoreUcode(pScreenInfo); +#if 1 /* Testingcode */ + if (V1000_DEVICE == pRendition->board.chip){ + c=v_load_ucfile(pScreenInfo, MICROCODE_DIR); + } + else { + /* V2x00 chip */ + c=v_load_ucfile(pScreenInfo, MICROCODE_DIR); + } - if (RENDITIONLoadUcode(pScreenInfo)) return; + if (c == -1) { + ErrorF( "RENDITION: Microcode loading failed !!!\n"); + return; + } + pRendition->board.ucode_entry=c; +#endif if (RENDITIONInitUcode(pScreenInfo)) return; - RENDITIONSaveUcode(pScreenInfo); - v_check_csucode(pScreenInfo); /* the remaining code was copied from s3v_accel.c. * we need to check it if it is suitable <ml> */ @@ -257,7 +274,8 @@ void RENDITIONAccelXAAInit(ScreenPtr pScreen) -void RENDITIONAccelNone(ScrnInfoPtr pScreenInfo) +void +RENDITIONAccelNone(ScrnInfoPtr pScreenInfo) { renditionPtr pRendition = RENDITIONPTR(pScreenInfo); XAAInfoRecPtr pXAAinfo=pRendition->AccelInfoRec; @@ -282,7 +300,8 @@ void RENDITIONAccelNone(ScrnInfoPtr pScreenInfo) -int RENDITIONLoadUcode(ScrnInfoPtr pScreenInfo) +int +RENDITIONLoadUcode(ScrnInfoPtr pScreenInfo) { renditionPtr pRendition = RENDITIONPTR(pScreenInfo); @@ -312,7 +331,8 @@ int RENDITIONLoadUcode(ScrnInfoPtr pScreenInfo) } -int RENDITIONInitUcode(ScrnInfoPtr pScreenInfo) +int +RENDITIONInitUcode(ScrnInfoPtr pScreenInfo) { renditionPtr pRendition = RENDITIONPTR(pScreenInfo); vu16 iob = pRendition->board.io_base; @@ -335,19 +355,27 @@ int RENDITIONInitUcode(ScrnInfoPtr pScreenInfo) stride1=1; */ + ErrorF("#InitUcode(1)# FIFOIN_FREE 0x%x -- \n",v_in8(iob+FIFOINFREE)); + /* init the ucode */ /* ... and start accelerator */ v1k_flushicache(pScreenInfo); v1k_start(pScreenInfo, pRendition->board.csucode_base); + ErrorF("#InitUcode(2)# FIFOIN_FREE 0x%x -- \n",v_in8(iob+FIFOINFREE)); + v_out32(iob, 0); /* a0 - ucode init command */ v_out32(iob, 0); /* a1 - 1024 byte context store area */ v_out32(iob, 0); /* a2 */ v_out32(iob, pRendition->board.ucode_entry); + ErrorF("#InitUcode(3)# FIFOIN_FREE 0x%x -- \n",v_in8(iob+FIFOINFREE)); + waitfifo2(6, 1); + ErrorF("#InitUcode(4)# FIFOIN_FREE 0x%x -- \n",v_in8(iob+FIFOINFREE)); + v_out32(iob, CMD_SETUP); v_out32(iob, P2(pRendition->board.mode.virtualwidth, pRendition->board.mode.virtualheight)); @@ -360,6 +388,8 @@ int RENDITIONInitUcode(ScrnInfoPtr pScreenInfo) v_out32(iob, (pRendition->board.mode.stride1<<12)| (pRendition->board.mode.stride0<<8)); + ErrorF("#InitUcode(5)# FIFOIN_FREE 0x%x -- \n",v_in8(iob+FIFOINFREE)); + #if 0 v_out32(iob+0x60, 129); ErrorF("RENDITION: PC at %x\n", v_in32(iob+0x64)); @@ -368,7 +398,8 @@ int RENDITIONInitUcode(ScrnInfoPtr pScreenInfo) return 0; } -void RENDITIONRestoreUcode(ScrnInfoPtr pScreenInfo) +void +RENDITIONRestoreUcode(ScrnInfoPtr pScreenInfo) { renditionPtr pRendition = RENDITIONPTR(pScreenInfo); vu16 iob = pRendition->board.io_base; @@ -377,6 +408,10 @@ void RENDITIONRestoreUcode(ScrnInfoPtr pScreenInfo) #ifdef DEBUG ErrorF("RENDITION: RENDITIONRestoreUcode called\n"); +#endif + +#ifdef DEBUG + ErrorF("Restore...1\n"); sleep(2); #endif @@ -406,13 +441,14 @@ void RENDITIONRestoreUcode(ScrnInfoPtr pScreenInfo) -void RENDITIONSaveUcode(ScrnInfoPtr pScreenInfo) +void +RENDITIONSaveUcode(ScrnInfoPtr pScreenInfo) { renditionPtr pRendition = RENDITIONPTR(pScreenInfo); vu16 iob = pRendition->board.io_base; vu8 memend; -#if 1 +#ifdef DEBUG ErrorF("RENDITION: RENDITIONSaveUcode called\n"); sleep(2); #endif @@ -440,7 +476,8 @@ void RENDITIONSaveUcode(ScrnInfoPtr pScreenInfo) /* * synchronization -- wait for RISC and pixel engine to become idle */ -void RENDITIONSyncV1000(ScrnInfoPtr pScreenInfo) +void +RENDITIONSyncV1000(ScrnInfoPtr pScreenInfo) { renditionPtr pRendition = RENDITIONPTR(pScreenInfo); vu16 iob = pRendition->board.io_base; @@ -458,10 +495,11 @@ void RENDITIONSyncV1000(ScrnInfoPtr pScreenInfo) c=0; /* empty output fifo, i.e. if there is any valid data in the output fifo then read it */ + while ((c++<0xfffff) && ((v_in8(iob+FIFOOUTVALID)&0x7)>0)) - (void)v_in32(iob); + (void)v_in32(iob); -/* if(!(c%10000))ErrorF("#F1# !0x%x! -- ",v_in8(iob+FIFOOUTVALID)); */ +/* if(!(c%0xffff))ErrorF("#F1# !0x%x! -- ",v_in8(iob+FIFOOUTVALID)); */ if (c >= 0xfffff) { ErrorF("RENDITION: RISC synchronization failed (1) FIFO out == %d!\n", @@ -478,7 +516,8 @@ void RENDITIONSyncV1000(ScrnInfoPtr pScreenInfo) while ((c++<0xfffff) && ((v_in8(iob+FIFOOUTVALID)&0x7)>0)) (void)v_in32(iob); -/* if(!(c%10000))ErrorF("#F2# !0x%x! -- ",v_in8(iob+FIFOOUTVALID)); */ +/* if(!(c%0xffff))ErrorF("#F2# !0x%x! -- ",v_in8(iob+FIFOOUTVALID)); */ + if (c >= 0xfffff) { ErrorF("RENDITION: RISC synchronization failed (2) FIFO out == %d!\n", @@ -486,10 +525,6 @@ void RENDITIONSyncV1000(ScrnInfoPtr pScreenInfo) return; } - /* This assumes that there are data to read out! Check if correct */ - if (c < 0xffffff) - (void)v_in32(iob); - /* sync pixel engine using csucode -- I suppose this is quite slow <ml> */ v1k_stop(pScreenInfo); v1k_start(pScreenInfo, pRendition->board.csucode_base); @@ -499,7 +534,7 @@ void RENDITIONSyncV1000(ScrnInfoPtr pScreenInfo) while ((c++<0xfffff) && ((v_in8(iob+FIFOOUTVALID)&0x7)>0)) (void)v_in32(iob); -/* if(!(c%10000))ErrorF("#F3# !0x%x! -- ",v_in8(iob+FIFOOUTVALID)); */ +/* if(!(c%0xffff))ErrorF("#F3# !0x%x! -- ",v_in8(iob+FIFOOUTVALID)); */ if (c == 0xfffff) { ErrorF("RENDITION: Pixel engine synchronization failed FIFO out == %d!\n", @@ -533,7 +568,8 @@ void RENDITIONSyncV1000(ScrnInfoPtr pScreenInfo) /* * screen to screen copy */ -void RENDITIONSetupForScreenToScreenCopy(ScrnInfoPtr pScreenInfo, +void +RENDITIONSetupForScreenToScreenCopy(ScrnInfoPtr pScreenInfo, int xdir, int ydir, int rop, unsigned planemask, int trans_color) { @@ -548,7 +584,8 @@ void RENDITIONSetupForScreenToScreenCopy(ScrnInfoPtr pScreenInfo, pRendition->board.Rop=Rop2Rop[rop]; } -void RENDITIONSubsequentScreenToScreenCopy(ScrnInfoPtr pScreenInfo, +void +RENDITIONSubsequentScreenToScreenCopy(ScrnInfoPtr pScreenInfo, int srcX, int srcY, int dstX, int dstY, int w, int h) @@ -581,13 +618,14 @@ void RENDITIONSubsequentScreenToScreenCopy(ScrnInfoPtr pScreenInfo, /* * solid filled rectangles */ -void RENDITIONSetupForSolidFill(ScrnInfoPtr pScreenInfo, +void +RENDITIONSetupForSolidFill(ScrnInfoPtr pScreenInfo, int color, int rop, unsigned planemask) { renditionPtr pRendition = RENDITIONPTR(pScreenInfo); -#if 1 /* def DEBUG */ +#ifdef DEBUG ErrorF("RENDITION: RENDITIONSetupForSolidFill called\n"); ErrorF("RENDITION: Rop is %x/%x\n", rop, Rop2Rop[rop]); #endif @@ -600,7 +638,8 @@ void RENDITIONSetupForSolidFill(ScrnInfoPtr pScreenInfo, pRendition->board.Color|=(pRendition->board.Color<<8); } -void RENDITIONSubsequentSolidFillRect(ScrnInfoPtr pScreenInfo, +void +RENDITIONSubsequentSolidFillRect(ScrnInfoPtr pScreenInfo, int x, int y, int w, int h) { renditionPtr pRendition = RENDITIONPTR(pScreenInfo); @@ -629,7 +668,8 @@ void RENDITIONSubsequentSolidFillRect(ScrnInfoPtr pScreenInfo, * line */ -void RENDITIONSubsequentTwoPointLine(ScrnInfoPtr pScreenInfo, +void +RENDITIONSubsequentTwoPointLine(ScrnInfoPtr pScreenInfo, int x1, int y1, int x2, int y2, int bias) diff --git a/xc/programs/Xserver/hw/xfree86/drivers/rendition/hwcursor.c b/xc/programs/Xserver/hw/xfree86/drivers/rendition/hwcursor.c index 9ae2f17b3..808e393cc 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/rendition/hwcursor.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/rendition/hwcursor.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/rendition/hwcursor.c,v 1.5 1999/12/30 03:38:34 robin Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/rendition/hwcursor.c,v 1.6 2000/02/25 21:03:00 dawes Exp $ */ /* * includes */ @@ -13,9 +13,7 @@ * defines */ -#ifdef DEBUG #undef DEBUG -#endif /* use a 64x64 cursor, 32x32 otherwise */ /* note that V2K supports only 64x64 size */ @@ -26,7 +24,7 @@ */ static Bool RENDITIONUseHWCursor(ScreenPtr pScreen, CursorPtr pCurs); -static void RENDITIONSetCursorColors(ScrnInfoPtr pScreenInfo, int fg, int bg); +static void RENDITIONSetCursorColors(ScrnInfoPtr pScreenInfo, int bg, int fg); static void RENDITIONSetCursorPosition(ScrnInfoPtr pScreenInfo, int x, int y); static void RENDITIONHideCursor(ScrnInfoPtr pScreenInfo); static void RENDITIONShowCursor(ScrnInfoPtr pScreenInfo); @@ -41,6 +39,10 @@ RenditionHWCursorPreInit (ScrnInfoPtr pScreenInfo) { renditionPtr pRendition = RENDITIONPTR(pScreenInfo); +#ifdef DEBUG + ErrorF ("Rendition: Debug RenditionHWCursorPreInit called\n"); +#endif + pRendition->board.hwcursor_used = TRUE; if (pRendition->board.chip==V1000_DEVICE){ /* V1K uses special space on BT-485 RAMDAC */ @@ -60,6 +62,10 @@ RenditionHWCursorRelease (ScrnInfoPtr pScreenInfo) { renditionPtr pRendition = RENDITIONPTR(pScreenInfo); +#ifdef DEBUG + ErrorF ("Rendition: Debug RenditionHWCursorRelease called\n"); +#endif + xf86DestroyCursorInfoRec(pRendition->CursorInfoRec); pRendition->CursorInfoRec=NULL; } @@ -72,15 +78,15 @@ RenditionHWCursorInit(int scrnIndex, ScreenPtr pScreen) renditionPtr pRendition = RENDITIONPTR(pScreenInfo); xf86CursorInfoPtr infoPtr; +#ifdef DEBUG + ErrorF ("Rendition: Debug RenditionHWCursorInit called\n"); +#endif + infoPtr = xf86CreateCursorInfoRec(); if(!infoPtr) return FALSE; pRendition->CursorInfoRec = infoPtr; -#ifdef DEBUG - ErrorF( "RENDITION: RENDITIONHwCursorInit called\n"); -#endif - #ifdef BIGCURSOR infoPtr->MaxWidth=64; infoPtr->MaxHeight=64; @@ -113,6 +119,10 @@ RenditionHWCursorInit(int scrnIndex, ScreenPtr pScreen) static Bool RENDITIONUseHWCursor(ScreenPtr pScreen, CursorPtr pCurs) { +#ifdef DEBUG + ErrorF ("Rendition: Debug RENDITIONUseHWCursor called\n"); +#endif + /* have this return false for DoubleScan and Interlaced ? */ return TRUE; } @@ -128,7 +138,7 @@ RENDITIONShowCursor(ScrnInfoPtr pScreenInfo) #endif /* enable cursor - X11 mode */ - v_enablecursor(pScreenInfo, V_3COLORS, + v_enablecursor(pScreenInfo, V_3COLORS, #ifdef BIGCURSOR V_CURSOR64 #else @@ -171,7 +181,7 @@ RENDITIONSetCursorColors(ScrnInfoPtr pScreenInfo, int bg, int fg) ErrorF( "RENDITION: SetCursorColors(%x, %x) called\n", fg, bg); #endif - v_setcursorcolor(pScreenInfo, fg, bg); + v_setcursorcolor(pScreenInfo, bg, fg); } diff --git a/xc/programs/Xserver/hw/xfree86/drivers/rendition/rendition.h b/xc/programs/Xserver/hw/xfree86/drivers/rendition/rendition.h index ca8df2861..a9f73bb01 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/rendition/rendition.h +++ b/xc/programs/Xserver/hw/xfree86/drivers/rendition/rendition.h @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/rendition/rendition.h,v 1.4 1999/12/14 03:12:09 robin Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/rendition/rendition.h,v 1.5 2000/02/25 21:03:02 dawes Exp $ */ #ifndef __RENDITION_H__ #define __RENDITION_H__ @@ -77,6 +77,7 @@ /* DDC support */ #include "xf86DDC.h" + #include "commonregs.h" /* end of __RENDITION_H__ */ diff --git a/xc/programs/Xserver/hw/xfree86/drivers/rendition/rendition_options.h b/xc/programs/Xserver/hw/xfree86/drivers/rendition/rendition_options.h index b45eb580d..89eb3d1df 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/rendition/rendition_options.h +++ b/xc/programs/Xserver/hw/xfree86/drivers/rendition/rendition_options.h @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/rendition/rendition_options.h,v 1.3 1999/11/02 16:16:42 tsi Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/rendition/rendition_options.h,v 1.4 2000/03/01 00:25:24 dawes Exp $ */ #ifndef __RENDITION_OPTION_H__ #define __RENDITION_OPTION_H__ @@ -9,7 +9,9 @@ typedef enum { OPTION_SW_CURSOR, OPTION_NOACCEL, OPTION_OVERCLOCK_MEM, - OPTION_NO_DDC + OPTION_NO_DDC, + OPTION_SHADOW_FB, + OPTION_ROTATE } renditionOpts; @@ -24,6 +26,8 @@ static OptionInfoRec renditionOptions[]={ { OPTION_NOACCEL, "NoAccel", OPTV_BOOLEAN, {0}, FALSE }, { OPTION_OVERCLOCK_MEM,"Overclock_Mem", OPTV_BOOLEAN, {0}, FALSE }, { OPTION_NO_DDC, "NoDDC", OPTV_BOOLEAN, {0}, FALSE }, + { OPTION_SHADOW_FB, "ShadowFB", OPTV_BOOLEAN, {0}, FALSE }, + { OPTION_ROTATE, "Rotate", OPTV_ANYSTR, {0}, FALSE }, { -1, NULL, OPTV_NONE, {0}, FALSE } }; /*********************************/ diff --git a/xc/programs/Xserver/hw/xfree86/drivers/rendition/vloaduc.c b/xc/programs/Xserver/hw/xfree86/drivers/rendition/vloaduc.c index a95cd8770..ec03fa1d0 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/rendition/vloaduc.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/rendition/vloaduc.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/rendition/vloaduc.c,v 1.9 2000/01/18 16:35:52 tsi Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/rendition/vloaduc.c,v 1.10 2000/02/25 21:03:04 dawes Exp $ */ /* * includes */ @@ -10,6 +10,7 @@ #include "vos.h" #include "elf.h" + /* * defines */ @@ -29,8 +30,10 @@ /* * local function prototypes */ -void loadSection2board(ScrnInfoPtr pScreenInfo, int fd, Elf32_Shdr *shdr); -void loadSegment2board(ScrnInfoPtr pScreenInfo, int fd, Elf32_Phdr *phdr); +static void loadSection2board(ScrnInfoPtr pScreenInfo, int fd, + Elf32_Shdr *shdr); +static void loadSegment2board(ScrnInfoPtr pScreenInfo, int fd, + Elf32_Phdr *phdr); static int seek_and_read_hdr(int fd, void *ptr, long int offset, int size, int cnt); static void mmve(ScrnInfoPtr pScreenInfo, vu32 size, vu8 *data, vu32 phys_addr); @@ -49,7 +52,8 @@ static void mmve(ScrnInfoPtr pScreenInfo, vu32 size, vu8 *data, vu32 phys_addr); * * Returns the program's entry point, on error -1; */ -int v_load_ucfile(ScrnInfoPtr pScreenInfo, char *file_name) +int +v_load_ucfile(ScrnInfoPtr pScreenInfo, char *file_name) { /* renditionPtr pRendition = RENDITIONPTR(pScreenInfo); */ @@ -60,7 +64,7 @@ int v_load_ucfile(ScrnInfoPtr pScreenInfo, char *file_name) Elf32_Shdr *pshdr, *orig_pshdr=NULL; Elf32_Ehdr ehdr ; -#ifdef DEBUG +#if 1 /* DEBUG */ ErrorF("RENDITION: Loading microcode %s\n", file_name); #endif @@ -85,7 +89,6 @@ int v_load_ucfile(ScrnInfoPtr pScreenInfo, char *file_name) /* read in the program header(s) */ sz=SW16(ehdr.e_phentsize); num=SW16(ehdr.e_phnum); - if (0!=sz && 0!=num) { orig_pphdr=pphdr=(Elf32_Phdr *)xalloc(sz*num); if (!pphdr) { @@ -155,7 +158,8 @@ int v_load_ucfile(ScrnInfoPtr pScreenInfo, char *file_name) * local functions */ -void loadSection2board(ScrnInfoPtr pScreenInfo, int fd, Elf32_Shdr *shdr) +static void +loadSection2board(ScrnInfoPtr pScreenInfo, int fd, Elf32_Shdr *shdr) { /* renditionPtr pRendition = RENDITIONPTR(pScreenInfo); */ ErrorF("vlib: loadSection2board not implemented yet!\n"); @@ -163,7 +167,8 @@ void loadSection2board(ScrnInfoPtr pScreenInfo, int fd, Elf32_Shdr *shdr) -void loadSegment2board(ScrnInfoPtr pScreenInfo, int fd, Elf32_Phdr *phdr) +static void +loadSegment2board(ScrnInfoPtr pScreenInfo, int fd, Elf32_Phdr *phdr) { /* renditionPtr pRendition = RENDITIONPTR(pScreenInfo); */ vu8 *data; @@ -194,7 +199,8 @@ void loadSegment2board(ScrnInfoPtr pScreenInfo, int fd, Elf32_Phdr *phdr) -static int seek_and_read_hdr(int fd, void *ptr, long int offset, int size, +static int +seek_and_read_hdr(int fd, void *ptr, long int offset, int size, int cnt) { if (lseek(fd, offset, SEEK_SET) != offset) @@ -208,7 +214,8 @@ static int seek_and_read_hdr(int fd, void *ptr, long int offset, int size, -static void mmve(ScrnInfoPtr pScreenInfo, vu32 size, vu8 *data, vu32 phys_addr) +static void +mmve(ScrnInfoPtr pScreenInfo, vu32 size, vu8 *data, vu32 phys_addr) { renditionPtr pRendition = RENDITIONPTR(pScreenInfo); vu8 memend; @@ -226,8 +233,8 @@ static void mmve(ScrnInfoPtr pScreenInfo, vu32 size, vu8 *data, vu32 phys_addr) while (size > 0) { v_write_memory32(vmb, phys_addr, *dataout); - phys_addr+=4; - dataout++; + phys_addr+=4; + dataout++; size-=4; } diff --git a/xc/programs/Xserver/hw/xfree86/drivers/rendition/vmisc.c b/xc/programs/Xserver/hw/xfree86/drivers/rendition/vmisc.c index 774200b9e..ffc3861e7 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/rendition/vmisc.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/rendition/vmisc.c @@ -1,22 +1,35 @@ /* Misc routines used elsewhere in driver */ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/rendition/vmisc.c,v 1.2 1999/11/19 14:59:18 hohndel Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/rendition/vmisc.c,v 1.3 2000/02/25 21:03:05 dawes Exp $ */ #include "rendition.h" #include "vtypes.h" #include "vos.h" #include "vmisc.h" +#undef DEBUG + /* block copy from and to the card */ -void v_bustomem_cpy(vu8 *dst, vu8 *src, vu32 num) +void +v_bustomem_cpy(vu8 *dst, vu8 *src, vu32 num) { int i; + +#ifdef DEBUG + ErrorF ("Rendition: DEBUG v_bustomem_cpy called\n"); +#endif for (i=0; i<num; i++) dst[i] = v_read_memory8(src, i); } -void v_memtobus_cpy(vu8 *dst, vu8 *src, vu32 num) +void +v_memtobus_cpy(vu8 *dst, vu8 *src, vu32 num) { int i; + +#ifdef DEBUG + ErrorF ("Rendition: DEBUG v_memtobus_cpy called\n"); +#endif + for (i=0; i<num; i++) v_write_memory8(dst, i, src[i]); } diff --git a/xc/programs/Xserver/hw/xfree86/drivers/tdfx/Imakefile b/xc/programs/Xserver/hw/xfree86/drivers/tdfx/Imakefile index fe93a600f..4fe4392cb 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/tdfx/Imakefile +++ b/xc/programs/Xserver/hw/xfree86/drivers/tdfx/Imakefile @@ -1,4 +1,4 @@ -XCOMM $XFree86: xc/programs/Xserver/hw/xfree86/drivers/tdfx/Imakefile,v 1.10 2000/02/15 19:19:21 dawes Exp $ +XCOMM $XFree86: xc/programs/Xserver/hw/xfree86/drivers/tdfx/Imakefile,v 1.12 2000/03/03 01:05:43 dawes Exp $ XCOMM XCOMM This is the Imakefile for the TDFX driver. XCOMM @@ -37,7 +37,7 @@ INCLUDES = -I. -I$(XF86COMSRC) -I$(XF86OSSRC) \ -I$(XF86SRC)/xaa -I$(XF86SRC)/rac -I$(XF86SRC)/int10 \ -I$(SERVERSRC)/cfb -I$(XF86SRC)/xaa -I$(XF86SRC)/ramdac \ -I$(XF86SRC)/vgahw -I$(XF86SRC)/ddc -I$(XF86SRC)/i2c \ - -I$(SERVERSRC)/Xext \ + -I$(XF86SRC)/ddc -I$(XF86OSSRC)/vbe -I$(SERVERSRC)/Xext \ -I$(FONTINCSRC) -I$(SERVERSRC)/include -I$(XINCLUDESRC) \ -I$(EXTINCSRC) \ $(DRIINCLUDES) @@ -55,9 +55,10 @@ ObjectModuleTarget(tdfx,$(OBJS)) InstallObjectModule(tdfx,$(MODULEDIR),drivers) -XCOMM To install a man page remove the x and add these lines -XCOMM xCppManTarget(tdfx,) -XCOMM xInstallModuleManPage(tdfx) +#if !defined(XF86DriverSDK) +CppManTarget(tdfx,) +InstallModuleManPage(tdfx) +#endif DependTarget() diff --git a/xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_accel.c b/xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_accel.c index d5cf1cbae..14365b441 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_accel.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_accel.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_accel.c,v 1.8 2000/02/20 04:12:40 tsi Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_accel.c,v 1.9 2000/03/02 16:07:52 martin Exp $ */ /* All drivers should typically include these */ #include "xf86.h" diff --git a/xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_driver.c b/xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_driver.c index 105e1caee..371b3740c 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_driver.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_driver.c @@ -25,7 +25,7 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. **************************************************************************/ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_driver.c,v 1.21 2000/02/21 19:23:09 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_driver.c,v 1.30 2000/03/06 23:54:13 dawes Exp $ */ /* * Authors: @@ -49,7 +49,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include "xf86_OSproc.h" #include "xf86Resources.h" #include "xf86RAC.h" -#include "xf86int10.h" +#include "vbe.h" #include "xf86cmap.h" /* If the driver uses port I/O directly, it needs: */ @@ -254,6 +254,18 @@ static const char *ramdacSymbols[] = { NULL }; +static const char *ddcSymbols[] = { + "xf86PrintEDID", + "xf86DoEDID_DDC1", + NULL +}; + +static const char *vbeSymbols[] = { + "VBEInit", + "vbeDoEDID", + NULL +}; + #ifdef XF86DRI static const char *drmSymbols[] = { "drmAddBufs", @@ -328,7 +340,7 @@ tdfxSetup(pointer module, pointer opts, int *errmaj, int *errmin) * might refer to. */ LoaderRefSymLists(vgahwSymbols, cfbSymbols, xaaSymbols, - xf8_32bppSymbols, ramdacSymbols, + xf8_32bppSymbols, ramdacSymbols, vbeSymbols, #ifdef XF86DRI drmSymbols, driSymbols, #endif @@ -420,9 +432,8 @@ TDFXProbe(DriverPtr drv, int flags) { if (numUsed<=0) return FALSE; if (flags & PROBE_DETECT) - return TRUE; - - for (i=0; i<numUsed; i++) { + foundScreen = TRUE; + else for (i=0; i<numUsed; i++) { ScrnInfoPtr pScrn; /* Allocate new ScrnInfoRec and claim the slot */ @@ -531,6 +542,19 @@ TDFXCountRam(ScrnInfoPtr pScrn) { return memSize*1024; } +extern xf86MonPtr ConfiguredMonitor; + +void +TDFXProbeDDC(ScrnInfoPtr pScrn, int index) +{ + vbeInfoPtr pVbe; + if (xf86LoadSubModule(pScrn, "vbe")) { + pVbe = VBEInit(NULL,index); + ConfiguredMonitor = vbeDoEDID(pVbe); + } +} + + /* * TDFXPreInit -- * @@ -552,14 +576,6 @@ TDFXPreInit(ScrnInfoPtr pScrn, int flags) { TDFXTRACE("TDFXPreInit start\n"); if (pScrn->numEntities != 1) return FALSE; - /* The vgahw module should be loaded here when needed */ - if (!xf86LoadSubModule(pScrn, "vgahw")) return FALSE; - - xf86LoaderReqSymLists(vgahwSymbols, NULL); - - /* Allocate a vgaHWRec */ - if (!vgaHWGetHWRec(pScrn)) return FALSE; - /* Allocate driverPrivate */ if (!TDFXGetRec(pScrn)) { return FALSE; @@ -601,6 +617,11 @@ TDFXPreInit(ScrnInfoPtr pScrn, int flags) { else pScrn->racMemFlags = RAC_FB | RAC_COLORMAP | RAC_CURSOR | RAC_VIEWPORT; + if (flags & PROBE_DETECT) { + TDFXProbeDDC(pScrn, pTDFX->pEnt->index); + return FALSE; + } + /* Set pScrn->monitor */ pScrn->monitor = pScrn->confScreen->monitor; @@ -641,6 +662,14 @@ TDFXPreInit(ScrnInfoPtr pScrn, int flags) { } } + /* The vgahw module should be loaded here when needed */ + if (!xf86LoadSubModule(pScrn, "vgahw")) return FALSE; + + xf86LoaderReqSymLists(vgahwSymbols, NULL); + + /* Allocate a vgaHWRec */ + if (!vgaHWGetHWRec(pScrn)) return FALSE; + /* We use a programamble clock */ pScrn->progClock = TRUE; @@ -861,6 +890,22 @@ TDFXPreInit(ScrnInfoPtr pScrn, int flags) { xf86LoaderReqSymLists(ramdacSymbols, NULL); } + /* Load DDC if needed */ + /* This gives us DDC1 - we should be able to get DDC2B using i2c */ + if (!xf86LoadSubModule(pScrn, "ddc")) { + TDFXFreeRec(pScrn); + return FALSE; + } + xf86LoaderReqSymLists(ddcSymbols, NULL); + + /* Initialize DDC1 if possible */ + if (xf86LoadSubModule(pScrn, "vbe")) { + xf86MonPtr pMon; + pMon = vbeDoEDID(VBEInit(NULL,pTDFX->pEnt->index)); + xf86SetDDCproperties(pScrn,xf86PrintEDID(pMon)); + } + + /* We wont be using the VGA access after the probe */ if (!xf86ReturnOptValBool(TDFXOptions, OPTION_USE_PIO, FALSE)) { resRange vgaio[] = { {ResShrIoBlock,0x3B0,0x3BB}, @@ -1224,7 +1269,8 @@ TDFXInitVGA(ScrnInfoPtr pScrn) tdfxReg->vidcfg = SST_VIDEO_PROCESSOR_EN | SST_CURSOR_X11 | SST_DESKTOP_EN | (pTDFX->cpp-1)<<SST_DESKTOP_PIXEL_FORMAT_SHIFT; - + tdfxReg->vidcfg |= SST_DESKTOP_CLUT_BYPASS; + tdfxReg->stride = pTDFX->stride; tdfxReg->clip0min = tdfxReg->clip1min = 0; @@ -1714,7 +1760,7 @@ TDFXScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) { XF86VideoAdaptorPtr *ptr; int n; - n = xf86XVListGenericAdaptors(&ptr); + n = xf86XVListGenericAdaptors(pScrn,&ptr); if (n) { xf86XVScreenInit(pScreen, ptr, n); } diff --git a/xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_io.c b/xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_io.c index fb0efcbf2..62b883a16 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_io.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_io.c @@ -24,13 +24,12 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. **************************************************************************/ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_io.c,v 1.3 1999/12/03 19:17:36 eich Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/tdfx/tdfx_io.c,v 1.4 2000/02/23 04:47:21 martin Exp $ */ /* * Authors: * Daryll Strauss <daryll@precisioninsight.com> * - * $PI$ */ #include "xf86.h" diff --git a/xc/programs/Xserver/hw/xfree86/drivers/tga/tga_accel.c b/xc/programs/Xserver/hw/xfree86/drivers/tga/tga_accel.c index d392a4297..d875edefc 100644 --- a/xc/programs/Xserver/hw/xfree86/drivers/tga/tga_accel.c +++ b/xc/programs/Xserver/hw/xfree86/drivers/tga/tga_accel.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/tga/tga_accel.c,v 1.9 1999/12/16 02:26:30 robin Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/tga/tga_accel.c,v 1.10 2000/03/06 22:59:31 dawes Exp $ */ /* * Copyright 1996,1997 by Alan Hourihane, Wigan, England. @@ -115,12 +115,14 @@ DEC21030AccelInit(ScreenPtr pScreen) /* ErrorF("XAACreateInfoRec called"); */ - pTga->Bpp = pScrn->depth / 8; /* Bytes per pixel */ - if(pScrn->depth == 8) + if(pScrn->depth == 8) { pTga->depthflag = BPP8PACKED; - else + pTga->Bpp = 1; + } else { pTga->depthflag = BPP24; - + pTga->Bpp = 4; + } + TGA_AccelInfoRec->Flags = PIXMAP_CACHE | LINEAR_FRAMEBUFFER | OFFSCREEN_PIXMAPS; @@ -133,8 +135,8 @@ DEC21030AccelInit(ScreenPtr pScreen) TGA_AccelInfoRec->SubsequentSolidFillRect = TGASubsequentSolidFillRect; /* screen to screen copy */ - if(pScrn->depth == 8) { /* screen to screen copy apparently doesn't work - for 32bpp tga */ + if(pTga->depthflag == BPP8PACKED) { /* screen to screen copy apparently doesn't work + for 32bpp tga */ TGA_AccelInfoRec->ScreenToScreenCopyFlags = NO_TRANSPARENCY; TGA_AccelInfoRec->SetupForScreenToScreenCopy = TGASetupForScreenToScreenCopy; @@ -152,30 +154,34 @@ DEC21030AccelInit(ScreenPtr pScreen) TGASubsequentMono8x8PatternFillRect; /* color expand */ - /* does this work for 32bpp? */ - TGA_AccelInfoRec->ScanlineCPUToScreenColorExpandFillFlags = - BIT_ORDER_IN_BYTE_LSBFIRST; + /* does not work for 32bpp (yet) */ + if(pTga->depthflag == BPP8PACKED) { + TGA_AccelInfoRec->ScanlineCPUToScreenColorExpandFillFlags = + BIT_ORDER_IN_BYTE_LSBFIRST; - TGA_AccelInfoRec->NumScanlineColorExpandBuffers = 1; - pTga->buffers[0] = (CARD32 *)malloc(CE_BUFSIZE); - TGA_AccelInfoRec->ScanlineColorExpandBuffers = - (unsigned char **)pTga->buffers; - TGA_AccelInfoRec->SetupForScanlineCPUToScreenColorExpandFill = - TGASetupForScanlineCPUToScreenColorExpandFill; - TGA_AccelInfoRec->SubsequentScanlineCPUToScreenColorExpandFill = - TGASubsequentScanlineCPUToScreenColorExpandFill; - TGA_AccelInfoRec->SubsequentColorExpandScanline = - TGASubsequentColorExpandScanline; + TGA_AccelInfoRec->NumScanlineColorExpandBuffers = 1; + pTga->buffers[0] = (CARD32 *)malloc(CE_BUFSIZE); + TGA_AccelInfoRec->ScanlineColorExpandBuffers = + (unsigned char **)pTga->buffers; + TGA_AccelInfoRec->SetupForScanlineCPUToScreenColorExpandFill = + TGASetupForScanlineCPUToScreenColorExpandFill; + TGA_AccelInfoRec->SubsequentScanlineCPUToScreenColorExpandFill = + TGASubsequentScanlineCPUToScreenColorExpandFill; + TGA_AccelInfoRec->SubsequentColorExpandScanline = + TGASubsequentColorExpandScanline; + } /* lines */ TGA_AccelInfoRec->PolylinesThinSolid = TGAPolyLines; - TGA_AccelInfoRec->PolySegmentThinSolid = TGAPolySegment; + if(pTga->NoXaaPolySegment == FALSE) + TGA_AccelInfoRec->PolySegmentThinSolid = TGAPolySegment; TGA_AccelInfoRec->PolylinesThinSolidFlags = 0x0; TGA_AccelInfoRec->PolySegmentThinSolidFlags = 0x0; TGA_AccelInfoRec->PolylinesThinDashed = TGAPolyLinesDashed; - TGA_AccelInfoRec->PolySegmentThinDashed = TGAPolySegmentDashed; + if(pTga->NoXaaPolySegment == FALSE) + TGA_AccelInfoRec->PolySegmentThinDashed = TGAPolySegmentDashed; TGA_AccelInfoRec->PolylinesThinDashedFlags = 0x0; TGA_AccelInfoRec->PolySegmentThinDashedFlags = 0x0; TGA_AccelInfoRec->DashedLineFlags = LINE_PATTERN_LSBFIRST_LSBJUSTIFIED; @@ -213,7 +219,7 @@ TGASetupForScanlineCPUToScreenColorExpandFill(ScrnInfoPtr pScrn, TGA_GET_OFFSET(); /* ErrorF("TGASetupForScanlineCPUToScreenColorExpandFill called\n"); */ - if(pScrn->depth == 8) { + if(pTga->depthflag == BPP8PACKED) { fgcolor = (fg | (fg << 8) | (fg << 16) | (fg << 24)); bgcolor = bg | (bg << 8) | (bg << 16) | (bg << 24); pmask = planemask | (planemask << 8) | (planemask << 16) @@ -232,7 +238,7 @@ TGASetupForScanlineCPUToScreenColorExpandFill(ScrnInfoPtr pScrn, pTga->block_or_opaque_p = USE_BLOCK_FILL; TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR0_REG); TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR1_REG); - if(pScrn->depth == 32) { + if(pTga->depthflag == BPP24) { TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR2_REG); TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR3_REG); TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR4_REG); @@ -433,7 +439,7 @@ TGASetupForSolidFill(ScrnInfoPtr pScrn, int color, int rop, TGA_GET_OFFSET(); /* ErrorF("TGASetupForSolidFill called"); */ - if(pScrn->depth == 8) { + if(pTga->depthflag == BPP8PACKED) { fgcolor = color | (color << 8) | (color << 16) | (color << 24); pmask = planemask | (planemask << 8) | (planemask << 16) | (planemask << 24); @@ -448,7 +454,7 @@ TGASetupForSolidFill(ScrnInfoPtr pScrn, int color, int rop, pTga->block_or_opaque_p = USE_BLOCK_FILL; TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR0_REG); TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR1_REG); - if(pScrn->depth == 32) { + if(pTga->depthflag == BPP24) { TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR2_REG); TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR3_REG); TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR4_REG); @@ -867,7 +873,7 @@ TGASetupForMono8x8PatternFill(ScrnInfoPtr pScrn, int patx, int paty, else pTga->block_or_opaque_p = USE_OPAQUE_FILL; - if(pScrn->depth == 8) { + if(pTga->depthflag == BPP8PACKED) { fgcolor = fg | (fg << 8) | (fg << 16) | (fg << 24); bgcolor = bg | (bg << 8) | (bg << 16) | (bg << 24); pmask = planemask | (planemask << 8) | (planemask << 16) | @@ -885,7 +891,7 @@ TGASetupForMono8x8PatternFill(ScrnInfoPtr pScrn, int patx, int paty, /* we can use block fill mode to draw a transparent stipple */ TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR0_REG); TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR1_REG); - if(pScrn->depth == 32) { + if(pTga->depthflag == BPP24) { TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR2_REG); TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR3_REG); TGA_FAST_WRITE_REG(fgcolor, TGA_BLOCK_COLOR4_REG); @@ -934,7 +940,7 @@ TGASubsequentMono8x8PatternFillRect(ScrnInfoPtr pScrn, int patx, int paty, TGA_FAST_WRITE_REG(pTga->current_rop, TGA_RASTEROP_REG); TGA_FAST_WRITE_REG(pTga->current_planemask, TGA_PLANEMASK_REG); - if(pScrn->depth == 8) + if(pTga->depthflag == BPP8PACKED) align = FB_OFFSET(x, y) % 4; else align = x % 4; @@ -1249,7 +1255,7 @@ TGASetupForDashedLine(ScrnInfoPtr pScrn, int fg, int bg, int rop, TGA_GET_OFFSET(); /* ErrorF("TGASetupForDashedLine called\n"); */ - if(pScrn->depth == 8) { + if(pTga->depthflag == BPP8PACKED) { color1 = fg | (fg << 8) | (fg << 16) | (fg << 24); color2 = bg | (bg << 8) | (bg << 16) | (bg << 24); pmask = planemask | (planemask << 8) | (planemask << 16) diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/bin-excl b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/bin-excl deleted file mode 100644 index c007d9590..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/bin-excl +++ /dev/null @@ -1,9 +0,0 @@ -bin/XF86_* -bin/XF98_* -bin/XF86Setup -bin/Xnest -bin/Xprt -bin/Xvfb -bin/X -bin/xfs -bin/xmseconfig diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/bin-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/bin-list deleted file mode 100644 index e9b0775e4..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/bin-list +++ /dev/null @@ -1,29 +0,0 @@ -bin -lib/aout -lib/libICE.so.6 -lib/libICE.so -lib/libPEX5.so.6 -lib/libPEX5.so -lib/libSM.so.6 -lib/libSM.so -lib/libX11.so.6 -lib/libX11.so -lib/libXIE.so.6 -lib/libXIE.so -lib/libXaw.so.6 -lib/libXaw.so -lib/libXext.so.6 -lib/libXext.so -lib/libXi.so.6 -lib/libXi.so -lib/libXmu.so.6 -lib/libXmu.so -lib/libXp.so.6 -lib/libXp.so -lib/libXt.so.6 -lib/libXt.so -lib/libXtst.so.6 -lib/libXtst.so -lib/liboldX.so.6 -lib/liboldX.so -lib/X11/app-defaults diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/dir b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/dir deleted file mode 100644 index 11c5b9da7..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/dir +++ /dev/null @@ -1 +0,0 @@ -usr/X11R6 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/fsrv-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/fsrv-list deleted file mode 100644 index c1f479b23..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/fsrv-list +++ /dev/null @@ -1,3 +0,0 @@ -bin/xfs -lib/X11/fs -man/man1/xfs.1.gz diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/lib-excl b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/lib-excl deleted file mode 100644 index 3572f4206..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/lib-excl +++ /dev/null @@ -1,12 +0,0 @@ -lib/X11/XF86Setup -lib/X11/app-defaults -lib/X11/config -lib/X11/fonts -lib/X11/fs -lib/X11/xdm/GiveConsole -lib/X11/xdm/TakeConsole -lib/X11/xdm/X* -lib/X11/xdm/xdm-* -lib/X11/xinit -lib/X11/doc -lib/X11/XF86Setup diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/lib-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/lib-list deleted file mode 100644 index 9673fea05..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/lib-list +++ /dev/null @@ -1,2 +0,0 @@ -lib/X11 -include/X11/bitmaps diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/man-excl b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/man-excl deleted file mode 100644 index 13ac91d5f..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/man-excl +++ /dev/null @@ -1,3 +0,0 @@ -man/man1/XF86Setup.1.gz -man/man1/xfs.1.gz -man/man1/xmseconfig.1.gz diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/man-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/man-list deleted file mode 100644 index 2a3700c15..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/man-list +++ /dev/null @@ -1 +0,0 @@ -man diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/mod-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/mod-list deleted file mode 100644 index 7054fc153..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/mod-list +++ /dev/null @@ -1 +0,0 @@ -lib/modules diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/nest-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/nest-list deleted file mode 100644 index eff754d76..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/nest-list +++ /dev/null @@ -1 +0,0 @@ -bin/Xnest diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/prog-excl b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/prog-excl deleted file mode 100644 index 113d220ef..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/prog-excl +++ /dev/null @@ -1,5 +0,0 @@ -lib/Server -lib/X11 -lib/lib*.so* -lib/modules -include/X11/bitmaps diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/prog-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/prog-list deleted file mode 100644 index 059b71061..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/prog-list +++ /dev/null @@ -1,3 +0,0 @@ -lib -include -lib/X11/config diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/prt-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/prt-list deleted file mode 100644 index 0646e7927..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/prt-list +++ /dev/null @@ -1 +0,0 @@ -bin/Xprt diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/set-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/set-list deleted file mode 100644 index 3bb030a3f..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/set-list +++ /dev/null @@ -1,5 +0,0 @@ -bin/XF86Setup -bin/xmseconfig -lib/X11/XF86Setup -man/man1/XF86Setup.1.gz -man/man1/xmseconfig.1.gz diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/vfb-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/vfb-list deleted file mode 100644 index e2d161bbc..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/vfb-list +++ /dev/null @@ -1 +0,0 @@ -bin/Xvfb diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/xserv-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/xserv-list deleted file mode 100644 index 0035b6c30..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/xserv-list +++ /dev/null @@ -1 +0,0 @@ -bin/XFree86 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/8514-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/8514-list deleted file mode 100644 index 66f089e22..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/8514-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_8514 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9480-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9480-list deleted file mode 100644 index 8b87b0bb0..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9480-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_NEC480 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9EGC-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9EGC-list deleted file mode 100644 index f6a3d7074..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9EGC-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_EGC diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9GA9-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9GA9-list deleted file mode 100644 index 3a65c75b8..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9GA9-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_GA968 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9GAN-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9GAN-list deleted file mode 100644 index 5649527d6..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9GAN-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_GANBWAP diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9LPW-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9LPW-list deleted file mode 100644 index 1fbadfd30..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9LPW-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_PWLB diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9NKV-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9NKV-list deleted file mode 100644 index 459b09119..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9NKV-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_NKVNEC diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9NS3-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9NS3-list deleted file mode 100644 index 33e814e46..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9NS3-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_NECS3 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9SPW-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9SPW-list deleted file mode 100644 index 60b73a1cd..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9SPW-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_PWSKB diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9TGU-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9TGU-list deleted file mode 100644 index 0d282078d..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9TGU-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_TGUI diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9WEP-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9WEP-list deleted file mode 100644 index 04181bd73..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9WEP-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_WABEP diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9WS-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9WS-list deleted file mode 100644 index 76f479ba6..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9WS-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_WABS diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9WSN-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9WSN-list deleted file mode 100644 index 9d345cc85..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/9WSN-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_WSNA diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/AGX-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/AGX-list deleted file mode 100644 index 6f41acb86..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/AGX-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_AGX diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/I128-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/I128-list deleted file mode 100644 index 2a8ba145b..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/I128-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_I128 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/Ma32-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/Ma32-list deleted file mode 100644 index 12323fb0d..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/Ma32-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach32 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/Ma64-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/Ma64-list deleted file mode 100644 index 7f7501533..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/Ma64-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach64 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/Ma8-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/Ma8-list deleted file mode 100644 index 6a6a6f443..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/Ma8-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach8 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/Mono-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/Mono-list deleted file mode 100644 index 06ef98d26..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/Mono-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mono diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/P9K-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/P9K-list deleted file mode 100644 index be9adab58..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/P9K-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_P9000 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/S3-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/S3-list deleted file mode 100644 index 2ff889fc6..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/S3-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/S3V-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/S3V-list deleted file mode 100644 index 8a7161906..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/S3V-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3V diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/SVGA-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/SVGA-list deleted file mode 100644 index bf3b71150..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/SVGA-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_SVGA diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/VG16-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/VG16-list deleted file mode 100644 index 7d2e6163f..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/VG16-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_VGA16 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/xserv-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/xserv-list index 0035b6c30..334bbd1e4 100644 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/xserv-list +++ b/xc/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD/xserv-list @@ -1 +1,2 @@ bin/XFree86 +bin/X diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Interactive/bin2-excl b/xc/programs/Xserver/hw/xfree86/etc/bindist/Interactive/bin2-excl deleted file mode 100644 index 7e3259a3c..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Interactive/bin2-excl +++ /dev/null @@ -1,13 +0,0 @@ -bin/XF86_* -bin/XF98_* -bin/XF86Setup -bin/Xnest -bin/Xprt -bin/Xvfb -bin/X -bin/xfs -bin/xdm -bin/xmseconfig -bin/*.Xaw3d -bin/*.XawXPM -lib/X11/app-defaults/Chooser diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Interactive/bin2-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Interactive/bin2-list deleted file mode 100644 index 7d6f8f8c3..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Interactive/bin2-list +++ /dev/null @@ -1 +0,0 @@ -lib/X11/app-defaults diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/Ma64-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/Ma64-list deleted file mode 100644 index 7f7501533..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/Ma64-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach64 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/Mono-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/Mono-list deleted file mode 100644 index 06ef98d26..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/Mono-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mono diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/P9K-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/P9K-list deleted file mode 100644 index be9adab58..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/P9K-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_P9000 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/S3-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/S3-list deleted file mode 100644 index 2ff889fc6..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/S3-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/S3V-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/S3V-list deleted file mode 100644 index 8a7161906..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/S3V-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3V diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/SVGA-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/SVGA-list deleted file mode 100644 index bf3b71150..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/SVGA-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_SVGA diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/TGA-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/TGA-list deleted file mode 100644 index 8fa673b86..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/TGA-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_TGA diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/xserv-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/xserv-list index 0035b6c30..334bbd1e4 100644 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/xserv-list +++ b/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-axp/xserv-list @@ -1 +1,2 @@ bin/XFree86 +bin/X diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-m68k/68FB-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-m68k/68FB-list deleted file mode 100644 index 033141848..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Linux-m68k/68FB-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF68_FBDev diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/8514-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/8514-list deleted file mode 100644 index 66f089e22..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/8514-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_8514 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/AGX-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/AGX-list deleted file mode 100644 index 6f41acb86..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/AGX-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_AGX diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/I128-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/I128-list deleted file mode 100644 index 2a8ba145b..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/I128-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_I128 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/Ma32-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/Ma32-list deleted file mode 100644 index 12323fb0d..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/Ma32-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach32 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/Ma64-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/Ma64-list deleted file mode 100644 index 7f7501533..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/Ma64-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach64 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/Ma8-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/Ma8-list deleted file mode 100644 index 6a6a6f443..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/Ma8-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach8 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/Mono-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/Mono-list deleted file mode 100644 index 06ef98d26..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/Mono-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mono diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/P9K-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/P9K-list deleted file mode 100644 index be9adab58..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/P9K-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_P9000 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/S3-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/S3-list deleted file mode 100644 index 2ff889fc6..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/S3-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/S3V-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/S3V-list deleted file mode 100644 index 8a7161906..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/S3V-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3V diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/SVGA-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/SVGA-list deleted file mode 100644 index bf3b71150..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/SVGA-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_SVGA diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/VG16-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/VG16-list deleted file mode 100644 index 7d2e6163f..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/LynxOS/VG16-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_VGA16 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/8514-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/8514-list deleted file mode 100644 index 66f089e22..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/8514-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_8514 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9480-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9480-list deleted file mode 100644 index 8b87b0bb0..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9480-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_NEC480 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9EGC-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9EGC-list deleted file mode 100644 index f6a3d7074..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9EGC-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_EGC diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9GA9-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9GA9-list deleted file mode 100644 index 3a65c75b8..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9GA9-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_GA968 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9GAN-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9GAN-list deleted file mode 100644 index 5649527d6..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9GAN-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_GANBWAP diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9LPW-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9LPW-list deleted file mode 100644 index 1fbadfd30..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9LPW-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_PWLB diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9NKV-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9NKV-list deleted file mode 100644 index 459b09119..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9NKV-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_NKVNEC diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9NS3-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9NS3-list deleted file mode 100644 index 33e814e46..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9NS3-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_NECS3 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9SPW-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9SPW-list deleted file mode 100644 index 60b73a1cd..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9SPW-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_PWSKB diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9TGU-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9TGU-list deleted file mode 100644 index 0d282078d..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9TGU-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_TGUI diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9WEP-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9WEP-list deleted file mode 100644 index 04181bd73..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9WEP-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_WABEP diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9WS-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9WS-list deleted file mode 100644 index 76f479ba6..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9WS-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_WABS diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9WSN-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9WSN-list deleted file mode 100644 index 9d345cc85..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/9WSN-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF98_WSNA diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/AGX-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/AGX-list deleted file mode 100644 index 6f41acb86..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/AGX-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_AGX diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/I128-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/I128-list deleted file mode 100644 index 2a8ba145b..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/I128-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_I128 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/Ma32-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/Ma32-list deleted file mode 100644 index 12323fb0d..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/Ma32-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach32 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/Ma64-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/Ma64-list deleted file mode 100644 index 7f7501533..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/Ma64-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach64 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/Ma8-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/Ma8-list deleted file mode 100644 index 6a6a6f443..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/Ma8-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach8 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/Mono-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/Mono-list deleted file mode 100644 index 06ef98d26..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/Mono-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mono diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/P9K-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/P9K-list deleted file mode 100644 index be9adab58..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/P9K-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_P9000 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/S3-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/S3-list deleted file mode 100644 index 2ff889fc6..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/S3-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/S3V-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/S3V-list deleted file mode 100644 index 8a7161906..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/S3V-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3V diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/SVGA-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/SVGA-list deleted file mode 100644 index bf3b71150..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/SVGA-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_SVGA diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/VG16-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/VG16-list deleted file mode 100644 index 7d2e6163f..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/VG16-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_VGA16 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/xserv-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/xserv-list index 0035b6c30..334bbd1e4 100644 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/xserv-list +++ b/xc/programs/Xserver/hw/xfree86/etc/bindist/NetBSD-ix86/xserv-list @@ -1 +1,2 @@ bin/XFree86 +bin/X diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/8514-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/8514-list deleted file mode 100644 index 66f089e22..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/8514-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_8514 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/AGX-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/AGX-list deleted file mode 100644 index 6f41acb86..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/AGX-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_AGX diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/I128-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/I128-list deleted file mode 100644 index 2a8ba145b..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/I128-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_I128 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/Ma32-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/Ma32-list deleted file mode 100644 index 12323fb0d..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/Ma32-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach32 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/Ma64-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/Ma64-list deleted file mode 100644 index 7f7501533..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/Ma64-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach64 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/Ma8-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/Ma8-list deleted file mode 100644 index 6a6a6f443..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/Ma8-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach8 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/Mono-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/Mono-list deleted file mode 100644 index 06ef98d26..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/Mono-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mono diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/P9K-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/P9K-list deleted file mode 100644 index be9adab58..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/P9K-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_P9000 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/S3-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/S3-list deleted file mode 100644 index 2ff889fc6..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/S3-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/S3V-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/S3V-list deleted file mode 100644 index 8a7161906..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/S3V-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3V diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/SVGA-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/SVGA-list deleted file mode 100644 index bf3b71150..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/SVGA-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_SVGA diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/VG16-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/VG16-list deleted file mode 100644 index 7d2e6163f..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/VG16-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_VGA16 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/xserv-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/xserv-list index 0035b6c30..334bbd1e4 100644 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/xserv-list +++ b/xc/programs/Xserver/hw/xfree86/etc/bindist/OpenBSD-ix86/xserv-list @@ -1 +1,2 @@ bin/XFree86 +bin/X diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/8514-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/8514-list deleted file mode 100644 index 66f089e22..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/8514-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_8514 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/AGX-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/AGX-list deleted file mode 100644 index 6f41acb86..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/AGX-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_AGX diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/I128-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/I128-list deleted file mode 100644 index 2a8ba145b..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/I128-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_I128 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/Ma32-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/Ma32-list deleted file mode 100644 index 12323fb0d..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/Ma32-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach32 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/Ma64-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/Ma64-list deleted file mode 100644 index 7f7501533..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/Ma64-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach64 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/Ma8-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/Ma8-list deleted file mode 100644 index 6a6a6f443..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/Ma8-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach8 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/Mono-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/Mono-list deleted file mode 100644 index 06ef98d26..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/Mono-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mono diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/P9K-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/P9K-list deleted file mode 100644 index be9adab58..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/P9K-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_P9000 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/S3-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/S3-list deleted file mode 100644 index 2ff889fc6..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/S3-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/S3V-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/S3V-list deleted file mode 100644 index 8a7161906..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/S3V-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3V diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/SVGA-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/SVGA-list deleted file mode 100644 index bf3b71150..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/SVGA-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_SVGA diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/VG16-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/VG16-list deleted file mode 100644 index 7d2e6163f..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/VG16-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_VGA16 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/xserv-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/xserv-list index 0035b6c30..334bbd1e4 100644 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/xserv-list +++ b/xc/programs/Xserver/hw/xfree86/etc/bindist/SVR4.0/xserv-list @@ -1 +1,2 @@ bin/XFree86 +bin/X diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/8514-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/8514-list deleted file mode 100644 index 66f089e22..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/8514-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_8514 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/AGX-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/AGX-list deleted file mode 100644 index 6f41acb86..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/AGX-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_AGX diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/I128-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/I128-list deleted file mode 100644 index 2a8ba145b..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/I128-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_I128 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/Ma32-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/Ma32-list deleted file mode 100644 index 12323fb0d..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/Ma32-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach32 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/Ma64-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/Ma64-list deleted file mode 100644 index 7f7501533..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/Ma64-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach64 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/Ma8-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/Ma8-list deleted file mode 100644 index 6a6a6f443..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/Ma8-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach8 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/Mono-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/Mono-list deleted file mode 100644 index 06ef98d26..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/Mono-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mono diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/P9K-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/P9K-list deleted file mode 100644 index be9adab58..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/P9K-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_P9000 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/S3-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/S3-list deleted file mode 100644 index 2ff889fc6..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/S3-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/S3V-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/S3V-list deleted file mode 100644 index 8a7161906..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/S3V-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3V diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/SVGA-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/SVGA-list deleted file mode 100644 index bf3b71150..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/SVGA-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_SVGA diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/VG16-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/VG16-list deleted file mode 100644 index 7d2e6163f..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/VG16-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_VGA16 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/xserv-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/xserv-list index 0035b6c30..334bbd1e4 100644 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/xserv-list +++ b/xc/programs/Xserver/hw/xfree86/etc/bindist/Solaris/xserv-list @@ -1 +1,2 @@ bin/XFree86 +bin/X diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/8514-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/8514-list deleted file mode 100644 index 66f089e22..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/8514-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_8514 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/AGX-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/AGX-list deleted file mode 100644 index 6f41acb86..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/AGX-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_AGX diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/I128-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/I128-list deleted file mode 100644 index 2a8ba145b..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/I128-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_I128 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/Ma32-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/Ma32-list deleted file mode 100644 index 12323fb0d..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/Ma32-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach32 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/Ma64-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/Ma64-list deleted file mode 100644 index 7f7501533..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/Ma64-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach64 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/Ma8-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/Ma8-list deleted file mode 100644 index 6a6a6f443..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/Ma8-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mach8 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/Mono-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/Mono-list deleted file mode 100644 index 06ef98d26..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/Mono-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_Mono diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/P9K-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/P9K-list deleted file mode 100644 index be9adab58..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/P9K-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_P9000 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/S3-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/S3-list deleted file mode 100644 index 2ff889fc6..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/S3-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/S3V-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/S3V-list deleted file mode 100644 index 8a7161906..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/S3V-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_S3V diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/SVGA-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/SVGA-list deleted file mode 100644 index bf3b71150..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/SVGA-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_SVGA diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/VG16-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/VG16-list deleted file mode 100644 index 7d2e6163f..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/VG16-list +++ /dev/null @@ -1 +0,0 @@ -bin/XF86_VGA16 diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/xserv-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/xserv-list index 0035b6c30..334bbd1e4 100644 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/xserv-list +++ b/xc/programs/Xserver/hw/xfree86/etc/bindist/UnixWare/xserv-list @@ -1 +1,2 @@ bin/XFree86 +bin/X diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/common/cfg-excl b/xc/programs/Xserver/hw/xfree86/etc/bindist/common/cfg-excl deleted file mode 100644 index fdc9e7e90..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/common/cfg-excl +++ /dev/null @@ -1,2 +0,0 @@ -lib/X11/xdm/lib* -lib/X11/xdm/chooser* diff --git a/xc/programs/Xserver/hw/xfree86/etc/bindist/common/cfg-list b/xc/programs/Xserver/hw/xfree86/etc/bindist/common/cfg-list deleted file mode 100644 index 16c476a83..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/bindist/common/cfg-list +++ /dev/null @@ -1,2 +0,0 @@ -lib/X11/xdm -lib/X11/xinit/xinitrc diff --git a/xc/programs/Xserver/hw/xfree86/etc/et4000clock.c b/xc/programs/Xserver/hw/xfree86/etc/et4000clock.c deleted file mode 100644 index 832bebf32..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/et4000clock.c +++ /dev/null @@ -1,134 +0,0 @@ -/* - * $XFree86: xc/programs/Xserver/hw/xfree86/etc/et4000clock.c,v 3.6 1999/05/07 02:56:17 dawes Exp $ - * - * This is a sample clock setting program. It will not work with all - * ET4000 cards. To work correctly the clocks line in XF86Config must - * have the values in the correct order. - * - * usage: et4000clock freq index - * - * This program ignores 'freq' and relies entirely on 'index' - * - * David Dawes <dawes@xfree86.org> - * 19 December 1992 - */ -/* $XConsortium: et4000clock.c /main/7 1996/10/25 11:37:41 kaleb $ */ - -#include <stdio.h> - -/* The following inlines are from compiler.h in the XFree86 source dist */ - -#if defined(CSRG_BASED) || defined(MACH) || defined(MACH386) || defined(linux) -#define GCCUSESGAS -#endif - -#ifdef __GNUC__ -#ifdef GCCUSESGAS - -static __inline__ void -outb(port, val) -short port; -char val; -{ - __asm__ __volatile__("outb %0,%1" : :"a" (val), "d" (port)); -} - -static __inline__ void -outw(port, val) -short port; -short val; -{ - __asm__ __volatile__("outw %0,%1" : :"a" (val), "d" (port)); -} - -static __inline__ unsigned int -inb(port) -short port; -{ - unsigned char ret; - __asm__ __volatile__("inb %1,%0" : - "=a" (ret) : - "d" (port)); - return ret; -} - -#else /* !GCCUSESGAS */ - -static __inline__ void -outb(port, val) - short port; - char val; -{ - __asm__ __volatile__("out%B0 (%1)" : :"a" (val), "d" (port)); -} - -static __inline__ void -outw(port, val) - short port; - short val; -{ - __asm__ __volatile__("out%W0 (%1)" : :"a" (val), "d" (port)); -} - -static __inline__ unsigned int -inb(port) - short port; -{ - unsigned int ret; - __asm__ __volatile__("in%B0 (%1)" : - "=a" (ret) : - "d" (port)); - return ret; -} - -#endif /* GCCUSESGAS */ -#else /* !__GNUC__ */ - -#if defined(__STDC__) && (__STDC__ == 1) -#define asm __asm -#endif - -#ifdef SVR4 -#include <sys/types.h> -#ifndef __USLC__ -#define __USLC__ -#endif -#endif - -#ifndef SCO325 -# include <sys/inline.h> -#else -# include "../common/scoasm.h" -#endif -#endif /* __GNUC__ */ - - -/* Now, the actual program */ - -main(argc, argv) - -int argc; -char *argv[]; - -{ - int index, vgaIOBase; - unsigned char tmp; - - if (argc < 3) - { - fprintf(stderr, "usage: %s freq index\n", argv[0]); - exit(1); - } - index = atoi(argv[2]); - if (index < 0 || index > 7) - { - fprintf(stderr, "%s: Index %d out of range\n", argv[0], index); - exit(2); - } - tmp = inb(0x3CC); - vgaIOBase = (tmp & 0x01) ? 0x3D0 : 0x3B0; - outb(0x3C2, (tmp & 0xF3) | ((index & 0x03) << 2)); - outw(vgaIOBase + 4, 0x34 | ((index & 0x04) << 7)); - fprintf(stderr, "%s: clock set to number %d\n", argv[0], index); - exit(0); -} diff --git a/xc/programs/Xserver/hw/xfree86/etc/postinst.sh b/xc/programs/Xserver/hw/xfree86/etc/postinst.sh deleted file mode 100644 index a6836b6ce..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/postinst.sh +++ /dev/null @@ -1,141 +0,0 @@ -#!/bin/sh - -# $XFree86: xc/programs/Xserver/hw/xfree86/etc/postinst.sh,v 3.15 1997/05/22 14:22:26 dawes Exp $ -# -# postinst.sh (for XFree86 3.2A) -# -# This script should be run after installing a new version of XFree86. -# - -RUNDIR=/usr/X11R6 - -if [ ! -d $RUNDIR/. ]; then - echo $RUNDIR does not exist - exit 1 -fi - -# Since the misc fonts are distributed in two parts, make sure that the -# fonts.dir file is correct if only one part has been installed. -if [ -d $RUNDIR/lib/X11/fonts/misc ]; then - echo "" - echo "Updating the fonts.dir file in $RUNDIR/lib/X11/fonts/misc" - echo "This might take a while ..." - $RUNDIR/bin/mkfontdir $RUNDIR/lib/X11/fonts/misc -fi - -# Check if the system has a termcap file -TERMCAP1DIR=/usr/share -TERMCAP2=/etc/termcap -if [ -d $TERMCAP1DIR ]; then - TERMCAP1=`find $TERMCAP1DIR -type f -name termcap -print 2> /dev/null` - if [ x"$TERMCAP1" != x ]; then - TERMCAPFILE="$TERMCAP1" - fi -fi -if [ x"$TERMCAPFILE" = x ]; then - if [ -f $TERMCAP2 ]; then - TERMCAPFILE="$TERMCAP2" - fi -fi -if [ x"$TERMCAPFILE" != x ]; then - echo "" - echo "You appear to have a termcap file: $TERMCAPFILE" - echo "This should be edited manually to replace the xterm entries" - echo "with those in $RUNDIR/lib/X11/etc/xterm.termcap" - echo "" - echo "Note: the new xterm entries are required to take full advantage" - echo "of new features, but they may cause problems when used with" - echo "older versions of xterm. A terminal type 'xterm-r6' is included" - echo "for compatibility with the standard X11R6 version of xterm." -fi - -# Check for terminfo, and update the xterm entry -TINFODIR=/usr/lib/terminfo -OLDTINFO=" \ - x/xterm \ - x/xterms \ - x/xterm-24 \ - x/xterm-vi \ - x/xterm-65 \ - x/xterm-bold \ - x/xtermm \ - x/xterm-boldso \ - x/xterm-ic \ - x/xterm-r6 \ - x/xterm-old \ - x/xterm-r5 \ - v/vs100" - -if [ -d $TINFODIR ]; then - echo "" - echo "You appear to have a terminfo directory: $TINFODIR" - echo "New xterm terminfo entries can be installed now." - echo "" - echo "Note: the new xterm entries are required to take full advantage" - echo "of new features, but they may cause problems when used with" - echo "older versions of xterm. A terminal type 'xterm-r6' is included" - echo "for compatibility with the standard X11R6 version of xterm." - echo "" - echo "Do you wish to have the new xterm terminfo entries installed now (y/n)?" - read Resp - case "$Resp" in - [yY]*) - echo "" - for t in $OLDTINFO; do - if [ -f $TINFODIR/$t ]; then - echo "Moving old terminfo file $TINFODIR/$t to $TINFODIR/$t.bak" - rm -f $TINFODIR/$t.bak - mv -f $TINFODIR/$t $TINFODIR/$t.bak - fi - done - echo "" - echo "Installing new terminfo entries for xterm." - echo "" - echo "On some systems you may get warnings from tic about 'meml'" - echo "and 'memu'. These warnings can safely be ignored." - echo "" - tic /usr/X11R6/lib/X11/etc/xterm.terminfo - ;; - *) - echo "" - echo "Not installing new terminfo entries for xterm." - echo "They can be installed later by running:" - echo "" - echo " tic /usr/X11R6/lib/X11/etc/xterm.terminfo" - ;; - esac -fi - -if [ -f /usr/X11R6/bin/rstartd ]; then - echo "" - echo "If you are going to use rstart and /usr/X11R6/bin isn't in the" - echo "default path for commands run remotely via rsh, you will need" - echo "a link to rstartd installed in /usr/bin." - echo "" - echo "Do you wish to have this link installed (y/n)?" - read Resp - case "$Resp" in - [yY]*) - echo "Creating link from /usr/X11R6/bin/rstartd to /usr/bin/rstartd" - rm -f /usr/bin/rstartd - ln -s /usr/X11R6/bin/rstartd /usr/bin/rstartd - ;; - esac -fi - -case `uname` in - FreeBSD|NetBSD|OpenBSD) - echo "" - echo "Running ldconfig" - /sbin/ldconfig -m /usr/X11R6/lib - ;; - Linux) - echo "" - echo "You may need to reboot (or run ldconfig) before the" - echo "newly installed shared libraries can be used." - echo "Some releases of Linux don't run ldconfig automatically" - echo "at boot time, so you may need to run it manually." - ;; -esac - -exit 0 diff --git a/xc/programs/Xserver/hw/xfree86/etc/preinst.sh b/xc/programs/Xserver/hw/xfree86/etc/preinst.sh deleted file mode 100644 index 0bbae04f2..000000000 --- a/xc/programs/Xserver/hw/xfree86/etc/preinst.sh +++ /dev/null @@ -1,141 +0,0 @@ -#!/bin/sh - -# $XFree86: xc/programs/Xserver/hw/xfree86/etc/preinst.sh,v 3.10 1997/05/24 13:46:35 dawes Exp $ -# -# preinst.sh (for XFree86 3.2A) -# -# This script should be run before installing a new version. -# -# It removes parts of an existing installation that can cause problems -# when extracting the new version. This includes symbolic links to old -# beta versions, shared lib symlinks, and old files. -# -# $XConsortium: preinst.sh /main/5 1996/10/28 05:43:40 kaleb $ -# - -RUNDIR=/usr/X11R6 -LIBLIST=" \ - libICE.so \ - libPEX5.so \ - libSM.so \ - libX11.so \ - libXIE.so \ - libXaw.so \ - libXext.so \ - libXi.so \ - libXmu.so \ - libXp.so \ - libXt.so \ - libXtst.so \ - liboldX.so \ - libICE.so.6 \ - libPEX5.so.6 \ - libSM.so.6 \ - libX11.so.6 \ - libXIE.so.6 \ - libXaw.so.6 \ - libXext.so.6 \ - libXi.so.6 \ - libXmu.so.6 \ - libXp.so.6 \ - libXt.so.6 \ - libXtst.so.6 \ - liboldX.so.6 \ - " - -OLDFILES=" \ - lib/X11/doc/LbxproxyOnly \ - lib/X11/xkb/keycodes/sgi \ - lib/X11/xkb/symbols/de_nodead \ - " - -# First, do some checks for Linux/ELF - -if [ "`uname`" = Linux ]; then - if file -L /bin/sh | grep ELF >/dev/null 2>&1; then - echo "" - echo "You appear to have an ELF system." - echo "Make sure you are installing the ELF binary dist" - # Check ldconfig - LDSO=`/sbin/ldconfig -v -n | awk '{ print $3 }'` - LDSOMIN=`echo $LDSO | awk -F. '{ print $3 }'` - LDSOMID=`echo $LDSO | awk -F. '{ print $2 }'` - LDSOMAJ=`echo $LDSO | awk -F. '{ print $1 }'` - if [ "$LDSOMAJ" -gt 1 ]; then - : OK - else - if [ "$LDSOMID" -gt 7 ]; then - : OK - else - if [ "$LDSOMIN" -ge 14 ]; then - : OK - else - echo "" - echo "Before continuing you will need to get a current version of ld.so." - echo "Version 1.7.14 or newer will do." - NEEDSOMETHING=YES - fi - fi - fi - else - case "`arch`" in - i*86) - echo "" - echo "You appear to have an a.out system." - echo "a.out binaries are not available for this release" - exit 1 - ;; - esac - fi -fi - -if [ X"$NEEDSOMETHING" != X ]; then - echo "" - echo "When you've made the required updates, re-run this script" - echo "before continuing with the installation" - exit 1 -fi - - -# If there is no previous installation, there is nothing more to do - -if [ ! -d $RUNDIR/. ]; then - echo "" - echo Done - exit 0 -fi - -echo "" -echo "You are strongly advised to backup your /usr/X11R6 directory before" -echo "proceeding with this installation. This installation will overwrite" -echo "existing files." -echo "" -echo "Do you want to continue? (y/n) " -read response -case "$response" in - [yY]*) - ;; - *) - echo Aborting - exit 1 - ;; -esac - -for i in $LIBLIST; do - if [ -h $RUNDIR/lib/$i ]; then - echo Removing old library link $RUNDIR/lib/$i - rm -f $RUNDIR/lib/$i - fi -done - -for i in $OLDFILES; do - if [ -f $RUNDIR/$i ]; then - echo Removing old file $RUNDIR/$i - rm -f $RUNDIR/$i - fi -done - -echo "" -echo Done - -exit 0 diff --git a/xc/programs/Xserver/hw/xfree86/loader/xf86sym.c b/xc/programs/Xserver/hw/xfree86/loader/xf86sym.c index 6048f2c1c..d91457078 100644 --- a/xc/programs/Xserver/hw/xfree86/loader/xf86sym.c +++ b/xc/programs/Xserver/hw/xfree86/loader/xf86sym.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/loader/xf86sym.c,v 1.131 2000/02/21 19:23:14 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/loader/xf86sym.c,v 1.134 2000/03/01 16:01:30 tsi Exp $ */ /* * @@ -52,6 +52,9 @@ #include "xf86_ansic.h" #include "xisb.h" #include "xf86Priv.h" +#include "vbe.h" + +extern xf86MonPtr ConfiguredMonitor; /* XXX Should get all of these from elsewhere */ #if defined (PowerMAX_OS) @@ -284,6 +287,9 @@ LOOKUP xfree86LookupTab[] = { #ifdef async SYMFUNC(xf86QueueAsyncEvent) #endif + + /* xf86Configure.c */ + SYMFUNC(xf86AddDeviceToConfigure) /* xf86Cursor.c XXX not all of these should be exported */ SYMFUNC(xf86LockZoom) @@ -472,8 +478,9 @@ LOOKUP xfree86LookupTab[] = { /* xf86xv.c */ SYMFUNC(xf86XVScreenInit) - SYMFUNC(xf86XVRegisterGenericAdaptor) + SYMFUNC(xf86XVRegisterGenericAdaptorDriver) SYMFUNC(xf86XVListGenericAdaptors) + SYMFUNC(xf86XVRegisterOffscreenImages) /* xf86VidMode.c */ SYMFUNC(VidModeExtensionInit) @@ -931,6 +938,9 @@ LOOKUP xfree86LookupTab[] = { /* Globals from xf86Globals.c and xf86Priv.h */ SYMVAR(xf86ConfigDRI) + /* Globals from xf86Configure.c */ + SYMVAR(ConfiguredMonitor) + /* Pci.c */ SYMVAR(pciNumBuses) diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/Imakefile b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/Imakefile index 5399048fc..96388450b 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/Imakefile +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/Imakefile @@ -1,5 +1,4 @@ -XCOMM $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/Imakefile,v 1.4 1999/09/25 14:37:49 dawes Exp $ -XCOMM $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/Imakefile,v 1.7 1999/09/14 19:55:15 faith Exp $ +XCOMM $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/Imakefile,v 1.5 2000/02/23 04:47:22 martin Exp $ #define IHaveModules #include <Server.tmpl> diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Imakefile b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Imakefile index e802cf5ac..7a5fea61c 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Imakefile +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Imakefile @@ -1,5 +1,4 @@ -XCOMM $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Imakefile,v 1.1 1999/09/25 14:37:56 dawes Exp $ -XCOMM $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Imakefile,v 1.8 1999/07/02 17:46:30 faith Exp $ +XCOMM $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Imakefile,v 1.2 2000/02/23 04:47:24 martin Exp $ #include <Server.tmpl> diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Makefile.linux b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Makefile.linux index 0f14540d9..8a41f880b 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Makefile.linux +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Makefile.linux @@ -24,8 +24,7 @@ # ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. # -# $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/generic/Makefile.linux,v 1.23 1999/07/02 17:46:30 faith Exp $ -# $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Makefile.linux,v 1.5 2000/02/14 06:27:25 martin Exp $ +# $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Makefile.linux,v 1.6 2000/02/23 04:47:25 martin Exp $ # .SUFFIXES: diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/auth.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/auth.c index 865681956..0e3b1c565 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/auth.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/auth.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/auth.c,v 1.4 1999/08/30 13:05:00 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/auth.c,v 1.1 1999/09/25 14:37:57 dawes Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/auth.c,v 1.2 2000/02/23 04:47:25 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/bufs.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/bufs.c index 289868d31..85244c7dc 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/bufs.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/bufs.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/bufs.c,v 1.8 1999/08/30 13:05:00 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/bufs.c,v 1.4 2000/02/14 06:27:25 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/bufs.c,v 1.5 2000/02/23 04:47:25 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/context.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/context.c index d7f8bdf2b..fdf8fd9f1 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/context.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/context.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/context.c,v 1.5 1999/08/30 13:05:00 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/context.c,v 1.1 1999/09/25 14:37:58 dawes Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/context.c,v 1.2 2000/02/23 04:47:26 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/dma.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/dma.c index 2efeba351..8291e52e4 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/dma.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/dma.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/dma.c,v 1.7 1999/09/16 16:56:18 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/dma.c,v 1.4 2000/02/14 06:27:26 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/dma.c,v 1.5 2000/02/23 04:47:26 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drawable.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drawable.c index c26953c1d..c7acecb97 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drawable.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drawable.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drawable.c,v 1.3 1999/08/30 13:05:00 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drawable.c,v 1.1 1999/09/25 14:37:58 dawes Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drawable.c,v 1.2 2000/02/23 04:47:26 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm.h b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm.h index 7488a315e..7b8e88265 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm.h +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm.h @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm.h,v 1.46 1999/08/20 20:00:53 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm.h,v 1.4 2000/02/14 06:27:26 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm.h,v 1.5 2000/02/23 04:47:26 martin Exp $ * * Acknowledgements: * Dec 1999, Richard Henderson <rth@twiddle.net>, move to generic cmpxchg. diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmP.h b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmP.h index 25c35425a..312fba36f 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmP.h +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmP.h @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmP.h,v 1.58 1999/08/30 13:05:00 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmP.h,v 1.5 2000/02/14 06:27:26 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmP.h,v 1.6 2000/02/23 04:47:27 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmstat.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmstat.c index a0aac6752..8fe6f7072 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmstat.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmstat.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmstat.c,v 1.28 1999/08/04 18:12:11 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmstat.c,v 1.5 2000/02/14 06:27:27 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmstat.c,v 1.6 2000/02/23 04:47:27 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/fops.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/fops.c index ceef1d8ca..2a064e5df 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/fops.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/fops.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/fops.c,v 1.3 1999/08/20 15:36:45 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/fops.c,v 1.5 2000/02/14 06:27:27 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/fops.c,v 1.6 2000/02/23 04:47:27 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_dma.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_dma.c index 3b1592180..eec0f8592 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_dma.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_dma.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_dma.c,v 1.9 1999/09/16 16:56:18 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_dma.c,v 1.1 1999/09/25 14:38:00 dawes Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_dma.c,v 1.2 2000/02/23 04:47:28 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.c index 4e1e30e15..ce970835a 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.c,v 1.17 1999/08/30 13:05:00 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.c,v 1.3 2000/01/20 07:25:35 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.c,v 1.4 2000/02/23 04:47:28 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.h b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.h index 15e77dca9..d78a13eb7 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.h +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.h @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.h,v 1.4 1999/08/30 13:05:00 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.h,v 1.1 1999/09/25 14:38:00 dawes Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/gamma_drv.h,v 1.2 2000/02/23 04:47:28 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/init.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/init.c index 340ba8f5a..25c0aed22 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/init.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/init.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/init.c,v 1.3 1999/08/20 15:07:01 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/init.c,v 1.1 1999/09/25 14:38:01 dawes Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/init.c,v 1.2 2000/02/23 04:47:29 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/ioctl.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/ioctl.c index 886ef661c..8edfb4374 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/ioctl.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/ioctl.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/ioctl.c,v 1.3 1999/08/30 13:05:00 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/ioctl.c,v 1.1 1999/09/25 14:38:01 dawes Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/ioctl.c,v 1.2 2000/02/23 04:47:29 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lists.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lists.c index 78d217144..af8f6150a 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lists.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lists.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lists.c,v 1.3 1999/08/20 15:07:02 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lists.c,v 1.4 2000/02/14 06:27:27 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lists.c,v 1.6 2000/02/23 04:56:42 martin Exp $ * */ @@ -154,7 +153,7 @@ int drm_freelist_put(drm_device_t *dev, drm_freelist_t *bl, drm_buf_t *buf) buf->list = DRM_LIST_FREE; do { old = bl->next; - buf->next = old; + buf->next = old; prev = cmpxchg(&bl->next, old, buf); if (++count > DRM_LOOPING_LIMIT) { DRM_ERROR("Looping\n"); diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lock.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lock.c index ae41526f1..adf27ab5d 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lock.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lock.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lock.c,v 1.5 1999/08/30 13:05:00 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lock.c,v 1.4 2000/02/14 06:27:27 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/lock.c,v 1.5 2000/02/23 04:47:29 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/memory.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/memory.c index 4ba911f34..a8a81abd8 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/memory.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/memory.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/memory.c,v 1.4 1999/08/20 20:00:53 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/memory.c,v 1.4 2000/02/14 06:27:28 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/memory.c,v 1.5 2000/02/23 04:47:30 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/proc.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/proc.c index ec0ebeeb9..54aba58c4 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/proc.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/proc.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/proc.c,v 1.4 1999/08/20 15:36:46 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/proc.c,v 1.5 2000/02/14 06:27:28 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/proc.c,v 1.6 2000/02/23 04:47:30 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_context.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_context.c index 0c3c541d0..842d6f5d5 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_context.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_context.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI$ - * $XFree86$ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_context.c,v 1.2 2000/02/23 04:47:30 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_drv.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_drv.c index 61c917eb4..57c1c719d 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_drv.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_drv.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI$ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_drv.c,v 1.2 2000/01/20 07:25:36 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_drv.c,v 1.3 2000/02/23 04:47:31 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_drv.h b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_drv.h index bdff05ee1..3866010a8 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_drv.h +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_drv.h @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI$ - * $XFree86$ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/tdfx_drv.h,v 1.2 2000/02/23 04:47:31 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/vm.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/vm.c index 5c272eb6c..85470ac52 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/vm.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/vm.c @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/vm.c,v 1.7 1999/08/21 02:48:34 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/vm.c,v 1.4 2000/02/14 06:27:28 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/vm.c,v 1.5 2000/02/23 04:47:31 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/xf86drm.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/xf86drm.c index 25423009a..3b0f98acd 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/xf86drm.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/xf86drm.c @@ -24,7 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/xf86drm.c,v 1.9 2000/02/14 06:27:24 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/xf86drm.c,v 1.10 2000/02/23 04:47:23 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/int10/linux.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/int10/linux.c index b4a122772..3e6f39685 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/int10/linux.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/int10/linux.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/int10/linux.c,v 1.7 2000/02/08 17:19:23 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/int10/linux.c,v 1.8 2000/02/29 03:09:26 dawes Exp $ */ /* * linux specific part of the int10 module * Copyright 1999 Egbert Eich @@ -419,9 +419,21 @@ vm86_rep(struct vm86_struct *ptr) { int __res; - __asm__ __volatile__("int $0x80\n" +#ifdef __PIC__ + /* When compiling with -fPIC, we can't use asm constraint "b" because + %ebx is already taken by gcc. */ + __asm__ __volatile__("pushl %%ebx\n\t" + "movl %2,%%ebx\n\t" + "movl %1,%%eax\n\t" + "int $0x80\n\t" + "popl %%ebx" + :"=a" (__res) + :"n" ((int)113), "r" ((struct vm86_struct *)ptr)); +#else + __asm__ __volatile__("int $0x80" :"=a" (__res):"a" ((int)113), "b" ((struct vm86_struct *)ptr)); +#endif if ((__res) < 0) { errno = -__res; diff --git a/xc/programs/Xserver/hw/xfree86/os-support/linux/lnxResource.c b/xc/programs/Xserver/hw/xfree86/os-support/linux/lnxResource.c index ff8059d8a..72ab22f8a 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/linux/lnxResource.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/linux/lnxResource.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/lnxResource.c,v 3.6 2000/02/18 16:23:24 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/lnxResource.c,v 3.7 2000/03/06 22:59:33 dawes Exp $ */ /* Resource information code */ @@ -150,6 +150,62 @@ xf86AccResFromOS(resPtr ret) return ret; } +#elif defined(__powerpc__) + + /* XXX this isn't exactly correct but it will get the server working + * for now until we get something better. + */ + +resRange PciAvoid[] = {_PCI_AVOID_PC_STYLE, _END}; + +resPtr +xf86BusAccWindowsFromOS(void) +{ + resPtr ret = NULL; + resRange range; + + RANGE(range,0,0xffffffff,ResExcMemBlock); + ret = xf86AddResToList(ret, &range, -1); + + RANGE(range,0,0x0000ffff,ResExcIoBlock); + ret = xf86AddResToList(ret, &range, -1); + return ret; +} + +resPtr +xf86PciBusAccWindowsFromOS(void) +{ + resPtr ret = NULL; + resRange range; + + RANGE(range,0,0xffffffff,ResExcMemBlock); + ret = xf86AddResToList(ret, &range, -1); + + RANGE(range,0,0x0000ffff,ResExcIoBlock); + ret = xf86AddResToList(ret, &range, -1); + return ret; +} + +resPtr +xf86IsaBusAccWindowsFromOS(void) +{ + resPtr ret = NULL; + resRange range; + + RANGE(range,0,0xffffffff,ResExcMemBlock); + ret = xf86AddResToList(ret, &range, -1); + + RANGE(range,0,0x0000ffff,ResExcIoBlock); + ret = xf86AddResToList(ret, &range, -1); + return ret; +} + +resPtr +xf86AccResFromOS(resPtr ret) +{ + return ret; +} + #else #error : Put your platform dependent code here!! diff --git a/xc/programs/Xserver/hw/xfree86/os-support/shared/drm/kernel/drm.h b/xc/programs/Xserver/hw/xfree86/os-support/shared/drm/kernel/drm.h index 7488a315e..7b8e88265 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/shared/drm/kernel/drm.h +++ b/xc/programs/Xserver/hw/xfree86/os-support/shared/drm/kernel/drm.h @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm.h,v 1.46 1999/08/20 20:00:53 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm.h,v 1.4 2000/02/14 06:27:26 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm.h,v 1.5 2000/02/23 04:47:26 martin Exp $ * * Acknowledgements: * Dec 1999, Richard Henderson <rth@twiddle.net>, move to generic cmpxchg. diff --git a/xc/programs/Xserver/hw/xfree86/os-support/shared/sigio.c b/xc/programs/Xserver/hw/xfree86/os-support/shared/sigio.c index 331b83d8a..15e7e530a 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/shared/sigio.c +++ b/xc/programs/Xserver/hw/xfree86/os-support/shared/sigio.c @@ -24,7 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/shared/sigio.c,v 1.8 2000/02/08 17:19:24 dawes Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/shared/sigio.c,v 1.9 2000/03/02 16:07:53 martin Exp $ * */ diff --git a/xc/programs/Xserver/hw/xfree86/os-support/xf86drm.h b/xc/programs/Xserver/hw/xfree86/os-support/xf86drm.h index 62b59306b..61287e3e2 100644 --- a/xc/programs/Xserver/hw/xfree86/os-support/xf86drm.h +++ b/xc/programs/Xserver/hw/xfree86/os-support/xf86drm.h @@ -24,8 +24,7 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * $PI: xc/programs/Xserver/hw/xfree86/os-support/xf86drm.h,v 1.44 1999/08/04 18:14:42 faith Exp $ - * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/xf86drm.h,v 1.6 2000/02/14 06:27:24 martin Exp $ + * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/xf86drm.h,v 1.7 2000/02/23 04:47:21 martin Exp $ * */ |