# $XFree86: xc/programs/Xserver/hw/xfree86/XF98Conf.cpp,v 1.1 1999/07/19 13:36:11 dawes Exp $
#
# Copyright (c) 1994-1998 by The XFree86 Project, Inc.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
# 
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
# 
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
# THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
# OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
# 
# Except as contained in this notice, the name of the XFree86 Project shall
# not be used in advertising or otherwise to promote the sale, use or other
# dealings in this Software without prior written authorization from the
# XFree86 Project.
#
# $XConsortium: XF86Conf.cpp /main/22 1996/10/23 11:43:51 kaleb $

# **********************************************************************
# This is a sample configuration file only, intended to illustrate
# what a config file might look like.  Refer to the XF86Config(4/5)
# man page for details about the format of this file. This man page
# is installed as /usr/X11R6/man/man4/XF86Config.4 
# **********************************************************************

# The ordering of sections is not important in version 4.0 and later.

# **********************************************************************
# Files section.  This allows default font and rgb paths to be set
# **********************************************************************

Section "Files"

# The location of the RGB database.  Note, this is the name of the
# file minus the extension (like ".txt" or ".db").  There is normally
# no need to change the default.

    RgbPath	"/usr/X11R6/lib/X11/rgb"

# Multiple FontPath entries are allowed (which are concatenated together),
# as well as specifying multiple comma-separated entries in one FontPath
# command (or a combination of both methods)

    FontPath	"/usr/X11R6/lib/X11/fonts/local/"
    FontPath	"/usr/X11R6/lib/X11/fonts/misc/"
    FontPath	"/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
    FontPath	"/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"
    FontPath	"/usr/X11R6/lib/X11/fonts/Type1/"
    FontPath	"/usr/X11R6/lib/X11/fonts/CID/"
    FontPath	"/usr/X11R6/lib/X11/fonts/Speedo/"
    FontPath	"/usr/X11R6/lib/X11/fonts/75dpi/"
    FontPath	"/usr/X11R6/lib/X11/fonts/100dpi/"

# ModulePath can be used to set a search path for the X server modules.
# The default path is shown here.

#    ModulePath	"/usr/X11R6/lib/modules"

EndSection

# **********************************************************************
# Module section -- this is an optional section which is used to specify
# which run-time loadable modules to load when the X server starts up.
# **********************************************************************

Section "Module"

# This loads the PEX extension module.

    Load	"pex5"

# This loads the XIE extension module.

    Load	"xie"

# This loads the GLX extension module.

    Load	"glx"

# This loads the DBE extension module.

    Load	"dbe"

# This loads the RECORD extension module.

    Load	"record"

# This loads the miscellaneous extensions module, and disables
# initialisation of the XFree86-DGA extension within that module.

    SubSection	"extmod"
	Option	"omit xfree86-dga"
    EndSubSection

# This loads the Type1, Speedo and FreeType font modules

    Load	"type1"
    Load	"speedo"
    Load	"freetype"

EndSection


# **********************************************************************
# Server flags section.  This contains various server-wide Options.
# **********************************************************************

Section "ServerFlags"

# Uncomment this to cause a core dump at the spot where a signal is 
# received.  This may leave the console in an unusable state, but may
# provide a better stack trace in the core dump to aid in debugging

#    Option	"NoTrapSignals"

# Uncomment this to disable the <Crtl><Alt><BS> server abort sequence
# This allows clients to receive this key event.

#    Option	"DontZap"

# Uncomment this to disable the <Crtl><Alt><KP_+>/<KP_-> mode switching
# sequences.  This allows clients to receive these key events.

#    Option	"DontZoom"

# Uncomment this to disable tuning with the xvidtune client. With
# it the client can still run and fetch card and monitor attributes,
# but it will not be allowed to change them. If it tries it will
# receive a protocol error.

#    Option	"DisableVidModeExtension"

# Uncomment this to enable the use of a non-local xvidtune client.

#    Option	"AllowNonLocalXvidtune"

# Uncomment this to disable dynamically modifying the input device
# (mouse and keyboard) settings.

#    Option	"DisableModInDev"

# Uncomment this to enable the use of a non-local client to
# change the keyboard or mouse settings (currently only xset).

#    Option	"AllowNonLocalModInDev"

# Set the basic blanking screen saver timeout.

    Option	"blank time"	"10"	# 10 minutes

# Set the DPMS timeouts.  These are set here because they are global
# rather than screen-specific.  These settings alone don't enable DPMS.
# It is enabled per-screen (or per-monitor), and even then only when
# the driver supports it.

    Option	"standby time"	"20"
    Option	"suspend time"	"30"
    Option	"off time"	"60"

# Specify PC98 architecture

#    Option	"PC98"

EndSection

# **********************************************************************
# Input devices
# **********************************************************************

# **********************************************************************
# Core keyboard's InputDevice section
# **********************************************************************

Section "InputDevice"

    Identifier	"Keyboard1"
    Driver	"keyboard"

