【发布时间】:2015-08-28 13:37:12
【问题描述】:
所以,我有一个问题;我试图弄清楚如何使用标准库或内联程序集在 C/C++ 程序中获取原始键盘或鼠标输入。我正在使用 Xubuntu 15 和 GCC/code::blocks 来构建我的程序。
我熟悉使用内联汇编,因此如果可以将特定寄存器或内存地址移动到仅包含当前鼠标位置或最后按下的键盘键的变量中(这必须包括特殊键像功能键或箭头键。)这对我的 C++ 项目非常有用。
最好与任何基于 OS/x86 的架构兼容。
【问题讨论】:
-
您知道,如果您还提及您为什么要尝试做您想做的事情,这将对回答者有所帮助。有时可能有比您在问题中描述的更好的方法。
-
我的最终目标是创建一个小型、快速和轻量级的 2d 游戏处理程序,有点像 SDL 或 SFML,但更小。
-
你问题的最后一行肯定是不可能的。你可以用像 DOS 这样的实模式操作系统来完成这样的事情,因为 BIOS 处理这些输入设备,你可以直接访问保存圆形键盘缓冲区的内存,你可以触发一个 int 或设置一个中断向量处理鼠标输入,但使用现代保护模式操作系统,这永远不会发生。您将需要向操作系统询问这些值。