Primero que nada, darte las gracias jfmateos2. Si como tu dices la comprobación del código realizada por el programador es de fiar, ya tengo algo claro y donde cogerme y además evidentemente el problema está en el código. Por desgracia no lo puedo copiar ahora porque estoy con una máquina que funciona en linux, pero en resumidas cuentas, tanto los leds (conectados con resistencias pull-up externas) como el control de la pantalla, en el caso del 16f84a los monté sobre el puerto B, definiendo este puerto como salidas y el A como entradas. Por supuesto han sido dos circuitos diferentes. En el caso del 16F778A, los leds los he montado sobre el puerto B con resistencias Pull-Up externas que desmonto para programar el chip (en realidad estoy trabajando con tarjetas tipo prototipo que me he preparado yo mismo) y la pantalla sobre el puerto C, difiniendo los puertos B,C,D y E como salidas y el A como entradas. Por supuesto he adaptado el código a los puertos que he utilizado y esa ha sido la única adaptación de código que he hecho.
Creo que en el 16F778A hay lo que se llaman palabras de configuración, pero por mas que leo o mejor dicho intento leer (porque el inglés no es mi fuerte) el data shet, no he podido encontrarlas, por eso mi segunda pregunta de donde podría encontrar al al respecto en castellano.
Otra vez gracias por tu ayuda jfmateos2