From: "Charles Wood" Newsgroups: comp.os.msdos.djgpp Subject: Re: How to optimize this mouse function.. Date: Wed, 5 Jan 2000 12:14:01 -0800 Organization: AT&T WorldNet Services Lines: 75 Message-ID: <8505k0$q6p$1@bgtnsc02.worldnet.att.net> References: <210046ed DOT e1267171 AT usw-ex0101-007 DOT remarq DOT com> NNTP-Posting-Host: 63.28.161.48 X-Trace: bgtnsc02.worldnet.att.net 947100096 26841 63.28.161.48 (5 Jan 2000 19:21:36 GMT) X-Complaints-To: abuse AT worldnet DOT att DOT net NNTP-Posting-Date: 5 Jan 2000 19:21:36 GMT X-Newsreader: Microsoft Outlook Express 4.72.2106.4 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.2106.4 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com The reason you are delaying is to make it visible? in that case make a mouse_move function... read_mouse(); if cur_mouse_loc is != to old_mouse_ loc then move_mouse(); move_mouse() { erase_old_mouse(); get_back_ground_for_new_location(); draw_new_mouse(); old_mouse_loc = cur_mouse_loc; } //No delay needed, and no additional code needed. Something like that should have the desired effect, the only problem is that changes behind the mouse after it's background has been copied will mess it up.. Your choices are to erase the mouse before drawing info in that area, or go to a "windowed' system that can actively draw the area behind the mouse at any time.. The first suggestion is the easiest.. Charles. -- Charles Wood REMOVEMEc DOT r DOT wood AT worldnet DOT att DOT net hellbaron wrote in message <210046ed DOT e1267171 AT usw-ex0101-007 DOT remarq DOT com>... >I've been working on a big graphix project all week, everything is >going ok, exept for this mouse function. The thing is, I would like to >save some valuable time when executing this function by eliminating the >delay(50), but I just cant seem to be able to substitute it with >anything else, I tried with a simple if, but it just doesnt work.. >Please help me out!!, any feedback will be greatly apriciated, thanx in >advance to anyone who replies to this message, and here is the function: > >void PlotMouse() >{ >int x, y, px, py, ox, oy; >char back[16][16]; > >ReadMouse(); >ox = MouseX; >oy = MouseY; > >for (x=MouseX, px=0; x for (y=MouseY, py=0; y { > back[px][py] = getpixel(x,y); > if (cursor[(py*16)+px] != 0) > putpixel(x, y, (cursor[(py*16)+px])); > } > >delay(50); >//ReadMouse(); >//if ((ox != MouseX) || (oy != MouseY)) >for (x=ox, px=0; x for (y=oy, py=0; y putpixel(x, y, back[px][py]); >} > > > >* Sent from RemarQ http://www.remarq.com The Internet's Discussion Network * >The fastest and easiest way to search and participate in Usenet - Free! >