使用软件:慧荣量产工具(以SM3257ENBB量产工具为例)、反汇编工具C32Asm。
6 J- c+ p, K9 J3 }, B- [
& m* x ^) p& _+ u0 u' z方法原理:量产工具读取U盘固件信息之后,会在文件夹下生成ISPChecksumRead.bin这个文件,它的16进制代码前面部分就是ISP,可以用16进制编辑工具截取出来。4 _4 H6 e, N4 C/ r) \6 Y
! x0 i r* j% W$ d9 G+ u& M
方法演示:8 N8 A3 Z& D/ i! a3 I$ y
; f: Q! J% \$ K& s1、打开量产工具文件夹,查看ISPChecksumRead.bin这个文件,修改日期是2016/3/12,这是旧文件,删除即可:8 Y5 w* B7 g* i5 D* s t% Z
+ P/ J' }0 r2 ^8 B
) R: R9 O% s! y4 U; K; b6 S9 h3 t2、打开量产工具,点击“扫描USB”之后软件发现U盘,再点击下图红色方框位置的按钮,出现Dialog对话框,截图保存这些信息,以备量产出错之后恢复使用:" G. d. m$ k9 _5 P+ e
3 z3 ~# @8 Z* Z1 c
! Z1 q# a% `. `; V! D) B
Y2 O7 N. ^) r- S
3、按照步骤2,打开Dialog对话框后,会自动在量产工具文件夹下生成新的ISPChecksumRead.bin文件(如下图,本教程写于2016/5/19,所以新的ISPChecksumRead.bin文件日期变成了2016/5/19)。! q) V1 L, {7 E( d% s% f* t$ c
, ^: q3 y) i7 V3 |0 e
* ~, g. ~. T4 R+ q, \; t& J
4、先用16进制编辑工具C32Asm打开其他的固件文件,参考发现固件的前半部分都有一堆圆点加一行数字/字母,而尾部代码则是位于最后的一堆圆点加一行数字/字母,以此规律来查找新的ISPChecksumRead.bin文件的尾部代码:
. Y0 F0 A% P! F) J1 E+ v# b: J M( y6 I
" S5 q, {# ?- w7 Y. Q t Q) J+ o* n5、顺次向下查找最后一堆圆点加一行数字/字母:
# U" J! r7 S- S+ r( P/ a2 A3 B+ i+ _- M+ }$ P
1 ]0 m" A5 T( B0 z
, O% J' ]& f6 A
+ N- A/ w# `3 b# }- n6、前后对比发现下图m0822…这一行就是新固件最尾部的代码了:
7 ~; C" D9 G' H6 }2 y
7 _9 S5 j1 q4 j- ^* ? O. V: p5 e/ d/ [9 D
7、把尾部代码之后的垃圾代码全部删除:1 L8 e5 `' `+ ~% l, \: K
# R3 I& j# b5 a+ d* Y; y
( ?' g G [( |# y9 t8、剩下的部分就是真正的ISP固件文件,保存,提取固件步骤结束:/ ^% I$ H+ d5 r0 T. v+ t8 G
$ X( R$ H- K5 ?& X: P
( Y& i& n, A2 Y1 W$ r. h' }$ M小结:" A9 q; \) `" d! O0 I
1 S3 z& N+ d l7 \本次演示得到的ISP和公开的ISP各方面属性都是一样的,量产也能成功……至于固件的命名可以参考其他固件,自己心里有数就行。这样就有了属于自己U盘的固件,以后就不怕量产失败不能恢复了。
, O4 i. Q3 d! d* a# y: k; ~& ~6 q9 F3 P
|
|