找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 7194|回复: 26

[软件及汉化] Palm Pre快速变半砖、修半砖简明教程

[复制链接]
发表于 2010-3-14 05:08 | 显示全部楼层 |阅读模式
警告:本文提到的方法可能存在未知风险,使用与否请自行斟酌。如因采用本方法而导致你的机器损坏,本人概不负责!
# Z: k2 [- i: v" g9 L  U+ R' a' `
         在论坛经常看到有pre变半砖的消息,就是手机信号没了,左上角变成Phone Offline(以下简称PO),这种情况多数是meid和esn不匹配造成的。我的pre是meid始终无法清零的那种,不管怎样改,一重启就回复原样,因此以为PO问题与我无关,没想到,几天前在写号的时候PO了,于是开始修砖,折腾了很久,无法成功,看了论坛的很多帖子,比较公认的方法是先清meid,esn,然后重新写回meid,我对此深信不疑,而且当时也认为这是唯一正确的方法,但是对于meid一直无法清零的pre,这种方法是无法实现的,正当深感修砖无望之际,忽然的一个想法,让我的Pre复活了……
! D7 G' k/ S$ O2 R5 h3 w
, d, n8 U7 i  R" ?4 e! Z/ h为了减轻广大砖友的痛苦,我经过反复试验,总结出快速变半砖和快速修半砖教程。之所以要写变半砖的教程,目的在于说明修砖的原理,同时也可供高手测试用,作为研究写号技术的参考,使用正常的机友就不要轻易尝试了。% H/ {0 u2 [4 c8 U$ S% h0 p/ B

; ^9 T) [4 W* B/ a在开始教程之前,先说一下本人使用pre的一些经历,以更好地阐明meid,esn的作用原理,对部分机友可能有所帮助。
% D0 z5 j7 M, j7 `      我的pre大概是4、5个月前买的,meid一直无法清零,但这并不意味着就无法打电话,我采用的方法是不去管meid,直接在内存中改esn,这样也可正常打电话,也许有人会问,这样不就造成meid,esn不匹配吗?是不匹配,但没问题,后面的教程将会告诉你怎样才是真正的不匹配。1 Z& i9 {; s/ y4 t6 Z
虽然这样做有个好处,就是不用打meid补丁,profile就能正常sign in,app catalog也能正常使用,不过手机就不能做重启或使用飞行模式等操作,因为那会使esn复原,需要重新改,当然,可把内存改esn的操作写成脚本在QXDM运行,使这个操作变 得非常快速方便,代码如下:
  1. RequestItem "Poke DWORD Request" 0x00A5BEC4 1 0x12345678 0 6 |5 f) r7 ]8 ?0 H+ Z" G2 ]' r% u, G
  2. RequestItem "Poke DWORD Request" 0x00A62618 1 0x12345678 0
    4 N; Y3 E7 u3 l9 @* G7 D
  3. RequestItem "Poke DWORD Request" 0x00A86188 1 0x12345678 0
    7 P( y. D, x. ~; r
  4. RequestItem "Poke DWORD Request" 0x00AACF40 1 0x12345678 0
    . i# b, S4 r0 X/ v# H
  5. RequestItem "Poke DWORD Request" 0x00AAD0FC 1 0x12345678 0 ' @/ ?1 G. d; T% s; G1 P
  6. RequestItem "Poke DWORD Request" 0x0109B2AC 1 0x12345678 0
    $ b0 o* Y7 [2 ~2 d, D- P! ?& \) w/ L8 A6 q
  7. RequestItem "Poke DWORD Request" 0x0122199D 1 0x12345678 0
复制代码
以上代码是基于1.03rom的,其他rom也一样,只要用相应rom下的esn地址就行了。
8 S6 h$ _! m4 d& W: e
9 r/ u/ V/ G, Z) R2 G$ `3 ]! I(在此顺便说一下怎样取esn地址,不用去扫描内存了,基本上有用的地址都在A00000-12D0000这一段,直接去cdma workshop或UniCDMA2005存下来就行,不过在保存的过程中最好不要在你的计算机上做其他操作,不然很容易中断。)) u: Y4 D# V) v6 q

  y6 E4 K. a6 s9 u8 f好了,继续上面的问题,把代码中的0x12345678改为你要写的esn,然后存为xxx.scr(文件名随便起,但扩展名一定要.scr),打开QXDM,选Option->Settings,在Alternate Script Path一栏填入xxx.scr所在的路径,点OK,然后在Command中输入run xxx.scr就行了。9 h$ H; N# X. J) z) s