# For most OSs the protocol can be omitted (it defaults to "Standard").
# When using XQUEUE (only for SVR3 and 1, but not Solaris), comment
# out the above line, and uncomment the following line.

#    Option	"Protocol"	"Xqueue"

# Set the keyboard auto repeat parameters.  Not all platforms implement
# this.

    Option	"AutoRepeat"	"500 5"

# Specifiy which keyboard LEDs can be user-controlled (eg, with xset(1)).

#    Option	"Xleds"	"1 2 3"

# To disable the XKEYBOARD extension, uncomment XkbDisable.

#    Option	"XkbDisable"

    Option	"XkbRules"	"xfree86"
    Option	"XkbModel"	"pc98"
    Option	"XkbLayout"	"nec/jp"
#    Option	"XkbVariant"	""
#    Option	"XkbOptions"	""

EndSection


# **********************************************************************
# Core Pointer's InputDevice section
# **********************************************************************

Section "InputDevice"

# Identifier and driver

    Identifier	"Mouse1"
    Driver	"mouse"

# The mouse protocol and device.  The device is normally set to /dev/mouse,
# which is usually a symbolic link to the real device.

    Option	"Protocol"	"BusMouse"
# For FreeBSD(98)-2.X
# Option "Device" "/dev/mse0"
# For NetBSD/pc98 (based on NetBSD 1.1 or later)
# Option "Device" "/dev/lms0"
# For NetBSD/pc98 (based on NetBSD 1.0)
# Option "Device" "/dev/mms0"
# For Linux/98
# Option "Device" "/dev/mouse"

# When using XQUEUE (only for SVR3 and 1, but not Solaris), use
# the following instead of any of the lines above.  The Device line
# is not required in this case.

#    Option	"Protocol"	"Xqueue"

# Baudrate and SampleRate are only for some older Logitech mice.  In
# almost every case these lines should be omitted.

#    Option	"BaudRate"	"9600"
#    Option	"SampleRate"	"150"

# Emulate3Buttons is an option for 2-button mice
# Emulate3Timeout is the timeout in milliseconds (default is 50ms)

    Option	"Emulate3Buttons"
#    Option	"Emulate3Timeout"	"50"

# ChordMiddle is an option for some 3-button Logitech mice, or any
# 3-button mouse where the middle button generates left+right button
# events.

#    Option	"ChordMiddle"

EndSection

Section "InputDevice"
    Identifier	"Mouse2"
    Driver	"mouse"
    Option	"Protocol"	"MouseMan"
    Option	"Device"	"/dev/mouse2"
EndSection

# Some examples of extended input devices

# Section "InputDevice"
#    Identifier	"spaceball"
#    Driver	"magellan"
#    Option	"Device"	"/dev/cua0"
# EndSection
#
# Section "InputDevice"
#    Identifier	"spaceball2"
#    Driver	"spaceorb"
#    Option	"Device"	"/dev/cua0"
# EndSection
#
# Section "InputDevice"
#    Identifier	"touchscreen0"
#    Driver	"microtouch"
#    Option	"Device"	"/dev/ttyS0"
#    Option	"MinX"		"1412"
#    Option	"MaxX"		"15184"
#    Option	"MinY"		"15372"
#    Option	"MaxY"		"1230"
#    Option	"ScreenNumber"	"0"
#    Option	"ReportingMode"	"Scaled"
#    Option	"ButtonNumber"	"1"
#    Option	"SendCoreEvents"
# EndSection
#
# Section "InputDevice"
#    Identifier	"touchscreen1"
#    Driver	"elo2300"
#    Option	"Device"	"/dev/ttyS0"
#    Option	"MinX"		"231"
#    Option	"MaxX"		"3868"
#    Option	"MinY"		"3858"
#    Option	"MaxY"		"272"
#    Option	"ScreenNumber"	"0"
#    Option	"ReportingMode"	"Scaled"
#    Option	"ButtonThreshold"	"17"
#    Option	"ButtonNumber"	"1"
#    Option	"SendCoreEvents"
# EndSection

# **********************************************************************
# Monitor section
# **********************************************************************

# Any number of monitor sections may be present

Section "Monitor"

# The identifier line must be present.

    Identifier	"Generic Monitor"

# The VendorName and ModelName lines are optional.
    VendorName	"Unknown"
    ModelName	"Unknown"

# HorizSync is in kHz unless units are specified.
# HorizSync may be a comma separated list of discrete values, or a
# comma separated list of ranges of values.
# NOTE: THE VALUES HERE ARE EXAMPLES ONLY.  REFER TO YOUR MONITOR'S
# USER MANUAL FOR THE CORRECT NUMBERS.

    HorizSync	31.5  # typical for a single frequency fixed-sync monitor

#    HorizSync	30-64         # multisync
#    HorizSync	31.5, 35.2    # multiple fixed sync frequencies
#    HorizSync	15-25, 30-50  # multiple ranges of sync frequencies

