用C++获取原始键盘和鼠标输入,无需使用外部库。

4

我有一个问题;我正在尝试找出如何使用标准库或内联汇编在C/C++程序中获取原始键盘或鼠标输入。我正在使用Xubuntu 15和GCC/code::blocks构建我的程序。

我熟悉使用内联汇编,因此如果可以将特定寄存器或内存地址移动到一个变量中,该变量仅包含当前鼠标位置或上次按下的键盘键(这必须包括像功能键或箭头键这样的特殊键),那对于我的C++项目来说将是很好的选择。

最好,这应该与任何OS/x86架构兼容。


2
如果您在提问时也说明您为什么要尝试做某件事,那么这将有助于回答者。有时候可能会有比您在问题中描述的方法更好的解决方案。 - jrharshath
1
我的终极目标是创建一个小型、快速和轻量级的2D游戏处理器,有点像SDL或SFML,但更小。 - Mason Watmough
1
你问题的最后一行肯定是不可能的。在像DOS这样的实模式操作系统中,您可以完成类似的操作,因为BIOS处理这些输入设备,并且您可以直接访问保存循环键盘缓冲区的内存,并且可以仅仅通过触发int或设置中断向量来处理鼠标输入,但是在现代保护模式操作系统中,这是永远不会发生的。您需要向操作系统请求这些值。 - enhzflep
1个回答

3

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接