爱技术

 找回密码
 注册会员

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 17068|回复: 21
收起左侧

[讨论]Common_Kang请进,关于AT

[复制链接]
发表于 2005-8-8 00:00:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册会员 微信登录

x
我找到了AT+CGSN的地址:
你看一下,但有一个难点,具体如下:

AT+CGSN
4022C :84 11 E5  -〉

00000 : E0 04             MOV      R4,#00H
00002 : BB 07             CALLR    0012H
00004 : 9D FE             JMPR     CC_NC,0002H
00006 : CB 00             RET      
00008 : E0 04             MOV      R4,#00H
0000A : BB 03             CALLR    0012H
0000C : 8D 01             JMPR     CC_C,0010H
0000E : BB 01             CALLR    0012H
00010 : CB 00             RET  
   
00012 : D7 40 11 00       EXTP     #11H,#1                ->难点,存放命令的RAM的page
00016 : 99 2C             MOVB     RL1,[R12+]
00018 : 27 F2 30 00       SUBB     RL1,#0030H
0001C : 8D 0C             JMPR     CC_C,0036H
0001E : 47 F2 0A 00       CMPB     RL1,#000AH
00022 : 8D 06             JMPR     CC_C,0030H
00024 : 67 F2 DF 00       ANDB     RL1,#00DFH
00028 : 29 27             SUBB     RL1,#7
0002A : 47 F2 0F 00       CMPB     RL1,#000FH
0002E : ED 03             JMPR     CC_UGT,0036H
00030 : 5C 44             SHL      R4,#04H
00032 : 71 82             ORB      RL4,RL1
00034 : CB 00             RET      

00036 : 1F 88             BSET     C
00038 : CB 00             RET      

0003A : 88 50             MOV      [-R0],R5
0003C : 88 E0             MOV      [-R0],R14
0003E : 88 F0             MOV      [-R0],R15
00040 : 88 D0             MOV      [-R0],R13
00042 : F1 82             MOVB     RL4,RL1
00044 : 7C 44             SHR      R4,#04H
00046 : F1 92             MOVB     RH4,RL1
00048 : 66 F4 0F 0F       AND      R4,#0F0FH
0004C : 47 F9 0A 00       CMPB     RH4,#000AH
00050 : 8D 01             JMPR     CC_C,0054H
00052 : 09 97             ADDB     RH4,#7
00054 : 47 F8 0A 00       CMPB     RL4,#000AH
00058 : 8D 01             JMPR     CC_C,005CH
0005A : 09 87             ADDB     RL4,#7
0005C : 06 F4 30 30       ADD      R4,#3030H
00060 : 88 40             MOV      [-R0],R4
00062 : F0 C0             MOV      R12,R0
00064 : 66 FC FF 3F       AND      R12,#3FFFH
00068 : F2 FD 02 FE       MOV      R13,DPP1
0006C : DA CD 4C B0       CALLS    Invalid Coding        ->DAE6745E
00070 : 08 04             ADD      R0,#4
00072 : 98 F0             MOV      R15,[R0+]
00074 : 98 E0             MOV      R14,[R0+]
00076 : 98 50             MOV      R5,[R0+]
00078 : CB 00             RET  
   
0007A : F0 1E             MOV      R1,R14
0007C : 7C 81             SHR      R1,#08H
0007E : E0 0D             MOV      R13,#00H
00080 : BB DC             CALLR    003AH
00082 : F0 1E             MOV      R1,R14
00084 : E6 FD 20 00       MOV      R13,#0020H
00088 : BB D8             CALLR    003AH
0008A : CB 00             RET      

