- 积分
- 247
- 实力分
- 点
- 金钱数
- 两
- 技术分
- 分
- 贡献分
- 分
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
好长没上来了。这段用6688,发现它上面这个补丁比MC60上的要好些,于是我就改了一下原来60上的,加入了半点的报时。整点声音是原来的四声DI,半点是倒计时那个,觉得不错。我给出原代码,这样你可以用SFE来容易的修改它。
一。这个版本是不加入自定义时段的。每个半点和整点都报时。
;先UNDO原来的版本。
0d3bc0:98809890 DA750033
0x553300: ffffffffffffffffffffffffffffffff 9880989088C0D7401500F2FC680F48C0
0x553310: ffffffffffffffffffffffffffffffff 3D0CD7400C00F2FC020948C12D19E6FC
0x553320: ffffffffffffffffffffffffffffffff 3D00DAA194ECE01C9D0F46FC1E003D0B
0x553330: ffffffffffffffffffffffffffffffff D7400C00F2FC020948C12D0AE6FC3e00
0x553340: ffffffffffffffffffffffffffffffff DAA194EC9DF0E00CD7400C00F6FC0209
0x553350: ffffffff 98C0DB00
二。有时段的,在8-23点内报时
0d3bc0:98809890 DA750033
0x553300: ffffffffffffffffffffffffffffffff 9880989088C0D7401500F2FC680F48C0
0x553310: ffffffffffffffffffffffffffffffff 3D16D7400C00F2FC020948C12D2DD740
0x553320: ffffffffffffffffffffffffffffffff 1500F2FC6A0F46FC08008D0746FC1700
0x553330: ffffffffffffffffffffffffffffffff ED04E6FC3D00DAA194ECE01C9D1946FC
0x553340: ffffffffffffffffffffffffffffffff 1E003D15D7400C00F2FC020948C12D14
0x553350: ffffffffffffffffffffffffffffffff D7401500F2FC6A0F46FC08008DEE46FC
0x553360: ffffffffffffffffffffffffffffffff 1700EDEBE6FC3E00DAA194EC9DE6E00C
0x553370: ffffffffffffffffffffffff D7400C00F6FC020998C0DB00
*****
以下为原代码。
;整点+半点以不同声音报时
;MC60 V07
;在8-23点报.
;入口为:0d3bc0:98809890 DA750033
#define Patch_org_addr 553300h ;补丁开始地址
#define Dididi 0a1ec94h ;发音CALL
org Patch_org_addr
mov r8, [r0+] ;补回跳转语句所占的位置.
mov r9, [r0+]
mov [-r0], r12
extp #15h, #1
mov r12, 0f68h ; 54F68 上下两句得到系统时间中的分钟
cmp r12, #0
jmpr cc_NZ,AArets
extp #0Ch, #1
mov r12, 0902h ;标志位。把C*4000+0920的值读到R12.
cmp r12, #1
jmpr cc_Z, DDrets
;-------------------------
extp #15h, #1
mov r12, 0f6ah ;54F6A 先获得系统时间中的小时。
cmp r12, #8
jmpr cc_C, lable1
cmp r12, #17h
jmpr cc_UGT,lable1
;-------------------------
mov r12, #3Dh ;控制声音的类型
calls Dididi
lable1:
mov r12, #1
jmpr cc_Nc BBrets
AArets:
;<------ 加入30分时的处理。
cmp r12,#1eh ;30分?
jmpr cc_NZ,CCrets
extp #0Ch, #1 ;是否在30902有标志?
mov r12, 0902h
cmp r12, #1
jmpr cc_Z, DDrets
;-------------------------
extp #15h, #1
mov r12, 0f6ah
cmp r12, #8
jmpr cc_C, lable1
cmp r12, #17h
jmpr cc_UGT,lable1
;-------------------------
mov r12,#3eh ;另一声音类型
calls Dididi
jmpr cc_Nc,lable1
;<------
CCrets:
mov r12, #0
BBrets:
extp #0Ch, #1 ;向30902写入R12的值。
mov 0902h, r12
DDrets:
mov r12, [r0+] ;恢复原R12.
rets |
评分
-
查看全部评分
|