Hola Dario,
Basicamente el F873 y el F877 son lo mismo con la diferencia que el F877 tiene un par de puertos más, mas memoria, comunicaciones paralelas y 3 canales AD mas que el F873.
Si bien no lo he visto a fondo al F877, te diria que el codigo asm lo podes adaptar relativamente con muy pocos cambios en el codigo asm.
Si comparas la organizacion de las paginas de memoria de ambos micros (en el datasheet del 16F87x) notaras que los registros se encuentran en las mismas direcciones, con lo cual, el codigo que utiliza estos registros no varía.
Te recomiendo que hagas una prueba con algun ejemplo sencillo, apagar y encender un led, para luego ir probando los distintos modulos (A/D, comunicaciones, etc.).
Proba con lo siguiente: genera el codigo assembler y al comienzo del archivo asm
cambiale el modelo del micro de 16F873 a 16F877. A ver que pasa.
Yo nunca lo hice, pero seguro tiene que salir andando.
Si con esto no fucniona, avisame y te doy una mano.
Espero tu respuesta.
Un saludo
Jorge.