- 积分
- 144
- 实力分
- 点
- 金钱数
- 两
- 技术分
- 分
- 贡献分
- 分
|

楼主 |
发表于 2006-3-18 20:44:58
|
显示全部楼层
回来接着写
有了前面的准备,让我们开始。
首先要做的就是在fullflash里找到电参。呵呵,在哪呢,狼大给我们指明了方向,就在block67里。现在的问题就是确定哪个是正在被使用的电参,狼大也告诉我们了,在他的文章《6688经验半月谈》里曾经说过EEPROM的数据结构和存储,出处和时间我也找不到了。有意的机油也可以找找看。具体的过程略,
这里只说办法和结果:
办法:狼大的那篇调整电参的文章《因调整电压导致Block67读写失败怎么办》中提到的是在fullflash里查找430000F0,注意:我们要找的是430000FC,可能找到很多,我们需要的地址最高的那个,(可能的话我待会儿上图片),找到以后,盯着这段往前找,找到前面还有另一个“FCxxxx”,找到了,这两个“FC”中间的部分(可能的话我待会儿上图片)就是‘FC011400 48E2FF 00430000FC’中间那个48E2FF指明了电参的位置。具体是:
还是高字节在前,实际的地址是(相对于fullflash的文件)FF E2 48 – A00000=5FE248,因此,再回到winhex里,用ctrl+g呼出转到偏移量对话框,输入5FE248,回车,看到电参了,就是9E10691057F8E903FFFFFFFF63006AFEFFFFFFFF这20个字节了。为了验证我的想法,我用FREIA备份小8的电参,然后用记事本打开备份的电参文件。
下面是用FREIA备份的电参格式,也是原始电参,看到么了?从头开始,先是低字节,后高字节,前2个字节,0x6A 0x0F,倒过来高字节在前低字节在后,0F6A就是3940的16进制了。
******************** Section ********************
***************** ID: A9155F3C ******************
********** Old IMEI = XXXXXX-XX-XXXXXX **********
********** New IMEI = 350017-37-015144 **********
*************************************************
IMEI Block 67 [Siemens 6688]
0x6A 0x0F 0x69 0x10 0x5D 0xF6 0xEC 0x03 0xFF 0xFF
0xFF 0xFF 0x63 0x00 0x6A 0xFE 0xFF 0xFF 0xFF 0xFF
而我的实际电参
3940 4201 63069 1004 65535 65535 99 65130 65535 65535
到这里已经成功了一大半。歇一会儿。
呵呵,如果能够找到对应的fullflash,而且正确定位到这段电参所在的地方,就可以看到了,发现了么,是按照16进制顺序存储的,就是直接把电参转换为16进制,但要注意地是高低字节,比如3940的16进制是0F6A 依次类推
到了这里知道怎么改动了吧?
接着写!
呵呵,下面就是实际操作了,激动啊。
就拿前面有个机油的问题为例:从fullflash里提取电参。
按照楼上的做法,用winhex打开fullflash,找到地址最高的430000FC,在盯着往前找到对应的那个FC,找到中间的部分,按楼上的那个例子的位置,找到对应的电参存储的地址,例如计算后得出的文件偏移量为5FE248,用ctrl+g定位到5FE248,顺序复制20个字节(被数错噢)出来,这20个字节就是你要的电参了。
现在的办法:
1. 在按照楼上的换算,把提取出来的电参还原为10进制,sensorstool连得上就用它,
2. 其实到了现在连不上也没关系,用freia提取一个电参文件,直接改动文件里的16进制数,岂不更快?再把改动后的文件用freia刷回去就可以了。
3. 骨灰级办法就是,再回到你自己的fullflash里,找到你自己的电参存储的位置,再文件上直接修改,或者自己写一个vkp,地址就是你自己电参的存储位置,原数据为你自己那个电参 新数据为刚才提取出来的20个字节的16进制数,vklay刷入,ok?
4. 找个机油帮忙,呵呵,有时间的话我帮你。
至于自己挑电参的也可以很容易的拉,不用sensortool,直接用freia备份的电参文件修改,在刷回去就行了。
最后注意:修改电参危险系数较大,新手需要慎之又慎。老鸟也别大意了哈。
还有,我说得不一定对,不要迷信。有错误还请各位XD斧正。大家一起讨论。
文章至此,暂告一段落,排版回头歇息一下再说。
不写文章真不知道其中的辛苦,在此向为论坛做出贡献的前辈们致敬!!!!!
[ 本帖最后由 mainboard1983 于 2006-3-18 20:48 编辑 ] |
-
用winhex打开flash并查找16进制数值
-
找到电参具体内容
-
找到了电参的block67
-
重新定位到电参的存储地址
|