XF86Config(4)

XF86Config - Configuration File for XFree86

As shipped in IRIX 6.5.30. Added in IRIX 6.5.22.

     NAME
          XF86Config - Configuration File for XFree86

     DESCRIPTION
          XFree86 uses a configuration file called XF86Config for its
          initial setup.  This configuration file is searched for in
          the following places when the server is started as a normal
          user:

              /etc/X11/<cmdline>
              /usr/X11R6/etc/X11/<cmdline>
              /etc/X11/$XF86CONFIG
              /usr/X11R6/etc/X11/$XF86CONFIG
              /etc/X11/XF86Config-4
              /etc/X11/XF86Config
              /etc/XF86Config
              /usr/X11R6/etc/X11/XF86Config.<hostname>
              /usr/X11R6/etc/X11/XF86Config-4
              /usr/X11R6/etc/X11/XF86Config
              /usr/X11R6/lib/X11/XF86Config.<hostname>
              /usr/X11R6/lib/X11/XF86Config-4
              /usr/X11R6/lib/X11/XF86Config

          where <cmdline> is a relative path (with no ".." components)
          specified with the -xf86config command line option,
          $XF86CONFIG is the relative path (with no ".." components)
          specified by that environment variable, and <hostname> is
          the machines hostname as reported by gethostname(3).

          When the X server is started by the "root" user, the config
          file search locations are as follows:

              <cmdline>
              /etc/X11/<cmdline>
              /usr/X11R6/etc/X11/<cmdline>
              $XF86CONFIG
              /etc/X11/$XF86CONFIG
              /usr/X11R6/etc/X11/$XF86CONFIG
              $HOME/XF86Config
              /etc/X11/XF86Config-4
              /etc/X11/XF86Config
              /etc/XF86Config
              /usr/X11R6/etc/X11/XF86Config.<hostname>
              /usr/X11R6/etc/X11/XF86Config-4
              /usr/X11R6/etc/X11/XF86Config
              /usr/X11R6/lib/X11/XF86Config.<hostname>
              /usr/X11R6/lib/X11/XF86Config-4
              /usr/X11R6/lib/X11/XF86Config

          where <cmdline> is the path specified with the -xf86config
          command line option (which may be absolute or relative),
          $XF86CONFIG is the path specified by that environment
          variable (absolute or relative), $HOME is the path specified
          by that environment variable (usually the home directory),
          and <hostname> is the machines hostname as reported by
          gethostname(3).

          The XF86Config file is composed of a number of sections
          which may be present in any order.  Each section has the
          form:

              Section  "SectionName"
                  SectionEntry
                  ...
              EndSection

          The section names are:

              Files          File pathnames
              ServerFlags    Server flags
              Module         Dynamic module loading
              InputDevice    Input device description
              Device         Graphics device description
              VideoAdaptor   Xv video adaptor description
              Monitor        Monitor description
              Modes          Video modes descriptions
              Screen         Screen configuration
              ServerLayout   Overall layout
              DRI            DRI-specific configuration
              Vendor         Vendor-specific configuration

          The following obsolete section names are still recognised
          for compatibility purposes.  In new config files, the
          InputDevice section should be used instead.

              Keyboard       Keyboard configuration
              Pointer        Pointer/mouse configuration

          The old XInput section is no longer recognised.

          The ServerLayout sections are at the highest level.  They
          bind together the input and output devices that will be used
          in a session.  The input devices are described in the
          InputDevice sections.  Output devices usually consist of
          multiple independent components (e.g., and graphics board
          and a monitor).  These multiple components are bound
          together in the Screen sections, and it is these that are
          referenced by the ServerLayout section.  Each Screen section
          binds together a graphics board and a monitor.  The graphics
          boards are described in the Device sections, and the
          monitors are described in the Monitor sections.

          Config file keywords are case-insensitive, and "_"
          characters are ignored.  Most strings (including Option
          names) are also case-insensitive, and insensitive to white
          space and "_" characters.

          Each config file entry usually take up a single line in the
          file.  They consist of a keyword, which is possibly followed
          by one or more arguments, with the number and types of the
          arguments depending on the keyword.  The argument types are:

              Integer     an integer number in decimal, hex or octal
              Real        a floating point number
              String      a string enclosed in double quote marks (")

          Note: hex integer values must be prefixed with "0x", and
          octal values with "0".

          A special keyword called Option may be used to provide
          free-form data to various components of the server.  The
          Option keyword takes either one or two string arguments.
          The first is the option name, and the optional second
          argument is the option value.  Some commonly used option
          value types include:

              Integer     an integer number in decimal, hex or octal
              Real        a floating point number
              String      a sequence of characters
              Boolean     a boolean value (see below)
              Frequency   a frequency value (see below)

          Note that all Option values, not just strings, must be
          enclosed in quotes.

          Boolean options may optionally have a value specified.  When
          no value is specified, the option's value is TRUE.  The
          following boolean option values are recognised as TRUE:

              1, on, true, yes

          and the following boolean option values are recognised as
          FALSE:

              0, off, false, no

          If an option name is prefixed with "No", then the option value
          is negated.

          Example: the following option entries are equivalent:

              Option "Accel"   "Off"
              Option "NoAccel"
              Option "NoAccel" "On"
              Option "Accel"   "false"
              Option "Accel"   "no"
          Frequency option values consist of a real number that is
          optionally followed by one of the following frequency units:

              Hz, k, kHz, M, MHz

          When the unit name is omitted, the correct units will be
          determined from the value and the expectations of the
          appropriate range of the value.  It is recommended that the
          units always be specified when using frequency option values
          to avoid any errors in determining the value.

     FILES SECTION
          The Files section is used to specify some path names
          required by the server.  Some of these paths can also be set
          from the command line (see Xserver(1) and XFree86(1)).  The
          command line settings override the values specified in the
          config file.  The entries that can appear in this section
          are:

          FontPath "path"
                 sets the search path for fonts.  This path is a comma
                 separated list of font path elements which the X
                 server searches for font databases.  Multiple
                 FontPath entries may be specified, and they will be
                 concatenated to build up the fontpath used by the
                 server.  Font path elements may be either absolute
                 directory paths, or a font server identifier.  Font
                 server identifiers have the form:

                     <trans>/<hostname>:<port-number>

                 where <trans> is the transport type to use to connect
                 to the font server (e.g., 1 for UNIX-domain sockets
                 or tcp for a TCP/IP connection), <hostname> is the
                 hostname of the machine running the font server, and
                 <port-number> is the port number that the font server
                 is listening on (usually 7100).

                 When this entry is not specified in the config file,
                 the server falls back to the compiled-in default font
                 path, which contains the following font path
                 elements:

                     /usr/X11R6/lib/X11/fonts/misc/
                     /usr/X11R6/lib/X11/fonts/Speedo/
                     /usr/X11R6/lib/X11/fonts/Type1/
                     /usr/X11R6/lib/X11/fonts/CID/
                     /usr/X11R6/lib/X11/fonts/75dpi/
                     /usr/X11R6/lib/X11/fonts/100dpi/

                 The recommended font path contains the following font
                 path elements:
                     /usr/X11R6/lib/X11/fonts/local/
                     /usr/X11R6/lib/X11/fonts/misc/
                     /usr/X11R6/lib/X11/fonts/75dpi/:unscaled
                     /usr/X11R6/lib/X11/fonts/100dpi/:unscaled
                     /usr/X11R6/lib/X11/fonts/Type1/
                     /usr/X11R6/lib/X11/fonts/CID/
                     /usr/X11R6/lib/X11/fonts/Speedo/
                     /usr/X11R6/lib/X11/fonts/75dpi/
                     /usr/X11R6/lib/X11/fonts/100dpi/

                 Font path elements that are found to be invalid are
                 removed from the font path when the server starts up.

          RGBPath "path"
                 sets the path name for the RGB color database.  When
                 this entry is not specified in the config file, the
                 server falls back to the compiled-in default RGB
                 path, which is:

                     /usr/X11R6/lib/X11/rgb

          ModulePath "path"
                 sets the search path for loadable X server modules.
                 This path is a comma separated list of directories
                 which the X server searches for loadable modules
                 loading in the order specified.  Multiple ModulePath
                 entries may be specified, and they will be
                 concatenated to build the module search path used by
                 the server.

     SERVERFLAGS SECTION
          The ServerFlags section is used to specify some global X
          server options.  All of the entries in this section are
          Options, although for compatibility purposes some of the old
          style entries are still recognised.  Those old style entries
          are not documented here, and using them is discouraged.

          Options specified in this section may be overridden by
          Options specified in the active ServerLayout section.
          Options with command line equivalents are overridden when
          their command line equivalent is used.  The options
          recognised by this section are:

          Option "NoTrapSignals"  "boolean"
                 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 and know how to
                 deal with the consequences.
          Option "DontZap"  "boolean"
                 This disallows the use of the Ctrl+Alt+Backspace
                 sequence.  That sequence is normally used to
                 terminate the X server.  When this option is enabled,
                 that key sequence has no special meaning and is
                 passed to clients.  Default: off.

          Option "DontZoom"  "boolean"
                 This disallows the use of the Ctrl+Alt+Keypad-Plus
                 and Ctrl+Alt+Keypad-Minus sequences.  These sequences
                 allows you to switch between video modes.  When this
                 option is enabled, those key sequences have no
                 special meaning and are passed to clients.  Default:
                 off.

          Option "DisableVidModeExtension"  "boolean"
                 This disables the parts of the VidMode extension used
                 by the xvidtune client that can be used to change the
                 video modes.  Default: the VidMode extension is
                 enabled.

          Option "AllowNonLocalXvidtune"  "boolean"
                 This allows the xvidtune client (and other clients
                 that use the VidMode extension) to connect from
                 another host.  Default: off.

          Option "DisableModInDev"  "boolean"
                 This disables the parts of the XFree86-Misc extension
                 that can be used to modify the input device settings
                 dynamically.  Default: that functionality is enabled.

          Option "AllowNonLocalModInDev"  "boolean"
                 This allows a client to connect from another host and
                 change keyboard and mouse settings in the running
                 server.  Default: off.

          Option "AllowMouseOpenFail"  "boolean"
                 This allows the server to start up even if the mouse
                 device can't be opened/initialised.  Default: false.

          Option "VTInit"  "command"
                 Runs command 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.  This option should rarely be
                 needed.  Default: not set.

          Option "VTSysReq"  "boolean"
                 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, which means
                 that clients can access them.  Default: off.

          Option "BlankTime"  "time"
                 sets the inactivity timeout for the blanking phase of
                 the screensaver.  time is in minutes.  This is
                 equivalent to the Xserver's `-s' flag, and the value
                 can be changed at run-time with xset(1).  Default: 10
                 minutes.

          Option "StandbyTime"  "time"
                 sets the inactivity timeout for the "standby" phase
                 of DPMS mode.  time is in minutes, and the value can
                 be changed at run-time with xset(1).  Default: 20
                 minutes.  This is only suitable for VESA DPMS
                 compatible monitors, and may not be supported by all
                 video drivers.  It is only enabled for screens that
                 have the "DPMS" option set (see the MONITOR section
                 below).

          Option "SuspendTime"  "time"
                 sets the inactivity timeout for the "suspend" phase
                 of DPMS mode.  time is in minutes, and the value can
                 be changed at run-time with xset(1).  Default: 30
                 minutes.  This is only suitable for VESA DPMS
                 compatible monitors, and may not be supported by all
                 video drivers.  It is only enabled for screens that
                 have the "DPMS" option set (see the MONITOR section
                 below).

          Option "OffTime"  "time"
                 sets the inactivity timeout for the "off" phase of
                 DPMS mode.  time is in minutes, and the value can be
                 changed at run-time with xset(1).  Default: 40
                 minutes.  This is only suitable for VESA DPMS
                 compatible monitors, and may not be supported by all
                 video drivers.  It is only enabled for screens that
                 have the "DPMS" option set (see the MONITOR section
                 below).

          Option "Pixmap"  "bpp"
                 This sets the pixmap format to use for depth 24.
                 Allowed values for bpp are 24 and 32.  Default: 32
                 unless driver constraints don't allow this (which is
                 rare).  Note: some clients don't behave well when
                 this value is set to 24.

          Option "PC98"  "boolean"
                 Specify that the machine is a Japanese PC-98 machine.
                 This should not be enabled for anything other than
                 the Japanese-specific PC-98 architecture.  Default:
                 auto-detected.

          Option "NoPM"  "boolean"
                 Disables something to do with power management
                 events.  Default: PM enabled on platforms that
                 support it.

          Option "Xinerama"  "boolean"
                 enable or disable XINERAMA extension. Default is
                 disabled.

          Option "AllowDeactivateGrabs" "boolean"
                 This option enables the use of the Ctrl+Alt+Keypad-
                 Divide key sequence to desactivate any active
                 keyboard and mouse grabs.  Default: off.

          Option "AllowClosedownGrabs" "boolean"
                 This option enables the use of the Ctrl+Alt+Keypad-
                 Multiply key sequence to kill clients with an active
                 keyboard or mouse grab as well as killing any
                 application that may have locked the server, normally
                 using the XGrabServer(3) Xlib function.  Default:
                 off.
                 Note that the options AllowDeactivateGrabs and
                 AllowClosedownGrabs will allow users to remove the
                 grab used by screen saver/locker programs.  An API
                 was written to such cases. If you enable this option,
                 make sure your screen saver/locker is updated.

     MODULE SECTION
          The Module section is used to specify which X server modules
          should be loaded.  This section is ignored when the X server
          is built in static form.  The types of modules normally
          loaded in this section are X server extension modules, and
          font rasteriser modules.  Most other module types are loaded
          automatically when they are needed via other mechanisms.

          Entries in this section may be in two forms.   The first and
          most commonly used form is an entry that uses the Load
          keyword, as described here:

          Load  "modulename"
                 This instructs the server to load the module called
                 modulename.  The module name given should be the
                 module's standard name, not the module file name.
                 The standard name is case-sensitive, and does not
                 include the "lib" prefix, or the ".a", ".o", or ".so"
                 suffixes.

                 Example: the Type 1 font rasteriser can be loaded
                 with the following entry:
                     Load "type1"

          The second form of entry is a SubSection, with the
          subsection name being the module name, and the contents of
          the SubSection being Options that are passed to the module
          when it is loaded.

          Example: the extmod module (which contains a miscellaneous
          group of server extensions) can be loaded, with the
          XFree86-DGA extension disabled by using the following entry:

              SubSection "extmod"
                 Option  "omit XFree86-DGA"
              EndSubSection

          Modules are searched for in each directory specified in the
          ModulePath search path, and in the drivers, input,
          extensions, fonts, and internal subdirectories of each of
          those directories.  In addition to this, operating system
          specific subdirectories of all the above are searched first
          if they exist.

          To see what font and extension modules are available, check
          the contents of the following directories:

              /usr/X11R6/lib/modules/fonts
              /usr/X11R6/lib/modules/extensions

          The "bitmap" font modules is loaded automatically.  It is
          recommended that at very least the "extmod" extension module
          be loaded.  If it isn't some commonly used server extensions
          (like the SHAPE extension) will not be available.

     INPUTDEVICE SECTION
          The config file may have multiple InputDevice sections.
          There will normally be at least two: one for the core
          (primary) keyboard, and one of the core pointer.

          InputDevice sections have the following format:

              Section "InputDevice"
                  Identifier "name"
                  Driver     "inputdriver"
                  options
                  ...
              EndSection

          The Identifier entry specifies the unique name for this
          input device.  The Driver entry specifies the name of the
          driver to use for this input device.  When using the
          loadable server, the input driver module "inputdriver" will be
          loaded for each active InputDevice section.  An InputDevice
          section is considered active if it is referenced by an
          active ServerLayout section, or if it is referenced by the
          -keyboard or -pointer command line options.  The most
          commonly used input drivers are "keyboard" and "mouse".

          InputDevice sections recognise some driver-independent
          Options, which are described here.  See the individual input
          driver manual pages for a description of the device-specific
          options.

          Option "CorePointer"
                 When this is set, the input device is installed as
                 the core (primary) pointer device.  There must be
                 exactly one core pointer.  If this option is not set
                 here, or in the ServerLayout section, or from the
                 -pointer command line option, then the first input
                 device that is capable of being used as a core
                 pointer will be selected as the core pointer.  This
                 option is implicitly set when the obsolete Pointer
                 section is used.

          Option "CoreKeyboard"
                 When this is set, the input device is to be installed
                 as the core (primary) keyboard device.  There must be
                 exactly one core keyboard.  If this option is not set
                 here, in the ServerLayout section, or from the
                 -keyboard command line option, then the first input
                 device that is capable of being used as a core
                 keyboard will be selected as the core keyboard.  This
                 option is implicitly set when the obsolete Keyboard
                 section is used.

          Option "AlwaysCore"  "boolean"

          Option "SendCoreEvents"  "boolean"
                 Both of these options are equivalent, and when
                 enabled cause the input device to always report core
                 events.  This can be used, for example, to allow an
                 additional pointer device to generate core pointer
                 events (like moving the cursor, etc).

          Option "HistorySize"  "number"
              Sets the motion history size.  Default: 0.

          Option "SendDragEvents"  "boolean"
                 ???

     DEVICE SECTION
          The config file may have multiple Device sections.  There
          must be at least one, for the video card being used.

          Device sections have the following format:
              Section "Device"
                  Identifier "name"
                  Driver     "driver"
                  entries
                  ...
              EndSection

          The Identifier entry specifies the unique name for this
          graphics device.  The Driver entry specifies the name of the
          driver to use for this graphics device.  When using the
          loadable server, the driver module "driver" will be loaded for
          each active Device section.  A Device section is considered
          active if it is referenced by an active Screen section.

          Device sections recognise some driver-independent entries
          and Options, which are described here.  Not all drivers make
          use of these driver-independent entries, and many of those
          that do don't require them to be specified because the
          information is auto-detected.  See the individual graphics
          driver manual pages for further information about this, and
          for a description of the device-specific options.  Note that
          most of the Options listed here (but not the other entries)
          may be specified in the Screen section instead of here in
          the Device section.

          BusID  "bus-id"
                 This specifies the bus location of the graphics card.
                 For PCI/AGP cards, the bus-id string has the form
                 PCI:bus:device:function (e.g., "PCI:1:0:0" might be
                 appropriate for an AGP card).  This field is usually
                 optional in single-head configurations when using the
                 primary graphics card.  In multi-head configurations,
                 or when using a secondary graphics card in a single-
                 head configuration, this entry is mandatory.  Its
                 main purpose is to make an unambiguous connection
                 between the device section and the hardware it is
                 representing.  This information can usually be found
                 by running the X server with the -scanpci command
                 line option.

          Screen  number
                 This option is mandatory for cards where a single PCI
                 entity can drive more than one display (i.e.,
                 multiple CRTCs sharing a single graphics accelerator
                 and video memory).  One Device section is required
                 for each head, and this parameter determines which
                 head each of the Device sections applies to.  The
                 legal values of number range from 0 to one less than
                 the total number of heads per entity.  Most drivers
                 require that the primary screen (0) be present.

          Chipset  "chipset"
                 This usually optional entry specifies the chipset
                 used on the graphics board.  In most cases this entry
                 is not required because the drivers will probe the
                 hardware to determine the chipset type.  Don't
                 specify it unless the driver-specific documentation
                 recommends that you do.

          Ramdac  "ramdac-type"
                 This optional entry specifies the type of RAMDAC used
                 on the graphics board.  This is only used by a few of
                 the drivers, and in most cases it is not required
                 because the drivers will probe the hardware to
                 determine the RAMDAC type where possible.  Don't
                 specify it unless the driver-specific documentation
                 recommends that you do.

          DacSpeed  speed

          DacSpeed  speed-8 speed-16 speed-24 speed-32
                 This optional entry specifies the RAMDAC speed rating
                 (which is usually printed on the RAMDAC chip).  The
                 speed is in MHz.  When one value is given, it applies
                 to all framebuffer pixel sizes.  When multiple values
                 are give, they apply to the framebuffer pixel sizes
                 8, 16, 24 and 32 respectively.  This is not used by
                 many drivers, and only needs to be specified when the
                 speed rating of the RAMDAC is different from the
                 defaults built in to driver, or when the driver can't
                 auto-detect the correct defaults.  Don't specify it
                 unless the driver-specific documentation recommends
                 that you do.

          Clocks  clock ...
                 specifies the pixel 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 Clocks lines may be specified, and each is
                 concatenated to form the list.  Most drivers do not
                 use this entry, and it is only required for some
                 older boards with non-programmable clocks.  Don't
                 specify this entry unless the driver-specific
                 documentation explicitly recommends that you do.

          ClockChip  "clockchip-type"
                 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.
          VideoRam  mem
                 This optional entry specifies the amount of video ram
                 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.  The driver-
                 specific documentation should indicate when it might
                 be needed.

          BiosBase  baseaddress
                 This optional entry specifies the base address of the
                 video BIOS for the VGA board.  This address is
                 normally auto-detected, and should only be specified
                 if the driver-specific documentation recommends it.

          MemBase  baseaddress
                 This optional entry specifies the memory base address
                 of a graphics board's linear frame buffer.  This
                 entry is not used by many drivers, and it should only
                 be specified if the driver-specific documentation
                 recommends it.

          IOBase  baseaddress
                 This optional entry specifies the IO base address.
                 This entry is not used by many drivers, and it should
                 only be specified if the driver-specific
                 documentation recommends it.

          ChipID  id
                 This optional entry specifies a numerical ID
                 representing the chip type.  For PCI cards, it is
                 usually the device ID.  This can be used to override
                 the auto-detection, but that should only be done when
                 the driver-specific documentation recommends it.

          ChipRev  rev
                 This optional entry specifies the chip revision
                 number.  This can be used to override the auto-
                 detection, but that should only be done when the
                 driver-specific documentation recommends it.

          TextClockFreq  freq
                 This optional entry specifies the pixel clock
                 frequency that is used for the regular text mode.
                 The frequency is specified in MHz.  This is rarely
                 used.

          Options
                 Option flags may be specified in the Device sections.
                 These include driver-specific options and driver-
                 independent options.  The former are described in the
                 driver-specific documentation.  Some of the latter
                 are described below in the section about the Screen
                 section, and they may also be included here.


     VIDEOADAPTOR SECTION
          Nobody wants to say how this works.  Maybe nobody knows ...


     MONITOR SECTION
          The config file may have multiple Monitor sections.  There
          must be at least one, for the monitor being used.

          Monitor sections have the following format:

              Section "Monitor"
                  Identifier "name"
                  entries
                  ...
              EndSection

          The Identifier entry specifies the unique name for this
          monitor.  The Monitor section provides information about the
          specifications of the monitor, monitor-specific Options, and
          information about the video modes to use with the monitor.
          Specifying video modes is optional because the server now
          has a built-in list of VESA standard modes.  When modes are
          specified explicitly in the Monitor section (with the Modes,
          ModeLine, or UseModes keywords), built-in modes with the
          same names are not included.  Built-in modes with different
          names are, however, still implicitly included.

          The entries that may be used in Monitor sections are
          described below.

          VendorName  "vendor"
                 This optional entry specifies the monitor's
                 manufacturer.

          ModelName  "model"
                 This optional entry specifies the monitor's model.

          HorizSync  horizsync-range
                 gives the range(s) of horizontal sync frequencies
                 supported by the monitor.  horizsync-range 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
                 MHz or Hz 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.  If this entry is omitted, a
                 default range of 28-33kHz is used.

          VertRefresh  vertrefresh-range
                 gives the range(s) of vertical refresh frequencies
                 supported by the monitor.  vertrefresh-range 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
                 MHz or kHz 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.  If this entry is omitted, a
                 default range of 43-72Hz is used.

          DisplaySize  width height
                 This optional entry gives the width and height, in
                 millimetres, of the picture area of the monitor. If
                 given this is used to calculate the horizontal and
                 vertical pitch (DPI) of the screen.

          Gamma  gamma-value

          Gamma  red-gamma green-gamma blue-gamma
                 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.  The values should be in the
                 range 0.1 to 10.0, and the default is 1.0.  Not all
                 drivers are capable of using this information.

          UseModes  "modesection-id"
                 Include the set of modes listed in the Modes section
                 called modesection-id.  This make all of the modes
                 defined in that section available for use by this
                 monitor.

          Mode "name"
                 This is an optional multi-line entry that can be used
                 to provide definitions for video modes for the
                 monitor.  In most cases this isn't necessary because
                 the built-in set of VESA standard modes will be
                 sufficient.  The Mode keyword indicates the start of
                 a multi-line video mode description.  The mode
                 description is terminated with the EndMode keyword.
                 The mode description consists of the following
                 entries:

                 DotClock  clock
                     is the dot (pixel) clock rate to be used for the
                     mode.

                 HTimings  hdisp hsyncstart hsyncend htotal
                     specifies the horizontal timings for the mode.

                 VTimings  vdisp vsyncstart vsyncend vtotal
                     specifies the vertical timings for the mode.

                 Flags  "flag" ...
                     specifies an optional set of mode flags, each of
                     which is a separate string in double quotes.
                     "Interlace" indicates that the mode is interlaced.
                     "DoubleScan" indicates a mode where each scanline
                     is doubled.  "+HSync" and "-HSync" can be used to
                     select the polarity of the HSync signal.  "+VSync"
                     and "-VSync" can be used to select the polarity of
                     the VSync signal.  "Composite" can be used to
                     specify composite sync on hardware where this is
                     supported.  Additionally, on some hardware,
                     "+CSync" and "-CSync" may be used to select the
                     composite sync polarity.

                 HSkew  hskew
                     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.

                 VScan  vscan
                     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
                     "DoubleScan" Flag mentioned above doubles this
                     value.

          ModeLine  "name" mode-description
                 This entry is a more compact version of the Mode
                 entry, and it also can be used to specify video modes
                 for the monitor.  is a single line format for
                 specifying video modes.  In most cases this isn't
                 necessary because the built-in set of VESA standard
                 modes will be sufficient.

                 The mode-description is in four sections, the first
                 three of which are mandatory.  The first is the dot
                 (pixel) clock.  This is a single number specifying
                 the pixel clock rate for the mode in MHz.  The second
                 section is a list of four numbers specifying the
                 horizontal timings.  These numbers are the hdisp,
                 hsyncstart, hsyncend, and htotal values.  The third
                 section is a list of four numbers specifying the
                 vertical timings.  These numbers are the vdisp,
                 vsyncstart, vsyncend, and vtotal values.  The final
                 section is a list of flags specifying other
                 characteristics of the mode.  Interlace indicates
                 that the mode is interlaced.  DoubleScan indicates a
                 mode where each scanline is doubled.  +HSync and
                 -HSync can be used to select the polarity of the
                 HSync signal.  +VSync and -VSync can be used to
                 select the polarity of the VSync signal.  Composite
                 can be used to specify composite sync on hardware
                 where this is supported.  Additionally, on some
                 hardware, +CSync and -CSync may be used to select the
                 composite sync polarity.  The HSkew and VScan options
                 mentioned above in the Modes entry description can
                 also be used here.

          Options
                 Some Option flags that may be useful to include in
                 Monitor sections (when needed) include "DPMS", and
                 "SyncOnGreen".


     MODES SECTION
          The config file may have multiple Modes sections, or none.
          These sections provide a way of defining sets of video modes
          independently of the Monitor sections.  Monitor sections may
          include the definitions provided in these sections by using
          the UseModes keyword.  In most cases the Modes sections are
          not necessary because the built-in set of VESA standard
          modes will be sufficient.

          Modes sections have the following format:

              Section "Modes"
                  Identifier "name"
                  entries
                  ...
              EndSection

          The Identifier entry specifies the unique name for this set
          of mode descriptions.  The other entries permitted in Modes
          sections are the Mode and ModeLine entries that are
          described above in the Monitor section.

     SCREEN SECTION
          The config file may have multiple Screen sections.  There
          must be at least one, for the "screen" being used.  A
          "screen" represents the binding of a graphics device (Device
          section) and a monitor (Monitor section).  A Screen section
          is considered "active" if it is referenced by an active
          ServerLayout section or by the -screen command line option.
          If neither of those is present, the first Screen section
          found in the config file is considered the active one.

          Screen sections have the following format:

              Section "Screen"
                  Identifier "name"
                  Device     "devid"
                  Monitor    "monid"
                  entries
                  ...
                  SubSection "Display"
                     entries
                     ...
                  EndSubSection
                  ...
              EndSection

          The Identifier entry specifies the unique name for this
          screen.  The Screen section provides information specific to
          the whole screen, including screen-specific Options.  In
          multi-head configurations, there will be multiple active
          Screen sections, one for each head.  The entries available
          for this section are:

          Device  "device-id"
                 This specifies the Device section to be used for this
                 screen.  This is what ties a specific graphics card
                 to a screen.  The device-id must match the Identifier
                 of a Device section in the config file.

          Monitor  "monitor-id"
                 specifies which monitor description is to be used for
                 this screen.

          VideoAdaptor  "xv-id"
                 specifies an optional Xv video adaptor description to
                 be used with this screen.

          DefaultDepth  depth
                 specifies which color depth the server should use by
                 default.  The -depth command line option can be used
                 to override this.  If neither is specified, the
                 default depth is driver-specific, but in most cases
                 is 8.

          DefaultFbBpp  bpp
                 specifies which framebuffer layout to use by default.
                 The -fbbpp command line option can be used to
                 override this.  In most cases the driver will chose
                 the best default value for this.  The only case where
                 there is even a choice in this value is for depth 24,
                 where some hardware supports both a packed 24 bit
                 framebuffer layout and a sparse 32 bit framebuffer
                 layout.

          Options
                 Various Option flags may be specified in the Screen
                 section.  Some are driver-specific and are described
                 in the driver documentation.  Others are driver-
                 independent, and will eventually be described here.

          Option "Accel"
                 Enables XAA (X Acceleration Architecture), a
                 mechanism that makes video cards' 2D hardware
                 acceleration available to the X server.  This option
                 is on by default, but it may be necessary to turn it
                 off if there are bugs in the driver.  There are many
                 options to disable specific acclerated operations,
                 listed below.  Note that disabling an operation will
                 have no effect if the operation is not accelerated
                 (whether due to lack of support in the hardware or in
                 the driver).

          Option "XaaNoCPUToScreenColorExpandFill"
                 Disables accelerated rectangular expansion blits from
                 source patterns stored in system memory (using a
                 memory-mapped aperture).

          Option "XaaNoColor8x8PatternFillRect"
                 Disables accelerated fills of a rectangular region
                 with a full-color pattern.

          Option "XaaNoColor8x8PatternFillTrap"
                 Disables accelerated fills of a trapezoidal region
                 with a full-color pattern.

          Option "XaaNoDashedBresenhamLine"
                 Disables accelerated dashed Bresenham line draws.

          Option "XaaNoDashedTwoPointLine"
                 Disables accelerated dashed line draws between two
                 arbitrary points.

          Option "XaaNoImageWriteRect"
                 Disables acclerated transfers of full-color
                 rectangular patterns from system memory to video
                 memory (using a memory-mapped aperture).

          Option "XaaNoMono8x8PatternFillRect"
                 Disables accelerated fills of a rectangular region
                 with a monochrome pattern.

          Option "XaaNoMono8x8PatternFillTrap"
                 Disables accelerated fills of a trapezoidal region
                 with a monochrome pattern.

          Option "XaaNoOffscreenPixmaps"
                 Disables accelerated draws into pixmaps stored in
                 offscreen video memory.

          Option "XaaNoPixmapCache"
                 Disables caching of patterns in offscreen video
                 memory.

          Option "XaaNoScanlineCPUToScreenColorExpandFill"
                 Disables accelerated rectangular expansion blits from
                 source patterns stored in system memory (one scan
                 line at a time).

          Option "XaaNoScanlineImageWriteRect"
                 Disables acclerated transfers of full-color
                 rectangular patterns from system memory to video
                 memory (one scan line at a time).

          Option "XaaNoScreenToScreenColorExpandFill"
                 Disables accelerated rectangular expansion blits from
                 source patterns stored in offscreen video memory.

          Option "XaaNoScreenToScreenCopy"
                 Disables accelerated copies of rectangular regions
                 from one part of video memory to another part of
                 video memory.

          Option "XaaNoSolidBresenhamLine"
                 Disables accelerated solid Bresenham line draws.

          Option "XaaNoSolidFillRect"
                 Disables accelerated solid-color fills of rectangles.

          Option "XaaNoSolidFillTrap"
                 Disables accelerated solid-color fills of Bresenham
                 trapezoids.

          Option "XaaNoSolidHorVertLine"
                 Disables accelerated solid horizontal and vertical
                 line draws.

          Option "XaaNoSolidTwoPointLine"
                 Disables accelerated solid line draws between two
                 arbitrary points.
          Each Screen section must contain one or more Display
          subsections.  Those subsections provide depth/fbbpp specific
          configuration information, and the one chosen depends on the
          depth and/or fbbpp that is being used for the screen.  The
          Display subsection format is described in the section below.


     DISPLAY SUBSECTION
          Each Screen section may have multiple Display subsections.
          There must be at least one, which matches the depth and/or
          fbbpp values that are being used for the screen.  The
          "active" Display subsection is the first that matches the
          depth and/or fbbpp values being used.

          Display subsections have the following format:

                  SubSection "Display"
                      Depth  depth
                      entries
                      ...
                  EndSubSection

          Depth  depth
                 This entry specifies what colour depth the Display
                 subsection is to be used for.  This entry is usually
                 mandatory, but it may be omitted in some cases
                 providing an FbBpp entry is present.  The range of
                 depth values that are allowed depends on the driver.
                 Most driver support 8, 15, 16 and 24.  Some also
                 support 1 and/or 4, and some may support other values
                 (like 30).  Note:  depth means the number of bits in
                 a pixel that are actually used to determine the pixel
                 colour.  32 is not a valid depth value.  Most
                 hardware that uses 32 bits per pixel only uses 24 of
                 them to hold the colour information, which means that
                 the colour depth is 24, not 32.

          FbBpp  bpp
                 This entry specifies the framebuffer format this
                 Display subsection is to be used for.  This entry is
                 only needed when providing depth 24 configurations
                 that allow a choice between a 24 bpp packed
                 framebuffer format and a 32bpp sparse framebuffer
                 format.  In most cases this entry should not be used.

          Weight  red-weight green-weight blue-weight
                 This optional entry specifies the relative RGB
                 weighting to be used for a screen is being used at
                 depth 16 for drivers that allow multiple formats.
                 This may also be specified from the command line with
                 the -weight option (see XFree86(1)).

          Virtual  xdim ydim
                 This optional entry specifies the virtual screen
                 resolution to be used.  xdim must be a multiple of
                 either 8 or 16 for most drivers, and a multiple of 32
                 when running in monochrome mode.  The given value
                 will be rounded down if this is not the case.  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
                 Modes entry.  Some drivers/hardware combinations do
                 not support virtual screens.  Refer to the
                 appropriate driver-specific documentation for
                 details.

          ViewPort  x0 y0
                 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.

          Modes  "mode-name" ...
                 This entry is highly desirable for most drivers, and
                 it specifies the list of video modes to use.  Each
                 mode-name specified must be in double quotes.  They
                 must correspond to those specified or referenced in
                 the appropriate Monitor section (including implicitly
                 referenced built-in VESA standard modes).  The server
                 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 Ctrl+Alt+Keypad-Plus and to the
                 previous mode with Ctrl+Alt+Keypad-Minus.  When this
                 entry is omitted, the largest valid mode referenced
                 by the appropriate Monitor section will be used.

          Visual  "visual-name"
                 This optional entry sets the default root visual
                 type.  This may also be specified from the command
                 line (see the Xserver(1) man page).  The visual types
                 available for depth 8 are (default is PseudoColor):

                     StaticGray
                     GrayScale
                     StaticColor
                     PseudoColor
                     TrueColor
                     DirectColor
                 The visual type available for the depths 15, 16 and
                 24 are (default is TrueColor):

                     TrueColor
                     DirectColor

                 Not all drivers support DirectColor at these depths.

                 The visual types available for the depth 4 are
                 (default is StaticColor):

                     StaticGray
                     GrayScale
                     StaticColor
                     PseudoColor

                 The visual type available for the depth 1
                 (monochrome) is StaticGray.

          Black  red green blue
                 This optional entry allows the "black" colour to be
                 specified.  This

          White  red green blue
                 This optional entry allows the "white" colour to be
                 specified.  This is only supported at depth 1.  The
                 default is white.

          Options
                 Option flags may be specified in the Display
                 subsections.  These may include driver-specific
                 options and driver-independent options.  The former
                 are described in the driver-specific documentation.
                 Some of the latter are described above in the section
                 about the Screen section, and they may also be
                 included here.

     SERVERLAYOUT SECTION
          The config file may have multiple ServerLayout sections. A
          "server layout" represents the binding of one or more
          screens (Screen sections) and one or more input devices
          (InputDevice sections) to form a complete configuration.  In
          multi-head configurations, it also specifies the relative
          layout of the heads.  A ServerLayout section is considered
          "active" if it is referenced by the -layout command line
          option.  If that option is not used, the first ServerLayout
          section found in the config file is considered the active
          one.  If no ServerLayout sections are present, the single
          active screen and two active (core) input devices are
          selected as described in the relevant sections above.

          ServerLayout sections have the following format:
              Section "ServerLayout"
                  Identifier   "name"
                  Screen       "screen-id"
                  ...
                  InputDevice  "idev-id"
                  ...
                  options
                  ...
              EndSection

          The Identifier entry specifies the unique name for this
          server layout.  The ServerLayout section provides
          information specific to the whole session, including
          session-specific Options.  The ServerFlags options
          (described above) may be specified here, and ones given here
          override those given in the ServerFlags section.

          The entries that may be used in this section are described
          here.

          Screen  screen-num "screen-id" position-information
                 One of these entries must be given for each screen
                 being used in a session.  The screen-id field is
                 mandatory, and specifies the Screen section being
                 referenced.  The screen-num field is optional, and
                 may be used to specify the screen number in multi-
                 head configurations.  When this field is omitted, the
                 screens will be numbered in the order that they are
                 listed in.  The numbering starts from 0, and must be
                 consecutive.  The position-information field
                 describes the way multiple screens are positioned.
                 There are a number of different ways that this
                 information can be provided:

                 Absolute  x y
                     This says that the upper left corner's
                     coordinates are (x,y).  If the coordinates are
                     omitted or if no positioning information is
                     given, (0,0) is assumed.

                 RightOf   "screen-id"

                 LeftOf    "screen-id"

                 Above     "screen-id"

                 Below     "screen-id"

                 Relative  "screen-id" x y
                     These give the screen's location relative to
                     another screen.

          InputDevice  "idev-id" "option" ...
                 One of these entries must be given for each input
                 device being used in a session.  Normally at least
                 two are required, one each for the core pointer and
                 keyboard devices.  The idev-id field is mandatory,
                 and specifies the name of the InputDevice section
                 being referenced.  Multiple option fields may be
                 specified, each in double quotes.  The options
                 permitted here are any that may also be given in the
                 InputDevice sections.  Normally only session-specific
                 input device options would be used here.  The most
                 commonly used options are:

                     "CorePointer"
                     "CoreKeyboard"
                     "SendCoreEvents"

                 and the first two should normally be used to indicate
                 the core pointer and core keyboard devices
                 respectively.

          Options
                 Any option permitted in the ServerFlags section may
                 also be specified here.  When the same option appears
                 in both places, the value given here overrides the
                 one given in the ServerFlags section.

          Here is an example of a ServerLayout section for a dual
          headed configuration with two mice:

              Section "ServerLayout"
                  Identifier  "Layout 1"
                  Screen      "MGA 1"
                  Screen      "MGA 2" RightOf "MGA 1"
                  InputDevice "Keyboard 1" "CoreKeyboard"
                  InputDevice "Mouse 1"    "CorePointer"
                  InputDevice "Mouse 2"    "SendCoreEvents"
                  Option      "BlankTime"  "5"
              EndSection

     DRI SECTION
          This optional section is used to provide some information
          for the Direct Rendering Infrastructure.  Details about the
          format of this section can be found in the README.DRI
          document, which is also available on-line at
          <http://www.xfree86.org/current/DRI.html>.

     VENDOR SECTION
          The optional Vendor section may be used to provide vendor-
          specific configuration information.  Multiple Vendor
          sections may be present, and they may contain an Identifier
          entry and multiple Option flags.  The data therein is not
          used in this release.

     FILES
          For an example of an XF86Config file, see the file installed
          as /usr/X11R6/lib/X11/XF86Config.eg.

     SEE ALSO
          X(5), Xserver(1), XFree86(1), apm(7), ati(7), chips(7),
          cirrus(7), cyrix(7), fbdev(7), glide(7), glint(7), i128(7),
          i740(7), i810(7), imstt(7), mga(7), neomagic(7), nv(7),
          r128(7), rendition(7), s3virge(7), siliconmotion(7), sis(7),
          sunbw2(7), suncg14(7), suncg3(7), suncg6(7), sunffb(7),
          sunleo(7), suntcx(7), tdfx(7), tga(7), trident(7), tseng(7),
          v4l(7), vesa(7), vga(7), vmware(7),
          README <http://www.xfree86.org/current/README.html>,
          RELNOTES <http://www.xfree86.org/current/RELNOTES.html>,
          README.mouse <http://www.xfree86.org/current/mouse.html>,
          README.DRI <http://www.xfree86.org/current/DRI.html>,
          Status <http://www.xfree86.org/current/Status.html>,
          Install <http://www.xfree86.org/current/Install.html>.

     AUTHORS
          This manual page was largely rewritten for XFree86 4.0 by
          David Dawes <dawes@xfree86.org>.