中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-10-31 10:46
共 47,815 主题排行 / 349,930 发帖 / 今日 0 篇 / 48,290 会员排行
DOS开发编程 & 发展交流 (开发室) » 请问如何用WATCOM C++如果写DOS32的键盘模拟输入程序
可打印版本  1,150 / 4
第1楼 linzhixiao 发表于 2004-01-06 00:00
初级用户 发帖 15 积分 160
请问如何用WATCOM C++如果写DOS32的键盘模拟输入程序
以下为:DOS16位的键盘模拟输入,但是因为DOS32 不支持pokeb,peek内存函数.本.我现在需要在DOS32也有此功能的函数,但我不能转换到WATCOM DOS32能支持的函数.(注意不是WATCOM DOS16位)
请懂WATCOM c/c++的高手,帮我一下,非常感谢.

void keyboard(int choice,char key)
{
int offset,i;
offset=peek(0x40,0x1c);
for(i=0;key!='\x0';i++)
{
if(choice==0)
{
pokeb(0x40,offset,0x00);
pokeb(0x40,offset,key);
}
if(choice!=0)

{
pokeb(0x40,offset,key);
pokeb(0x40,offset+1,0x00);
}
offset=offset+2;
if(offset==0x3e)offset=0x1e;
}
pokeb(0x40,0x1c,offset);
}
第2楼 linzhixiao 发表于 2004-01-09 00:00
初级用户 发帖 15 积分 160
难道高手还没有出现吗?
第3楼 szxxbb 发表于 2004-01-10 00:00
初级用户 发帖 8 积分 133
用汇编直接驱动扬声器端口
第4楼 songjian 发表于 2004-02-04 00:00
初级用户 发帖 18 积分 140
在Watcom的目录下有个Watcom提供的例子目录,里边有个Sample就是你需要的。为何不自己找了?怪了??
第5楼 linzhixiao 发表于 2004-02-07 00:00
初级用户 发帖 15 积分 160
请问用WATCOM C++如何写DOS32的键盘模拟输入程序
以下为:DOS16位的键盘模拟输入,但是因为DOS32 不支持pokeb,peek内存函数.本.我现在需要在DOS32也有此功能的函数,但我不能转换到WATCOM DOS32能支持的函数.(注意不是WATCOM DOS16位)
请懂WATCOM c/c++的高手,帮我一下,非常感谢.

void keyboard(int choice,char key)
{
int offset,i;
offset=peek(0x40,0x1c);
for(i=0;key!='\x0';i++)
{
if(choice==0)
{
pokeb(0x40,offset,0x00);
pokeb(0x40,offset,key);
}
if(choice!=0)

{
pokeb(0x40,offset,key);
pokeb(0x40,offset+1,0x00);
}
offset=offset+2;
if(offset==0x3e)offset=0x1e;
}
pokeb(0x40,0x1c,offset);
}
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023