xf86config使用说明
时常看到许多刚接触Linux的人,在与Xwindow奋战了数天之後,在不得其门
而入之下.於是就放弃了使用Xwindow.但是没有Xwindow的Linux就不好玩了.事
实上目前的Xwindow的设定已经是相当的简单了!记得在一年前的时候,那时的
Xwindow是没有设定程式可以用的,唯一可以参考的资料就只有内附的一些□例
或是一些大厂牌的萤幕或是显示卡的资料.显示卡还没什麽问题,因为大家用的都
差不多.但是萤幕的问题就大了,有几个人的萤幕是用较知名的的牌子的呢?所
以在那个时候,经会看到'烧萤幕'的恶耗出现在bbs的board上.在那个时候,
为了要让我的Linux能够用Xwindow,我还特别去计算显示用的参数,结果算来算
去都没用.最後只好求助於人(把别人的□例拿来改).
无论如何,痛苦的日子已经过去了.现在的Xwindow有了StevenT.Zwaska
先生提供的设定程式,在资料齐全的情况下只要五分钟就可以设定完成了.看来
这位Zwaska先生可以说是"萤幕救星"了!
设定的问题在现在来说是很容易解决的,我写这篇的文章的的目地并不是要
告诉大家如何来安装Xwindow,我希望能够提供大家一些在Xwindow好用的软体的资
讯.希望以後有更多的人来向大家介绍更好用的软体.不过在要介绍这些软体之
前,还是要先让大家的Xwindow动起来.所以下面先介绍如何设定你的Xwindow.
我将设定分为几个步骤,如无意外的话应该可以很顺利的安装起来.
(1)准备需要的资料:
请先准备好你的萤幕及显示卡的说明书,在设定Xwindow时将会用到萤幕的垂直
及水平扫描频率.还有显示卡所使用的晶片,卡上的ram的大小.如果你是S3系
列或是较特殊的卡你可能须要DACchip和Clockchip这两颗IC的型号.特别值得
一提的是S3系列的卡的说明书上似乎很少有写试用那一颗Clockchip的,有的连
DACchip是哪一颗都没写.我每次帮别人装的时候,遇到S3的卡都要把卡拔起来
一颗一颗IC去找,真是烦死了!
(2)执行设定程式:
首先要提醒的是,如果你的是S3卡,那麽你最好去找XFree86v3.1.1来装.如果
你用XFree86v3.1.0有可能会装不起来.因为有一些bug!你可以到各大ftpsite
去抓.你可以全抓回来装,或者学我只装一小部份.以ftp.edu.tw为例,你可以
在/UNIX/linux/X11/XFree86-3.1.1下找到你所需要的程式!你最少要抓
X311S3.tgz及X311bin.tgz这两个档案回来在/usr/X11R6的目录下解开!如果可以
的话,请不要抓X311cfg.tgz这个档,它有一些Bug会造成startx的环境变得很奇
怪!如果你是装R5的话你可以run/usr/X11/lib/ConfigXF86/ConfigXF86,R6
的user请run/usr/X11R6/lib/ConfigXF86/xf86config-XFree86-3.1,而安装
XFree86v3.1.1的user请run/usr/X11R6/bin/xf86config这支设定程式!不要
弄错了,不然装R6却去runR5的设定程式那就太好笑了!因为一共有三支设定程式
我只选xf86config这支程式以S3的卡为例来说明!其他的设定程式及显示卡的
设定步骤只会少不会多!少的步骤大家也就不用去管它了,因为那表示你的卡
没有那些东西好设定!
(3)设定滑鼠:
在执行设定程式後,前面几个画面没什麽重要的,你可以一直按ENTER直跳到
设定滑鼠的地方!然後你将会看到下面几个选项:
Firstspecifyamouseprotocoltype.Chooseonefromthefollowinglist:
1.Microsoftcompatible(2-buttonprotocol)
2.MouseSystems(3-buttonprotocol)
3.BusMouse
4.PS/2Mouse
5.LogitechMouse(serial,oldtype,Logitechprotocol)
6.LogitechMouseMan(Microsoftcompatible)
7.MMSeries
8.MMHitTablet
相信大家都知道自己的滑鼠该选那一种的吧??如果你的滑鼠是可以2键与3键切换的
建议你使用3键的!!因为Xwindow下会使用到第三个键!另外logitech的滑鼠一般都
应该要选第六项!
选好之後接著会根据你选的mouse问一些东西!你可以看他的说明来决定要选Yes或
No!根据我的经验如果你不知道要选Yes或No的时候,多半以选No为佳!尤其如果
你是选第六种mouse的,当它问你要不要使用ChordMiddle时,请千万要选No.不然
使用的时候会有问题!当你在使用Xwindow时如果mouse不听话的话,你可以再做
一次mouse的设定!
接下来它会问你你的mouse的device档是那一个,用预设的/dev/mouse就可以了!
当你的滑鼠不听话的时候,你可以先确定一下/dev/mouse是否link到正确的档案!
(4)设定keyboard:
在设定完mouse後,它会问你关於keyboard的设定:
Pleaseanswerthefollowingquestionwitheither'y'or'n'.
DoyouwanttoenablethesebindingsfortheAltkeys?
直接按Enter跳过就行了!
(5)设定萤幕:
开始进入重要的部份了.你一开始会看到下面的选项:
ItisVERYIMPORTANTthatyoudonotspecifyamonitortypewitha
horizontal
syncrangethatisbeyondthecapabilitiesofyourmonitor.Ifindoubt,
chooseaconservativesetting.
hsyncinkHz;monitortypewithcharacteristicmodes
131.5;StandardVGA,640x480@60Hz
231.5-35.1;SuperVGA,800x600@56Hz
331.5,35.5;8514Compatible,1024x768@87Hzinterlaced(no800x600)
431.5,35.15,35.5;SuperVGA,1024x768@87Hzinterlaced,800x600@56
Hz
531.5-37.9;ExtendedSuperVGA,800x600@60Hz,640x480@72Hz
631.5-48.5;Non-InterlacedSVGA,1024x768@60Hz,800x600@72Hz
731.5-57.0;HighFrequencySVGA,1024x768@70Hz
831.5-64.3;Monitorthatcando1280x1024@60Hz
931.5-79.0;Monitorthatcando1280x1024@74Hz
10Enteryourownhorizontalsyncrange
Enteryourchoice(1-10):
此时请拿起你先前准备的资料比对上面的选项,如果有一样的数据的就选那一项,
如果找不到的话,就请按输入"10",输入自己萤幕的水平扫描频率!
接下来就是设定垂直扫描频率了:
Youmustindicatetheverticalsyncrangeofyourmonitor.Youcaneither
selectoneofthepredefinedrangesbelowthatcorrespondtoindustry-
standardmonitortypes,orgiveaspecificrange.Forinterlacedmodes,
thenumberthatcountsisthehighone(e.g.87Hzratherthan43Hz).
150-70
250-90
350-100
440-150
5Enteryourownverticalsyncrange
同样的,如果有相同的就输入该选项的代码.若没有的话,就选5然後输入自己
的参数.特别要提醒的是,如果设定完之後,执行Xwindow萤幕却乱掉了.不妨
重新设定你的垂直扫描频,从1,2,3的选项中挑一个range比你小却最接近你的选项.
然後它会问你要一些厂牌,或是萤幕的型号的资料料,随便输入就可以了!
(6)设定显示卡:
接下来就是最重的重头戏了!首先它会问你要不要看看内建的一些card的资料!
要不要随便你!反正最後还是要做相同的设定的!在这里我们就选不要了!
再下来它会问你你的显示卡是哪一类的:
1TheXF86_Monoserver.Thisamonochromeserverthatshouldworkonany
VGA-compatiblecard,in640x480(moreonsomeSVGAchipsets).
2TheXF86_VGA16server.Thisisa16-colorVGAserverthatshouldworkon
anyVGA-compatiblecard.
3TheXF86_SVGAserver.Thisisa256colorSVGAserverthatsupportsa
anumberofSVGAchipsets.ItisacceleratedonsomeCirrusandWD
chipsets;itsupports16/32-bitcoloroncertainCirrusconfigurations.
4Theacceleratedservers.TheseincludeXF86_S3,XF86_Mach32,XF86_Mach8,
XF86_8514,XF86_P9000,XF86_AGX,XF86_W32andXF86_Mach64.
Thesefourservertypescorrespondtothefourdifferent"Screen"sections
in
XF86Config(vga2,vga16,svga,accel).
Whichoneofthesescreentypesdoyouintendtorunbydefault(1-4)?
请选择你自己的卡相同的就行了!也就是如果你是ET4000的,就选3.如果你是S3
系列的就选4,下面我将以S3为□例继续做下去!其他的都是大同小异!
接下来它会问你要不要做symbollink的动作!请选Y
Pleaseanswerthefollowingquestionwitheither'y'or'n'.
Doyouwantmetosetthesymboliclink?
然後它会问你:
Doyouwanttosetitin/var/X11R6/bin?
当然回答Y了
再下来是问你要和那一个server程式做link:
Selectanaccelserver:
1XF86_S3
2XF86_Mach32
3XF86_Mach8
4XF86_8514
5XF86_P9000
6XF86_AGX
7XF86_W32
8XF86_Mach64
Whichaccelserver:
在这个□例里我们选1
然後它会问你的显示卡上有多少ram:
Howmuchvideomemorydoyouhaveonyourvideocard:
1256K
2512K
31024K
42048K
54096K
6Other
Enteryourchoice:
我以S3864为例,它上面有2MB的ram.所以选4!
然後又是要你输入厂牌和型号,随便给它几个英文字就可以了!
接下来是S3和AGX的显示卡所特有的RAMDACchip的设定...
TheRAMDACsettingonlyappliestotheS3andAGXservers.SomeRAMDAC'sare
auto-detectedbytheserver.ThedetectionofaRAMDACisforcedbyusinga
Ramdac"identifier"lineintheDevicesection.Theidentifiersareshown
attherightofthefollowingtableofRAMDACtypes:
1AT&T20C490(S3server)att20c490
2AT&T20C498/21C498/22C498(S3)att20c498
3AT&T20C505(S3)att20c505
4BrookTreeBT481(AGX)bt481
5BrookTreeBT482(AGX)bt482
6BrookTreeBT485/9485(S3)bt485
7SierraSC15025(S3,AGX)sc15025
8S3GenDAC(86C708)(autodetected)s3gendac
9S3SDAC(86C716)(autodetected)s3_sdac
10STG-1700(S3)stg1700
11TI3020(S3)ti3020
12TI3025(S3)ti3025
13NormalDACnormal
Justpressenterifyoudon'twantaRamdacsetting.
WhatRamdacsettingdoyouwant(1-13)?
请依照你实际的卡上所装置的RAMDAC来选择!
在下来就是最讨厌的Clockchip的设定了,
AClockchiplineintheDevicesectionforcesthedetectionofa
programmableclockdevice.Withaclockchipenabled,anyrequired
clockcanbeprogrammedwithoutrequiringprobingofclocksora
Clocksline.Mostcardsdon'thaveaprogrammableclockchip.
Choosefromthefollowinglist:
1Chrontel8391(uncertainatthetimeofwriting)ch8391
2ICD2061Aandcompatibles(ICS9161A,DCS2824)icd2061a
3ICS2595ics2595
4ICS5342(similartoSDAC,butnotcompletelycompatible)ics5342
5S3GenDAC(86C708)andICS5300(autodetected)s3gendac
6S3SDAC(86C716)s3_sdac
7SierraSC11412sc11412
8TI3025ti3025
Justpressenterifyoudon'twantaClockchipsetting.
WhatClockchipsettingdoyouwant(1-8)?
为什麽我要说最讨厌呢??因为通常说明书上都不会有这颗chip的型号!把卡拿起
来看也不一定找得到!如果真的不知道是那一颗的的话,就只好用猜的了!!我都
猜2,不然就是5或者是6.....总之,最好能够确定.如果不得已要用猜的.....
希望上帝保佑,别把萤幕给烧了!
接下来是做测试,以便抓到正确的clock.不过这对有clockchip的卡而言,却是
多馀的.所以它也不会帮你做test.只有没有clockchip的卡会做test!
(7)选择显示模式:
接下来就是要选择显示模式:
Foreachdepth,alistofmodes(resolutions)isdefined.Thedefault
resolutionthattheserverwillstart-upwithwillbethefirstlisted
modethatcanbesupportedbythemonitorandcard.
Currentlyitissetto:
"640x480""800x600""1024x768""1280x1024"for8bpp
"640x480""800x600""1024x768"for16bpp
"640x480""800x600"for32bpp
Notethat16bppand32bppareonlysupportedonafewconfigurations.
Modesthatcannotbesupportedduetomonitororclockconstraintswill
beautomaticallyskippedbytheserver.
1Changethemodesfor8pp(256colors)
2Changethemodesfor16bpp(32K/64Kcolors)
3Changethemodesfor32bpp(24-bitcolor)
4ThemodesareOK,continue.
Enteryourchoice:
你可以根据你的卡及你所想要的显示模式来做选择.一般而言,以256色为最
普通的选择.故在此我们选1.
紧接著它会要你输入你所想要的显示模式:
Selectmodesfromthefollowinglist:
1"640x400"
2"640x480"
3"800x600"
4"1024x768"
5"1280x1024"
6"320x200"
7"320x240"
8"400x300"
Pleasetypethedigitscorrespondingtothemodesthatyouwanttoselect.
Forexample,432selects"1024x768""800x600""640x480",witha
defaultmodeof1024x768.
Whichmodes?
Xwindow允许你在执行其间切换显示的解析度!你所能切换的解析度,就是你现在
所选择的,假设我们的配备都不错我们可以输入54321,这样我们就有五种解析度
可供选择!!其中第一个选的就是一开始进入Xwindow的预设的解析度!不过要注意
的是!\未必你所选的解析度就一定会出现.这要看你的配备是否配合!!你可以在
进入Xwindow後,按ctrl-alt-'+'或ctrl-alt-'-'来做切换!
选好之後会回到选前一个选择显示模式的选单,此时选第四项
'4ThemodesareOK,continue.'就可以了!!
(8)选择设定档名称:
接下来它会问你要不要将设定写入正确的的设定档,选YES就可以了..
IamgoingtowritetheXF86Configfilenow.Makesureyoudon'taccidently
overwriteapreviouslyconfiguredone.
ShallIwriteitto/etc/XF86Config?
(9)OK!!
终於完成了!!很累吧??现在就是成果揭晓的时刻了,输入startx或者是openwin
如果都没什麽问题的话,你就可以看到Xwindow了!!当你进入Xwindow後你可能会
发现你的画面可能会偏掉!这时你可以先开一个xterm,然後执行vgaset这支程式
,你会看到你目前的Xwindow的一些显示参数!!此时你可以按'R'来将画面往左移,
按'r'来往右移!按'B'将萤幕往上移'b'往下移!vgaset还可以调整其他的参数.
详细的用法请自行参阅vgaset的manpage.当你调整好之後,别忘了把参数抄下
来,把在XFconfig中所对应的原来的参数换成调整过的!!你可能会在XFconfig
看到一大堆的Modeline,而不知道哪个才是对应到你用的.我的方法是:假设
我抄了1024x768的参数下来!!我就把在XFconfig中的Modeline是1024x768的全部
都换成调整过的!!此法虽然有点暴力,但是却相当有效!!