阅读:1738回复:2
dos下MOUSE DRIVER的
我正在写一个dos下MOUSE测试程序╋我希望在这个测试程序里面集成mouse driver,请问如何编写这个driver呢
|
|
沙发#
发布于:2002-04-10 12:42
鼠标驱动程序
必须安装鼠标设备驱动程序,用户程序才能使用鼠标服务功能。依据驱动程序类型,用户或使用CONFIG.SYS安装, 访问鼠标服务功能 通过Int 33H可使用鼠标服务功能。与D0S和BIOS服务相同,通过将参数赋子指定的寄存器,用户程序可访问鼠标服务。若用户使用Turbo Pascal编程,则使用Intr函数访问鼠标服务;若使用c编程,则使用int86函数访问鼠标服务;若使用QuickBasic编程,则使用QB.QLB库中提供的Interrupe子例程访问鼠标服务。 文本方式鼠标光标 缺省时,鼠标驱动程序显示一矩形文本方式光标。使用Int 33H功能0AH,用户程序可定制文本方式光标。 响应鼠标按动 鼠标驱动程序允许用户程序响应鼠标的按压或释放操作、Int 33H功能5H指示鼠标驱动程序返回指定鼠标按钮(0=左侧按钮,1=右侧按钮,2=中间接铅)的按压信息。同样,Int 33H功能6H返回鼠标按钮的释放信息。 控制鼠标光标 缺省时,用户可在整个显示屏幕上移动鼠标光标,在用户应用中,有时需要将鼠标光标位移限制在屏幕上的一个指定区域内。Int 33H功能7H用户实现这一功能。该功能允许用户程序指定―矩形屏幕区域,超出该区域.鼠标光标不能移劝。 定制鼠标光标 Inl33H功能oAH允许用户定制文本方式鼠标光标。同样,Int 33H功能09日允许用户定制图形方式鼠标光标。上述二个功能使用称为屏幕和光标使掩码的两个位掩码。开始.鼠标驱动程序梅屏幕掩码与鼠标光标驻留的当前屏幕图象相与(AND))。之后,驱动程序将与(AND)后的结果和光标掩码内容进行异或(Excinsve OR)以获得实际显示的光标的位掩码。 了解鼠标位移 如同鼠标驱动程序允许用户积序跟踪鼠标按钮按压和释放操作―样,驱动程序也允许用户程序跟踪鼠标位移。驱动程序泪微键定义飘标位移。――个微键为1/200英寸。Int33功能0EH返回描述自上次位移后又移动的X和1偏移量(以微秒计)。负的x值意昧著向左位移,负的Y值意味着用户离开了。 保存和恢复鼠标状态 若用户的鼠际驱动的程序调用―个也使用鼠你的子程序.则用户程序在调用于程序前应 保存当前鼠标状态,在于程序执行完毕再恢复鼠标状念。Int 33H功能16H保存鼠标状态至一 了解鼠标位移 用户程序定义的缓冲区,其后功能17H再恢复该状态。 鼠标事件处理程序 如同D0S允许用户程序安装关键错误或ctrl。Break处理程序,鼠标驱动程序也允许用户程序捕获和响应各种鼠标操作。与使用IRET返回的大多数中断处理程序不同,鼠标事件处理程序是正常的功能,使用BE丁返回至调用程序。 |
|
板凳#
发布于:2002-04-09 23:15
你在网上搜一下吧!这个本站好象没有这方面的资料和例子,但是我知道网上一定有的!还有就是你查一查一些中断方面的书
|
|