无忧启动论坛

标题: 求进入ms-dos以后让caps lock自动转换到大写的批处理 [打印本页]

作者: hayer    时间: 2008-5-22 12:05
标题: 求进入ms-dos以后让caps lock自动转换到大写的批处理
求进入ms-dos以后让caps lock自动转换到大写批处理或者其它能够实现这个功能程序也可以
谢谢大家  在线等谢谢大家  在线等

[ 本帖最后由 hayer 于 2008-5-22 02:08 PM 编辑 ]
作者: netwinxp    时间: 2008-6-2 11:35
单靠P处理肯定不行,对于AT、PS/2键盘可以编程用下面的I/O实现——
mov AL,0EDH
out 60H,AL
mov AL,00000100B;该数值的含义见注释
and AL,00000111B
out 60H,AL
ret
==========================
注释:
bit7~3:未使用
bit2=1:开Caps Lock的LED
bit1=1:开Num Lock的LED
bit0=1:开Scroll Lock的LED

[ 本帖最后由 netwinxp 于 2008-6-2 11:36 AM 编辑 ]
作者: Climbing    时间: 2008-6-2 21:42
and AL,00000111B

这行命令有何用途?似乎是画蛇添足。

如果是想保留其它低两位的原值,则前面一条命令又无效了。
作者: netwinxp    时间: 2008-6-2 21:52
原帖由 Climbing 于 2008-6-2 21:42 发表
and AL,00000111B

这行命令有何用途?似乎是画蛇添足。

如果是想保留其它低两位的原值,则前面一条命令又无效了。

屏蔽高位,因为高位为1可能会产生其他后果,0000100B AND 00000111B结果仍然是00000100B,加这句主要考虑在程序中可能不直接使用前一句,当然本例中去掉这句是没有影响的。
作者: xingxing168    时间: 2009-2-11 16:40
直接写40h:17h地址就可以




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3