使用软件:慧荣量产工具(以SM3257ENBB量产工具为例)、反汇编工具C32Asm。
- |" g" X0 L, c( Z
. W3 l7 m( z e9 d方法原理:量产工具读取U盘固件信息之后,会在文件夹下生成ISPChecksumRead.bin这个文件,它的16进制代码前面部分就是ISP,可以用16进制编辑工具截取出来。
% c7 n6 p. ~) r* X4 U! V
( i" j, J) p- M4 l' x2 L方法演示:
4 L* _5 K6 X: v/ V! }" b# t4 K
/ Z x. R) R* t3 h& N: ~1、打开量产工具文件夹,查看ISPChecksumRead.bin这个文件,修改日期是2016/3/12,这是旧文件,删除即可:
4 F. v8 o; c, v( r
* a# Y$ B. E, ^# W v
, N7 z$ F. ?: _. W" _2、打开量产工具,点击“扫描USB”之后软件发现U盘,再点击下图红色方框位置的按钮,出现Dialog对话框,截图保存这些信息,以备量产出错之后恢复使用:' v) c3 a6 u& D, e$ v
3 s/ g+ K- ?0 i
$ M, `/ Q; B2 g5 A" Z
D- e$ x- i/ L. d3、按照步骤2,打开Dialog对话框后,会自动在量产工具文件夹下生成新的ISPChecksumRead.bin文件(如下图,本教程写于2016/5/19,所以新的ISPChecksumRead.bin文件日期变成了2016/5/19)。" \, [5 b6 a, y' S- F0 @ m$ S; J
8 R- n: y& E' A8 D6 r! J% L+ P- u7 Z Q% t) Z3 f
4、先用16进制编辑工具C32Asm打开其他的固件文件,参考发现固件的前半部分都有一堆圆点加一行数字/字母,而尾部代码则是位于最后的一堆圆点加一行数字/字母,以此规律来查找新的ISPChecksumRead.bin文件的尾部代码:- G1 I" \9 I, W5 c' w* I
2 v& X) a; H$ z* }$ N
$ r- [& B( f. I8 S: @1 V5、顺次向下查找最后一堆圆点加一行数字/字母:! e/ H/ J2 T( N& u E( n
5 [- e! s+ J9 l2 F9 c& h- t/ _1 o8 D' y, e- p* r* S+ X! L1 i8 e
5 _- s9 r8 u; Q7 [
$ b& {8 |+ L/ r. B% r6、前后对比发现下图m0822…这一行就是新固件最尾部的代码了:1 K( A4 x3 w' @2 }" F1 f) |
! L' c5 M- P, ~! @
4 I7 Z6 Z0 C9 e) j7、把尾部代码之后的垃圾代码全部删除:
1 f5 u& H1 Y$ o6 b
9 I4 ~& M' D: ?8 p; |' D0 ^/ t2 D+ X h* p" L
8、剩下的部分就是真正的ISP固件文件,保存,提取固件步骤结束:5 t7 q# Y. o, Z* R9 q2 }
" E( A* i$ |) p
8 [. F8 F* e; Q ~1 f小结:
6 b! m( Q0 Q: D, S/ T
# J: |0 Y/ F% f1 s: N( m本次演示得到的ISP和公开的ISP各方面属性都是一样的,量产也能成功……至于固件的命名可以参考其他固件,自己心里有数就行。这样就有了属于自己U盘的固件,以后就不怕量产失败不能恢复了。# O7 ~% ~& N6 g+ B- j
; y# H3 U% v, g5 y |
|