LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2647|回复: 7

FRAMEBUFFER控制台分辨律和刷新的修改。

[复制链接]
发表于 2003-2-7 04:12:40 | 显示全部楼层 |阅读模式
今天在公社逛看到GRUB的,其实在原来GRUB的文章里面提过。LILO的修改在FORUM,这个原来好象没坚果,都转过来,总结一下。



GRUB 设置:
引用:
title Gentoo Linux 1.4 -- 2.4.19-r10
kernel (hd0,0)/vmlinuz-2.4.19-gentoo-r10 root=/dev/hda5 vga=788


附上: VGA 代码和分辨率的对照表,要改什么分辨率自己看着办  
代码:
depth------640x480-----800x600-----1024x768-----1280x1024
256----------769----------771-----------773-------------775
32000-------784----------787-----------790-------------793
65000-------785----------788-----------791-------------794
16.7 Mill.----786----------789-----------792-------------795



修改 lilo.conf 文件

在相应的内核段中加入配置
append = "video=riva:1024x768-8@76,nohwcursor=1"

其中,video=riva,是指把后面的参数传给 riva framebuffer 驱动程序;1024x768 是分辨率;-8是颜色位数;@76是刷新率。在我的显示卡与显示器上得到 1024x768 @ 75Hz 的显示模式。
在 /usr/src/linux-2.4.20/drivers/video/fbmem.c 中找到驱动名字对应关系如下:
/*
* Chipset specific drivers that use resource management
*/
CONFIG_FB_RETINAZ3 "retz3"
CONFIG_FB_AMIGA "amifb"
CONFIG_FB_CYBER "cyber"
CONFIG_FB_CYBER2000 "cyber2000"
CONFIG_FB_PM2 "pm2fb"
CONFIG_FB_PM3 "pm3fb"
CONFIG_FB_CLGEN "clgen"
CONFIG_FB_ATY "atyfb"
CONFIG_FB_MATROX "matrox"
CONFIG_FB_ATY128 "aty128fb"
CONFIG_FB_NEOMAGIC "neo"
CONFIG_FB_VIRGE "virge"
CONFIG_FB_RIVA "riva"
CONFIG_FB_RADEON "radeon"
CONFIG_FB_CONTROL "controlfb"
CONFIG_FB_PLATINUM "platinumfb"
CONFIG_FB_VALKYRIE "valkyriefb"
CONFIG_FB_CT65550 "chipsfb"
CONFIG_FB_IMSTT "imsttfb"
CONFIG_FB_S3TRIO "s3trio"
CONFIG_FB_FM2 "fm2fb"
CONFIG_FB_SIS "sisfb"
CONFIG_FB_TRIDENT "trident"
CONFIG_FB_VOODOO1 "sst"

在 /usr/src/linux-2.4.20/drivers/video/modedb.c 中提到,现在的 framebuffer 驱动支持如下的配置:
/*
* Standard video mode definitions (taken from XFree86)
*/
/* 320x200 @ 70 Hz, 31.5 kHz hsync, 8:5 aspect ratio */

/* 320x240 @ 60 Hz, 31.5 kHz hsync, 4:3 aspect ratio */
/* 320x240 @ 72 Hz, 36.5 kHz hsync */

/* 400x300 @ 56 Hz, 35.2 kHz hsync, 4:3 aspect ratio */
/* 400x300 @ 60 Hz, 37.8 kHz hsync */
/* 400x300 @ 72 Hz, 48.0 kHz hsync */
/* 480x300 @ 56 Hz, 35.2 kHz hsync, 8:5 aspect ratio */
/* 480x300 @ 60 Hz, 37.8 kHz hsync */
/* 480x300 @ 63 Hz, 39.6 kHz hsync */
/* 480x300 @ 72 Hz, 48.0 kHz hsync */

/* 512x384 @ 78 Hz, 31.50 kHz hsync */
/* 512x384 @ 85 Hz, 34.38 kHz hsync */

/* 640x400 @ 70 Hz, 31.5 kHz hsync */
/* 640x400 @ 85 Hz, 37.86 kHz hsync */

/* 640x480 @ 60 Hz, 31.5 kHz hsync */
/* 640x480 @ 72 Hz, 36.5 kHz hsync */
/* 640x480 @ 75 Hz, 37.50 kHz hsync */
/* 640x480 @ 85 Hz, 43.27 kHz hsync */
/* 640x480 @ 100 Hz, 53.01 kHz hsync */

/* 800x600 @ 56 Hz, 35.15 kHz hsync */
/* 800x600 @ 60 Hz, 37.8 kHz hsync */
/* 800x600 @ 72 Hz, 48.0 kHz hsync */
/* 800x600 @ 85 Hz, 55.84 kHz hsync */
/* 800x600 @ 100 Hz, 64.02 kHz hsync */

