I'm using the code below to draw a marquee with ON MOUSE doMouse. doMouse checks which window he mouse is in and goes to FN doMarquee(mV,mH) if it is in the main window. Here's the issue: Everything works as expected for ~3-4 seconds, then the cursor turns to a spinning beach ball. No bad after effects. It continues to draw a marquee while in the beach ball state and it reverts to an arrow on mouse up. But why is changing? DO CALL GETMOUSE(mPt&) LONG IF mH2 < mH'so marquee works backwords too h = mH2 h2 = mH XELSE h = mH h2 = mH2 END IF LONG IF mV2 < mV v = mV2 v2 = mV XELSE v = mV v2 = mV2 END IF CALL SETRECT(rectR,h,v,h2,v2) CALL FRAMERECT (rectR) flushwindowbuffer DELAY 25 CALL FRAMERECT (rectR) flushwindowbuffer UNTIL FN BUTTON = _false