说明一下,不一定要所有esn地址都改,而且最好是改最少的地址而使RequestNVItemRead esn时查到的是本机的esn而在电话拨号面板中用##3282#查到的是你写入的esn,这样变砖的概率更小,尽管全改变砖的概率也不大。虽然这样做使得改esn变得很方便,而且我试过手机几个星期不重启也没问题,但毕竟当手机没电或误操作飞行模式(还有其他操作也会使esn复原,如##000000#)而身边没有电脑就没办法了。因此,我还是不断做meid清零的尝试,几乎在各个rom下都试过,始终无法成功,最后一次在1.4rom下,结合PmModemFactory的使用,终于使Pre变半砖了,于是有了上面提到的修砖行动,期间刷过了几次rom,最后在1.03rom下,还是用PmModemFactory,修砖成功。由于在这个过程中做了很多操作,无法确定那些步骤是必要的,那些是不必要的,为了能总结出有效的方法,本着为了革命,不怕牺牲,不入虎穴,焉的虎子的精神,我决定让我的Pre再变砖,之后做了不下20次的变砖、修砖操作,终于总结出了快速变半砖、修半砖的简明教程。
+ y1 s) M( s- ]. Y3 s- ]) }! `$ N1 K' z+ O
好了,罗嗦了这么多,主题就要开始了,以下提到的方法在1.03rom下进行,在其他rom下应该也没问题。
0 o: {! F) d* D% o5 T.
/ ~! Y) y4 R7 A; E2 B
" s5 Z) ?% A* f. k准备工作:首先要有QXDM和PmModemFactory,PmModemFactory在低版本的rom中就有,如果你是使用高版本的rom,请去低版本的rom中提取,并放在pre的/usr/bin下面,接着在电脑上运行那个talk.py,打开wifi,用telnet的方式上pre(具体方法请参见论坛上的其他教程)。为什么不通过putty用8023端口直接上,是因为那样输入mpt d后,在diag模式下putty会断开。
8 o9 v5 @, _$ ]6 W  d$ s# {6 Y+ U; Y
0 d/ J: B- M7 P7 }% O- z; r一、Palm Pre快速变半砖教程  k2 V4 Z+ W( {
说明:本教程仅适应于没有改本机的pre,即meid,esn为出厂的值,scm为0x3A
' K& m/ n, A+ ]) h& u! o2 V1、在telnet窗口下,输入mpt d  
' ]0 ?5 e( V$ `2、把前面代码中的0x12345678改为0x0或除本机esn外的任一数值,保存为xxx.scr,然后打开QXDM,在Command中运行run xxx.scr,可用RequestNVItemRead esn查询,确保esn已改变(esn地址一定要全)
! z* v3 U4 D# T4 c9 u  A/ H3、关闭QXDM,切换到telnet窗口下,输入mpt x  l& A9 k9 i- E6 \
4、接着输入PmModemFactory -r 0(恢复工厂nv项目,这一步是关键)\9 G/ y8 c. `% z! ?
5、在pre上打开飞行模式再关闭,你会发现左上角一直是searching了(这一步可以省略)- % u  v+ ^) I: V9 t
6、在telnet窗口下,输入reboot,重启,pre的左上角变成Phone Offline了
) j3 z& J. M- ]6 k( k这时候在##3282#中查到的meid,esn都为0(不管你在第2步动写入的是0x0或其他值,因不匹配,radio异常,取不到就显示为0),而在QXDM中RequestNVItemRead meid显示为本机meid,RequestNVItemRead esn显示为你写入的值,RequestNVItemRead scm变为0x2A了。如果这时候你再逐个meid地址去检验,就会发现有几个meid地址变零了,只剩下2、3个保持原值。
$ d2 A" l6 \) j* q: y
  ^" R& r4 \/ t. X& f
& n# @: C3 x+ _# V- n# P: |* m8 C$ o: d8 }4 f
二、Palm Pre快速修半砖教程:  
) U5 F3 O9 a9 v& F说明:本教程对采用上面教程后变成的半砖机能100%修复,相信对大多数因meid,esn不匹配造成的半砖机也能修复 " a6 }# f4 F" y3 v( n
1、在telnet窗口下,输入mpt d
% X. a6 o9 {- r3 Z' z2、把前面代码中的0x12345678改为跟本机meid匹配的esn,保存为xxx.scr,然后打开QXDM,在Command中运行run xxx.scr,可用RequestNVItemRead esn查询,确保esn已改变(esn地址一定要全)2 P, d" e8 m# u' u. P
3、关闭QXDM,切换到telnet窗口下,输入mpt x
  L/ V* @/ a) a9 H) v' N7 I4、接着输入PmModemFactory -r 0(恢复工厂nv项目,这一步是关键) % W  i4 |1 N1 q( O( [& U: i+ D- u& h
5、接着输入PmModemFactory -o 2(modem reset),可以去看你的手机了,大概10秒后,开始搜索信号了,修复成功 4 [$ M3 M4 E6 j& J- B% O( P) E3 P# `
4 E& V% D! Y, S  n
这时候在##3282#中查到的meid,esn都变为原值了,在QXDM中查meid,esn也是原值,scm变为0x3A。再去检验meid地址,也都恢复了原样。 2 @0 a7 ]0 O' R' q; e- j# v4 j
2 E, U1 y( K& M$ v0 W" h& @
总结:  - l; q. Q$ J* D6 w6 b1 Q
为什么说PmModemFactory -r 0是关键呢?我估计是这个对meid,esn进行匹配校验,教程一校验不通过,使radio异常,教程二校验通过,radio正常。而一般情况下的重启只是把meid换算出esn,然后恢复。 & E. U1 t2 a5 v% T
; p- g% o/ ^% w- X+ a
个人看法:本人认为重刷radio对修复这种情况的半砖没什么作用,因为radio可看作是程序部分,而meid,esn是nv项目,可看作数据部分,再刷radio还是原来的radio,除非对radio作修改,这和重刷rom没什么区别(目前情况rom中都是带radio的),不过,这对真砖可能有作用(真砖没看过,猜的)。而那种通过恢复在qpst下备份文件的方法也是无效的,因为在恢复nv项目时meid,esn是无法以这种方式恢复的,否则修改meid,esn就变得非常容易了。  Z! p8 S4 }/ {* V

/ W1 ]1 S6 l# K4 B* G在此,本人想提出一些不禁用meid而改esn的思路,已供机友共同探讨研究。
/ e5 p! M1 `8 k+ d/ k; Q0 K$ }+ L# K6 q一、直接在内存中改esn要用到电脑,pre不就是一部电脑吗?能否写linux下的程序,在pre上直接运行改esn,最好是能写成daemon进行监控,发现esn恢复了就立刻重写。不过这种方法难度较大,因为应用和通讯是两套独立的系统,有各自的cpu和内存,应用程序对通讯处理器的访问是通过AT命令的,想要直接访问那边的内存是很难的,想要实现daemon就更难了,因为通讯方面内存的变动在linux这边应该是监控不到的。-
4 t7 q; Q. S' \! s7 w0 b
5 d8 K- H" b* b二、修改radio。从radio的文件可看出,esn是由meid通过hash算法换算出来的,那么就可通过修改这部分,不管它怎么换算,把结果替换成你想要的esn,或者使它换算后,不对esn进行恢复。这个难度也不是一般的,主要是很难找到高通芯片方面的资料,如果有这方面的反汇编工具,对radio进行反汇编,那么这个方法实现起来倒是较有可能。
/ F( t# t5 X$ n  ~7 E2 W5 y. C0 x/ c$ `! U) g( u2 `( T
(本文同时发于吹友吧和51)

评分

参与人数 3威望 +45 收起 理由
duansindo + 5 支持分享
CyberVsQ + 20 谢谢分享
2b6c3d729918489 + 20

查看全部评分

回复

使用道具 举报

发表于 2010-3-14 09:48 | 显示全部楼层
很奇怪啊,重新粘贴地址还是不行
回复 支持 反对

使用道具 举报

发表于 2010-3-14 10:43 | 显示全部楼层
非常抱歉.$ H7 @$ ^( H# J- f3 r4 K* F3 K
可能是后台过滤词库的问题.
0 ^" r$ r' F. ^& p- F由于网络管理的原因.目前后台有1800个过滤词...我们自己有时也没办法知道哪个影响了发贴.2 S, _% t7 s" V! C& T. h
3 M! {; y+ |2 k; E; R
已经整理了发出来了
回复 支持 反对

使用道具 举报

发表于 2010-3-14 13:26 | 显示全部楼层
楼主很强,可是对我这真砖无用啊,顶了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-3-14 15:40 | 显示全部楼层
原帖由 lsw163123 于 2010-3-14 13:26 发表
2 R  `/ L. h/ }; W: }0 z楼主很强,可是对我这真砖无用啊,顶了