# VertRefresh is in Hz unless units are specified.
# VertRefresh may be a comma separated list of discrete values, or a
# comma separated list of ranges of values.
# NOTE: THE VALUES HERE ARE EXAMPLES ONLY.  REFER TO YOUR MONITOR'S
# USER MANUAL FOR THE CORRECT NUMBERS.

    VertRefresh	60  # typical for a single frequency fixed-sync monitor

#    VertRefresh	50-100        # multisync
#    VertRefresh	60, 65        # multiple fixed sync frequencies
#    VertRefresh	40-50, 80-100 # multiple ranges of sync frequencies

# Modes can be specified in two formats.  A compact one-line format, or
# a multi-line format.

# A generic VGA 640x480 mode (hsync = 31.5kHz, refresh = 60Hz)
# These two are equivalent

#    ModeLine "640x480" 25.175 640 664 760 800 480 491 493 525

    Mode "640x480"
        DotClock	25.175
        HTimings	640 664 760 800
        VTimings	480 491 493 525
    EndMode

# These two are equivalent

#    ModeLine "1024x768i" 45 1024 1048 1208 1264 768 776 784 817 Interlace

#    Mode "1024x768i"
#        DotClock	45
#        HTimings	1024 1048 1208 1264
#        VTimings	768 776 784 817
#        Flags		"Interlace"
#    EndMode

# If a monitor has DPMS support, that can be indicated here.  This will
# enable DPMS when the montor is used with drivers that support it.

#    Option	"dpms"

# If a monitor requires that the sync signals be superimposed on the
# green signal, the following option will enable this when used with
# drivers that support it.  Only a relatively small range of hardware
# (and drivers) actually support this.

#    Option	"sync on green"

EndSection

Section "Monitor"
# NOTE: THE VALUES HERE ARE EXAMPLES ONLY.  REFER TO YOUR MONITOR'S
# USER MANUAL FOR THE CORRECT NUMBERS.
    Identifier	"Multi sync"
    VendorName	"IDEK"
    ModelName	"MF8615"
    HorizSync	24-70
    VertRefresh	50-100

    Mode "640x400"
        DotClock	28.322
        HTimings	640 664 712 808
        VTimings	400 400 402 417
    EndMode

    Mode "640x480"
        DotClock	28.0
        HTimings	640 690 752 800
        VTimings	480 496 544 560
    EndMode

    Mode "NEC480"
        DotClock	31.5
        HTimings	640 664 760 800
        VTimings	480 491 493 525
    EndMode

    Mode "800x600"
        DotClock	36.00
        HTimings	800 840 900 1000
        VTimings	600 602 610 664
    EndMode

    Mode "1024x768"
        DotClock	65.00
        HTimings	1024 1188 1210 1370
        VTimings	768   768  770  790
    EndMode

    Mode "1024x768i"
        DotClock	45.00
        HTimings	1024 1030 1230 1260
        VTimings	768   768  790  830
	Flags		"Interlace"
    EndMode

    Mode "1024x768H"
        DotClock	75.00
        HTimings	1024 1068 1184 1328
        VTimings	768   771  777  806
    EndMode

    Mode "1280x1024"
        DotClock	109.00
        HTimings	1280 1290 1680 1696
        VTimings	1024 1027 1030 1064
    EndMode

    Mode "1280x1024H"
        DotClock	110.00
        HTimings	1280 1300 1315 1700
        VTimings	1024 1027 1030 1064
    EndMode

EndSection

# **********************************************************************
# Graphics device section
# **********************************************************************

# Any number of graphics device sections may be present

Section "Device"
    Identifier	"MGA"
    VendorName	"Matrox"
    BoardName	"Millennium"
    Driver	"mga"
#    BusID	"PCI:0:10:0"
EndSection

# **********************************************************************
# Screen sections.
# **********************************************************************

# Any number of screen sections may be present.  Each describes
# the configuration of a single screen.  A single specific screen section
# may be specified from the X server command line with the "-screen"
# option.

Section "Screen"

# The Identifier, Device and Monitor lines must be present

    Identifier	"Screen 1"
    Device	"MGA"
    Monitor	"Multi sync"

# The favoured Depth and/or Bpp may be specified here

    DefaultDepth 8

    SubSection "Display"
        Depth		8
        Modes		"1280x1024" "1024x768" "800x600" "640x480"
    EndSubsection

    SubSection "Display"
        Depth		16
        Modes		"1280x1024" "1024x768" "800x600" "640x480"
    EndSubsection

    SubSection "Display"
        Depth		24
        Modes		"1280x1024" "1024x768" "800x600" "640x480"
    EndSubsection

    SubSection "Display"
        Depth		32
        Modes		"1024x768" "800x600" "640x480"
    EndSubsection

EndSection

# **********************************************************************
# ServerLayout sections.
# **********************************************************************

Section "ServerLayout"
    Identifier	"simple layout"
    Screen	"Screen 1"
    InputDevice	"Mouse1" "CorePointer"
    InputDevice "Keyboard1" "CoreKeyboard"
EndSection
