yo tengo un problema igual, hice un programa batante largo el cual ocupa aproximadamente 5k de la memoria de un 16f877a, cuando mando a llamar una subrutina..el program counter se va a una parte que ni al caso donde ni siquiera existe una etiqueta, trate de usar el pagesel (numbre subrutina), y luego llamar a la subrutina, y cuando compilo el codigo me dice que es un error y me tira el siguiente mensaje: Directive only allowed when generating an object file, estoy usando el mplab version 8.20 que puedo hacer???