2 z2 W& Z) C! B/ R3 {) S$ }呵呵,真砖没看过
2 y. y$ K' a) Y! k" f* ^( M: q2 X5 [看过你的那个真砖的帖子,想说一下,rom1.3.5以上版本的usb passthrough第一次打开时要求校验码,可用PrePassThroughKeygen(论坛上有,可去找找),而之前版本rom第一次使用usb passthrough时要用spc,在phone offline的情况下输入spc是行不通的,可试试打开wifi,用telnet上,然后mpt d,看看QXDM能不能连上
回复 支持 反对

使用道具 举报

发表于 2010-3-14 16:47 | 显示全部楼层

回复 地下室5# treewood 的帖子

你的帖子我仔细研究了。就向你的想法似的,我也用telnet上,然后mpt d,但是如果不插数据线,无法打开端口,QXDM不能连上。插上数据线,和用PUTTY连接一样,QXDM不能连上。
回复 支持 反对

使用道具 举报

发表于 2010-3-14 16:50 | 显示全部楼层
原帖由 lsw163123 于 2010-3-14 16:47 发表 , J9 \9 ~7 k0 @1 D$ x9 f1 N
你的帖子我仔细研究了。就向你的想法似的,我也用telnet上,然后mpt d,但是如果不插数据线,无法打开端口,QXDM不能连上。插上数据线,和用PUTTY连接一样,QXDM不能连上。