00090 : E6 FC B3 08       MOV      R12,#08B3H                ->难点,存放命令的RAM的offset
00094 : D7 40 11 00       EXTP            #11H,#1
00098 : 99 3C             MOVB     RH1,[R12+]
0009A : 27 F3 2A 00       SUBB     RH1,#002AH
0009E : 9D 02             JMPR     CC_NC,00A4H
000A0 : FA CC D0 9D       JMPS     CC9DD0                ->E51184
000A4 : BB AD             CALLR    0000H
000A6 : F0 F4             MOV      R15,R4
000A8 : BB AB             CALLR    0000H
000AA : F0 E4             MOV      R14,R4
000AC : 49 30             CMPB     RH1,#0
000AE : 2D 15             JMPR     CC_Z,00DAH
000B0 : 29 34             SUBB     RH1,#4
000B2 : 2D 1F             JMPR     CC_Z,00F2H
000B4 : 27 F3 12 00       SUBB     RH1,#0012H
000B8 : 2D 16             JMPR     CC_Z,00E6H
000BA : E0 DD             MOV      R13,#0DH
000BC : BB BE             CALLR    003AH
000BE : E1 7B             MOVB     RH5,#07H
000C0 : E1 FA             MOVB     RL5,#0FH
000C2 : E6 FD 20 00       MOV      R13,#0020H
000C6 : DC 4F             EXTP            R13,#1
000C8 : 99 2E             MOVB     RL1,[R14+]
000CA : BB B7             CALLR    003AH
000CC : E0 DD             MOV      R13,#0DH
000CE : 29 A1             SUBB     RL5,#1
000D0 : 2D FA             JMPR     CC_Z,00C6H
000D2 : 9D F7             JMPR     CC_NC,00C2H
000D4 : 29 B1             SUBB     RH5,#1
000D6 : 9D F4             JMPR     CC_NC,00C0H
000D8 : 0D 25             JMPR     CC_UC,0124H
000DA : BB 96             CALLR    0008H
000DC : 8D 23             JMPR     CC_C,0124H
000DE : DC 4F             EXTP            R13,#1
000E0 : B9 8E             MOVB     [R14],RL4
000E2 : 08 E1             ADD      R14,#1
000E4 : 0D FA             JMPR     CC_UC,00DAH
000E6 : DA C7 68 D8       CALLS    2768D8                ->FUN1       
000EA : BB C7             CALLR    007AH
000EC : F0 EF             MOV      R14,R15
000EE : BB C5             CALLR    007AH
000F0 : 0D 19             JMPR     CC_UC,0124H
000F2 : 26 F0 40 00       SUB      R0,#0040H
000F6 : F0 20             MOV      R2,R0
000F8 : BB 87             CALLR    0008H
000FA : 8D 03             JMPR     CC_C,0102H
000FC : B9 82             MOVB     [R2],RL4
000FE : 08 21             ADD      R2,#1
00100 : 0D FB             JMPR     CC_UC,00F8H
00102 : 20 20             SUB      R2,R0
00104 : A7 58 A7 A7       SRVWDT   
00108 : 08 E1             ADD      R14,#1
0010A : 2D 0A             JMPR     CC_Z,0120H
0010C : F0 10             MOV      R1,R0
0010E : F0 DE             MOV      R13,R14
00110 : F0 C2             MOV      R12,R2
00112 : DC 4F             EXTP            R13,#1
00114 : 99 8D             MOVB     RL4,[R13+]
00116 : 49 8D             CMPB     RL4,[R1+]
00118 : 3D F5             JMPR     CC_NZ,0104H
0011A : 28 C1             SUB      R12,#1
0011C : 3D FA             JMPR     CC_NZ,0112H
0011E : BB AD             CALLR    007AH
00120 : 06 F0 40 00       ADD      R0,#0040H
00124 : FA CD 00 66       JMPS     CD6600                ->E6302E
FUN1:
00128 : EC FF             PUSH     R15
0012A : EC FE             PUSH     R14
0012C : DB 00             RETS     

 楼主| 发表于 2005-8-8 00:01:00 | 显示全部楼层
这是E51184的程序

seg229:1184 AT_CGCN:
seg229:1184                 sub     r0, #12h
seg229:1188                 calls   0E6h, sub_E66228
seg229:118C                 mov     r12, r0
seg229:118E                 and     r12, #3FFFh
seg229:1192                 mov     r13, DPP1
seg229:1196                 calls   0DEh, sub_DE05DE
seg229:119A                 mov     r12, #1
seg229:119C                 add     r12, r0
seg229:119E                 and     r12, #3FFFh
seg229:11A2                 mov     r13, DPP1
seg229:11A6                 calls   0E6h, sub_E65E74
seg229:11AA                 calls   0E6h, sub_E6302E
seg229:11AE                 add     r0, #12h
seg229:11B2                 rets
发表于 2005-8-8 00:02:00 | 显示全部楼层
谢谢,看了一下应该是这个地方,有工夫写段程序刷进去搜索一下字串的页地址和偏移trytry, 对了您平时就用Adis16X写汇编么?我一开始是用acidmrp的那个c166单行汇编器,但是后来发现那个东西生成的代码有时候是错的,adis16x的操作又不是很方便
 楼主| 发表于 2005-8-8 00:03:00 | 显示全部楼层
