ROM+Kitchen制作教程.docx
《ROM+Kitchen制作教程.docx》由会员分享,可在线阅读,更多相关《ROM+Kitchen制作教程.docx(21页珍藏版)》请在冰点文库上搜索。
ROM+Kitchen制作教程
前言
“我们事业的成功,不取决于我们懂得什么,而取决于我们认识谁,我们如何让这个谁来表达我们自己。
”——艾柯卡
一直以来总想抽个时间把自己KitchenRom的一些心得写成一个教程,以帮助不会制作Rom的PDAFans。
说是教程,也许会贻笑方家,或许心得更合适些,但还是让我权且叫教程吧。
在经历了一些事情之后,心情很是复杂,有很多朋友是我忠实的拥戴者,看着他们由于被某些力量和我一起受伤,总有些过意不去,他们为我打抱不平、为我仗义执言的行为和精神深深的感染我,令我为之动容,心潮澎湃!
因此这篇教程是专门为我的Fans编写的,只有你们才配拥有这个教程的使用权。
如果能为你制作自己个性化的Rom和发烧Rom有点裨益,我将为之欣慰!
如果是我的反对者,假使这篇东西能让你心平气和,并能为你带来便利,我一样为之高兴!
因为这些东西都是来自开放的互联网,我只是加以归集和整理。
功劳是那些为Rom平添许多精彩的大侠,你们和我一样都应该感谢他们!
尊敬他们!
这些大侠是:
mamaich、bepe、misar、Helmi_c、anichillus(这五位大师提供工具)、Ivan、BeastyLeo(参考部分注册表)、aspep(提供18521原生中文资源)等等,一些还有我不知道(或忘了的)大师,不管我提没有提到你,一样感谢你们无私的贡献!
这篇东西也是对你们的敬礼!
如果有歪曲的地方,敬请你们谅解和斧正!
基础篇:
Kitchen过程解密
本篇将使你可以随心所欲制作自己个性化的Rom。
使你由一个一知半解或什么都不知道如何制作Rom的人变成一个Rom高手。
很多Rom制作者只是会用Dump的方式制作Rom,很是困难和受累,Kitchen的方式似乎在D900的Rom制作中(仅指Pdafans论坛)只有aspep、allway和本人在使用。
为了让更多的Rom制作者和Fans都用便利的方式制作Rom,因此才制作这个教程帮助大家拥有一个干净的Rom。
“学而不思则罔”,我们一起努力!
本篇包括以下四项内容:
一、全套制作工具解说
二、如何制作Kitchen模板
三、如何制作你喜欢的开机画面
四、KitchenRom
一、全套制作工具解说
“工欲善其事,必先利其器”、又曰:
“磨刀不误砍柴功”。
是之谓也!
有笑曰:
“临阵磨枪,不快也光”!
我的RomKitchen工具分以下几类,请你务必花点时间搞清楚这些工具的作用,对你制作Rom有非常大的帮助。
如果对以下分类的部分你都知道,请跳过本章节;如果对部分熟悉,请跳过熟悉的部分。
1.刷机工具包:
绝大部分请跳过此处。
无疑这是刷机的工具,我也不浪费口舌了。
2.解rom-dump-build工具:
此工具用于以dump方式制作Rom,本篇不作介绍,具体应用请参考“Kitchen工具包”部分或论坛相关介绍或去看waynezhang大侠的帖子:
3.XIP_extract工具:
这个工具包用于制作Kitchen部分的“ROM”项下的XIP部分,非常重要,是KitchenRom的关键步骤。
详细解说在本篇下一章节阐述。
4.Kitchen工具包:
这就是传说中的Kitchen应含有的部分,缺一不可,详细解说在本篇下一章节阐述。
特别说明的是misar大侠的地址重定位工具:
G'Reloc.exe可以让你把你喜欢的OEM驱动或SYS系统文件放在你的Rom中,不需要再去手工修改地址,只需运行此工具对地址进行重定位即可,解放了太多的复杂过程。
5.系统和编辑工具:
在KitchenRom前,请把这些工具安装在你的电脑中,否则某些程序将不能应用。
需要安装的是:
1)ULTRAEDIT32-10c:
这是32位编辑器,用于编辑TXT或其他相关文件,对转换你的注册表(.hv文件转为txt文件后,进行编辑非常方便,一般用于dump制作Rom之用,本篇不作介绍,因为KitchenRom几乎不会用到此工具),这个版本是我用得比较稳定的一个版本,有些老了,你也可以在网上查找下载最新的版本,或别的32进编辑器,随便你了;
2)Beyond.Compare_2.4.3.243_SC-special.zip:
这是文件比较的软件,请解压缩后安装。
此工具可能让你把许多节约的时间用去喝咖啡或上网聊天或做你更喜欢的事情。
如何使用,我想不用我多费唇舌了。
因为浪费你的时间也是我在犯罪;
3)microsfot_framework20chs.exe:
这个应该地球人都知道,就是Microsoft.netFramework2.0。
如果你已经在你的电脑系统中安装了这个程序,请不要再安装,如果没有安装,务必必须安装,否则你将不能完成Kitchen的工作;
4)WinCE.CAB.Manager.v2.1.0.35:
这个你也应该明白是什么东东了,就是CAB文件的制作和解压文件的工具,请务必安装,如果你已经安装,请跳过。
需要安装的请先安装包中的两个插件:
WindowsXP-Windows2000-Script56-KB917344-x86-chs.exe和msxml.msi,然后再安装项下的文件夹“WinCE.CAB.Manager.v2.1.0.35”中的CeCabMgr2.1.0.35-setup.exe,安装完毕,不要选择更新项,直接退出,再将文件夹“汉化文件”下的两个文件copy进你安装的目录下,重新启动,将进入中文模式状态。
如果你喜欢用英文的,不要copy这两个文件了(废话!
)。
另外:
本包中HxD.exe为16进文件编辑器,你也可以用你喜欢的16进编辑器,该工具在后面将大派用场;GUID生成器.exe为dsm和rgu文件提供GUID/UUID,这是非常实用的工具,本篇下一章节解说。
6.汉化-图标编辑工具:
我提供了两个本人一直在用的汉化-图标编辑工具,当然你也可以用其他的你喜欢或习惯的工具。
本工具可以让你汉化.dll和.exe文件,用于中文Rom所需OEM软件的汉化和图标更改。
这个工具的具体使用方法,本教程不做阐述,请自行学习,因为很简单。
7.数字签名:
用于你修改的或新增的某些.dll或.exe文件的数字签名。
执行程序为:
signcode.exe,按向导步骤完成数字签名。
8.更改开机画面工具:
无疑是用与更改开机画面的。
具体方法本篇后面章节解说。
二、如何制作Kitchen模板
本节内容枯燥晦涩,但却是CookRom的重中之重,我们如何去CookRom?
请加入的你的“三心二意”(费心、小心、耐心、留意、在意)。
“学如逆水行舟,不进则退”!
以下Kitchen过程均以我的CEOS1933(Build18533.0.7.0V2)宋体版为模型。
一)DumpRom过程
1、解码Rom文件:
将你要Cook模型原始Rom的nk..nbf文件copy进“4.Kitchen工具包”中的“TOOLS”下,运行解锁工具:
HTC64_Extended_ROM_Tool.exe,点击“Decode”
出现下面的画面,点击“…”,选择你刚才复制的Rom文件:
nk.nbf
出现下面的画面,选择点击“Decode”
Rom文件解码成功,会多出一个:
nk.fat文件。
2、DumpRom文件:
运行批处理文件“解开ROM.bat”,(你不用去烦琐的解Rom了。
批命令把你复杂的工作全部完成)将进入Dump文件过程,按屏幕提示操作。
现在休息一会,或做你喜欢的事情去,不用管电脑了,文件将自动执行完毕,按提示退出,在文件夹下,多出一个目录“dump”,这里面就是Rom的全部文件了。
至此,Rom文件已Dump完毕,进入建立KitchenRom模板阶段。
二)建立Xippackage:
将第一步得到的nk.fat文件重命名为:
nk..nba
将nk.nba文件copy进“3.XIP_extract工具”包
运行“Make_XIP.bat”批处理命令,出现下图画面,按屏幕提示操作:
会多出几个文件和两个文件夹,其中“XIP”文件夹是CookRom重要的文件夹。
暂时不用研究XipPackage的文件,将nk..nba和XIP文件夹一起复制到“4.Kitchen工具包”文件夹下的“ROM”文件夹下。
注意:
这个过程非常简单,但却至关重要!
它是KichenRom成功的桥梁。
三)建立你自己的KitchenRom模板:
本过程将建立KitchenRom的模板,激动人心的时刻就在这一过程给你带来愉悦!
快乐随时产生,就象缤纷、五彩斑斓的烟花一样耀眼和美丽!
1、Package建立:
用bepe提供的工具完成此部分
在“4.Kitchen工具包\TOOLS”运行PKGTool.exe程序,点击菜单下“File”下的“Open”项,选择你刚才Dump的文件夹“Dump”
然后点击“确定”,得到下面的画面内容,
点击菜单“Tool”选择“BuildPackages”,得到下面的画面:
将丢失的文件分别“剪切”进相应上方下划红线的文件夹
进入Dump文件夹下可以看到,如下图:
将丢失的文件分别“剪切”进相应的文件夹后,退出“PackageTool”
将“SYS”文件夹下的Input、OEM、NET、ZFJ开头的文件夹和Java剪切进“OEM“文件夹,因为这些都是驱动和OEM程序。
如下图:
至此OEMPackage和SYSPackage已经建立。
将Dump文件夹下的“OEM”和“SYS”两个文件夹剪切到“4.Kitchen工具包”下,如下图:
恭喜你!
KitchenRom的基础模板已经完全建立了!
接下来将是开启你的DIY之旅了!
2、建立自己的KitchenRom模板:
这是你DIY自己Rom的灵魂。
1)CAB文件转OEM包的制作:
(1)获取GUID(UUID)码:
GUID(或称UUID),GUID是GloballyUniqueIDentifier的缩写,中文译为:
“全球唯一标识符”,每个OEMPackage都有一串唯一的GUID号码用于系统识别,你可以在此网站based或者Version4:
Random,然后点击“Get”按钮,会自动生成GUID,该网页也可以一次生成多个GUID码(最多一次可以生成500个)。
如下图。
将该串GUID码(17df6320-996d-11dc-8314-0800200c9a66)记下。
如果你在制作Rom的时候无法连接互联网,可以用我提供的工具。
获取GUID/UUID码。
在“5.系统和编辑工具”下,运行“GUID生成器.exe”,选择“4.常规/注册表{xxx}”,然后按“新建”按钮,你将得到每一个GUID/UUID码,选择“复制”按钮,粘贴替换到你建立的dsm和rgu文件名。
(2)解压Cab包的软件:
下面以VoiceSpeedDialv1.2Build061226.cab文件为例,讲述完整的CAB转制OEM包的安装过程。
一个完整的软件的OEMPackage里面应包括如下内容:
a.软件本身所含文件
b.快捷方式(非必要,视软件而定)
c.dsm文件(不可或缺)
d.rgu(注册表文件)(非必要,视软件而定)
e.initflashfiles.txt(用于指定刷机文件的存放位置,非必要,视软件而定)
f.option.xml,用于系统加载该OEMPackage以及显示相关内容(缺省为必须集成进Rom)
解压缩文件:
前面已经提到的WinCE.CAB.Manager.v2.1.0.35的CAB文件工具你安装了吗?
如果没有请返回第一章,按我的说明安装;如果已经安装,那我们继续(当然你也可以用其他的CAB工具,如cabWUZ)。
提取VoiceSpeedDialv1.2Build061226.cab中的文件:
双击该文件,点击左边“文件”出现下图:
这就是该CAB包的全部文件。
点击菜单栏“安装”,选择“文件”下的“解压”(如图)
请选择或新建你存放的解压文件目录,选择左下面的“所有文件”,然后点击“确定”,该工具将把CAB包的文件解压到制定的目录。
如下图:
文件解压出来后,点击注册表,将注册表导出到你制定的文件夹和文件名。
到此,CAB包文件已经解压出。
进行下一步创建快捷键方式。
创建快捷键:
当我们解开cab文件后,发现该包已经包含一个快捷键方式的文件“sddaemon.lnk”,其实大家都知道这个快捷键方式的文件是为语音拨号所用的,关联的程序是:
SDDaemon.exe。
如果包中没有带.lnk的快捷键程序,你将要自己建立一个(当然是必须要用到快捷键方式)。
如何自己建立一个快捷键方式呢?
很简单,新建一个txt文件,用记事本或其他编辑软件编辑该txt文件,写入:
#"\Windows\xxx.exe"(XXX.exe是你要关联的程序),保存重命名为XXXX.lnk。
如:
VoiceSpeedDial.lnk,关联的程序是:
sddialer.exe。
OK,快捷键方式已经建立了。
建立dsm文件:
上面提到了如何获取GUID/UUID码,现在你要用到这个知识点了。
新建一个文本文件,用你得到的GUID/UUID码重命名该文件为:
xxxxxx.dsm,如:
17df6320-996d-11dc-8314-0800200c9a66.dsm。
OK,dsm文件就这样经建立了。
建立rgu文件:
新建一个文本文件,用记事本或其他编辑软件编辑该txt文件,写入你刚才导出的注册表项,就可以了。
需要你注意的是:
rgu文件必须遵循以下规则,否则BuildOS运行会出错。
制作rgu文件特别注意以下几点:
1.文件必须保存为Unicode格式
2.文件第一行必须是:
REGEDIT4
3.文件最后必须空一行
4.注册表项中的单斜杠”\”,必须写成双斜杠:
”\\”
5.rgu文件名必须同dsm文件名。
即:
17df6320-996d-11dc-8314-0800200c9a66.rgu
建立initflashfiles.txt:
在VoiceSpeedDial目录下,新建一个txt,然后重命名为initflashfiles.txt。
用记事本打开。
输入以下内容:
;==========================================================================
;ApplicationbibforCYBERONV1_2_B60920
;==========================================================================
Directory("\Windows\“开始”菜单\程序"):
-File("语音快速拨号.lnk","\Windows\VoiceSpeedDial.lnk")
Directory("\Windows\AppButtons"):
-File("语音快速拨号.lnk","\Windows\VoiceSpeedDial.lnk")
Directory("\Windows\StartUp"):
-File("sddaemon.lnk","\Windows\sddaemon.lnk")
;==========================================================================
;ENDApplicationbibforCYBERONV1_1_B60920
;==========================================================================
第一段代码的意思是:
将Windows目录下的“语音快速拨号.lnk”复制到“\Windows\“开始”菜单\程序”的目录下。
红色,是这个快捷方式(蓝色部分)将要被放置的目录(\Windows\“开始”菜单\程序),绿色是这个快捷方式的显示名称,其中括号前面的-File指的是这是个文件。
蓝色是这个快捷方式的位置。
第二段代码和第三段代码的意思参照第一段类推吧。
注意的是:
initflashfiles.txt必须保存为unicode格式。
建立option.xml:
BuildOS.exe是通过option.xml来有选择地加载OEMPackage,如果该OEMPackage没有option.xml,则该OEMPackage将默认被加载。
同样,新建一个txt,然后将其重命名为option.xml,用记事本打开,输入如下内容:
xmlversion="1.0"encoding="UTF-16"standalone="yes"?
>
VoiceSpeedDial1.2.0.1
17df6320-996d-11dc-8314-0800200c9a66
其中:
xmlversion=”1.0″encoding=”UTF-16″standalone=”yes”?
>是固定的,所有内容被嵌套在里面。
如果你对xml有所了解,将很容易理解这种节点嵌套结构。
就是该Package的名字,将显示在BuildOS的option框里面,group是指该Package属于那个群组的,你可以通过给不同Package设定同样的group,使之成为一组,如将所有应用程序归为同一组等。
checked有2个值,true和false,true指默认该Package是被选中的,反之则默认为非选状态。
的内容,是指在BuidOS中,你将鼠标移至该Package上,将会显示的提示信息。
就是该OEMPackage的GUID码,type为p。
OK,Understand?
经过如此烦琐复杂的工作之后,你已经建立了VoiceSpeedDialv1.2Build061226.cab文件的OEM包,将这个包放入OEM目录下,以备KitchenRom所用。
所有的OEM包你可以自己编辑,也可以借鉴别人的制作。
这里向大家推荐独立小桥大侠,他为Fans制作了很多OEM包,如果你借用了他的劳动成果,别忘了感谢他!
2)绿色软件转OEM包的制作
通过对CAB文件转OEM包的制作,我想绿色软件如何制作成OEM包就变得简单了,因为绿色软件可以直接运行,不需要要注册表的支持,因此可以省却rgu文件的制作,其他的完全一样。
3)汉化文件
OEM程序如果是英文的,你想让自己的Rom更完美,就用我提供的“6.汉化-图标编辑工具”下的工具进行汉化工作。
如果觉得图标不漂亮,你也可以自己提取和更换满意的或个性的图标。
本过程不详述了,请自行体会吧。
4)数字签名
制作完这些OEM包以后,请用数字签名工具对.exe和.dll文件进行数字签名,如果你觉得烦,那就免了吧,我的经验是可以不用数字签名。
但可能有些程序必须数字签名,我也不知道是哪些,你就自己试试吧。
至此,所有的Kitchen所需的基础工作(除开机画面外,我将在另章节阐述)全部完成,你可以Kitchen自己的Rom了,那还犹豫什么?
享受你的劳动成果吧!
“唯有牺牲多壮志,敢叫日月换新天”!
快乐来源于你付出的代价中得到。
三、如何制作开机画面
这一过程你将享受枯燥中的美丽!
也许她如冰雕,随着时间的推移,她可能消失在你的记忆中,但谁也又能拒绝享受美?
艺术的魅力在于你的灵感,美时时刻刻萦绕着你,去发现和探索你的美。
OK,我们一起享受这寂寞的美丽!
“我们并不缺少美,而是我们的眼睛缺少发现!
”----罗丹
一)制作更换你喜欢的画面
进入工具“8.更改开机画面工具”下,用PHOTOSHOP或XnView编辑自己喜欢的图片
大小为640x480,640为宽度,然后顺时针旋转90度,另存图片为24bit的bmp格式,
工具里的rsbbmp.exe打开这个BMP文件,把它转换城rsb格式。
Win.bmp文件就转换成了win.rsb文件,这个文件的大小为601KB,有些可能是641KB。
你可以在刷机后用这个工具通过USB连接电脑后更换你的开机画面,这种方法我不阐述了,请自行看工具下的“readme.txt”文件的介绍。
本节要讲述的是直接更改Rom文件的方法。
二)如何将开机画面整合进要Kitchen的Rom文件中
用“5.系统和编辑工具”下的HxD.exe16进制编辑器打开ROM文件夹下“nk.nba”文件,在0x3F00000偏移处找到开机画面rsb文件内容(有些Rom去除了开机画面,没有这一地址,没关系,这样更方便)。
同时用HxD.exe打开你刚才制作的开机画面,从第29个字节到最后的内容一起替换到nk.nba的0x3f00000偏移处,保存退出,就OK了,你已经把你需要的第一开机画面替换进Rom文件中了。
图解如下:
打开.nba文件,点击菜单“search”下的“goto”,在“offset”处输入“3F00000”,然后点击“ok”;
【注意】如果你不要开机第一画面,把3f00000开始到结束处全部删除,你将没有了开机画面。
继续享用你原有的开机画面吧!
然后打开开机画面文件win.rsb,从第29个字节到最后的内容一起替换到nk.nba的0x3f00000偏移处。
好了,开机画面就这么轻松搞定,享受你自己的艺术创作吧!
四、KitchenRom
冬日的暖阳和夏日的凉风都为准备好了,那就享受辛苦之后的欢乐吧!
快乐地煮一壶咖啡,轻轻地打开你的CD,听一曲风笛或钢琴曲,抑或聆听你钟爱的歌星唱一曲。
再回来时,享受你玩机、刷机的快乐!
动听的乐曲为你开怀!
清新的空气也为你陶醉。
此时,你抬头望窗外的天空,突然你怎么会觉得天空原来如此美丽多情!
夜晚的天空向你张开神秘的眼睛,把你拥进深邃的空间!
白昼的天空云彩和着微风,喧嚣也是动听的音符!
一切如此美丽,只因你从此拥有自己的DIY发烧天堂!
谢谢你的耐心,那我们继续吧!
回到最后的KitchenRom过程cookrom。
在C盘根目录下创建一个文件夹,命名为“DEV_UNI”,将“4.Kitchen工具包”,将里面的文件夹和文件全部copy进“DEV_UNI”文件夹。
在KitchenRom之前,别忘了替换wince.nls和更换字体,这两个东西就不在教程里浪费笔墨了,请自行学习。
一)BuildOS:
运行“1.BuildOS.exe”,选择你要OEM的Package,然后点击左上角的三角箭头,BuildOS的过程会自动完成,会显示“done”,这时“DEV_UNI”目录下会多出一个“temp”文件夹,表示过程完毕,退出该程序。
二)地址重定位(非必要项目):
进入“temp”目录,将“dump”文件夹改名“sys”,运行“G'Reloc.exe”工具,注意不要做任何参数的修改。
点