oks, veamos, nosotros hemos hecho un programa para el pic 16f84a, y cambiado el include y los puertos lo hemos pasado a codigo para el pic 12f629. Una vez finalizado el proceso de cambio, y ver que no nos da ningun error, hemos debugueado el programa, y hemos comprobado que a la hora de hacer conparaciones con las sentecias btfsc y btfss, no salta a donde deveria saltar...
un ejemplo, la memoria del pic, si no la has utilizado nunca viene como FF, pues nosotros pasamos a una variable el contenido de la memoria, que seria FF, si comparamos
call leer memoria ; funcion donde hemos leido lo que hay en la memoria y donde pasamos el dato a EEDATA
movf EEDATA,W ; pasamos el contenido de EEDATA a W, q al ser el pic nuevo contiene FF
sublw 0FFH ;restamos a W FF, lo cual nos tendria q dar 0
btfsc status,z
call si_son_iguales
call si_son_diferentes ;Tendrai que entrar aki xro entra en la de arriba
y eso es lo que nos pasa...con el 16f84a funcionaba..y sin tocar estas partes de codigo al pasarlo al 12f629 las comparaciones ya nos nos funcionan