============================= Versin 1.0 =================================
								  (19-6-98)

Primera versin que funcion correctamente con el prototipo conectado a
internet. Sus principales caractersticas son:

* Protocolo SLIP implementado mediante mquina de estados en la rutina de
interrupcin del puerto serie asncrono (SCI).

* Soporta paquetes IP.v4 de hasta 576 bytes sin fragmentacin ni opciones de
cabecera. Este MTU permite la implementacin sin problemas del protocolo
tftp.

* Implementa las funciones de eco, tanto ICMP (ping) como UDP.

* Implementa un servidor de Trivial FTP como principal mecanismo de
comunicacin. En este servidor son accesibles una serie de ficheros
virtuales que permiten conocer el estado del prototipo y consultar los datos
capturados. Los principales ficheros son:

index	- Directorio del prototipo.
stat	- Informacin acerca del estado del prototipo. Destacan los campos
	  de tareas, estadsticas de trfico de paquetes y configuracin de
	  la captura de datos.
data	- Niveles actuales de las 8 entradas analgicas del 68hc11.
alldata	- Volcado de todos los datos capturados por el prototipo desde el
	  momento de su encendido o configuracin, en formato ASCII.
mem/[*]	- Volcados de diversas zonas de la memoria.

  El servidor permite mantener abiertos simultneamente hasta 4 ficheros si
su tamao supera los 512 bytes, mientras que los ficheros ms cortos no
tinen este tipo de restriccin pues se contestan con un nico paquete UDP.
La dexconexin por "timeout" no se produce hasta que resulta necesario para
atender una nueva conexin.

* Configuracin remota: Mediante un paquete UDP, y una clave elegida en el
momento de la compilacin, se pueden establecer nuevos parmetros para la
captura de datos, como son el periodo de muestreo y la mscara de canales de
datos que nos permite seleccionar los canales de inters entre las 8
entradas analgicas del 68hc11.

* Multitarea. El esquema seguido es muy simple: Una interrupcin peridica
conmuta cada 13 ms aproximadamente a la tarea nmero 0 que es la ms
prioritaria. Cuando una tarea no tiene nada que hacer conmuta a la siguiente
tarea menos prioritaria mediante la instruccin "swi" (interrupcin por
software). La ltima tarea de la cadena de prioridades consume el tiempo de
CPU restante en un bucle infinito. Se han previsto hasta 4 tareas, aunque
slo se emplean dos de ellas en la actualidad: La tarea numero 0 se encarga
de la captura peridica de datos y la tarea 1 de las comunicaciones IP. Cada
tarea tiene su propia pila mientras que el acceso a las variables de otras
tareas es total, por lo que ms que de multitarea deberamos hablar de
"multithreads".

* El cdigo est escrito en lenguaje ensamblador y C. Las principales partes
son:

Cdigo ensamblador:

- Arranque, variables globales y tabla de vectores 
  de interrupcin:					crt0.s
- Gestin de memoria para paquetes:			mem.s
- Gestin de colas de punteros:				colas.s
- Interrupcin del puerto serie y protocolo SLIP:	sci.s
- Interrupcin de tiempo real y conmutacin de tareas:	task.s
- Temporizacin de precisin (interrupcin OC2):	timer.s
- Checksum IP:						checksum.s

Cdigo C:

- Captura de datos:					data_ad.c
- Gestin de paquetes IP:				ip.c
- Gestin de paquetes ICMP (echo):			icmp.c
- Gestin de paquetes UDP:				udp.c
- Configuracin remota:					config.c
- Servidor tftp y sistema de ficheros:			tftp.c

El programa tambin hace uso de rutinas de librera de propsito general,
como son las funciones de tratamiento de cadenas en C y "printf", adems de
algunas rutinas artitmticas de bajo nivel (libgcc.a).

============================= Versin 1.1 =================================
								  (22-6-98)

Bsicamente es una versin que incorpora optimizaciones en el cdigo fuente,
especialmente en lo relativo al cdigo ensamblador. Los principales cambios
son:

* Recopilacin de rutinas en una librera especfica de la aplicacin:
  directorio ./lib

* Rutina "sprintf". Se elimin cdigo de "printf" para hacer esta rutina
  slo til para imprimir en cadenas de caracteres. Se retorna el nmero de
  bytes impresos.

* Rutina "strcpy" se modific del estndar para retornar el puntero al final
  de la cadena destino en lugar de al principio. Por ello se cambi su
  nombre por "strcpy_m". El cambio simplifica la concatenacin de cadenas en
  programas C.

* Rutina "memcpy" totalmente reescrita para acelerar el movimiento de
  bloques de datos. Para ello se recurre a la copia de datos de 16 bits
  cuando es posible y se evitan las cargas y descargas de registros ndice.
  Se estima que la nueva rutina es al menos 4 veces ms rpida que su
  antecesora, aunque ocupa aproximadamente el doble de memoria.

* Rutina de Checksum IP. Ahora usa instrucciones de suma con acarreo de 8
  bits, lo que permite una ligera mejora de velocidad al no tener que
  consultar el flag de acarreo en cada suma.

* Fuente "tftp.c" bastante modificado para hacer uso de las nuevas rutinas.
  Se consiguen eliminar las llamadas a la rutina "strlen". El resultado es
  un cdigo objeto notablemente ms corto y rpido.

Adems de estos cambios se incorporan correccciones ortogrficas, nuevas
lneas de comentarios y una estructuracin ms racional de determinadas
partes del cdigo fuente.

Las moficicaciones redujeron el cdigo objeto en unos 500 bytes
aproximadamente.

============================= Versin 1.2 =================================
								  (23-6-98)

* Correccin de un error estpido en la longitud del fichero "Index".
  (Gracias a Ciriaco Garca de Celis)

* Eliminacin de retardo activo en la rutina "adquire" de "data_ad.c". Esto
  supone una reduccin del consumo de CPU de la terea ms prioritaria, con
  lo que se agiliza la respuesta de la tarea 1 (trfico IP). Como
  contrapartida el periodo mnimo de muestreo ha sido aumentado de 20 a 30
  ms.
