> 1 set up the FSR for the byte to be read > 2 read the byte using INDF and store in a temp location - check for end of > string - exit if EOS > 3 inc the FSR and save into another temp location (FSR_READ) You can just INC FSR_READ in place since it will have the save value as FSR. > 4 load FSR with the register to write to (stored in FSR_WRITE) > 5 read the byte from its temp location > 6 write the byte using INDF > 7 inc FSR and save FSR in FSR_WRITE Same comment as above. > 8 load FSR with the register to read from (FSR_READ) > 9 loop back to #2 If you need higher efficiency, you can copy a block of bytes at a time. FSR only needs to be swapped back and forth per block, not per byte. Even better would be to use an 18 family PIC. These have multiple FSRs and they can do auto-increment. ***************************************************************** Embed Inc, embedded system specialists in Littleton Massachusetts (978) 742-9014, http://www.embedinc.com -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body