Palm Centro CDMA版修改ESN攻略(下)
四、扫描MEID地址并清零
这一步是比较重要的一部,为何我们不能用CDMA WORKSHOP修改ESN就是因为MEID没有清零,只要一次性将MEID清零后我们就可以随时修改ESN了。要清零MEID必须要找出它的写入地址,找出所有地址后就可以逐个地址的去清零。
1.确认MEID码和ESN码。
确认首先要确认一下本机的MEID码和ESN码是多少,找出这两个码之后才能有序地进行清零工作。
在手机屏幕的拨号桌面,按一下手机键盘里Alt键右边的那个菜单键,此时手机屏幕顶部会出现可选菜单,找出Options选项里的电话信息Phone Info并点击确认,这时所有信息都会出来了,记下MEID码和ESN码,ESN码会在第五步“扫描ESN地址并修改”里应用。如图6所示。
2.读出包含MEID地址的内存。
MEID的地址是寄存在手机的内存中,先要把寄存有用信息的内存读出来,然后搜索MEID码所在的地址。读取内存仍然是使用CDMA WORKSHOP来完成,如果刚才读完SPC密码后没退出程序的话就可以立即转到下一步骤,否则请再次打开CDMA WORKSHOP并发送SPC码解锁。
MEID码的寄存地址主要在0x00900000-0x00DB0000范围内。打开CDMA WORKSHOP的Memory页进行读取MEID码内存操作,在Memory/Eeprom栏的开始地址Star Addr填入0090:0000,字节大小Size(bytes)填4887168,其它选项按默认即可,点击Read并保存好.BIN文件,可以将文件命名为MEID.BIN。如图7所示。
当内存读到一定进度时,程序可能会提示电话无应答,如图8所示。原因大多数是进行操作前没关闭杀毒软件、防火墙或其它正在运行的无关程序,很多玩家读内存花了好几个小时就是因为这个细节没处理好。把那些程序关闭后就行了,但要注意在关闭杀毒软件和防火墙期间请勿插入未经查毒的U盘也不要连接网络上网。
读出全部内存大概需要20分钟左右,时间视乎电脑的性能及配置而定。整个内存读出后就会显示100%的进度,如图9所示。
3.搜索MEID地址。
内存读出来后就可以搜索MEID所在的地址,在这里我们会应用到XVI32这个软件工具,XVI32 是一款十六进制内码编辑器,可以搜寻、替换甚至是 Unicode 的编辑。用XVI32打开刚才保存好MEID.BIN文件,点击Search栏里面的Find。OK,现在拿出手机的MEID看看,例如mr7 CENTRO的MEID是A100000716F6C9,要寻找MEID码后面4个字节即07 16 F6 C9(每2个数字或字母组成一个字节),在XVI32填入这4个字节时需要倒序填入,即填入C9 F6 16 07。在Hex String里填入即可,其它选项按默认即可。如图10所示。
现在按下电脑的F3键或点击 XVI32 Search 里的Find again down也可以,记下XVI32左下角显示的Adr.hex地址,例如47FF8,建议用记事本记录(可命名为MEID.TXT)。当程序提示String not found时最好再按电脑的Shift F3键或点击 XVI32 Search 里的Find again up再反复仔细查找MEID地址以防遗漏。如图11所示。不同的手机,MEID地址也不尽相同,请大家多注意。
4.编辑换算完整的MEID地址。
现在把记录下来的MEID的Adr.hex地址进行换算,用于待会清零时填入完整的地址。现在打开记录MEIDAdr.hex地址的记事本。记得之前一步用CDMA WORKSHOP读出MEID码的寄存地址是从0090:0000开始吗?刚才记录的地址就是0090:0000后的地址,以mr7记录的地址为例基本是5位数和6位数的,其实就是8位数地址的后5位数和后6位数的叠加。以首地址47FF8为例即0094:7FF8,末尾地址331800即为00C3:1800,为何331800为00C3:1800?由于10进制是由0-9十个数字组成,而16进制是由0-9,A-F,十个数字加六个字母组成。10进制与16进制的对应关系是10进制0-9对应16进制0-9;10进制10-15对应16进制A-F。
这个计算步骤完全可以交给电脑系统自带的计算器完成,打开WINDOWS的计算器选查看栏里科学型的十六进制,然后用起始地址00900000分别与收集的Adr.hex地址相加,例如末尾地址331800的换算,就是900000 331800= C31800,即实际地址为00C3:1800。为了方便待会清零时填入完整的地址,我们还要做补0工作,在所有的实际地址前加0x00,例如末尾实际地址00C3:1800补0后就是完整的地址0x00C31800,在清零时我们只需复制这个地址然后直接粘贴十分方便。所有实际地址补0后把记事本保存一下留待MEID清零时用。如图12所示。
5.利用QXDM对MEID进行清零。
使用QXDM前请先安装QPST才能正常运行,这一点务必要注意。打开QXDM,点击Option里的Communications,在目标端口Target Port里选择自己手机的端口(端口就是刚才第二步第2点所查出来的端口号,例如本人端口是COM 2),其它选项按默认即可,点击Ok联机。如图13所示。
在QXDM的View下拉条里陆续打开Command Output、Memory Viewer和NV Browser这几个窗口。如图14所示。
先选中Command Output窗口,在Command命令行里输入SPC码进行解锁,如SPC码为000000则输入:SPC 000000并按电脑键盘的回车键Enter,如果Command Output窗口显示的结果跟图15所示则证明SPC已解锁。
选中NV Browser窗口,找出第01992项MEID Check Digit。选中这一项并点击Read读取信息,然后双击Input里的0值使其由灰色变为白色(有时需要多点击几次才能变白色),此时填入1并点击Write写入。如图16所示。填入1的作用主要是使MEID打开并随意修改,假如是0的话MEID是在屏蔽状态下不可改的。
MEID打开后下来就是进行清零工作。为了保险起见最好先校验一下MEID码,选中Command Output窗口,在Command命令行里输入RequestNVItemRead meid并按电脑键盘的回车键Enter。如果Command Output窗口显示的结果跟图17所示则证明MEID码校验正确。
确认MEID正确无误后,选中Memory Viewer内存查看窗口。现在打开第4点“编辑换算完整的MEID地址”时记录完整MEID地址的记事本,先把第一段地址复制粘贴到Address空白栏里并按电脑键盘的回车键Enter。以本人的第一段MEID地址0x00947FF8为例,大家可以看到内存里的MEID码跟手机完全一致,两者相互倒序对应,一共七个字节,如图18所示。
找出内存中第一段地址的MEID后我们就要将这七个字节全改为零。如图19所示,改为零后键值会变为红色,此时还需要点击Write写入,使其变为黑色。如此类推将内存余下地址的MEID码也改为零。
有时候我们找出的MEID地址不一定完全正确,例如图20所示内存中的“MEID”跟手机的真正MEID值不一致,那么这个地址段是无关的,请不要修改。
当所有地址段所对应的MEID都清零后必须要验证一下是否真的清零。再次打开Command Output窗口,在Command命令行里输入RequestNVItemRead meid并按电脑键盘的回车键Enter。如果Command Output窗口显示的结果跟图21所示DIAG RX item:meid=0x0000000000000000,则证明MEID已完全清零。DIAG RX item:meid还是显示原来MEID码的话说明MEID还没真正清零。MEID没真正清零的原因一般是扫描MEID地址时没找全所有地址、或者在MEID清零时漏了某些地址,多做几遍仔细点就是了。假如你确认自己的步骤和操作确实无误但还是没能清零的话可以尝试扩大内存读取范围来扫描的MEID地址,方法就如第四步“扫描MEID地址并清零”中的第2点“读出包含MEID地址的内存”,只不过字节大小Size(bytes)改填为4915200,扩大范围后在进度达到99%时CDMA WORKSHOP程序会提示超出范围的,别管它点击确认保存就是了,接下来按第3点到第5点重做就是了。
MEID已完全清零后需要对MEID进行屏蔽,选中NV Browser窗口,找出第01992项MEID Check Digit。选中这一项并点击Read读取信息,然后双击Input里的1值使其由灰色变为白色(有时需要多点击几次才能变白色),此时填入0并点击Write写入。如图22所示。填入0的作用主要是使MEID重新屏蔽起来不被改写,假如不屏蔽MEID的话,手机重启后MEID会变为手机原来的MEID码,这样一来清零的操作等于白费了。很多玩家都会卡在这个不起眼的小操作。
最后点击QXDM Option里的重启目标Reset Target,然后退出QXDM及QPST,最好把手机电池也拔出来做一次重启。查看手机信息Phone Info,MEID变为00000000000000,如图22A所示。
OK,现在可以松口气休息一下,最难搞的步骤告一段落。
五、扫描ESN地址并修改
这一步主要是利用CDMA WORKSHOP扫描手机原来ESN地址并保存文件,然后写入新ESN码时再载入保存的地址文件,以便修改。
1.ESN地址扫描
手机进入Diag模式并用数据线连接电脑,打开CDMA WORKSHOP并联机,在 Security页发送SPC码解锁。同一页面下找出ESN项目栏,点击Read读出手机本身ESN码。在ESN项目栏的下拉条选中Universial,RAM mothed,点击Write,此时会弹出对话框Choose action,在下拉条选扫描ESN地址Scan memory for ESN addresses,点击OK,Start address填入0090:0000,End address填入00DB:FFFF。再次点击OK进行ESN地址扫描。如图23所示。
当ESN地址扫描完成时,进度条会显示100%,如中途停止扫描请重新扫描,完毕后以.txt记事本形式保存ESN地址,建议文件命名为esn。如图24所示。
保存好的esn.txt文档如图25所示。ESN所在的地址都在文档上,请勿修改里面的任何内容。
2.ESN修改
继续在ESN项目栏的下拉条选中Universial,RAM mothed,把之前读出来的手机ESN码删除,填入你修改的新ESN码,如AAAAAAAA。点击Write,此时会弹出对话框Choose action,选择载入ESN地址文件Load ESN addresses from file,点击OK,然后选刚才保存的esn.txt文档。如图26所示。
当ESN写入完成时会提示成功,此时点击CDMA WORKSHOP的File,选Exit退出,点击Yes同意模式重启Mode Reset,如图27所示。
现在再查看手机信息Phone Info,如图28所示ESN已更新,搞掂!
修改完ESN后,我们可以写入其余资料(AKEY、PRL、IMSI及HOME ID等)拨打接听电话。手机写完号后别忘了重新打开杀毒软件、防火墙等,然后才连接网络上网,切记!
顺便附上mr7扫描的MEID及ESN地址以便参考!
MEID地址:
Adr.hex 换算后的完整地址
47FF8 0x00947FF8(900000 47FF8=947FF8即0x00947FF8)
1E1E54 0x00AE1E54
1E1EF8 0x00AE1EF8
1E1F00 0x00AE1F00
1E1F30 0x00AE1F30
1E1F38 0x00AE1F38
1E226C 0x00AE226C
1E2310 0x00AE2310
1E2318 0x00AE2318
1EEEBC 0x00AEEEBC
1EEEC4 0x00AEEEC4
317E5C 0x00C17E5C
331800 0x00C31800(900000 331800=C31800即0x00C31800)
ESN地址:
ESN addresses:
0094:7AB8
0095:A384
0099:1D5C
00AE:2234
00AE:2264
00C2:A3F8
00C3:14FE
00C3:33CD
00C4:C114
00C4:C2A4
本文是mr7(QQ:510844822请注明来意)修改Centro ESN的过程,如有不正之处敬请指教。广州地区的玩家如有兴趣可加入广州CDMA及PHS玩家群讨论,群号51711332(请注明来意)。特别鸣谢提供测试样机的玩家!