Hola amigo,
Bueno yo creo que no te hace falta macros con una simple rutina lo puedes hacer, cargas la direccion que quiere leer a W y luego llamas la rutina que hiciste, al final de la rutina colocas el dato en w, y cuando retorna carga lo que esta en w (el dato leido) y lo guardas en el registro especifico, ejemplo:
movlw "direccion que quieras 01h, 02h, 03h, 04h, etc"
call tu_rutina
movwf "guarda lo que viene de w en el registro que le toca"
y otra vez
movlw "proxima direccion"
call tu_rutina
movwf "registro especifico.
Asi puedes llamar la misma rutina cuantas veces quieras leer la EEPROM
Saludos