引用:
原帖由 weisun 于 2008-8-28 20:36 发表 
你的步骤有错吧。。。
我把i900用自己的viewbin出来的nb0解成.os.nb再-extra回去,和原来的nb0完全一致。
另外,我的打包bin的程序能够完全还原和官方rom一致的bin。但是目前由于某些原因不能发布。
i900的exe升级包 ...
麻烦看看我的步骤哪里有错,是直接把bin解包并原封不动打包的过程:
REM 解包
viewbin i900_g4.bin
REM use cvvrbin tool to extract the .bin to .nb0, use the length parameter get from last command, this command generate .nb0 file
cvrtbin -r -a 0 -l 7B47CD0 -w 32 i900_g4.bin
REM use osnbtool to split the .nb0 to .NB, this command generate the .OS.NB file
osnbtool -sp i900_g4.nb0
REM use osnbtool to decompress .OS file to imgfs file, this command generate the imgfs.bin
osnbtool -d i900_g4.nb0.OS.NB 2 imgfs.bin
REM extract the imgfs.bin to dump folder
ImgfsToDump imgfs.bin
REM 重新打包
REM package the dump folder to imgfs-new.bin
ImgfsFromDump imgfs.bin imgfs-new.bin
REM use .OS template and new imgfs file to genernate new .OS file
osnbtool -c i900_g4.nb0.OS.NB 2 imgfs-new.bin
osnbtool -extra i900_g4.nb0.OS.NB.NEW
ren i900_g4.nb0.OS.NB.NEW.EXT i900_g4-new.nb0 (这里生成的nb0大小就不一样了)
nb0tobin i900_g4-new.nb0 i900_g4-new.bin (这个工具是我自己写的,生成出来的bin刷到手机不能用,但是如果是使用nbsplit等那一套工具自己切的nb0用它转换就能用)
麻烦看看哪里有误,我的原始bin是从官方G4的_vista.exe里用hex工具切出来的,从偏移量19C647开始大小为7A8CF9B的那部分,应该是完整的pda部分。
如果有必要的话我可以把我工具的源代码给你看看,C#写的,粗糙了点,但基本能看出思路来,我觉得似乎应该没什么问题。