xref: /OK3568_Linux_fs/external/xserver/hw/xfree86/xorgconf.cpp (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun #
2*4882a593Smuzhiyun # Copyright (c) 1994-1998 by The XFree86 Project, Inc.
3*4882a593Smuzhiyun #
4*4882a593Smuzhiyun # Permission is hereby granted, free of charge, to any person obtaining a
5*4882a593Smuzhiyun # copy of this software and associated documentation files (the "Software"),
6*4882a593Smuzhiyun # to deal in the Software without restriction, including without limitation
7*4882a593Smuzhiyun # the rights to use, copy, modify, merge, publish, distribute, sublicense,
8*4882a593Smuzhiyun # and/or sell copies of the Software, and to permit persons to whom the
9*4882a593Smuzhiyun # Software is furnished to do so, subject to the following conditions:
10*4882a593Smuzhiyun #
11*4882a593Smuzhiyun # The above copyright notice and this permission notice shall be included in
12*4882a593Smuzhiyun # all copies or substantial portions of the Software.
13*4882a593Smuzhiyun #
14*4882a593Smuzhiyun # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15*4882a593Smuzhiyun # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16*4882a593Smuzhiyun # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
17*4882a593Smuzhiyun # THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
18*4882a593Smuzhiyun # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
19*4882a593Smuzhiyun # OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20*4882a593Smuzhiyun # SOFTWARE.
21*4882a593Smuzhiyun #
22*4882a593Smuzhiyun # Except as contained in this notice, the name of the XFree86 Project shall
23*4882a593Smuzhiyun # not be used in advertising or otherwise to promote the sale, use or other
24*4882a593Smuzhiyun # dealings in this Software without prior written authorization from the
25*4882a593Smuzhiyun # XFree86 Project.
26*4882a593Smuzhiyun #
27*4882a593Smuzhiyun # $XConsortium: XF86Conf.cpp /main/22 1996/10/23 11:43:51 kaleb $
28*4882a593Smuzhiyun 
29*4882a593Smuzhiyun # **********************************************************************
30*4882a593Smuzhiyun # This is a sample configuration file only, intended to illustrate
31*4882a593Smuzhiyun # what a config file might look like.  Refer to the xorg.conf(__filemansuffix__)
32*4882a593Smuzhiyun # man page for details about the format of this file.
33*4882a593Smuzhiyun # **********************************************************************
34*4882a593Smuzhiyun 
35*4882a593Smuzhiyun # The ordering of sections is not important in XFree86 4.0 and later,
36*4882a593Smuzhiyun # nor in any Xorg release.
37*4882a593Smuzhiyun 
38*4882a593Smuzhiyun # **********************************************************************
39*4882a593Smuzhiyun # Files section.  This allows default font and module paths to be set
40*4882a593Smuzhiyun # **********************************************************************
41*4882a593Smuzhiyun 
42*4882a593Smuzhiyun Section "Files"
43*4882a593Smuzhiyun 
44*4882a593Smuzhiyun # Multiple FontPath entries are allowed (which are concatenated together),
45*4882a593Smuzhiyun # as well as specifying multiple comma-separated entries in one FontPath
46*4882a593Smuzhiyun # command (or a combination of both methods).
47*4882a593Smuzhiyun # The default path is shown here.
48*4882a593Smuzhiyun 
49*4882a593Smuzhiyun #    FontPath	DEFAULTFONTPATH
50*4882a593Smuzhiyun 
51*4882a593Smuzhiyun # ModulePath can be used to set a search path for the X server modules.
52*4882a593Smuzhiyun # The default path is shown here.
53*4882a593Smuzhiyun 
54*4882a593Smuzhiyun #    ModulePath	MODULEPATH
55*4882a593Smuzhiyun 
56*4882a593Smuzhiyun EndSection
57*4882a593Smuzhiyun 
58*4882a593Smuzhiyun # **********************************************************************
59*4882a593Smuzhiyun # Module section -- this is an optional section which is used to specify
60*4882a593Smuzhiyun # which run-time loadable modules to load when the X server starts up.
61*4882a593Smuzhiyun # **********************************************************************
62*4882a593Smuzhiyun 
63*4882a593Smuzhiyun Section "Module"
64*4882a593Smuzhiyun 
65*4882a593Smuzhiyun # This loads the DBE extension module.
66*4882a593Smuzhiyun 
67*4882a593Smuzhiyun     Load	"dbe"
68*4882a593Smuzhiyun 
69*4882a593Smuzhiyun # This loads the miscellaneous extensions module, and disables
70*4882a593Smuzhiyun # initialisation of the XFree86-DGA extension within that module.
71*4882a593Smuzhiyun 
72*4882a593Smuzhiyun     SubSection	"extmod"
73*4882a593Smuzhiyun 	Option	"omit xfree86-dga"
74*4882a593Smuzhiyun     EndSubSection
75*4882a593Smuzhiyun 
76*4882a593Smuzhiyun EndSection
77*4882a593Smuzhiyun 
78*4882a593Smuzhiyun 
79*4882a593Smuzhiyun # **********************************************************************
80*4882a593Smuzhiyun # Server flags section.  This contains various server-wide Options.
81*4882a593Smuzhiyun # **********************************************************************
82*4882a593Smuzhiyun 
83*4882a593Smuzhiyun Section "ServerFlags"
84*4882a593Smuzhiyun 
85*4882a593Smuzhiyun # Uncomment this to cause a core dump at the spot where a signal is
86*4882a593Smuzhiyun # received.  This may leave the console in an unusable state, but may
87*4882a593Smuzhiyun # provide a better stack trace in the core dump to aid in debugging
88*4882a593Smuzhiyun 
89*4882a593Smuzhiyun #    Option	"NoTrapSignals"
90*4882a593Smuzhiyun 
91*4882a593Smuzhiyun # Uncomment this to disable the <Ctrl><Alt><Fn> VT switch sequence
92*4882a593Smuzhiyun # (where n is 1 through 12).  This allows clients to receive these key
93*4882a593Smuzhiyun # events.
94*4882a593Smuzhiyun 
95*4882a593Smuzhiyun #    Option	"DontVTSwitch"
96*4882a593Smuzhiyun 
97*4882a593Smuzhiyun # Uncomment this to disable the <Ctrl><Alt><BS> server abort sequence
98*4882a593Smuzhiyun # This allows clients to receive this key event.
99*4882a593Smuzhiyun 
100*4882a593Smuzhiyun #    Option	"DontZap"	"true"
101*4882a593Smuzhiyun 
102*4882a593Smuzhiyun # Uncomment this to disable the <Ctrl><Alt><KP_+>/<KP_-> mode switching
103*4882a593Smuzhiyun # sequences.  This allows clients to receive these key events.
104*4882a593Smuzhiyun 
105*4882a593Smuzhiyun #    Option	"DontZoom"
106*4882a593Smuzhiyun 
107*4882a593Smuzhiyun # Uncomment this to disable tuning with the xvidtune client. With
108*4882a593Smuzhiyun # it the client can still run and fetch card and monitor attributes,
109*4882a593Smuzhiyun # but it will not be allowed to change them. If it tries it will
110*4882a593Smuzhiyun # receive a protocol error.
111*4882a593Smuzhiyun 
112*4882a593Smuzhiyun #    Option	"DisableVidModeExtension"
113*4882a593Smuzhiyun 
114*4882a593Smuzhiyun # Uncomment this to enable the use of a non-local xvidtune client.
115*4882a593Smuzhiyun 
116*4882a593Smuzhiyun #    Option	"AllowNonLocalXvidtune"
117*4882a593Smuzhiyun 
118*4882a593Smuzhiyun # Set the basic blanking screen saver timeout.
119*4882a593Smuzhiyun 
120*4882a593Smuzhiyun     Option	"BlankTime"	"10"	# 10 minutes
121*4882a593Smuzhiyun 
122*4882a593Smuzhiyun # Set the DPMS timeouts.  These are set here because they are global
123*4882a593Smuzhiyun # rather than screen-specific.  These settings alone don't enable DPMS.
124*4882a593Smuzhiyun # It is enabled per-screen (or per-monitor), and even then only when
125*4882a593Smuzhiyun # the driver supports it.
126*4882a593Smuzhiyun 
127*4882a593Smuzhiyun     Option	"StandbyTime"	"10"	# 10 minutes
128*4882a593Smuzhiyun     Option	"SuspendTime"	"10"	# 10 minutes
129*4882a593Smuzhiyun     Option	"OffTime"	"10"	# 10 minutes
130*4882a593Smuzhiyun 
131*4882a593Smuzhiyun EndSection
132*4882a593Smuzhiyun 
133*4882a593Smuzhiyun # **********************************************************************
134*4882a593Smuzhiyun # Input devices
135*4882a593Smuzhiyun # **********************************************************************
136*4882a593Smuzhiyun 
137*4882a593Smuzhiyun # **********************************************************************
138*4882a593Smuzhiyun # Core keyboard's InputDevice section
139*4882a593Smuzhiyun # **********************************************************************
140*4882a593Smuzhiyun 
141*4882a593Smuzhiyun Section "InputDevice"
142*4882a593Smuzhiyun 
143*4882a593Smuzhiyun     Identifier	"Keyboard1"
144*4882a593Smuzhiyun     Driver	"kbd"
145*4882a593Smuzhiyun 
146*4882a593Smuzhiyun # Set the keyboard auto repeat parameters.  Not all platforms implement
147*4882a593Smuzhiyun # this.
148*4882a593Smuzhiyun 
149*4882a593Smuzhiyun     Option	"AutoRepeat"	"500 5"
150*4882a593Smuzhiyun 
151*4882a593Smuzhiyun # Specifiy which keyboard LEDs can be user-controlled (eg, with xset(1)).
152*4882a593Smuzhiyun 
153*4882a593Smuzhiyun #    Option	"Xleds"	"1 2 3"
154*4882a593Smuzhiyun 
155*4882a593Smuzhiyun # To customise the XKB settings to suit your keyboard, modify the
156*4882a593Smuzhiyun # lines below (which are the defaults).  For example, for a European
157*4882a593Smuzhiyun # keyboard, you will probably want to use one of:
158*4882a593Smuzhiyun #
159*4882a593Smuzhiyun #    Option	"XkbModel"	"pc102"
160*4882a593Smuzhiyun #    Option	"XkbModel"	"pc105"
161*4882a593Smuzhiyun #
162*4882a593Smuzhiyun # If you have a Microsoft Natural keyboard, you can use:
163*4882a593Smuzhiyun #
164*4882a593Smuzhiyun #    Option	"XkbModel"	"microsoft"
165*4882a593Smuzhiyun #
166*4882a593Smuzhiyun # If you have a US "windows" keyboard you will want:
167*4882a593Smuzhiyun #
168*4882a593Smuzhiyun #    Option	"XkbModel"	"pc104"
169*4882a593Smuzhiyun #
170*4882a593Smuzhiyun # Then to change the language, change the Layout setting.
171*4882a593Smuzhiyun # For example, a german layout can be obtained with:
172*4882a593Smuzhiyun #
173*4882a593Smuzhiyun #    Option	"XkbLayout"	"de"
174*4882a593Smuzhiyun #
175*4882a593Smuzhiyun # or:
176*4882a593Smuzhiyun #
177*4882a593Smuzhiyun #    Option	"XkbLayout"	"de"
178*4882a593Smuzhiyun #    Option	"XkbVariant"	"nodeadkeys"
179*4882a593Smuzhiyun #
180*4882a593Smuzhiyun # If you'd like to switch the positions of your capslock and
181*4882a593Smuzhiyun # control keys, use:
182*4882a593Smuzhiyun #
183*4882a593Smuzhiyun #    Option	"XkbOptions"	"ctrl:swapcaps"
184*4882a593Smuzhiyun 
185*4882a593Smuzhiyun 
186*4882a593Smuzhiyun # These are the default XKB settings for xorg
187*4882a593Smuzhiyun #
188*4882a593Smuzhiyun #    Option	"XkbRules"	"xorg"
189*4882a593Smuzhiyun #    Option	"XkbModel"	"pc105"
190*4882a593Smuzhiyun #    Option	"XkbLayout"	"us"
191*4882a593Smuzhiyun #    Option	"XkbVariant"	""
192*4882a593Smuzhiyun #    Option	"XkbOptions"	""
193*4882a593Smuzhiyun 
194*4882a593Smuzhiyun EndSection
195*4882a593Smuzhiyun 
196*4882a593Smuzhiyun 
197*4882a593Smuzhiyun # **********************************************************************
198*4882a593Smuzhiyun # Core Pointer's InputDevice section
199*4882a593Smuzhiyun # **********************************************************************
200*4882a593Smuzhiyun 
201*4882a593Smuzhiyun Section "InputDevice"
202*4882a593Smuzhiyun 
203*4882a593Smuzhiyun # Identifier and driver
204*4882a593Smuzhiyun 
205*4882a593Smuzhiyun     Identifier	"Mouse1"
206*4882a593Smuzhiyun     Driver	"mouse"
207*4882a593Smuzhiyun 
208*4882a593Smuzhiyun # The mouse protocol and device.  The device is normally set to /dev/mouse,
209*4882a593Smuzhiyun # which is usually a symbolic link to the real device.
210*4882a593Smuzhiyun 
211*4882a593Smuzhiyun     Option	"Protocol"	"Microsoft"
212*4882a593Smuzhiyun     Option	"Device"	"/dev/mouse"
213*4882a593Smuzhiyun 
214*4882a593Smuzhiyun # On platforms where PnP mouse detection is supported the following
215*4882a593Smuzhiyun # protocol setting can be used when using a newer PnP mouse:
216*4882a593Smuzhiyun 
217*4882a593Smuzhiyun #    Option	"Protocol"	"Auto"
218*4882a593Smuzhiyun 
219*4882a593Smuzhiyun # When using mouse connected to a PS/2 port (aka "MousePort"), set the
220*4882a593Smuzhiyun # the protocol as follows.  On some platforms some other settings may
221*4882a593Smuzhiyun # be available.
222*4882a593Smuzhiyun 
223*4882a593Smuzhiyun #    Option "Protocol"	"PS/2"
224*4882a593Smuzhiyun 
225*4882a593Smuzhiyun # Baudrate and SampleRate are only for some older Logitech mice.  In
226*4882a593Smuzhiyun # almost every case these lines should be omitted.
227*4882a593Smuzhiyun 
228*4882a593Smuzhiyun #    Option	"BaudRate"	"9600"
229*4882a593Smuzhiyun #    Option	"SampleRate"	"150"
230*4882a593Smuzhiyun 
231*4882a593Smuzhiyun # Emulate3Buttons is an option for 2-button mice
232*4882a593Smuzhiyun # Emulate3Timeout is the timeout in milliseconds (default is 50ms)
233*4882a593Smuzhiyun 
234*4882a593Smuzhiyun #    Option	"Emulate3Buttons"
235*4882a593Smuzhiyun #    Option	"Emulate3Timeout"	"50"
236*4882a593Smuzhiyun 
237*4882a593Smuzhiyun # ChordMiddle is an option for some 3-button Logitech mice, or any
238*4882a593Smuzhiyun # 3-button mouse where the middle button generates left+right button
239*4882a593Smuzhiyun # events.
240*4882a593Smuzhiyun 
241*4882a593Smuzhiyun #    Option	"ChordMiddle"
242*4882a593Smuzhiyun 
243*4882a593Smuzhiyun EndSection
244*4882a593Smuzhiyun 
245*4882a593Smuzhiyun Section "InputDevice"
246*4882a593Smuzhiyun     Identifier	"Mouse2"
247*4882a593Smuzhiyun     Driver	"mouse"
248*4882a593Smuzhiyun     Option	"Protocol"	"MouseMan"
249*4882a593Smuzhiyun     Option	"Device"	"/dev/mouse2"
250*4882a593Smuzhiyun EndSection
251*4882a593Smuzhiyun 
252*4882a593Smuzhiyun # Some examples of extended input devices
253*4882a593Smuzhiyun 
254*4882a593Smuzhiyun # Section "InputDevice"
255*4882a593Smuzhiyun #    Identifier	"spaceball"
256*4882a593Smuzhiyun #    Driver	"magellan"
257*4882a593Smuzhiyun #    Option	"Device"	"/dev/cua0"
258*4882a593Smuzhiyun # EndSection
259*4882a593Smuzhiyun #
260*4882a593Smuzhiyun # Section "InputDevice"
261*4882a593Smuzhiyun #    Identifier	"spaceball2"
262*4882a593Smuzhiyun #    Driver	"spaceorb"
263*4882a593Smuzhiyun #    Option	"Device"	"/dev/cua0"
264*4882a593Smuzhiyun # EndSection
265*4882a593Smuzhiyun #
266*4882a593Smuzhiyun # Section "InputDevice"
267*4882a593Smuzhiyun #    Identifier	"touchscreen0"
268*4882a593Smuzhiyun #    Driver	"microtouch"
269*4882a593Smuzhiyun #    Option	"Device"	"/dev/ttyS0"
270*4882a593Smuzhiyun #    Option	"MinX"		"1412"
271*4882a593Smuzhiyun #    Option	"MaxX"		"15184"
272*4882a593Smuzhiyun #    Option	"MinY"		"15372"
273*4882a593Smuzhiyun #    Option	"MaxY"		"1230"
274*4882a593Smuzhiyun #    Option	"ScreenNumber"	"0"
275*4882a593Smuzhiyun #    Option	"ReportingMode"	"Scaled"
276*4882a593Smuzhiyun #    Option	"ButtonNumber"	"1"
277*4882a593Smuzhiyun #    Option	"SendCoreEvents"
278*4882a593Smuzhiyun # EndSection
279*4882a593Smuzhiyun #
280*4882a593Smuzhiyun # Section "InputDevice"
281*4882a593Smuzhiyun #    Identifier	"touchscreen1"
282*4882a593Smuzhiyun #    Driver	"elo2300"
283*4882a593Smuzhiyun #    Option	"Device"	"/dev/ttyS0"
284*4882a593Smuzhiyun #    Option	"MinX"		"231"
285*4882a593Smuzhiyun #    Option	"MaxX"		"3868"
286*4882a593Smuzhiyun #    Option	"MinY"		"3858"
287*4882a593Smuzhiyun #    Option	"MaxY"		"272"
288*4882a593Smuzhiyun #    Option	"ScreenNumber"	"0"
289*4882a593Smuzhiyun #    Option	"ReportingMode"	"Scaled"
290*4882a593Smuzhiyun #    Option	"ButtonThreshold"	"17"
291*4882a593Smuzhiyun #    Option	"ButtonNumber"	"1"
292*4882a593Smuzhiyun #    Option	"SendCoreEvents"
293*4882a593Smuzhiyun # EndSection
294*4882a593Smuzhiyun 
295*4882a593Smuzhiyun # **********************************************************************
296*4882a593Smuzhiyun # Monitor section
297*4882a593Smuzhiyun # **********************************************************************
298*4882a593Smuzhiyun 
299*4882a593Smuzhiyun # Any number of monitor sections may be present
300*4882a593Smuzhiyun 
301*4882a593Smuzhiyun Section "Monitor"
302*4882a593Smuzhiyun 
303*4882a593Smuzhiyun # The identifier line must be present.
304*4882a593Smuzhiyun 
305*4882a593Smuzhiyun     Identifier	"Generic Monitor"
306*4882a593Smuzhiyun 
307*4882a593Smuzhiyun # HorizSync is in kHz unless units are specified.
308*4882a593Smuzhiyun # HorizSync may be a comma separated list of discrete values, or a
309*4882a593Smuzhiyun # comma separated list of ranges of values.
310*4882a593Smuzhiyun # NOTE: THE VALUES HERE ARE EXAMPLES ONLY.  REFER TO YOUR MONITOR'S
311*4882a593Smuzhiyun # USER MANUAL FOR THE CORRECT NUMBERS.
312*4882a593Smuzhiyun 
313*4882a593Smuzhiyun #    HorizSync	31.5  # typical for a single frequency fixed-sync monitor
314*4882a593Smuzhiyun #    HorizSync	30-64         # multisync
315*4882a593Smuzhiyun #    HorizSync	31.5, 35.2    # multiple fixed sync frequencies
316*4882a593Smuzhiyun #    HorizSync	15-25, 30-50  # multiple ranges of sync frequencies
317*4882a593Smuzhiyun 
318*4882a593Smuzhiyun # VertRefresh is in Hz unless units are specified.
319*4882a593Smuzhiyun # VertRefresh may be a comma separated list of discrete values, or a
320*4882a593Smuzhiyun # comma separated list of ranges of values.
321*4882a593Smuzhiyun # NOTE: THE VALUES HERE ARE EXAMPLES ONLY.  REFER TO YOUR MONITOR'S
322*4882a593Smuzhiyun # USER MANUAL FOR THE CORRECT NUMBERS.
323*4882a593Smuzhiyun 
324*4882a593Smuzhiyun #    VertRefresh	60  # typical for a single frequency fixed-sync monitor
325*4882a593Smuzhiyun 
326*4882a593Smuzhiyun #    VertRefresh	50-100        # multisync
327*4882a593Smuzhiyun #    VertRefresh	60, 65        # multiple fixed sync frequencies
328*4882a593Smuzhiyun #    VertRefresh	40-50, 80-100 # multiple ranges of sync frequencies
329*4882a593Smuzhiyun 
330*4882a593Smuzhiyun # Modes can be specified in two formats.  A compact one-line format, or
331*4882a593Smuzhiyun # a multi-line format.
332*4882a593Smuzhiyun 
333*4882a593Smuzhiyun # A generic VGA 640x480 mode (hsync = 31.5kHz, refresh = 60Hz)
334*4882a593Smuzhiyun # These two are equivalent
335*4882a593Smuzhiyun 
336*4882a593Smuzhiyun #    ModeLine "640x480" 25.175 640 664 760 800 480 491 493 525
337*4882a593Smuzhiyun 
338*4882a593Smuzhiyun     Mode "640x480"
339*4882a593Smuzhiyun         DotClock	25.175
340*4882a593Smuzhiyun         HTimings	640 664 760 800
341*4882a593Smuzhiyun         VTimings	480 491 493 525
342*4882a593Smuzhiyun     EndMode
343*4882a593Smuzhiyun 
344*4882a593Smuzhiyun # These two are equivalent
345*4882a593Smuzhiyun 
346*4882a593Smuzhiyun #    ModeLine "1024x768i" 45 1024 1048 1208 1264 768 776 784 817 Interlace
347*4882a593Smuzhiyun 
348*4882a593Smuzhiyun #    Mode "1024x768i"
349*4882a593Smuzhiyun #        DotClock	45
350*4882a593Smuzhiyun #        HTimings	1024 1048 1208 1264
351*4882a593Smuzhiyun #        VTimings	768 776 784 817
352*4882a593Smuzhiyun #        Flags		"Interlace"
353*4882a593Smuzhiyun #    EndMode
354*4882a593Smuzhiyun 
355*4882a593Smuzhiyun # If a monitor has DPMS support, that can be indicated here.  This will
356*4882a593Smuzhiyun # enable DPMS when the monitor is used with drivers that support it.
357*4882a593Smuzhiyun 
358*4882a593Smuzhiyun #    Option	"dpms"
359*4882a593Smuzhiyun 
360*4882a593Smuzhiyun # If a monitor requires that the sync signals be superimposed on the
361*4882a593Smuzhiyun # green signal, the following option will enable this when used with
362*4882a593Smuzhiyun # drivers that support it.  Only a relatively small range of hardware
363*4882a593Smuzhiyun # (and drivers) actually support this.
364*4882a593Smuzhiyun 
365*4882a593Smuzhiyun #    Option	"sync on green"
366*4882a593Smuzhiyun 
367*4882a593Smuzhiyun EndSection
368*4882a593Smuzhiyun 
369*4882a593Smuzhiyun # **********************************************************************
370*4882a593Smuzhiyun # Graphics device section
371*4882a593Smuzhiyun # **********************************************************************
372*4882a593Smuzhiyun 
373*4882a593Smuzhiyun # Any number of graphics device sections may be present
374*4882a593Smuzhiyun 
375*4882a593Smuzhiyun Section "Device"
376*4882a593Smuzhiyun 
377*4882a593Smuzhiyun # The Identifier must be present.
378*4882a593Smuzhiyun 
379*4882a593Smuzhiyun     Identifier	"Generic VESA"
380*4882a593Smuzhiyun 
381*4882a593Smuzhiyun # The Driver line must be present.  When using run-time loadable driver
382*4882a593Smuzhiyun # modules, this line instructs the server to load the specified driver
383*4882a593Smuzhiyun # module.  Even when not using loadable driver modules, this line
384*4882a593Smuzhiyun # indicates which driver should interpret the information in this section.
385*4882a593Smuzhiyun 
386*4882a593Smuzhiyun     Driver	"vesa"
387*4882a593Smuzhiyun 
388*4882a593Smuzhiyun # The chipset line is optional in most cases.  It can be used to override
389*4882a593Smuzhiyun # the driver's chipset detection, and should not normally be specified.
390*4882a593Smuzhiyun 
391*4882a593Smuzhiyun #    Chipset	"generic"
392*4882a593Smuzhiyun 
393*4882a593Smuzhiyun # Various other lines can be specified to override the driver's automatic
394*4882a593Smuzhiyun # detection code.  In most cases they are not needed.
395*4882a593Smuzhiyun 
396*4882a593Smuzhiyun #    VideoRam	256
397*4882a593Smuzhiyun #    Clocks	25.2 28.3
398*4882a593Smuzhiyun 
399*4882a593Smuzhiyun # The BusID line is used to specify which of possibly multiple devices
400*4882a593Smuzhiyun # this section is intended for.  When this line isn't present, a device
401*4882a593Smuzhiyun # section can only match up with the primary video device.  For PCI
402*4882a593Smuzhiyun # devices a line like the following could be used.  This line should not
403*4882a593Smuzhiyun # normally be included unless there is more than one video device
404*4882a593Smuzhiyun # intalled.
405*4882a593Smuzhiyun 
406*4882a593Smuzhiyun #    BusID	"PCI:0:10:0"
407*4882a593Smuzhiyun 
408*4882a593Smuzhiyun # Various option lines can be added here as required.  Some options
409*4882a593Smuzhiyun # are more appropriate in Screen sections, Display subsections or even
410*4882a593Smuzhiyun # Monitor sections.
411*4882a593Smuzhiyun 
412*4882a593Smuzhiyun #    Option	"hw cursor" "off"
413*4882a593Smuzhiyun 
414*4882a593Smuzhiyun EndSection
415*4882a593Smuzhiyun 
416*4882a593Smuzhiyun Section "Device"
417*4882a593Smuzhiyun     Identifier	"any supported Trident chip"
418*4882a593Smuzhiyun     Driver	"trident"
419*4882a593Smuzhiyun EndSection
420*4882a593Smuzhiyun 
421*4882a593Smuzhiyun Section "Device"
422*4882a593Smuzhiyun     Identifier	"MGA Millennium I"
423*4882a593Smuzhiyun     Driver	"mga"
424*4882a593Smuzhiyun     Option	"hw cursor" "off"
425*4882a593Smuzhiyun     BusID	"PCI:0:10:0"
426*4882a593Smuzhiyun EndSection
427*4882a593Smuzhiyun 
428*4882a593Smuzhiyun Section "Device"
429*4882a593Smuzhiyun     Identifier	"MGA G200 AGP"
430*4882a593Smuzhiyun     Driver	"mga"
431*4882a593Smuzhiyun     BusID	"PCI:1:0:0"
432*4882a593Smuzhiyun     Option	"pci retry"
433*4882a593Smuzhiyun EndSection
434*4882a593Smuzhiyun 
435*4882a593Smuzhiyun 
436*4882a593Smuzhiyun # **********************************************************************
437*4882a593Smuzhiyun # Screen sections.
438*4882a593Smuzhiyun # **********************************************************************
439*4882a593Smuzhiyun 
440*4882a593Smuzhiyun # Any number of screen sections may be present.  Each describes
441*4882a593Smuzhiyun # the configuration of a single screen.  A single specific screen section
442*4882a593Smuzhiyun # may be specified from the X server command line with the "-screen"
443*4882a593Smuzhiyun # option.
444*4882a593Smuzhiyun 
445*4882a593Smuzhiyun Section "Screen"
446*4882a593Smuzhiyun 
447*4882a593Smuzhiyun # The Identifier, Device and Monitor lines must be present
448*4882a593Smuzhiyun 
449*4882a593Smuzhiyun     Identifier	"Screen 1"
450*4882a593Smuzhiyun     Device	"Generic VESA"
451*4882a593Smuzhiyun     Monitor	"Generic Monitor"
452*4882a593Smuzhiyun 
453*4882a593Smuzhiyun # The favoured Depth and/or Bpp may be specified here
454*4882a593Smuzhiyun 
455*4882a593Smuzhiyun     DefaultDepth 8
456*4882a593Smuzhiyun 
457*4882a593Smuzhiyun     SubSection "Display"
458*4882a593Smuzhiyun         Depth		8
459*4882a593Smuzhiyun         Modes		"640x480"
460*4882a593Smuzhiyun         ViewPort	0 0
461*4882a593Smuzhiyun         Virtual 	800 600
462*4882a593Smuzhiyun     EndSubsection
463*4882a593Smuzhiyun 
464*4882a593Smuzhiyun     SubSection "Display"
465*4882a593Smuzhiyun 	Depth		4
466*4882a593Smuzhiyun         Modes		"640x480"
467*4882a593Smuzhiyun     EndSubSection
468*4882a593Smuzhiyun 
469*4882a593Smuzhiyun     SubSection "Display"
470*4882a593Smuzhiyun 	Depth		1
471*4882a593Smuzhiyun         Modes		"640x480"
472*4882a593Smuzhiyun     EndSubSection
473*4882a593Smuzhiyun 
474*4882a593Smuzhiyun EndSection
475*4882a593Smuzhiyun 
476*4882a593Smuzhiyun 
477*4882a593Smuzhiyun Section "Screen"
478*4882a593Smuzhiyun     Identifier		"Screen MGA1"
479*4882a593Smuzhiyun     Device		"MGA Millennium I"
480*4882a593Smuzhiyun     Monitor		"Generic Monitor"
481*4882a593Smuzhiyun     Option		"no accel"
482*4882a593Smuzhiyun     DefaultDepth	16
483*4882a593Smuzhiyun #    DefaultDepth	24
484*4882a593Smuzhiyun 
485*4882a593Smuzhiyun     SubSection "Display"
486*4882a593Smuzhiyun 	Depth		8
487*4882a593Smuzhiyun 	Modes		"1280x1024"
488*4882a593Smuzhiyun 	Option		"rgb bits" "8"
489*4882a593Smuzhiyun 	Visual		"StaticColor"
490*4882a593Smuzhiyun     EndSubSection
491*4882a593Smuzhiyun     SubSection "Display"
492*4882a593Smuzhiyun 	Depth		16
493*4882a593Smuzhiyun 	Modes		"1280x1024"
494*4882a593Smuzhiyun     EndSubSection
495*4882a593Smuzhiyun     SubSection "Display"
496*4882a593Smuzhiyun 	Depth		24
497*4882a593Smuzhiyun 	Modes		"1280x1024"
498*4882a593Smuzhiyun     EndSubSection
499*4882a593Smuzhiyun EndSection
500*4882a593Smuzhiyun 
501*4882a593Smuzhiyun 
502*4882a593Smuzhiyun Section "Screen"
503*4882a593Smuzhiyun     Identifier		"Screen MGA2"
504*4882a593Smuzhiyun     Device		"MGA G200 AGP"
505*4882a593Smuzhiyun     Monitor		"Generic Monitor"
506*4882a593Smuzhiyun     DefaultDepth	8
507*4882a593Smuzhiyun 
508*4882a593Smuzhiyun     SubSection "Display"
509*4882a593Smuzhiyun 	Depth		8
510*4882a593Smuzhiyun 	Modes		"1280x1024"
511*4882a593Smuzhiyun 	Option		"rgb bits" "8"
512*4882a593Smuzhiyun 	Visual		"StaticColor"
513*4882a593Smuzhiyun     EndSubSection
514*4882a593Smuzhiyun EndSection
515*4882a593Smuzhiyun 
516*4882a593Smuzhiyun 
517*4882a593Smuzhiyun # **********************************************************************
518*4882a593Smuzhiyun # ServerLayout sections.
519*4882a593Smuzhiyun # **********************************************************************
520*4882a593Smuzhiyun 
521*4882a593Smuzhiyun # Any number of ServerLayout sections may be present.  Each describes
522*4882a593Smuzhiyun # the way multiple screens are organised.  A specific ServerLayout
523*4882a593Smuzhiyun # section may be specified from the X server command line with the
524*4882a593Smuzhiyun # "-layout" option.  In the absence of this, the first section is used.
525*4882a593Smuzhiyun # When now ServerLayout section is present, the first Screen section
526*4882a593Smuzhiyun # is used alone.
527*4882a593Smuzhiyun 
528*4882a593Smuzhiyun Section "ServerLayout"
529*4882a593Smuzhiyun 
530*4882a593Smuzhiyun # The Identifier line must be present
531*4882a593Smuzhiyun 
532*4882a593Smuzhiyun     Identifier	"Main Layout"
533*4882a593Smuzhiyun 
534*4882a593Smuzhiyun # Each Screen line specifies a Screen section name, and optionally
535*4882a593Smuzhiyun # the relative position of other screens.  The four names after
536*4882a593Smuzhiyun # primary screen name are the screens to the top, bottom, left and right
537*4882a593Smuzhiyun # of the primary screen.  In this example, screen 2 is located to the
538*4882a593Smuzhiyun # right of screen 1.
539*4882a593Smuzhiyun 
540*4882a593Smuzhiyun     Screen	"Screen MGA 1"	""	""	""	"Screen MGA 2"
541*4882a593Smuzhiyun     Screen	"Screen MGA 2"	""	""	"Screen MGA 1"	""
542*4882a593Smuzhiyun 
543*4882a593Smuzhiyun # Each InputDevice line specifies an InputDevice section name and
544*4882a593Smuzhiyun # optionally some options to specify the way the device is to be
545*4882a593Smuzhiyun # used.  Those options include "CorePointer", "CoreKeyboard" and
546*4882a593Smuzhiyun # "SendCoreEvents".  In this example, "Mouse1" is the core pointer,
547*4882a593Smuzhiyun # and "Mouse2" is an extended input device that also generates core
548*4882a593Smuzhiyun # pointer events (i.e., both mice will move the standard pointer).
549*4882a593Smuzhiyun 
550*4882a593Smuzhiyun     InputDevice	"Mouse1" "CorePointer"
551*4882a593Smuzhiyun     InputDevice	"Mouse2" "SendCoreEvents"
552*4882a593Smuzhiyun     InputDevice "Keyboard1" "CoreKeyboard"
553*4882a593Smuzhiyun 
554*4882a593Smuzhiyun EndSection
555*4882a593Smuzhiyun 
556*4882a593Smuzhiyun 
557*4882a593Smuzhiyun Section "ServerLayout"
558*4882a593Smuzhiyun     Identifier	"another layout"
559*4882a593Smuzhiyun     Screen	"Screen 1"
560*4882a593Smuzhiyun     Screen	"Screen MGA 1"
561*4882a593Smuzhiyun     InputDevice	"Mouse1" "CorePointer"
562*4882a593Smuzhiyun     InputDevice "Keyboard1" "CoreKeyboard"
563*4882a593Smuzhiyun EndSection
564*4882a593Smuzhiyun 
565*4882a593Smuzhiyun 
566*4882a593Smuzhiyun Section "ServerLayout"
567*4882a593Smuzhiyun     Identifier	"simple layout"
568*4882a593Smuzhiyun     Screen	"Screen 1"
569*4882a593Smuzhiyun     InputDevice	"Mouse1" "CorePointer"
570*4882a593Smuzhiyun     InputDevice "Keyboard1" "CoreKeyboard"
571*4882a593Smuzhiyun EndSection
572*4882a593Smuzhiyun 
573