对,那个程序写的不完善,好多错误。我一般用手写汇编和机器码。不熟的指令在Adis16X里查一下。因为做补丁常用的命令就那几个。
搜索的代码你可以用我发在[测试求助]里的那个补丁,那个只需改一下page和要搜索的内容就可以了。搜到后放在来电的姓名中。
发表于 2005-8-8 00:04:00 | 显示全部楼层
失败,自己写了一个从 0 段开始搜索到 80 段,用串口连接输出结果(参考了那个AT+CGSN patch)的程序刷进去, 结果输出的是乱码,还关机了。现在手机电量不足,正在充电中  :(
发表于 2005-8-8 00:05:00 | 显示全部楼层
还是失败,faint,我似乎找到了多份拷贝,
0002:0227
0007:1EF7
0011:008A
我用修改出来的改了一下,结果标准的 AT+CGSN 没问题
用 AT+CGSN:2,227就死机了,得拔电池
AT+CGSN:0,0 没有效果

这是我的 patch , 您可否看看哪里有问题?

04022C: FFFFFF 90EBFD
7DEB00: FFFFFFFFFFFFFFFF E004BB079DFECB00
7DEB08: FFFFFFFFFFFFFFFF E004BB038D01BB01
7DEB10: FFFFFFFFFFFFFFFF CB00D7400200992C
7DEB18: FFFFFFFFFFFFFFFF 27F230008D0C47F2
7DEB20: FFFFFFFFFFFFFFFF 0A008D0667F2DF00
7DEB28: FFFFFFFFFFFFFFFF 292747F20F00ED03
7DEB30: FFFFFFFFFFFFFFFF 5C447182CB001F88
7DEB38: FFFFFFFFFFFFFFFF CB00885088E088F0
7DEB40: FFFFFFFFFFFFFFFF 88D0F1827C44F192
7DEB48: FFFFFFFFFFFFFFFF 66F40F0F47F90A00
7DEB50: FFFFFFFFFFFFFFFF 8D01099747F80A00
7DEB58: FFFFFFFFFFFFFFFF 8D01098706F43030
7DEB60: FFFFFFFFFFFFFFFF 8840F0C066FCFF3F
7DEB68: FFFFFFFFFFFFFFFF F2FD02FEDAE6745E
7DEB70: FFFFFFFFFFFFFFFF 080498F098E09850
7DEB78: FFFFFFFFFFFFFFFF CB00F01E7C81E00D
7DEB80: FFFFFFFFFFFFFFFF BBDCF01EE6FD2000
7DEB88: FFFFFFFF BBD8CB00
7DEB90: FFFFFFFFFFFFFFFF E6FC2702D7400200
7DEB98: FFFFFFFFFFFFFFFF 993C27F32A009D02
7DEBA0: FFFFFFFFFFFFFFFF FAE58411BBADF0F4
7DEBA8: FFFFFFFFFFFFFFFF BBABF0E449302D15
7DEBB0: FFFFFFFFFFFFFFFF 29342D1F27F31200
7DEBB8: FFFFFFFFFFFFFFFF 2D16E0DDBBBEE17B
7DEBC0: FFFFFFFFFFFFFFFF E1FAE6FD2000DC4F
7DEBC8: FFFFFFFFFFFFFFFF 992EBBB7E0DD29A1
7DEBD0: FFFFFFFFFFFFFFFF 2DFA9DF729B19DF4
7DEBD8: FFFFFFFFFFFFFFFF 0D25BB968D23DC4F
7DEBE0: FFFFFFFFFFFFFFFF B98E08E10DFADAFD
7DEBE8: FFFFFFFFFFFFFFFF 28ECBBC7F0EFBBC5
7DEBF0: FFFFFFFFFFFFFFFF 0D1926F04000F020
7DEBF8: FFFFFFFFFFFFFFFF BB878D03B9820821
7DEC00: FFFFFFFFFFFFFFFF 0DFB2020A758A7A7
7DEC08: FFFFFFFFFFFFFFFF 08E12D0AF010F0DE
7DEC10: FFFFFFFFFFFFFFFF F0C2DC4F998D498D
7DEC18: FFFFFFFFFFFFFFFF 3DF528C13DFABBAD
7DEC20: FFFFFFFFFFFFFFFF 06F04000FAE62E03
7DEC28: FFFFFFFFFFFF ECFFECFEDB00
发表于 2005-8-8 00:06:00 | 显示全部楼层
这个是我的搜索 patch, 在串口命令行显示查找结果的

搜索的命令是 AT+CGSN@XKP!
程序查找的是 @XKP!

04022C: FFFFFF 00EBFD

7DEB00: FFFFFFFFFFFFFFFF F2F400FEE00DE00C
7DEB08: FFFFFFFFFFFFFFFF F6FD00FEA92C47F2
7DEB10: FFFFFFFFFFFFFFFF 40003D16F42C0100
7DEB18: FFFFFFFFFFFFFFFF 47F258003D11F42C
7DEB20: FFFFFFFFFFFFFFFF 020047F24B003D0C
7DEB28: FFFFFFFFFFFFFFFF F42C030047F25000
7DEB30: FFFFFFFFFFFFFFFF 3D07F42C040047F2
7DEB38: FFFFFFFFFFFFFFFF 21003D020D110000
7DEB40: FFFFFFFFFFFFFFFF 08C146FCFC3F3DE2
7DEB48: FFFFFFFFFFFFFFFF 08D146FD60003DDC
7DEB50: FFFFFFFFFFFFFFFF F6F400FEFAE62E30
7DEB58: FFFFFFFFFFFFFFFF 0000000000000000
7DEB60: FFFFFFFFFFFFFFFF F6F400FEECFCF0ED
7DEB68: FFFFFFFFFFFFFFFF BB07FCFEBB05FAE6
7DEB70: FFFFFFFFFFFFFFFF 2E30000000000000
7DEB78: FFFFFFFFFFFFFFFF F01E7C81E00DBB05
7DEB80: FFFFFFFFFFFFFFFF F01EE6FD2000BB01
7DEB88: FFFFFFFFFFFFFFFF CB00885088E088F0
7DEB90: FFFFFFFFFFFFFFFF 88D0F1827C44F192
7DEB98: FFFFFFFFFFFFFFFF 66F40F0F47F90A00
7DEBA0: FFFFFFFFFFFFFFFF 8D01099747F80A00
7DEBA8: FFFFFFFFFFFFFFFF 8D01098706F43030
7DEBB0: FFFFFFFFFFFFFFFF 8840F0C066FCFF3F
7DEBB8: FFFFFFFFFFFFFFFF F2FD02FEDAE6745E
7DEBC0: FFFFFFFFFFFFFFFF 080498F098E09850
7DEBC8: FFFFFF CB0000


[此贴子已经被作者于2003-7-17 4:37:18编辑过]

 楼主| 发表于 2005-8-8 00:07:00 | 显示全部楼层
好的,我中午看一下,现在工作中。。
呵呵,刚发现comman_kang奋战到深夜。
发表于 2005-8-8 00:08:00 | 显示全部楼层
以上两位都辛苦了,我把你们这些高手都设为贵宾了,至少上传什么方便些:)
发表于 2005-8-8 00:09:00 | 显示全部楼层
@cool_lang
搞定了,谢谢狼兄的帮助

