如何用鼠标移动光标?

fsd*_*fff -1 assembly operating-system osdev bootloader x86-16

我正在x86汇编中开发一个实模式操作系统。我设法用键盘移动了光标,但我想用鼠标移动了光标。我不知道 我发现int 33h处理鼠标,但是我似乎无法使用int 33h移动光标。

Mar*_*nau 5

中断int 10hint 1Fh是BIOS中断; 可以在引导操作系统之前使用它们。

中断int 20hint 2Fh是DOS中断; 仅当DOS已加载时才可以使用它们。

其他中断(例如int 33h)是设备驱动程序使用的中断。int 33h只能在加载DOS鼠标驱动程序时使用。

如果您想在没有安装任何鼠标驱动程序的情况下访问鼠标(例如,在您自己的引导加载程序中),则必须直接访问硬件。

请参阅OSDEV中的以下文章:

https://wiki.osdev.org/%228042%22_PS/2_Controller
https://wiki.osdev.org/PS/2_Mouse

  • 他正在编写一个实模式操作系统(我已经为他回答了与此有关的其他问题)。我应该注意,任何符合IBM PS / 2 BIOS的BIOS(许多,但不是所有的BIOS都支持)具有帮助开发鼠标驱动程序的功能。** ff **可用,BIOS中断[Int 15h / AX = 0C200h到Int 15h / AX = 0C209h](http://www.ctyme.com/intr/int-15.htm)将包装器包裹在直接硬件访问周围,允许使用鼠标处理程序挂钩等。已安装的中断处理程序将为您建立鼠标包。创建驱动程序(如果可用)可能是有用的起点 (6认同)