Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1242614
  • 博文数量: 479
  • 博客积分: 12240
  • 博客等级: 上将
  • 技术积分: 4999
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-24 17:12
文章分类

全部博文(479)

文章存档

2014年(1)

2013年(1)

2012年(1)

2011年(95)

2010年(177)

2009年(167)

2008年(16)

2007年(21)

分类: LINUX

2009-10-14 21:17:39

Linux默认开机LOGO一般都是80x80的小企鹅图标,有时候为了一些效果,希望在Linux启动过程中,全屏看到用户自定义的LOGO,这就需要为Linux增加新的LOGO。

准备png图片

使用任何图片软件,制作一张自定义的开机图片,可以根据自己的液晶屏大小设定,png格式。如下以224色为例。
我使用了一张jylogo800480的png图片。

转换成ppm文件

# pngtopnm jylogo800480.png | ppmquant -fs 223 | pnmtoplainpnm > logo_jylogo_clut224.ppm

添加新LOGO

将得到的ogo_jylogo_clut224.ppm文件复制到drivers/video/logo目录下,命名为logo_jylogo_clut224.ppm
drivers/video/logo/logo_jylogo_clut224.ppm


进入drivers/video/logo目录,修改logo.c文件:

extern const struct linux_logo logo_jylogo_clut224;

并添加:
#ifdef CONFIG_LOGO_JY
        logo = &logo_jylogo_clut224;
        return logo;
#endif

修改Makefile:
obj-$(CONFIG_LOGO_JY)           += logo_jylogo_clut224.o


修改Kconfig文件:
config LOGO_JY
        bool "JY-01 Linux logo"
        default y

红色标志的必须相同,必须遵循(logo_yourname_type)这种命名方式。

禁止LCD控制台的光标

另外,使用了全屏的LOGO图片后,控制台还是有光标闪烁,如何禁止?
去掉了framebuffer console支持,试试。
不行,LOGO都不显示了。

drivers/video/console/Makefile
#obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += fbcon.o bitblit.o font.o softcursor.o
obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += fbcon.o bitblit.o font.o

编译遇到一个soft_cursor没有定义的问题问题,注释代码:
drivers/video/console/bitblit.c
//ABING
//      if (err)
//              soft_cursor(info, &cursor);

光标成功禁止,图形界面正常启动。




其它版本内核可参考:



阅读(1085) | 评论(0) | 转发(0) |
0

上一篇:设置系统RTC

下一篇:隐藏DirectFB的光标

给主人留下些什么吧!~~