昨天一开始自己写的程序偷懒了,试图一次读一个WORD然后比较,结果只要搜索必定死机,折腾了半天才反应过来这个CPU可能要求WORD要地址对齐,改成一次读一个BYTE就好了。

然后是搜到的地址有很多,试验了半天,才发现其中只有一个是真正的命令地址,其他的都是第一次输入 AT+CGSN时候的命令行复件。

最后终于搞定了,那个地址是 0014:35EB

@院长

谢谢啦 :)
发表于 2005-8-8 00:10:00 | 显示全部楼层
最终结果 patch

; AT+CGSN debug patch
; author: rizapn, chaos
; ported to 6618_v24 by kxn
; great thanks to cool_lang & all friends @ www.36518.com

04022C: FFFFFF 90EBFD

7DEB00: FFFFFFFFFFFFFFFF E004BB079DFECB00
7DEB08: FFFFFFFFFFFFFFFF E004BB038D01BB01
7DEB10: FFFFFFFFFFFFFFFF CB00D7401400992C
7DEB18: FFFFFFFFFFFFFFFF 27F230008D0C47F2
7DEB20: FFFFFFFFFFFFFFFF 0A008D0667F2DF00
7DEB28: FFFFFFFFFFFFFFFF 292747F20F00ED03
7DEB30: FFFFFFFFFFFFFFFF 5C447182CB001F88
7DEB38: FFFFFFFFFFFFFFFF CB00885088E088F0
7DEB40: FFFFFFFFFFFFFFFF 88D0F1827C44F192
7DEB48: FFFFFFFFFFFFFFFF 66F40F0F47F90A00
7DEB50: FFFFFFFFFFFFFFFF 8D01099747F80A00
7DEB58: FFFFFFFFFFFFFFFF 8D01098706F43030
7DEB60: FFFFFFFFFFFFFFFF 8840F0C066FCFF3F
7DEB68: FFFFFFFFFFFFFFFF F2FD02FEDAE6745E
7DEB70: FFFFFFFFFFFFFFFF 080498F098E09850
7DEB78: FFFFFFFFFFFFFFFF CB00F01E7C81E00D
7DEB80: FFFFFFFFFFFFFFFF BBDCF01EE6FD2000
7DEB88: FFFFFFFF BBD8CB00
7DEB90: FFFFFFFFFFFFFFFF E6FCEB35D7401400
7DEB98: FFFFFFFFFFFFFFFF 993C27F32A009D02
7DEBA0: FFFFFFFFFFFFFFFF FAE58411BBADF0F4
7DEBA8: FFFFFFFFFFFFFFFF BBABF0E449302D15
7DEBB0: FFFFFFFFFFFFFFFF 29342D1F27F31200
7DEBB8: FFFFFFFFFFFFFFFF 2D16E0DDBBBEE17B
7DEBC0: FFFFFFFFFFFFFFFF E1FAE6FD2000DC4F
7DEBC8: FFFFFFFFFFFFFFFF 992EBBB7E0DD29A1
7DEBD0: FFFFFFFFFFFFFFFF 2DFA9DF729B19DF4
7DEBD8: FFFFFFFFFFFFFFFF 0D25BB968D23DC4F
7DEBE0: FFFFFFFFFFFFFFFF B98E08E10DFADAFD
7DEBE8: FFFFFFFFFFFFFFFF 28ECBBC7F0EFBBC5
7DEBF0: FFFFFFFFFFFFFFFF 0D1926F04000F020
7DEBF8: FFFFFFFFFFFFFFFF BB878D03B9820821
7DEC00: FFFFFFFFFFFFFFFF 0DFB2020A758A7A7
7DEC08: FFFFFFFFFFFFFFFF 08E12D0AF010F0DE
7DEC10: FFFFFFFFFFFFFFFF F0C2DC4F998D498D
7DEC18: FFFFFFFFFFFFFFFF 3DF528C13DFABBAD
7DEC20: FFFFFFFFFFFFFFFF 06F04000FAE62E30
7DEC28: FFFFFFFFFFFF ECFFECFEDB00
 楼主| 发表于 2005-8-8 00:11:00 | 显示全部楼层
