These are some sample Eeprom routines: Copy and paste the code into your .asm To load EEPROM: ORG 2100h   DE 84h, 16h, 23h, 80h, 0CAh, 32h, 7Bh, 0A2h  DE 34h, 53h, 25h, 02h, 0FFh, 20h, 03h, 04h  The sub-routine to read a value in the EEPROM is shown below. It reads EEPROM data at location specified in EEADR and returns the value in W EERead BSF Status, RP0 ;Go to Bank 1 BSF EECON1, RD ;Set the RD bit   BCF Status, RP0 ;Back to bank 0 MOVF 08, W  ;EE Data is file 08.  Put into W RETURN The sub-routine to write to EEPROM is shown below.      Delay1 MOVLW 13h ;Create a 20mS delay MOVWF 1B ;20 loops Delay1a NOP DECFSZ 1A,1 ;4uS x 256 loops=approx 1mS GOTO Delay1a DECFSZ 1B GOTO Delay1a RETLW 00 EEWrite MOVWF 08 ;W to EEData BSF 03,5 ;Switch to bank 1 BCF 0B,7 ;Disable interrupts BSF 08,2 ;Write Enable bit set MOVLW 55h ;Toggle EEPROM Control  MOVWF 09 ;    Register bits MOVLW 0AAh ;Toggle EEPROM Control MOVWF 09 ;    Register bits BSF 08,1 ;Begin write sequence CALL Delay1 ;Call Delay1 BCF 08,2 ;Disable any further writes BSF 0B,7 ;Enable Interrupts BCF 03,5 ;Back to data bank 0 RETURN