Programando un videojuego en un intérprete de BASIC en el año 1988 Programando un videojuego en un intérprete de BASIC en el año 1988
Mi primer contacto con un lenguaje de programación fue en el año 1986 a la edad de 12 años; desarrollé un programa muy sencillo... Programando un videojuego en un intérprete de BASIC en el año 1988

Mi primer contacto con un lenguaje de programación fue en el año 1986 a la edad de 12 años; desarrollé un programa muy sencillo en uno de los mejores interpretes de BASIC que se ha hecho jamás: el Locomotive BASIC creado para el extraordinario Amstrad CPC6128, equipo basado en el no menos extraordinario microprocesador Zilog Z80. Con aquella primera incursión en un lenguaje de programación logré, a modo de trofeo, adquirir una gran fascinación por la informática y por el desarrollo de programas.

Poco más de un año después, había abandonado el mundo de los ordenadores propietarios de 8 bits para acceder al nuevo y fascinante mundo de los compatibles con el IBM PC. Aquello me llevó del Locomotive BASIC y el CP/M, al intérprete BASICA de IBM y al MS-DOS de Microsoft. En realidad, el intérprete BASICA era la versión distribuida por IBM con el PC-DOS creado por Microsoft para los ordenadores IBM PC. Pero gracias a «La Habitacion Limpia», con la salida al mercado de los ordenadores compatibles con IBM PC, a Microsoft le salió una nueva clientela, ajena al fabricante IBM, a los que les comercializó un MS-DOS que incluyó como intérprete el GW-BASIC.

Inicialmente empecé a programar en el BASICA, para después pasarme al GW-BASIC… un intérprete de BASIC de gran calidad, y en cortos espacios de tiempo iba necesitando crear mejores programas… atacar mayores retos. Ya había ido de academia en academia buscando aprender más sobre informática, pero lo ofrecido en todos los centros de formación no pasaba del BASIC al que ya le había cogido el truco.

Entre clase y clase se me ocurrió desarrollar en BASIC un juego de ordenador para ocupar mis ratos libres y, de paso, seguir aprendiendo.

A mis catorce años estaba en una academia en la que ya me había cansado de desarrollar las típicas aplicaciones «Alta/Baja/Consulta/Modificación»… terminaba una aplicación, y me mandaban desarrollar otra, y así me tenían una clase tras otra. Entre clase y clase se me ocurrió desarrollar en BASIC un juego de ordenador para ocupar mis ratos libres y, de paso, seguir aprendiendo… menos jugar al ordenador y más trabajar con el. Pero claro, quería que mi juego tuviera gráficos, sonido, y alguna animación… pero el BASIC del MS-DOS contaba con sus limitaciones. Un día se lo comenté al profesor de informática de la academia, y me respondió que no era posible desarrollar con el GW-BASIC un videojuego de esas características —supongo que, además, pensó: menos un crío de 14 años—. Aquel profesor era joven, no tendría de aquella más de 27 o 28 años, y en su centro de trabajo lo tenían por las nubes porque era uno de los primeros ingenieros informáticos titulados, ya que en mi ciudad hacía poco tiempo que existía una facultad dedicada a la ingeniería informática.

Lo imposible, en ocasiones, es realmente imposible, pero otras veces solo existe una barrera en la mente de cada uno; si crees que algo es imposible de hacer… ya da igual que realmente se pueda hacer o no. Así que me puse manos a la obra y empecé a desarrollar mi videojuego en GW-Basic: un juego de preguntas de cultura general que bauticé con el nombre de Cult-Test. Realmente el GW-BASIC disponía de sus limitaciones, los videojuegos con buenos gráficos eran desarrollados por auténticos artistas del apartado visual y, normalmente, ejecutados en aquellos años en ensamblador o en lenguajes de medio nivel como el C. Crear una pantalla gráfica con GW-Basic era posible, pero quedaba un poco cutre.

En el apartado gráfico me puse a investigar y encontré, por mis propios medios, un camino paralelo que me permitía cargar en GW-Basic ficheros binarios externos.

En el año 1988 no existía el Internet público que tenemos en la actualidad —la gran fuente de información—, y para lograr fines importantes en la informática se requería de una dosis de ingenio propio, y la escasa bibliografía sobre informática que se pudiera encontrar. Tenía solucionado el asunto del sonido para el videojuego: cambiando las frecuencias enviadas al altavoz se lograba emitir música con la escala de notas musicales que todos conocemos. En el apartado gráfico me puse a investigar y encontré, por mis propios medios, un camino paralelo que me permitía cargar en GW-Basic ficheros binarios externos; después de muchos intentos —prueba y error— logré abrir binarios que contenían gráficos dentro de un programa de BASIC. Así que las pantallas de mis juegos podían ser creadas por medio de capturas de pantallas —retocadas después—, o en base a diseños ejecutados con algún programa de dibujo como, por ejemplo, el famoso PC Paintbrush. Aquello me permitió incluir gráficos de gran calidad en mi videojuego.

Tenía solucionada la música y las pantallas gráficas. Me faltaba por solucionar las animaciones… y para aquello, gracias al mismo método que había descubierto para cargar ficheros binarios, utilicé transiciones. Después vino la parte de programar todo teniendo en cuenta que el GW-Basic era un intérprete y, por ello, cualquier programa desarrollado en aquel entorno necesitaba para su ejecución tener abierto el mencionado software para hacer un «RUN». Para automatizar la ejecución del juego y que fuera posible desde el propio sistema operativo MS-DOS, al igual que un ejecutable «COM» o «EXE», desarrollé un pequeño proceso «BATCH» en el sistema operativo.

En una clase le comenté al profesor de informática que había desarrollado el videojuego bajo las condiciones que le había preguntado en su momento, y él puso en duda la veracidad de mis palabras

En un par de meses terminé el videojuego cumpliendo todos los objetivos prefijados al inicio. En una clase le comenté al profesor de informática que había desarrollado el videojuego bajo las condiciones que le había preguntado en su momento, y él puso en duda la veracidad de mis palabras; un día llevé mi videojuego a la academia y lo ejecuté en uno de los ordenadores. El profesor no dijo nada, puso cara de mal humor, y no volvió a hablar del tema. Poco tiempo después dejé la academia.

En los siguientes años desarrollé algunos videojuegos más complejos y de más calidad, pero programados en lenguajes más completos como el C y creando las animaciones en programas como el IBM StoryBoard Plus, para terminar por usar, después, las «puertas traseras» para cargar los binarios. La experiencia es un grado, y con cada proyecto personal que pude ejecutar aprendí nuevas y mejores cosas, hasta los 17 años que programé el último videojuego; mi objetivo dentro de la informática era diferente… para el año 1991 ya estaba pensando en mi futuro como informático profesional en la industria o en la administración.

 

 

 

Manuel Director

Analista informático, desarrolla su labor profesional para importantes clientes en una empresa de Ingeniería de Software. Entre sus logros se encuentra haber ganado un premio internacional, y otro premio a nivel nacional, además de otras dos importantes menciones, todo ello relacionado con el mundo de Internet y la informática. Además es el creador de varios desarrollos de software freeware de gran éxito en varios países. En su tiempo libre fuera de su labor profesional es Director de ParcelaDigital.

Artículos antiguos…