From: jsc AT lds DOT co DOT uk Newsgroups: comp.os.msdos.djgpp Subject: new user - mouse problems Date: Wed, 21 Oct 1998 15:43:11 GMT Organization: Deja News - The Leader in Internet Discussion Lines: 149 Message-ID: <70kvef$r9$1@nnrp1.dejanews.com> NNTP-Posting-Host: 194.73.88.179 X-Article-Creation-Date: Wed Oct 21 15:43:11 1998 GMT X-Http-User-Agent: Mozilla/2.0 (compatible; MSIE 3.0; Windows 95) X-Http-Proxy: 1.0 x5.dejanews.com:80 (Squid/1.1.22) for client 194.73.88.179 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Sorry but nothing is working. All the other functions are fine but this one just crashes every time. Anyway, here's the code, someone help please - I can't go on without a mouse. Thanks, Chris jsc AT lds DOT co DOT uk #include #include #include #include #include #include "mygraph.h" #define far #define MOUSE_LB 0x01 /* mouse left button */ #define MOUSE_RB 0x02 /* mouse right button */ #define MOUSE_CB 0x04 /* mouse center button */ int mouse_detect(void) { union REGS regs; regs.x.ax = 0x0; int86(0x33, ®s, ®s); return regs.x.ax; } void mouse_show(void) { union REGS regs; regs.x.ax = 0x01; int86(0x33, ®s, ®s); } void mouse_hide(void) { union REGS regs; regs.x.ax = 0x02; int86(0x33, ®s, ®s); } unsigned char mouse_button(unsigned char button) { union REGS regs; regs.x.ax = 0x3; int86(0x33, ®s, ®s); return (regs.x.bx & button); } void mouse_abs_pos(int *x, int *y) { union REGS regs; regs.x.ax = 0x03; int86(0x33, ®s, ®s); *x = regs.x.cx; *y = regs.x.dx; return; } int mouse_rel_pos(int *x, int *y) { union REGS regs; regs.x.ax = 0xb; int86(0x33, ®s, ®s); *x = regs.x.cx; *y = regs.x.dx; return (*x|*y); } int main(void) { int buttons,num_buttons; int colour=1; int x; int y; // put the computer into graphics mode InitGraphics(); // initialize mouse mouse_detect(); // show the mouse mouse_show(); while(!kbhit()) { mouse_abs_pos(&x,&y); //mouse_rel_pos(&x,&y); if(mouse_button(MOUSE_LB)) { Plot_Pixel(&x, &y, colour); } if(mouse_button(MOUSE_RB)) { if (++colour>15) colour=0; } } ExitGraphics(); return(0); } // end main -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own