domingo, 27 de enero de 2013

ALLEGRO

Me entran escalofríos nada más que de pensarlo. Y es que han pasado la friolera de 16 años desde que tres amigos nos dispusimos a crear  un programa multimedia acerca de la Semana Santa de Linares, llamado Hermandades y Cofradías Linarenses. Aún conservo el código fuente. Recuerdo que usé el lenguaje de programación C y una librería llamada Allegro. Para el que no entienda mucho de programación, le puede sonar a chino, pero para entendernos esto viene a ser algo así como un conjunto de sentencias complementarias al lenguaje de programación que nos ayudan a hacer "cosas" que de otra forma no podríamos o nos costaría muchísimo más tiempo o trabajo. Allegro era una maravilla. Fue en la Cuaresma del año 1997 cuando el programa salió a la venta. Tuvimos la dificultad de comenzar el programa en MS-DOS para toparnos de pleno con Windows 95 y sus "problemas". Allegro, que estaba en su versión 3.x, funcionaba únicamente en dos IDEs: DJGPP y Borland C. Las funciones de Allegro permitían detectar la versión de Windows, la resolución de pantalla, inicializar el entorno gráfico, el sonido... por aquella época, un ordenador que pudiera poner la pantalla en 800 por 600 píxeles ya era una maravilla (hoy, un tablet que no tenga esa resolución mínima es una patata...). Finalmente, tras varias pruebas y cambios en sus diseños gráficos (ahora, cuando los veo, me doy cuenta de lo mucho que teníamos que aprender...), la aplicación vio la luz y la Agrupación de Cofradías y Hermandades de Linares la puso a la venta en su tienda. Por los comentarios de la gente, tuvo buena aceptación, aunque haciendo un cálculo a la ligera, podríamos decir que en un 10% o 15% de los ordenadores, la aplicación no era estable. Problemas del C, de sus punteros, de su liberación manual de memoria, del distinto comportamiento del hardware con el Windows 95... no tuvimos el tiempo deseado para probarlo a fondo en más ordenadores. Esto no hubiera garantizado que a nadie le fallara la aplicación (que se vendió en formato CD), pero sí podríamos haber reducido algo ese porcentaje.

El caso es que durante estos 16 años siempre he tenido, y sigo teniéndolo, el ferviente deseo de hacer algo más, una segunda parte, algo distinto, otra forma de expresar mis conocimientos... Allegro evolucionó. Desapareció para Borland C++ y siguió vivo únicamente con el compilador DJGPP. Aparecieron Windows 98 y, posteriormente, Windows XP. Y a cada nueva versión de Windows, más inconvenientes para DJGPP y Allegro. Aún así, en la primera década del siglo 21, Allegro crece míninamente y aparece su versión 4. Allegro es el acrónimo de "Atari Low Level Game Routines"; es decir, librerías de bajo nivel para la creación de juegos en Atari, y nació a principios de los 90. Su creador, viendo que Atari tendía a desaparecer, lo adaptó a C y C++. En el 95 funcionaba para los compiladores anteriormente citados, hasta que en el 98 se ramificó, creándose una versión para Windows y otra para Unix. Pero hasta que no llegó Allegro 4 no se estabilizó para múltiples plataformas. Se dio soporte para Watcom C, otro compilador en entorno gráfico (al contrario que DJGPP, que era en entorno de MS-DOS). Pero ahí ha estado durante toda la década, sin pena ni gloria, con sus pocos pero fieles usuarios, intentado sobrevivir a las cada vez más tecnologías emergentes, con los nuevos Windows, Linux y los cada vez más modernos sistemas operativos para tablets y dispositivos móviles.

Ayer, buscando un código fuente por mis DVDs de datos, me da por buscar Allegro en la red y descubro que en agosto de 2011 ha salido su versión 5. ¡Sorpresa! Nueva API (Interfaz de programación de Aplicaciones) y cambios drásticos en la implementación por software de las rutinas gráficas que incorpora la librería. ¡Y más sorpresas! Como que se puede configurar para ser usado con Visual Studio C++, MinGW, Cygwin y Borland C++ en entornos windows, Xcode en Mac OS X y DJGPP, WatCOM, BeOS y QNX bajo MS-DOS. De hecho, ya lo tengo instalado en mi Visual Studio y ha sido muy fácil y lo mejor de todo... funciona a la primera. Así que quizá sea una nueva ilusión que puede caer en saco roto... o quizá me ponga a crear algo que me vuelva a llenar y me sirva para mejorar mis conocimientos. Aunque en la Wikipedia no lo indique, estoy empezando a ver por la red que también da soporte a Android e iOS... aunque está casi todo en Inglés. Algo que también estoy mejorando mucho, y que gracias a ello, me defiendo muy bien y prácticamente me entero de casi todo... Si consigo instalar Allegro en mi Eclipse para programar aplicaciones Android o en NetBeans para trabajar con Java... lo voy a flipar. De momento, se me abre un camino para plataformas Windows (mayor compatibilidad para los .EXE con Visual Studio no podría tener...) y ya veremos si con Android puedo hacer lo mismo...

De todas formas... ¡qué recuerdos!

No hay comentarios:

Publicar un comentario