Hola que tal, lo que deberías hacer es hacer un acarreamiento de bits, desplazando el texto hasta que quede fuera de la pantalla y luego hacerlo aparecer desde el otro extremo.
Yo te aconsejaría hacerlo de una forma mas compacta y simple con las rutinas de Microcontroladores Pic16f84a de Editorial RA-MA.
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC
LIST P=16F84A
INCLUDE <P16F84A.INC>
CBLOCK 0x0C
ENDC
; ZONA DE CÓDIGOS ********************************************************************
ORG 0
Inicio
call LCD_Inicializa ; Prepara la pantalla.
Principal
movlw Mensaje0 ; Apunta al mensaje.
call LCD_MensajeMovimiento
goto Principal ; Repite la visualización.
; "Mensajes" ----------------------------------------------------------------------------
Mensajes
addwf PCL,F
Mensaje0 ; Posición inicial del mensaje.
DT " " ; Espacios en blanco al principio para mejor efecto
DT "BLOG ROBOT RH "; **** ACA EL MENSAJE QUE QUIERAS ****
DT " ELECTRONICA."
DT " ", 0x0 ; Espacios en blanco al final.
INCLUDE <LCD_MENS.INC> ; Subrutina LCD_MensajeMovimiento.
INCLUDE <LCD_4BIT.INC> ; Subrutinas de control del LCD.
INCLUDE <RETARDOS.INC> ; Subrutinas de retardos.
END ; Fin del programa.
Ahí al final te pide 3 librerías con las rutinas necesarias tanto de retardos, varias opciones de pasar múltiples mensajes, en ambas lineas, fijas, intermitentes, etc... y también una conexión de 4 bits.
Quedaría la conexión algo así:
(http://img90.imageshack.us/img90/8066/hardwarelcdal7.bmp)
Esa seria la conexión, obviando RA3 que no se que hace, lo demás está conforme a las librerías.
Si te animas buscate esas librerías que suelen estar en la web, sino me dices y te las subo... saludos !!!