% l% ^2 E: n' W% U  d3 r* x# @4 W+ ?4 y: y/ u( A4 B0 G4 Q

' g& O7 p3 E; N  m, e8 ?# `如果当真砖来处理的话.可以换到1.31的ROM来试.因为在有些1.35的ROM里已经没有mpt d指令了..可能会报错.
回复 支持 反对

使用道具 举报

发表于 2010-3-14 17:02 | 显示全部楼层
原帖由 treo 于 2010-3-14 16:50 发表 . N& F3 c' w" C: O% J( I5 \
' g9 I& h# `5 p( J1 f+ e( v( y+ r

; I3 k0 n2 s" W& R, O4 V
' q+ B9 r  C. a. d: h如果当真砖来处理的话.可以换到1.31的ROM来试.因为在有些1.35的ROM里已经没有mpt d指令了..可能会报错.

7 v2 r4 }  d5 c  B( F8 V我改回1。03了
回复 支持 反对

使用道具 举报

发表于 2010-3-14 17:30 | 显示全部楼层
强贴,来围观下。
回复 支持 反对

使用道具 举报

发表于 2010-3-14 22:15 | 显示全部楼层
改局端的也来支持一下,顶技术贴
回复 支持 反对

使用道具 举报

发表于 2010-4-15 13:34 | 显示全部楼层
这个不是转贴的?我在51看到内容相似的
回复 支持 反对

使用道具 举报

发表于 2010-4-22 01:44 | 显示全部楼层
同一个作者..两边同时发的.
& l; S. W, o" M9 R
) E; L; u" R* @: E0 j- X8 F估计在51可以看到N多从这边转过去的东西.但是没有人敢说是从这边转的
回复 支持 反对

使用道具 举报

发表于 2010-5-9 22:51 | 显示全部楼层
楼主太强大了,我的半砖经过多天之后,重新变回满格信号了。
回复 支持 反对

使用道具 举报

发表于 2010-7-12 21:59 | 显示全部楼层
PmModemFactory已经有了“PmModemFactory……并放在pre的/usr/bin下面”,这一步怎么做啊?
- z6 j* |& S- W9 M# O很是着急,卡在这里了(在线等指导)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-7-12 22:31 | 显示全部楼层

回复 14楼 guiguisui 的帖子

