Hola pana ,
De hecho esa es la forma en que seria conveniente(cargado de tablas!!! con lread.. se podria ) ya que me imagino que lo querras hacer de mensaje programable(variable en mensaje[el mensaje que quieras] y en movimiento[izquierda ,derecha,etc] ).
Lo primero seria hacer TODAS las tablas pertinentes a todas los caracteres(mayusculas y minusculas) y los numeros y caracteres especificos (_-.!@,1,2--..etc), despues de eso la rutina de llamado es facil, y que la guarde como configuracion en la misma eeprom, asi cada ves que inicie vaya a determinada rutina...
El primer modulo debe de chekear QUE configuracion tienes(arriba o abajo, izquierda a derecha, fijo, etc..) en tonces el primer modulo siempre que se arranque el equipo(y con este el micro) fijara la rutina PREESTABLECIDA en tu configuracion.. cada rutina sera la que haga los timpos de movimientos,que sea fijo, etc.. en si todos los efectos que se te puedan ocurrir, puedes empezar con dos :i-->d y d-->i ,, aparte conun boton conectado en una interrupcion(Rb0 podria ser..) se entra al setup de el mensaje a guardar(esto iria guarddo en la eeprom del micro o uno externo..) y de tipo de movimiento(esto iria en la eeprom del micro o externa.. este solo ocuparia un byte, ya que cada configuracion la puedes representar de 1 a 255[1 byte]] ). Por ahora creo que con esto te entretienes pana ya que es un poco de talacha, puedes empezar con el codigo que ya hiciste y solo con una letra probando diferentes configuraciones y sin guardar en eeprom, despues implementas en el primer modulo una subfucnion para llamado de lo que hay en la eeprom(texto) y cargado en ram para pasar ala rutina que especifique dicha configuracion y asi sucesivamente..
Esta es la idea basica que despues puedes optimizar y mejorar, pero como ves no es nada complejo ,eso si, si quieres un displayador completo va a tener que llevar TODOS los caracteres en la tabla, despues puedes poner un character maker dentro de la misma fucnion de selecionado de texto,y config, para hacer letras de otro tipo oimagenes.....
En fin,, ahi esta la idea pana
editado:Se me pasaba , no uses arrays te van a quitar demasiada velocidad y memoria, mejor usa tablas de lectura con lread y ldata:
c_A:
LDATA 126,9,9,9,126
Un abrazo