x
1

BBC BASIC



BBC BASIC es un lenguaje de programación, desarrollado en 1981 como un lenguaje de programación nativo para el Acorn BBC Micro, un ordenador doméstico con CPU MOS Technology 6502, principalmente por Sophie Wilson. Es una adaptación del lenguaje BASIC para el Proyecto de Conocimiento en Informática de la BBC en el Reino Unido.

El BBC BASIC se basa en el viejo Atom BASIC (para el Acorn Atom), ampliado el tradicional BASIC con procedimientos y funciones nombrados, bucles REPEAT-UNTIL, y estructuras IF-THEN-ELSE inspiradas en COMAL. El intérprete incluía también poderosas sentencias para manejar las cuatro salidas de audio del BBC Micro y su pantalla de alta resolución.

Una de las características únicas del BBC BASIC es la presencia de un ensamblador en línea que permite a los usuarios escribir código ensamblador 6502 en sus programas. El ensamblador se integró plenamente en el intérprete BASIC y compartía variables con él. Esto permitió a los desarrolladores escribir, no sólo el código en lenguaje ensamblador, sino combinar código BASIC con ensamblador, por lo que es posible utilizar técnicas de generación de código, e incluso escribir simples compiladores en BASIC.

Otra versión de BBC BASIC, llamada BAS128, se suministra en cinta y disco con los BBC Master y Master Compact; se carga en la memoria RAM principal y usa los 64 Kilobytes de la Sideways RAM para programas de usuario. Esto proporcionó soporte a programas mucho más grandes a costa de ser mucho más lento que la versión basada en ROM.

Con el paso a los 32 bits de la CPU ARM y la eliminación del límite de 16 KB para el código de BASIC permite que se añadan muchas nuevas características. BASIC V versión 1.04 tiene un tamaño de 61 KB.

Algunos de los nuevos comandos y características soportadas son:

Los comandos gráficos eran totalmente compatibles hacia atrás, algo menos el sonido (por ejemplo, la palabra clave ENVELOPE desde BASIC V es un comando que tiene catorce parámetros numéricos y efectivamente no hace nada - como en versiones anteriores, llama a OS_Word 8, pero no hace nada en RISC OS.[1]​ El ensamblador en línea de 6502 es reemplazado por ensamblador ARM. Acorn dijo de BASIC V que sería "sin duda el más rápido BASIC interpretado del mundo" y "probablemente el más poderoso BASIC presente en cualquier equipo".

Y lo demostraron en la práctica. Mientras que los programas de morphing en el resto de plataformas estaban escritos en ensamblador o C, cuando el Risc PC se muestra en el SIMO, corre un programa de este tipo que podía interrumpirse a voluntad para listar el código, sin que se apreciara retraso alguno.

BASIC VI es una versión de BASIC V que soporta el formato de 8 bytes para los números reales (de acuerdo con el estándar IEEE 754) a diferencia de los 5 bytes utilizados desde BASIC I.

BBC BASIC V y VI se entregaban de serie con los Acorn Archimedes y el Risc PC.

Las versiones actuales de RISC OS todavía incluyen un intérprete de BBC BASIC.

El código fuente de la versión de BBC BASIC para RISC OS 5 ha sido liberado recientemente como 'shared source' por RISC OS Open.

BBC BASIC también ha sido portado a muchas otras plataformas.[2]

Además de la versión de BBC BASIC entregada con el segundo procesador Zilog Z80 para el BBC Micro, existe una versión para CP/M sobre Z80. Hasta hace poco no existía versión para el Sinclair ZX Spectrum, sin embargo gracias al esfuerzo de J.G Harston (también responsable de la versión para PDP-11), BBC BASIC for the spectrum se lanzó en enero de 2002 con muchas mejoras en las versiones posteriores.

Una versión de BBC BASIC para Zilog Z80 se había utilizado en el ordenador de sobremesa Tiki 100 y los notebooks Cambridge Z88, Amstrad NC100 y Amstrad NC200. Esta versión se ha implementado en las calculadoras gráficas TI-83 Plus y TI-84 Plus.

Para los PCs, BBC BASIC se implementó para DOS como BBCBASIC (86) (cuyo objetivo era la máxima compatibilidad con el BBC Micro) y BBasic (que se centraba en el lenguaje BASIC, con sus propias mejoras basadas en BASIC II).

Una versión de BBC BASIC integrada con la interfaz gráfica de usuario de Microsoft Windows, BBC BASIC for Windows creada por Richard Russell (quien también desarrolló las versiones para Z80 y x86), fue lanzada en 2001. Esta versión está aún en fase de desarrollo activo, debido a que se usa mucho hoy en día. Mientras que soporta casi completamente la especificación original del BBC BASIC (BASIC IV), la versión para Windows soporta muchos de la sintaxis de BASIC V/VI así como algunas características avanzadas propias.

Características exclusivas del BBC BASIC para Windows incluyen soporte del intérprete para tipos record/structure, y la habilidad de pode llamar rutinas del API de Windows o las rutinas en una DLL externa. Recientes versiones han incluido funciones avanzadas comparables con lenguajes como C.

Un clon de BBC BASIC bajo licencia GPL llamado Brandy escrito en C portable también existe.

Un emulator del BBC Micro para el Commodore Amiga fue producido por Ariadna Software para CBM. A pesar de ser muy rápido, no emula el 6502 a velocidad completa por lo que el ensamblador corre más lento que en un BBC real mientras que los programas BASIC irían mucho más rápidos por desgracia, debido a la forma en que el Basic optimizado y la emulación 6502 interactúan, casi ningún juego comercial se ejecutaría (pero el software educativo generalmente funciona); además utiliza un poco menos preciso formato numérico de coma flotante. Durante un tiempo fue incluido con un paquete académico especial del Commodore Amiga 500, con la esperanza de que las escuelas reemplazaran sus envejecidos BBC Micro por Amiga 500.



Escribe un comentario o lo que quieras sobre BBC BASIC (directo, no tienes que registrarte)


Comentarios
(de más nuevos a más antiguos)


Aún no hay comentarios, ¡deja el primero!