Bruce Partridge wrote : > But if main is making the copy, and the interrupt > fires, the arrays will have part old and part new data. > > I can't tell the isr not to update, because this data is what > the app is all about. If I turn off interrupts, I introduce > 66ms of latency during the copy of the arrays. It can't take 66ms just to *COPY* the arrays. You must be doing something else also. Couldn't you just clear GIE during the actual *copying* of the data, then re-enable GIE and go on doing that other stuff that probably takes the most part of the 66 ms, I guess. Just copying would at most be a number of MOVFF instructions, and at 4Mhz take the double number of microseconds (plus the GIE handling stuff). Jan-Erik. -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body