> Rx_Num is my pointer for the 16 Byte Bank of addresses that > starts with Rx_Num. Wait for the"buffer full" flag before picking up the data btfss pir1,rcif goto $-1 movf rcreg,w ;clears rcif too, ready for next data You could use INCF FSR to increment the store address more directly. Would help to clean up some of the clutter. If FSR is being used somewhere else in the program just store it temporarily. You can do the limit test on FSR, you don't really need a second counter (Rx_num) until maybe nested loops. BTW it will help find or avoid ,W ,F mistakes if you drop the ,F (or ,1), it's the default AFAICT that routine "should" do what you intend if you wait for rcif (but I've had just the one coffee so far this morning !!) -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu