Chinaunix首页 | 论坛 | 博客
  • 博客访问: 19997
  • 博文数量: 13
  • 博客积分: 505
  • 博客等级: 下士
  • 技术积分: 140
  • 用 户 组: 普通用户
  • 注册时间: 2010-09-28 20:20
文章分类

全部博文(13)

文章存档

2011年(2)

2010年(11)

我的朋友
最近访客

分类: 嵌入式

2010-10-21 17:00:49

1、安装pngtopnm工具。
$ sudo apt-get install netpbm
注:安装完以后就会有pngtopnm,pnmquant,pnmtoplainpnm三个工具。
2、选择logo的图片:
 首先选择一个自己喜欢的图片,然后通过GIMP软件将该图片保存为.png格式,
 比如保存为linuxlogo.png.
3、制作.ppm格式的图片:
$ pngtopnm linuxlogo.png > linuxlogo.pnm
$ pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm
$ pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm
或者
  $bmptoppm linuxlogo.bmp > linuxlogo.ppm               //生成ppm
  $ppmquant 224 linuxlogo.ppm > linuxlogo224.ppm        //转换成224颜色
  $pnmnoraw linuxlogo224.ppm > linuxlogo224.ppm         //转换成ascii格式
4、替换原有的图片。
   $ make clean SUB_DIR=./drivers/video/logo/           //来清除logo目录下的.c和.o文件
注:apus板子的图片名叫logo_dec_clut224.ppm,所以只要用第三步生成的图片替换即可。

提高篇:
很容易发现,对于一般的vga console,logo是由drivers/video/fbmem.c里的fb_show_logo()函数显示的,
这个函数的调用者是 drivers/video/console/fbcon.c。这个函数做的事情不多,就
是先把非8位色深的位图转换为8位色深,然后用info->fbops->fb_imageblit(info, &image);把logo显示出来,有一个cpu时显示一个logo,有2个cpu时显示2个,以此类推。
 
修改logo高度:
    所在文件drivers/video/console/fbcon.c
{{
logo_height = fb_prepare_logo(info, ops->rotate)+xxxxxxx; //在加减相应xxxxxxx从而实现高度调整。
 logo_lines = DIV_ROUND_UP(logo_height, vc->vc_font.height);
}}
阅读(1272) | 评论(0) | 转发(0) |
0

上一篇:多个串口测试

下一篇:u-boot LOGO修改

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