Atom ROM 修改的辅助教程(中级)
注意:本教程适合于中级玩家,修改ROM和刷机有风险!
最近Atom很热,出来了很多好的ROM,我的Atom一直没在身边,给LP 拿去用了,今天刷了大虫的 ATOM-CE1978-SRS WOWHD[n1958],感觉声音好听多了。
现在想写点东西给大家,可能对你修改Atom ROM有所帮助,希望你能DIY更多更好的ROM与大家共享,我就等着刷机了,呵呵~~~~
首先申明,本辅助教程只适合于Atom,其他不适合,但你可以了解其中一些知识,举一反三,CE的手机都是大同小异。
Atom ROM 修改的辅助教程主要包括:
1、ROM文件的分析,主要分析diskimage_Ver.nb0文件的结构内容;
2、XIP的导出与核心文件提取;
3、ROM版本号的修改;
4、缓存池大小的修改;
5、第一屏画面的修改。
正文开始:
刷机文件分析
(1)Device Software Update Utility.exe 刷机程序。
(2)EBOOT.nb0引导程序Boot Loader,相当于PC电脑的BIOS,这个文件出问题后,手机就只能换字库。可采用安全的刷机法,不刷EBOOT.nb0,详见:
http://bbs.pdafans.com/viewthread.php?tid=348004&highlight=
(3)ExtendedRom.img扩展内存。可以用WinImage打开,直接编辑里面的文件。
(4)vl1d_pda_Ver.mot无线电配置文件,没什么可说的,不过好像跟HP6828 和Atom Exec通用。
(5)nova_pda_033105.mot ………
(6)diskimage_Ver.nb0 windows ce操作系统。
diskimage_Ver.nb0文件的结构
diskimage_Ver.nb0文件主要分两大部分:
第一部分是系统引导部分,系统核心;
第二部分是CE操作系统和应用程序。
下面来分析这两部分
第一部分(0x0~0x54000c)共5.25 MB
它主要包括下面内容:
1、CE系统核心文件:内核NK.EXE、对象储存device.exe、设备管理filesys.exe等文件,它们负责系统的引导和程序的加载;
2、硬件设置信息,包括虚拟地址映射、缓存池大小、地址分配等;
3、开机图片、软件版本号等相关信息;
XIP导出和分解的方法
一共有2个XIP,应该分离出第二个XIP,(详见下面diskimage_Ver.nb0文件的结构图)。采用WinHex从diskimage_Ver.nb0文件中手工分离,复制选块至新文件,新文件起名为XIP.bin,然后用XIPPort.exe可以解包XIP.bin得到系统核心文件。
第一个XIP
| 第一个XIP起始标志:
FE 03 00 EA 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............
...................................................................................
| 第二个XIP
| 第二个XIP起始标志(也是第一个XIP结束标志):
FE 03 00 EA 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............
......................................................................................
| ROM文件部分
| ROM文件部分起始标志(也是第二个XIP结束标志):
F8 AC 2C 9D E3 D4 2B 4D BD 30 91 6E D8 4F 31 DC 01 ............
.....................................................................................
文件结束
|
运行XIPPort.exe
解包XIP.BIN得到核心文件
修改ROM的版本号
修改ROM的版本号并不是简单地修改Version.TXT文件
真正的ROM版本号是位于:0x1838b4,希望不要乱改,改来改去,有可能不知道出自哪个原始版本的ROM了,呵呵~
修改缓存池(pagepool)大小
在diskimage_Ver.nb0查找“FF FF FF FF FF FF FF FF 9B 4F FF FF 64 B0 00 00”
其中下图中红框内的数据就是缓存池(pagepool)设定参数:
4MB=00 00 40 00
6MB=00 00 60 00
8MB=00 00 80 00
修改ATOM的第一屏开机画面
ATOM的第一屏开机画面是一张240X320的24位BMP图片,看图像属性,大小正好是225K(230454字节),准备好图像后,还有对图像进行处理一下,图像编辑软件如ACDSee等软件将图像作镜像和180度转向后保存备用。
用WinHex打开这张图片,将图片文件所有字节粘贴写入diskimage_Ver.nb0偏移起始地址为:0x184cdc,这里要注意,覆盖0x184cdc以后的数据,不是插入。
第二部分(0x54000c~文件结尾)共57.2 MB
此部分起始的标志为:F8 AC 2C 9D E3 D4 2B 4D BD 30 91 6E D8 4F 31 DC 01
在第二部分里保存了CE操作程序绝大部分的程序文件,文件可用prepare_imgfs.exe分解,分解后的处理很多教程都介绍过了,我就不再去重复了,其实第二部分的处理才是ROM进行DIY的主要任务,也是最繁琐的事情,很多DIY高手都在辛苦的为大家忙碌着,在此对那些大公无私的大虾们表示感谢!希望他们能做出更多更好的ROM。
[ 本帖最后由 puhc 于 2007-12-3 21:17 编辑 ] |