/* 1024x768 @ 60 Hz, 48.4 kHz hsync */
/* 1024x768 @ 70 Hz, 56.5 kHz hsync */
/* 1024x768 @ 76 Hz, 62.5 kHz hsync */
/* 1024x768 @ 85 Hz, 70.24 kHz hsync */
/* 1024x768 @ 87 Hz interlaced, 35.5 kHz hsync */
/* 1024x768 @ 100Hz, 80.21 kHz hsync */

/* 1152x864 @ 60 Hz, 53.5 kHz hsync */
/* 1152x864 @ 70 Hz, 62.4 kHz hsync */
/* 1152x864 @ 78 Hz, 70.8 kHz hsync */
/* 1152x864 @ 84 Hz, 76.0 kHz hsync */
/* 1152x864 @ 89 Hz interlaced, 44 kHz hsync */
/* 1152x864 @ 100 Hz, 89.62 kHz hsync */

/* 1280x1024 @ 61 Hz, 64.2 kHz hsync */
/* 1280x1024 @ 87 Hz interlaced, 51 kHz hsync */
/* 1280x1024 @ 70 Hz, 74.59 kHz hsync */
/* 1280x1024 @ 74 Hz, 78.85 kHz hsync */
/* 1280x1024 @ 100 Hz, 107.16 kHz hsync */
/* 1280x1024 @ 76 Hz, 81.13 kHz hsync */
/* 1280x1024 @ 85 Hz, 91.15 kHz hsync */

/* 1600x1200 @ 60Hz, 75.00 kHz hsync */
/* 1600x1200 @ 70 Hz, 87.50 kHz hsync */
/* 1600x1200 @ 75 Hz, 93.75 kHz hsync */
/* 1600x1200 @ 85 Hz, 105.77 kHz hsync */

/* 1800x1440 @ 64Hz, 96.15 kHz hsync */
/* 1800x1440 @ 70Hz, 104.52 kHz hsync */

nohwcursor=1 是指不用使用硬件光标,因为 riva framebuffer 驱动与 nvidia 的不公开源代码的X驱动有冲突,在使用 nvidia 驱动后返回控制台会出现白色标准光标变为两个红色小光标的情况,有时甚至会出现控制台屏幕右移(这种情况我遇到过)。
非 riva 芯片的朋友不需要加这个选项,如果到时候出现问题了可以到 www.google.com 上先搜索一下,或者看看内核中的源代码注释,源代码在 <YOUR KERNEL DIR>drivers/video/ 下,对于内核文档中关于 framebuffer 的部分,好像太老了点。

另外在使用 16 位色的情况下,linux的 logo 会出现变色的情况,使用 24 色时 logo 不出现。

第三步,运行 lolo -v 然后重启。
如果其中对配置内核不是太熟悉,请先搜索本论坛的文章。


另外,在内河里面加上FRAMEBUFFER

编译时选中如下编译选项:
CONFIG_EXPERIMENTAL=y
CONFIG_FB=y
CONFIG_FB_RIVA=y 这里是 nvidia 显示芯片的选项,其他芯片选择相应的选项,必须编译进内核。

除此之外我的内核 frame-buffer 配置中还加上了如下选项,如果大家在选择上面的选项后有些这里提到的功能不能使用的话可以逐个选择如下的选项来尝试。
CONFIG_DUMMY_CONSOLE=y
CONFIG_VIDEO_SELECT=y
CONFIG_FBCON_ADVANCED=y
CONFIG_FBCON_MFB=m
CONFIG_FBCON_CFB2=m
CONFIG_FBCON_CFB4=m
CONFIG_FBCON_CFB8=y
CONFIG_FBCON_CFB16=y
CONFIG_FBCON_CFB24=m
CONFIG_FBCON_CFB32=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y

编译完后安装内核。
发表于 2003-2-7 08:03:04 | 显示全部楼层
呵呵,好文章。
发表于 2003-2-8 17:58:21 | 显示全部楼层
这个我实验过
不过没成功
进了普通VGA :(
有成功的么?
发表于 2003-2-8 18:53:39 | 显示全部楼层
我觉得和显卡有关系。我的机器就上不了太高的刷新率。
发表于 2003-4-28 20:32:49 | 显示全部楼层
我的也只进了VGA,光标都变成一个大方块了。不过看不出刷新和分辨率有啥变化
发表于 2003-4-29 20:40:57 | 显示全部楼层
VESA和rivafb都可以用,VESA不能改刷新率,不能用在i810 i815 i845G上
发表于 2003-4-30 14:41:44 | 显示全部楼层
最好不要用rivafb
发表于 2003-8-24 21:48:55 | 显示全部楼层
我试了一下,我用g450,根本进不了framebuffer模式啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表