由于我们linux,android都共用一套uboot和内核,因此默认linux系统启动时,显示的仍然是一个android机器人图标。我们可以从这个机器人图标入手,修改成我们自己想要的LOGO。具体步骤如下:

第一步:在kernel/drivers/video/logo/Kconfig 中添加配置文件:

config LOGO_X4412_CLUT224bool "224-color X4412 Linux logo"default y

第二步:进入kernel目录,make menuconfig

Device drivers->Graphics support->Bootup logo->

这时,在Bootup logo一栏就会多一个224-color X4412 Linux logo配置选项供选择。取消所有其它 LOGO 选项,选中224-color X4412 Linux logo ,退出。由于x4412使用脚本编译,默认会将arch/arm/configs/x4412_android_defconfig脚本覆盖到.config,因此配置完后,我们需替换掉该脚本:

cp .config  arch/arm/configs/x4412_android_defconfig

第三步:确定所要修改的LOGO 的分辨率,先找到一张喜爱的图片,将该图片裁剪成自己需要的分辨率,分辨率不能超过 LCD 分辨率,允许小但绝不允许大。推荐使用WINDOWS 下的 ACDSEE,这是一款很不错的针对业余爱好者的图像处理软件。使用ACDSEE 编辑,使用它的裁剪功能,如把它裁剪为 640*480,然后保存为 PNG 图像。也可以保存为其它格式的图像。

第四步:在ubuntu平台下,安装 GIMP 绘图软件。该软件有linux 下的 PS 之称,功能相当强大。我们只需要使用它微小的一点点功能就可以了。安装方法:点击系统->系统管理->新立得软件包管理器,在搜索框中输入gimp,选择gimp软件包,点击应用即可。


安装完成后,点击应用程序->图形->GIMP图片编辑器,即可打开GIMP工具。

第五步:在 GIMP 界面下打开第三步我们制作的 PNG 图像,这里打开方式和桌面WINDOWS 是一样的。打开后首先点击图像->模式->索引, 最大颜色数量一栏中默认为 256, 改为 224,点击转换,将把源图像文件转换为 224 位色格式,并保存(CTRL+S)。

第六步:点击文件->另存为,扩展名选择为 PPM,点击保存,这时提示数据格式,一定要选择 ASCII 格式,否则后续 kernel 编译时通不过!选择 ASCII 后保存,这时我们制作的 LOGO 图片就完成了。

第七步:将上面制作的图片重命名为logo_x4412_clut224.ppm,并放在kernel\drivers\video\logo 目录下。确保该目录下没有logo_x4412_clut224.c 和logo_x4412_clut224.o 两个文件,如果有就删掉。

第八步:修改kernel\drivers\video\logo 下的 logo.c 文件。在相关位置添加如下语句:

#ifdef CONFIG_LOGO_X4412_CLUT224/* X4412 Linux logo */logo = &logo_x4412_clut224;#endif
第九步:修改 kernel/include/linux/linux_logo.h 文件。添加如下语句:

extern const struct linux_logo logo_x4412_clut224;

第十步:修改kernel\drivers\video\logo 下的 makefile 文件:

obj-$(CONFIG_LOGO_X4412_CLUT224)+= logo_x4412_clut224.o

第十一步:重新编译内核,生成新的 kernel 映像。更新映像后,这时,开机 LOGO 已经设置成我们想要的满屏的图片了。

真正做过上面实验会发现,里面的步骤我们已经移植好了。如果我们不关心具体的移植步骤,只关心如何更换LOGO,我们只需将原来的logo_x4412_clut224.ppm,logo_x4412_clut224.c 和logo_x4412_clut224.o三个文件删掉,再使用GIMP工具转换规定格式的PPM图片,再将它拷贝到kernel\drivers\video\logo目录下,重命名为logo_x4412_clut224.ppm即可。这时重新编译出来的内核文件,图片就已经更新了。注意这里的PPM文件尺寸如果太大,可能显示不出来。推荐使用640*480以下分辨率的图片。


更多相关文章

  1. Android防止重复点击的解决办法
  2. Android中的支付(支付宝)
  3. Android(安卓)manifest文件中的标签详细介绍
  4. Android(安卓)FileUtil
  5. [置顶] android 自定义ListView实现元素前移后退的动画特效
  6. Android通过PHP连接mysql(带源码)
  7. AndroidStudio CMakeList的总结
  8. android 中的adb命令安装和卸载app、导出手机中的log文件
  9. Java Web开发-简单的Java Web项目(含访问本地MySQL)-应用例程

随机推荐

  1. Android技能必知必会
  2. Android Camera应用开发小结
  3. Android中使用kotlin实现多行文本的上下
  4. 2020最新统计Android开发者相比去年减少2
  5. Android开发手册 安卓学习教程手册(MtAndr
  6. [置顶] 在单线程模型中Message、Handler
  7. [Android] - 对话框的小框架 Managed-Dia
  8. Android Mms 源码结构2
  9. android 监控联系人变化
  10. 杂谈:Google要解决的关于Android的问题