RoboLinux 1.6

Programa de control de dispositivos RCX de Lego en Xwindows.


Copyright (C) 2007 Prodel S.A

Programador: Daniel Pascual Dominguez

www.RoboLinux.com


Este programa es software libre. Puede redistribuirlo y/o modificarlo bajo los términos de la Licencia Pública General de GNU según es publicada por la Free Software Foundation, bien de la versión 2 de dicha Licencia o bien (según su elección) de cualquier versión posterior.

Este programa se distribuye con la esperanza de que sea útil, pero SIN NINGUNA GARANTÍA, incluso sin la garantía MERCANTIL implícita o sin garantizar la CONVENIENCIA PARA UN PROPÓSITO PARTICULAR. Véase la Licencia Pública General de GNU para más detalles.


Debería haber recibido una copia de la Licencia Pública General junto con este programa. Si no ha sido así, escriba a la Free Software Foundation, Inc., en 675 Mass Ave, Cambridge, MA 02139, EEUU.


Desarrollo del programa:


El programa se ha desarrollado en lenguaje Kylix (Turbo Pascal Orientado a Objetos), es posible obtener una copia gratuita de Kylix 3 Open Source en la página web de Borland (www.borland.com).

Como interface de comunicación entre RoboLinux y el RCX se ha utilizado el leguaje de programación NQC (www.baumfamily.org/nqc/)

RoboLinux es por tanto un interface gráfico para NQC, y lo que hace es generar programas en lenguaje nqc según las opciones seleccionadas en sus menús gráficos.

En cuanto a la estructura del programa se ha realizado una implementación orientada a objetos en la que además de los distintos formularios se han definido tres objetos principales reutilizables:

el objeto 'salida' (clase tfsalidas en el código)

el objeto 'entrada' (clase tfentradas en el código)

el objeto 'entrada avanzada' (clase tfentradasp4 en el código)

Mediante los distintos procedimientos que incorporan estos objetos se ha dado funcionalidad al programa.

Cabe destacar en la realización del pilot 4 la utilización de la estructura de datos 'lista doblemente enlazada' implementada mediante punteros que ha permitido desarrollar este apartado con poco código y con una funcionalidad óptima que permite crear infinitos pasos dentro del programa RCX.