好的,有了这个就方便多了。否则我也不会作来电图标那么辛苦。
可惜的是:我还不能用:(
发表于 2005-8-8 00:12:00 | 显示全部楼层
这东东是干什么用的?刷了手机会多什么功能?
发表于 2005-8-8 00:13:00 | 显示全部楼层
刚才我刷,提示不对

                               
登录/注册后可看大图
 楼主| 发表于 2005-8-8 00:14:00 | 显示全部楼层
这个是给Patcher用的。是一个辅助作Patch用的Patch。具体用法如下:

*** Advanced debugging with AT+CGSN ***
I modified debugging patch written by Riza, to add some
useful things: improved search, write to memory, call procedures.

Commands are:

AT+CGSN
Display IMEI, as usual

AT+CGSN:page,offset
Dump 128 bytes of memory starting at address page:offset

AT+CGSN.page,offset,data
Search data on the given page, starting from offset. Data is a hexadecimal string without spaces. Offset is in range 0...3FFF.

AT+CGSN*page,offset,data
Write data to memory at address page:offset. Data is a hexadecimal string without spaces.

AT+CGSN@seg,offset
Inter-segment call to address seg:offset. On return, values of r14 and r15 will be displayed. Note that seg is the segment, not the page (eg. if you wrote procedure to 11:500, call it at 4:4500). Procedure should end with far return. If the procdure consumes much time, make sure to insert srvwdt instruction in its loop.

 楼主| 发表于 2005-8-8 00:15:00 | 显示全部楼层
第一行有问题,可能是Kang兄一直是强刷的,改成
04022C:8411E5 90EBFD
就不会警告了,否则没办法UNDO。


[此贴子已经被作者于2003-7-17 11:58:56编辑过]

发表于 2005-8-8 00:16:00 | 显示全部楼层
刷了,表面上没看出什么变化,我再找找
 楼主| 发表于 2005-8-8 00:17:00 | 显示全部楼层
一般人没什么用的,他可以查看特定地址的RAM和ROM内容,其他的还有搜索,修改,执行等功能。
发表于 2005-8-8 00:18:00 | 显示全部楼层
呵呵,谢谢高手的指教,打搅了
我回去吃饭了
发表于 2005-8-8 00:19:00 | 显示全部楼层
看人家的交流也是一种学习的方法。。
:)
您需要登录后才可以回帖 登录 | 注册会员 微信登录

本版积分规则

小黑屋|Archiver|手机版|爱技术 ( 沪ICP备08115260号-3 )

GMT+8, 2024-5-19 21:17

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

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