|
[sell=10] (很详细) 大家写固件的时候(MT),都会注意到校验码这个问题,关于校验码的算法,网上没有相关资料。下面我谈谈个人的看法,不对的地方欢迎大家指出,谢谢!!!
大家在用MRT修复模块的时候有没有注意到,只有主头的固件,MRT才能识别其版本,负头是显示出0000,这个就和PC3000里看到的一样。相信大家对修4D系列的盘有所体会吧,6Y系列用主头的固件来修复负头固件,失败的人不少,因为一般人不知道主头固件跟负头固件的区别和联系,4D的相对来说,用主头固件修复负头比6Y的成功率高得多,我修复的时候注意到,写入几个关键模块时,检查负头固件发现负头也出现了校验,和主头是一样的,原因就在这里边,还有一个很明显的现象,不知道大家平时注意到没有,主头复位4模块好盘一般全对,负头只有18H不对(应该说是无效),这样一来,就影响到重建译码表,因为与这个过程有关的是33、18、1B、78这4个模块,现在大家都知道重定义主头。还有一点就是在PC3000里加载LDR报错,主头却是成功的。这意味道什么呢?主头和负头的真正区别在于固件的是否完整,负头的校验之所以为0000,因为他缺少用于计算校验的主要模块(内容不完整),相关的模块有1F、37、39、18、1B、78。把这几天模块写入负头,校验就出现了。 版权所有,严禁转载,作者:感觉。[/sell] |
|