Programming the Mouse from a Real-Mode C ProgramLast reviewed: July 18, 1997Article ID: Q12012 |
6.00 6.00A 6.00AX 7.00 | 1.00 1.50
MS-DOS | WINDOWSkbprg
The information in this article applies to:
SUMMARYThe text below presents a code example to test the mouse in a C program. You must install the mouse driver before using this program.
MORE INFORMATIONThe information in this program is presented in the "Mouse Programming Interface" chapter of the "Microsoft Mouse Programmer's Reference," available from Microsoft Press.
Sample Code
#include <stdio.h> #include <dos.h> int m1 = 0, m2 = 0, m3 = 0, m4 = 0;union REGS Mouse_regs;
void mouse(void){ Mouse_regs.x.ax = m1; Mouse_regs.x.bx = m2; Mouse_regs.x.cx = m3; Mouse_regs.x.dx = m4; int86(0x33, &Mouse_regs, &Mouse_regs); m1 = Mouse_regs.x.ax; m2 = Mouse_regs.x.bx; m3 = Mouse_regs.x.cx; m4 = Mouse_regs.x.dx;}
void main(void){ // Turn on the mouse m1 = 1; // SHOW MOUSE Opcode -- See reference m2 = m3 = m4 = 0; // Additional parameters (init = 0) mouse(); // Make it happen for ( ; ; ) // Loop until both buttons are down { m1 = 3; // Get mouse status m2 = m3 = m4 = 0; mouse(); if (m2 & 1) printf("Left button down\n"); if (m2 & 2) printf("Right button down\n"); if (m2 & 1 && m2 & 2) { printf("BOTH!\n"); exit(0); } }}
|
Additional reference words: kbinf 6.00 6.00a 6.00ax 7.00 1.00 1.50
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |