coollang 发表于 2005-8-10 00:00:00

[原创]未接电话的判断函数-For6688

回nonlyli:

0xA3:394E             IsMissedCall:                         ; CODE XREF: sub_D5EED2+BEP
0xA3:394E                                                   ; 0xD6:0D26P ...
0xA3:394E E6 00 0C 00               mov   DPP0, #0Ch
0xA3:3952 CC 00                     nop
0xA3:3954 F2 F4 08 2D               mov   r4, word_32D08
0xA3:3958 F2 F5 0A 2D               mov   r5, word_32D0A
0xA3:395C DB 00                     rets
0xA3:395C             ; End of function IsMissedCall

其中R5:R4是未接电话的次数,不过一般不会有这么大的数,直接判断R4就可以!


[此贴子已经被作者于2004-2-23 14:19:08编辑过]

coollang 发表于 2005-8-10 00:01:00

这个函数是从待机是键盘处理函数中找到的。键值4C代表有新短信+未接电话。就是从这个处理分支下去找到的。其他的应该也有,我还没有细看。
我记得说过,左右软键的键值在使用时是变化的,使用了类似于一种虚拟键值的机制,需要在创建窗体时注册,有一个固定的结构,类似于
{
int short_KeyCode;
int long_KeyCode;
int StringID;
}
主菜单的这些东西在这里,这个机制我还没有全懂!
0xD5:E34A 00 00                     dw 0
0xD5:E34C 00 00                     dw 0
0xD5:E34E FE FF                     dw 0FFFEh
0xD5:E350 06 00                     dw 6
0xD5:E352 06 00                     dw 6



[此贴子已经被作者于2004-2-23 14:38:13编辑过]

RainMoon 发表于 2005-8-10 00:02:00

如果完全打开菜单结构这个关口,很多东西实现起来就比较自由了。

nonlyli 发表于 2005-8-10 00:03:00

已经试过了,我也想过这样找,结果没办法看不懂。
最后想用类似“FPE”(游戏修改器)搜索内存的方法来找……

方法重要,经验重要啊!我决定直接读地址来取值。(效率要高点吧?)
我就纳闷儿了,为什么可以直接读值的要做成函数呢?

谢谢了!
页: [1]
查看完整版本: [原创]未接电话的判断函数-For6688