- 积分
- 474
- 实力分
- 点
- 金钱数
- 两
- 技术分
- 分
- 贡献分
- 分
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
智能挂机的源代码,程序本身没什么可看的本来不打算帖了,都很简单,
看到星星说的那个想法,利用这个稍作修改可以实现,所以抛砖引玉 :) 有着方面要求的可以自己研究一下,也可以改变成其他通话时候的设定功能。
$Segmented
$Mod167
; Menu Function
TipMenu EQU 0E60508h
;立即数
HungUp EQU 3AH ;智能挂机(3A/58秒)
STR_ON EQU 6D6H ;激活
STR_OFF EQU 6D7H ;关闭
;Address for Patch Data
Patch_Address EQU 027E0F0h ;Free Space in Flash (CHANGE THIS)
PlayKey_Address EQU 027E158h ;Free Space in Flash (CHANGE THIS)
Patch Section Code Word At Patch_address ; Start Patch at Patch_Address
;--智能挂机---FOR 6688v55-------RainMoon----------------------------------;
main proc far ; start main of patch
;// At Smart Time
calls 0A0h,02FDAh
calls seg(ReadSOF),sof(ReadSOF)
cmp r12,#1
jmpr cc_NZ,loc_Ori
;// r4 MOD r12 = HungUp Time
mov r12,#3Ch
mov MDL,r4
div r12
mov r12,MDH
cmp r12,#HungUP
jmpr cc_NZ,loc_Ori
;// HungUp
calls 0D5h,0ACB4h
;calls 0B3h,062A8h ;// Test Func OpenLight
mov r12,#0 ;// SET Zero after run
calls seg(WriteSOF),sof(WriteSOF)
loc_Ori:
calls 0A0h,02FDAh
rets
main endp
ReadSOF proc far
mov DPP0,#34h
mov r12,022A2h
rets
ReadSOF endp
WriteSOF proc far
mov DPP0,#34h
mov 022A2h,r12
rets
WriteSOF endp
SmartONOFF proc far ; start main of patch
mov r13,#STR_OFF
calls seg(ReadSOF),sof(ReadSOF)
cmp r12,#1
jmpr cc_NZ,loc_CaseZero
mov r12,#0
jmpr cc_UC,loc_ToWri
loc_CaseZero:
mov r12,#1
loc_ToWri:
calls seg(WriteSOF),sof(WriteSOF)
sub r13,r12
mov r12,#1
calls seg(TipMenu),sof(TipMenu)
rets
SmartONOFF endp
Patch EndS
Patch2 Section Code Word At PlayKey_address ; Start Patch at Patch_Address
PlayKey proc far
cmp r12,#3Eh
jmpr cc_Z,loc_OKey
cmp r12,#62h
jmpr cc_Z,loc_OKey
jmps 0D5h,0ADB2h
loc_OKey:
jmps 0D5h,0ADAEh
PlayKey endp
Patch2 EndS
END
|
|