把PmModemFactory放U盘下,退出U盘模式,用putty或Telnet登陆进去,键入命令2 e+ x& g6 |$ ?4 u# v; |( E
cp /media/internal/PmModemFactory /usr/bin/3 x( w# _0 Z& ?1 C
chmod +x /usr/bin/PmModemFactory
3 d0 p3 n- X5 \% a2 D# v* I7 I1 r( y* q% \% ^! e6 d" k: A9 [
[ Edited by treewood on 2010-7-12 23:14 ]
回复 支持 反对

使用道具 举报

发表于 2010-7-12 22:36 | 显示全部楼层
太好了,LZ现身了,抓紧时间再请教个问题“1、在telnet窗口下,输入mpt d ”时,提示password:     ,这里是用root还是空着不填?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-7-12 22:52 | 显示全部楼层
输入mpt d会提示password,这个还没碰过,你是什么版本的rom?好像是1.3.5以上才需要密码的,这样吧,你先在手机上打开usb passthrough,看看能否进入diag模式,如果提示要输入密码,就是论坛上搜个叫PrePassThroughKeygen的算号器,可算出来
3 @8 I9 S8 V" C4 N6 ?不过我印象中用mpt d都是不需要密码的
回复 支持 反对

使用道具 举报

发表于 2010-7-12 23:07 | 显示全部楼层
1.03 WIFI激活版 ##8727277#不可用,也没有usb passthrough开关~: e. L/ r; D+ A/ u* K+ {
老大,刚才给的是几行命令?中间有些空格,PUTTY登陆的,不行啊6 S" m% P& I) F6 s7 T

/ W! `- Y. f2 |5 ^7 a8 }- }/ I有没有图形界面的,复制粘贴呀,这些命令真的不懂
3 v7 }; I' F6 o& |, M. ~
7 W6 S  k) P, q2 X[ Edited by guiguisui on 2010-7-12 23:16 ]
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-7-12 23:16 | 显示全部楼层
那你就刷个1.03免激活的,也有passthrough开关4 a2 h& g3 S2 l  K) `' i5 Y
呵呵,刚才搞错了一个单词,已改正,2行命令,有空格,你复制到记事本看一下就清楚
回复 支持 反对

使用道具 举报

发表于 2010-7-13 23:41 | 显示全部楼层
谢谢,“……不去管meid,直接在内存中改esn,这样也可正常打电话……”觉的这个很关键,这个是怎么做到的?(那时候 ESN Modifier 还没有出版)这是变砖前的状态,我没有做到这样,等弄成这样我再试试
/ a2 `- s/ }) ~( ?: e( S" C+ p5 v% S' S2 {8 X2 B6 x: r
[ Edited by guiguisui on 2010-7-13 23:52 ]
回复 支持 反对

使用道具 举报

发表于 2010-11-8 18:42 | 显示全部楼层
这帖子对PALM来说是救星,可是我的黑莓,蛋疼了,service requierd
回复 支持 反对

使用道具 举报

发表于 2010-11-8 20:06 | 显示全部楼层

好强啊

【顺风行科技】第一期特价▶▶▶全新palm PIXI 1220元(限30台)Palm PRE 14天机一套 1050元 谷歌 G1 A成色850元
回复 支持 反对

使用道具 举报

发表于 2010-11-9 10:49 | 显示全部楼层
强啊。收藏备用。呵呵
回复 支持 反对

使用道具 举报

发表于 2011-3-15 20:55 | 显示全部楼层
楼主,我的TALK.PY怎么没有办法打开啊,打开就关闭了?
回复 支持 反对

使用道具 举报

发表于 2011-5-11 11:01 | 显示全部楼层
ESN和MEID都写到手机里了,问题左上角出现了palm 的字样,无法拨打电话,只可以拨110。
回复 支持 反对

使用道具 举报

发表于 2011-7-8 09:50 | 显示全部楼层
谢谢了............
回复 支持 反对

使用道具 举报

发表于 2011-11-6 14:14 | 显示全部楼层
晚上回来研究这个..2 s$ {) p( M. d+ B
蛋疼.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

QQ|Archiver|手机版|小黑屋|吹友吧 ( 京ICP备05078561号 )

GMT+8, 2025-1-18 12:44 , Processed in 0.378078 second(s), 19 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表