Despues de mucho pelear con mi fluido ingles

aplicado al datasheet del cm8888 pude solucionar muchas de mis dudas... y ahora entiendo gran parte de tu codigo... ( digo gran parte por que mi fuerte no es el C )
Y pues bien ya tengo entendido como cambiar entre los registros de control A y B y como configurarlos, ademas tambien entendi bien como leer el registro estatus y lo que significa su lectura... tambien tengo entendido ya como escribir y leer el registro de datos y tambien tengo claro lo de las interruppciones por el pin IRQ.
Asi las cosas me asaltan dos dudas... la funcion call progress es que??? o para que sirve??? me detecta una llamada entrante o me detecta que en el telefono al que estoy llamando me contestaron???
y la otra duda es en algunas partes de tu codigo... principalmente al final de cada procedimiento o funcion... mejor dicho me refiero a estas lineas:
CS_HIGH;
cm.cont=5;
delay_ms(10);
set_tris_cm(CM_READ)
-con la primera tengo entendido que "Des-seleccionas" el cm8888 (que ya lo seleccionas a la entrada de cada funcion o procedimiento)
-con la segunda no tengo ni idea que configuras
-luego con la tercera te tomas un tiempo (tal vez para esperar k termine d configurarse el cm8888
-y en la cuarta configuras como entradas los bits ( me imagino que son bits del micro)
Pero d todas estas la ke mas me confunde es "cm.cont=5"... si no me ekivoco con "cm.cont" configuras los bits RD, RS0 y WR (en ese orden), asi pues con "cm.cont=5" tendrias RD = 1 RS0 = 0 WR = 1 pero no encuentro esta configuracion en el datasheet....
entonces hay si me corche!
jeje