From: Endlisnis Newsgroups: comp.os.msdos.djgpp Subject: Re: Mouse program in djgpp Date: Tue, 7 Jul 1998 20:23:47 -0300 Organization: University of New Brunswick Lines: 68 Message-ID: References: <6ntr6e$sle$1 AT nnrp1 DOT dejanews DOT com> NNTP-Posting-Host: sol-alt1.unb.ca Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII In-Reply-To: <6ntr6e$sle$1@nnrp1.dejanews.com> To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk On Tue, 7 Jul 1998 dangfrancois AT my-dejanews DOT com wrote: ->Hi, ->Does someone has the source code in djgpp (without using Allegro) ->of it (+ init_mouse, show_mouse, hide_mouse, put_mouse if it is ->possible) ? ->Thanks for responding. Here's the code. I adapted this from Borland C++ code and it worked. I didn't test the SetMouseInfo() function, but I think it works. If anyone has some (tested) code for sending your own mouse-handler function to interrupt 0x33 (ah=0x0c). The FAQ (Section 18.8 How to make DOS/BIOS call your function) has a version, which I've tried to impliment, but it just crashes my computer whenever it tries to call my function. Thanx. Endlisnis [I have a pyramid of wingyness] #include #include void ShowMouse() { __dpmi_regs Regs; memset(&Regs, 0, sizeof(Regs)); Regs.x.ax=1; __dpmi_int(0x33, &Regs); } void HideMouse() { __dpmi_regs Regs; memset(&Regs, 0, sizeof(Regs)); Regs.x.ax=2; __dpmi_int(0x33, &Regs); } void GetMouseInfo(int& x, int& y, int& b) { __dpmi_regs Regs; memset(&Regs, 0, sizeof(Regs)); Regs.x.ax=3; __dpmi_int(0x33, &Regs); x = Regs.x.cx; y = Regs.x.dx; b = Regs.x.bx; } void SetMouseInfo(int x, int y) { __dpmi_regs Regs; memset(&Regs, 0, sizeof(Regs)); Regs.x.ax=4; Regs.x.cx=x; Regs.x.dx=y; __dpmi_int(0x33, &Regs); } char InitMouse() { __dpmi_regs Regs; memset(&Regs, 0, sizeof(Regs)); Regs.x.ax=0; __dpmi_int(0x33, &Regs); return Regs.x.ax; }