Hola tannke, excelente tu proyecto!
Yo asignaría una parte de la memoria (al principio) para guardar una tabla con la posicion de cada mensaje y el largo, o solamente el largo de cada mensaje uno detras de otro, pero de esta forma, para saber donde se ubica, por ejemplo, el mensaje 10 deberias leer los 9 anteriores e ir sumando posiciones.
también se podría asignar otra parte de memoria para programar el orden en que los mensajes aparecen y cuanto tardan, efectos, esas cosas......
Son ideas, no se si te servirán...
saludos.