本文关键词:提取rom 提取rom中文件 无法复制rom dll文件 刷机ROM制作教程
不好意思,由于去年南方遭灾,我家里这边在进行电网改造,经常会停电,直到晚上才送的电,刚一上线就发现了很多问题,有论坛的,有pppei.cn的,还有一些邮件,当然最认我吃惊的是我被提鸿信通论坛超级版主了!所以我要声明一下:我的时间也有限,还要学习我的专业,而且我们还要运动保持良好体质,我的所做是义务的,如有问题不能及时解决回复,或没有解决回复,请不要报怨。我会按照计划合理的安排我的时间,我的下一步工作是做毕业设计,然后是工作,搞PPC的时间会大大减少。我们取自互联网,当然还要奉献互联网,所以互联网内容在不断壮大,很多人都在这么做,甚至有些人被告上法庭,住进监狱,我们应该向他们致敬,这也是我当初建pppei.cn的原因,我网站的唯一经济来源就是google广告,不求日IP数,不求什么什么排名,只希望需要的人通过搜索引擎,来到我的小站问题得到解决,做出我所能做的贡献。谢谢。我们连接到互联网的途径无非是通过各大运营商,我们无私奉献的同时,免不了被他们黑一把,今天又在营业厅看到一个。adsl网通包年,用完一年adsl业务没自动停,继续产生费用,说要用户报停才停,我也吃过这苦头(还好网通有认识的人不了了之了),虽然不是我的事,当时我就急了:“你们为什么叫包年,既是包年为何一年后不自动停,不自动停也行,但新的一年里我如果一下没用,考虑到用户利益,你不能产生任何费用,你们的协议没有多少人会看,因为我们太过相信你们,你们想着法儿的钻空子挣不光彩的钱……”,营业员没话了,当然我也只是发泄一下,跟他们说有什么用!!唠叨完了
本文翻译自http://www.modaco.com/content/Daily/255064/Pauls-guide-to-backing-up-rebuilding-and-restoring-your-SPV-M700-ROM/
全文如下:如何备份出手机中的rom。
作为一个手机用户,我们当然希望我们的手机超值,自已可以diy,当然这触犯了某些人的利益(但还是很多人在从事这样的工作, 奉献精神可敬)。所以某些人便采取技术手段来应对这些diyer,怎奈我们人多力量大。技术比较高的人士为了方便菜鸟写出了很多傻瓜工具(以XDA-Developers为主),以帮助我们达到的目标。
我手的ppc为华禹p30,为了榨取小p的最大剩余价值,现在通过备份p30 rom过程来讲解备份rom方法,希望小p的明天会更好。
Step 1: 安装 Hard-SPL bootloader
当使用其它方法导出rom不成功时,Hard-SPL是个很好的解决方案。
所需工具: HardSPL:下载 源代码
– 下载文件
– 解压到某个文件夹。
– 刷机使用ROMUpdateUtility.exe
Step 2: 提取出手机中OS所在区块
个人感觉MSFLSH文件系统和linux的unionFS比较相似,一部分是只读区域,另一部分是可读可写区域,当覆盖只读区域的数据时,其实后台操作是用将文件写入可读写区域,然后将文件指向从原来的指向只读区域内文件,改为指向读写区域内的文件位置,而并不是真定的覆盖,要不为什么我们的ppc可以硬启还原呢。
所需工具:itsutils:下载 – 源代码
确保手机已与PC中的Active sync连接。
下面从设备中导出OS 区域为raw格式的文件。
-建一个新目录 (操作所在目录),比如C:\ROM。
– 打开命今提示符并进入ROM目录(我博客有简便方法,详见windows也玩‘在命令提示符中’打开)
– 下载解压 itsutils 到C:\ROM。
– 在命令提示符输入 'pdocread -l'。 这时会出现如下信息,这就是 ROM 区块的地址。如果此操作失败请确保你的手机已经关闭“应用程序锁”:HKLM\Security\Policies\Policies\1001 值为1,非2。(小p要改的)
127.13M (0x7f20000) MSFlash (注:MSFlash 为Rom名,127.13为rom总大小,partXX为各区块分另占用大小,括号内为所点空间数的十六进制,以字节为单位)
1.87M (0x1dfc00) Part00
4.88M (0x4e0000) Part01
57.00M (0x3900000) Part02 (OS 所在区块)
62.25M (0x3e40000) Part03 (用户可用存储区块)
971.50M (0x3cb80000) DSK3: (注:971.50M为TF卡总大小,DSK3为TF卡名)
971.38M (0x3cb60e00) Part00
我还没究研各个区块具体的内容是什么,我们现在只需要part02,也就是OS区块。
命令提示符中输入'pdocread -w -d MSFlash -p Part02 0 0x3900000 Part02.raw' 注意Ox3900000跟据实际情况来定,即跟据pdocread –l命令出来定,我的小P是这个值。
耐心等待OS区块导出为raw文件完毕。这时不会看到有什么反应,其实打开C:\ROM目录,不断刷新目录,你会发现Part02.raw文件在不断增大。这个raw文件其实是IMGFS了。
Step 3:解压RAW (IMGFS) 文件到我们先前建立的文件夹C:\ROM
所需工具: ImgfsTools2rc2b:下载 源代码
– 下载解压 ImgfsTools2rc2b 到工作目录C:\Rom。
– 现在我们已经得到IMGFS 格式文件, 下面我们将从IMGFS文件中导出所有文件到以便我们利用ImgfsTools2工具重建IMGFS
– 命令提示符中输入 'imgfstodump part02.raw'。在C:\rom目录中会出现一个dump文件夹。里面就是IMGFS里的文件了。
(作到这步是不是明白背光调节功能从何而来了)
Step 4: 用Dump文件夹,重建 IMGFS 文件
– 命令提示符中输入 'imgfsfromdump part02.raw imgfs.new.bin'。
– 命令执行完毕你会发现重建会的bin是不是比之前的raw文件小很多,其实里边的内容是一样的。作个小实验,重命名之前的dump文件夹为dump2,再用imgfstodump imgfs.new.bin 命令导出其中文件,查看新生成文件夹dump和dump2是不是发现大小一样,一个字节不差呢。那么为什么会小了?细心的朋友可能看到了'imgfstodump part02.raw'的时候输出结果中有Empty header字样,也就是说57M中有没用完的空间(留给我们的,嘿),重建时当然不会写入空内容了。这个文件应该就可以刷进小p的rom里(我没试,也不敢试,如果真是这样下面的内容对小P来说意义可能不大了)。
Step 5: Download and split a donor NB file(不好翻译就没译)
所需工具: A valid HTC Trinity RUU – 下载
所需工具: WinRAR 这个不用说了吧
所需工具: NBHextract :下载 源码
– 复制下载好的HTC Trinity RUU到C:\rom,右击zip文件,解压到当前文件夹。
– 然后右击 produced .EXE 再选择解压到当前文件夹。
– 解压 NBHextract 到c:\rom
– 命令提示符中输入 'nbhextract ruu_signed.nbh' ,将ruu_signed.nbh文件内容解开。
– 命令提示符中输入 'nbsplit -hermes 06_os.nb' ,split OS NB 文件.
– 命令提示符中输入 'ren 06_os.nb.payload 06_os.nb.old.payload',重命名06_os.nb.payload文件,为我们生成新payload铺路。
Step 6: 将imgfs.new.bin 转为NB payload 文件
– 命令提示符中输入 'imgfstonb imgfs.new.bin 06_os.nb.old.payload 06_os.nb.payload'. 这将创建
Step 7: 合并 NB payload 为 NB 文件
– 命令提示符中输入 'nbmerge -hermes 06_os.nb' 来创建NB文件。
Step 8: 将 NB 文件转为 NBH 文件
所需工具: Custom RUU Updater :下载 源码
– 将Custom RUU updater解压到C:\ROM\flash目录下。
– 运行c:\rom\flash\Workshop目录下的ROMbaker.exe。
– 点OS文件筐下方的 'Browse' 扭钮浏览到c:\rom。选中06_OS.nb 文件。 不要选择其它任何NB文件。
– 点击 Generate NBH,输入文件名 log.txt,然后点 'Save'.
– 在C:\目录下你将会看到'ruu_signed.nbh' 文件然动它到flash文件夹。
Step 9: 刷 NBH 文件
– 运行 'ROMUpdateUtility.exe',软件会发出警告……
[嘻嘻]