QuickBASIC sigue vivo con QB64
Cuando compré mi primer ordenador, un 386 de segunda mano con MS-DOS 6.22, no tenía conexión a Internet. Pero tenía instalado QuickBASIC y una pila de revistas de programación que la biblioteca local estaba tirando, así que tenía mucho con qué mantenerme ocupado. En ese momento pensé que QuickBASIC era más o menos indistinguible de la magia. Podría escribir código simple y compilarlo en un .exe, ponerlo en un disquete y entregárselo a otra persona para que lo ejecute en su propia máquina. Parecía demasiado bueno para ser verdad, ¿cómo podría mejorarse esta tecnología?
Por supuesto, eso fue hace muchos años y las cosas son muy diferentes ahora. Los lenguajes de programación del momento son mucho más capaces que las variantes BASIC de los años 80 y 90. Pero aun así, cuando encontré un disquete lleno de programas que escribí hace décadas, no pude evitar preguntarme si podría volver a ejecutarlos. Con algo como DOSBox, razoné que debería poder instalar QuickBASIC IDE y ejecutarlos como si estuviera en mi confiable 386.
Desafortunadamente, eso no fue así. Tal vez simplemente no estoy lo suficientemente versado en DOSBox, pero no pude lograr que el IDE ejecutara el código fuente que saqué del disquete. Esto fue decepcionante, pero luego se me ocurrió que probablemente se estén desarrollando intérpretes BASIC modernos en algún rincón de Internet, y tal vez podría encontrar una manera de ejecutar mi código de casi 30 años sin tener que depender de un software de 30 años para ejecutarlo. hazlo.
Después de buscar un poco, encontré el proyecto QB64. Este es un entorno de desarrollo QuickBASIC de código abierto que no sólo es completamente compatible con los programas existentes, sino que agrega funciones y capacidades que eran impensables en mi 386. Se puede mostrar un PNG, cargar fuentes TTF o reproducir un MP3 en segundo plano. con sólo uno o dos comandos.
Tales cosas eran posibles con el QuickBASIC original, pero existían más en el ámbito de las demostraciones técnicas que en cualquier otra cosa. ¡Oh, qué juegos podría haber creado en su día con un software como este! Tenía que contentarme con los pitidos y los pitidos, e incluso eso requería que tú mismo descubrieras el momento de los tonos.
Aún mejor, QB64 es multiplataforma y admite la compilación en binarios nativos para Linux, Windows y Mac OS. Eso significaba que no sólo podía ejecutar mi código antiguo dentro del IDE, sino que también podía compilarlo en un binario para mi escritorio Linux. Ya no tengo una computadora con Windows, pero con WINE pude ejecutar la versión de Windows de QB64 y compilar un .exe que podría regalar a mis amigos que todavía viven en la Edad Media.
Incluso puedes usar QB64 para compilar código QuickBasic en una aplicación de Android, aunque hay obstáculos considerables que superar y actualmente solo funciona en Windows.
Esto podría pasar desapercibido para aquellos que nunca escribieron código BÁSICO en una máquina antigua, pero el siguiente código crea una pantalla de 800 × 600, coloca un PNG de pantalla completa, reproduce un MP3 y escribe un mensaje usando una fuente TrueType.
A modo de comparación, esta herramienta QuickBasic para mostrar simplemente una imagen JPEG registra 653 líneas de código.
En mi tensa adolescencia, creé una versión gráfica del juego estilo “Drugwars”. Movías a un hombrecito de palo por un entorno pixelado, comprando y vendiendo sustancias de las que había oído hablar en películas pero que ciertamente nunca había visto en persona. Fue terrible. Pero era parte de mi juventud y pensé que sería divertido ver si podía calzar algún flash moderno usando QB64.
Resulta que los PNG transparentes y la capacidad de mostrar fuentes adecuadas facilitan mucho las cosas. Poder reproducir música y efectos de sonido ambiental de fondo hace que incluso los juegos mal hechos parezcan mucho mejores. Las siguientes capturas de pantalla son del menú principal de mi pequeña fantasía criminal adolescente, antes y después de la aplicación de QB64. Tenga en cuenta que el código fuente principal en sí es más o menos el mismo, solo lo estoy intercalando con la capacidad de cargar y mostrar archivos externos.
No, definitivamente no deberías hacerlo. No escribí esto para intentar convencer a nadie de que se lanzara a un lenguaje de programación que alcanzó su punto máximo antes de que muchos de nuestros lectores nacieran. QuickBASIC es un lenguaje anticuado, atascado con métodos y limitaciones obsoletos que confunden al programador moderno. Pero QB64 hace un excelente trabajo al modernizar este lenguaje clásico, aunque solo sea en un grado relativamente pequeño en el gran esquema de las cosas, para aquellos de nosotros que nos iniciamos en él.
Poder tomar un disco con código BÁSICO que escribí en DOS 386 a principios de los 90 y convertirlo en un binario de Linux en 2018 es un logro bastante bueno, y felicito al equipo de desarrollo de QB64 por hacerlo posible. No escribiré ningún código nuevo en el lenguaje, y tampoco te sugiero que lo hagas, pero fue muy divertido poder revisitar este período de mi vida y arrastrarlo pataleando y gritando a la era moderna.