> Thanks Bob A. So I can just remove the loop structure and all is good? If it helps, this is working code with bank switching more apparent. Note that eepgd = 1 is to select Flash memory eeread bank0 movf eea,w ;address in eea variable, then W bank2 movwf eeadr bank3 bcf eecon1,eepgd bsf eecon1,rd bank2 movf eedata,w bank0 return -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist