Universal Basic Library, directo desde los laboratorios retro

Si alguna vez soñaste con escribir un programita en BASIC y hacerlo correr, sin tocar ni una línea, en medio planeta de microordenadores… ¡prepárate, porque ese sueño empieza a hacerse realidad! Llega Universal Basic Library (UBL), una librería universal y portátil pensada para funcionar en un auténtico zoológico de máquinas clásicas.

¿La idea? Muy simple: cargas la librería correspondiente a tu sistema, llamas a sus rutinas desde tu propio código, y ¡magia! El mismo programa corre en Commodore, Amstrad, Apple II, ZX Spectrum, MSX y un buen puñado de máquinas más.

🧩 Una librería BASIC para gobernarlos a todos

La UBL está disponible para máquinas como:
C64, VIC-20, C16, PET, DOS QBasic, Apple II, Dragon 32, BBC Micro, ZX-Spectrum, Amstrad CPC, MSX, TRS-80, Exidy Sorcerer y Ohio Superboard.
Vamos, que solo falta que arranque en tu tostadora del desayuno.

El archivo con todo el material, ejemplos (como el simpático Dungeon Maze) y librerías por plataforma puede descargarse desde su repositorio oficial. Allí también encontrarás UBL25.TXT, donde reside el código fuente para cada versión.

⚙️ ¿Cómo funciona esta maravilla?

La librería ocupa las líneas 1–49 (funciones rápidas, tipo peek/poke de pantalla) y 9500–9999 (rutinas pesadas), dejando libre del 100 al 9499 para tu programa. Una de las primeras llamadas debe ser un clásico GOSUB 9500, con el que se inicializa la UBL.

Los comandos permiten manipular caracteres, color, VDU, y más, usando rutinas GOSUB idénticas para todas las plataformas soportadas. La librería usa solo variables que empiezan por U, para no pisotear el código del usuario.



Todo está escrito en BASIC puro, procurando ser compatible con compiladores como Blitz, Austrospeed o Basic64. ¡Y sí, los juegos resultantes vuelan cuando los compilas!

Comentar que los juegos «universales» no tienen rutinas gráficas especificas, si no que se basan en caracteres ascii.

🗂️ Versiones para copiar y pegar

Como cada máquina tiene su propio método de carga, el autor ha optado por distribuir las librerías como simples archivos de texto, listos para copiar y pegar en tu emulador favorito. Así, modificar y propagar pequeñas mejoras es mucho más sencillo.

Para los fans del universo Commodore, también existe un D64 especial, con auto-detección de modelo y ejemplos listos para cargar con el clásico
LOAD "PROG",8
(¡sin el «,1», importante para compatibilidad con PET!).

🕹️ Bonus CPC: juegos listos para descargar

Y para rematar, nuestro buen colega shacpc ha recopilado los juegos «adaptados» para Amstrad CPC en un estupendo DSK que ponemos a vuestra disposición para descarga inmediata. ¡Un caramelito extra para los fans del 6128 y compañía!