BASIC 8 (o BASIC 8.0 ) – " El sistema de gráficos mejorado para el C128 " – fue un sistema de gráficos diseñado en Estados Unidos desarrollado por Walrusoft de Gainesville, Florida [1] y publicado en 1986 por Patech Software de Somerset, Nueva Jersey . El sistema era una extensión del BASIC 7.0 de Commodore para la computadora Commodore 128. BASIC 8.0 proporcionaba comandos que no estaban presentes en BASIC 7.0 para generar gráficos (en color) en el modo de 80 columnas de alta resolución (640×200 píxeles ) del C128 para monitores RGB .
El paquete BASIC 8 fue desarrollado por Louis Wallace y David Darus de Walrusoft, con contribuciones de Ken French ( controladores de impresora ) e indirectamente de Richard Rylander (quien permitió que sus comandos de sólidos 3D para el Commodore 64 , publicados originalmente en el Dr. Dobb's Journal , se convirtieran al modo de alta resolución del C128).
Fondo
El problema
A diferencia de sus competidores, como los ordenadores Apple II y Atari de 8 bits , las iteraciones anteriores de BASIC en los ordenadores Commodore carecen de comandos para manejar sonido, gráficos y dispositivos de entrada. En su lugar, requieren secuencias PEEK y POKE complicadas , o rutinas de lenguaje de máquina , para poder leer joysticks y paletas, y generar gráficos, sonidos y música de alta resolución.
La falta de comandos de sonido y gráficos en BASIC 2.0, utilizado para el Commodore 64 , condujo al desarrollo de muchas extensiones de lenguaje de terceros, como BASIC de Simons , que eran más accesibles para usuarios no expertos.
El Commodore 128 (C128) se lanzó con BASIC 7.0, que contenía varios comandos de sonido y gráficos. Sin embargo, estos solo funcionaban en el modo de video de "40 columnas", un modo de monitor compuesto o de TV con una resolución igual a la del C64. La programación de gráficos para el nuevo modo de "80 columnas" de alta resolución del C128, pensado principalmente para monitores RGBI , era más desafiante que con el C64, debido a que el chip gráfico 8563 VDC del C128 era más difícil de usar que el VIC-II . [1]
Una solución
BASIC 8.0, disponible en disquete o ROM , proporcionaba muchos comandos gráficos que eran competitivos con los competidores del C128 en el mercado de microcomputadoras de 8 bits de alta gama. BASIC 8.0 era totalmente compatible con los diversos chips y cartuchos de expansión de RAM y video de primera mano , así como con ratones y joysticks . También proporcionaba comandos gráficos 3D básicos. [2] Junto con un manual de 188 páginas, el paquete de software incluía un ejemplo de una GUI y un programa de pintura de alta resolución , Basic Paint, ambos desarrollados con BASIC 8.0.
Código fuente y protección de copia
Se proporcionó el código fuente de algunos de los paquetes de BASIC 8 y el disco de BASIC 8.0 carecía de cualquier tipo de protección anticopia , pero esto fue antes de la Iniciativa de Código Abierto ; se hizo como una cortesía. En lugar de amenazar con acciones legales, Walrusoft simplemente pidió a los usuarios que no copiaran el software en la documentación. Funcionó; BASIC 8.0 se convirtió en una de las expansiones más vendidas para el C128. [ cita requerida ]
Comandos de muestra
En BASIC 8.0, todos los comandos añadidos se precedían del signo @ , que no se utilizaba normalmente en Commodore BASIC, para distinguir entre las palabras clave originales y las nuevas. El uso de este carácter permitiría al desarrollador ampliar BASIC 7.0 sin tener que volver a convertir en token los comandos, como se hacía en el C64. Esto se lograba capturando el error de sintaxis generado por el comando.
@CHAR– Muestra una cadena de texto en un campo de mapa de bits (similar alCHARcomando de baja resolución de BASIC 7.0)@MODE– Cambia entre una de hasta 32 pantallas de alta resolución@PAINT– Rellenar un área cerrada con un color o un patrón@PIXEL– Devuelve el valor de color de un píxel@STASH– Copia parte o la totalidad de una pantalla para su uso posterior@WALRUS– Muestra el logotipo de Walrusoft y el tipo/tamaño de RAM de video utilizada (16K o 64K)@WINDOWOPEN– Definir parte de la pantalla como una 'ventana' a efectos de dibujo.
Notas de referencia y citas
Referencias
- Wallace, Louis R. (1987). Manual básico 8. Somerset, NJ: Walrusoft/Patech Software, Inc. pág. 188 págs.
Notas
- ^ El VDC se programaba escribiendo comandos y leyendo mensajes de estado desde un único registro de control y transfiriendo datos entre la RAM del sistema y la RAM de vídeo dedicada del chip (16 o 64 KB, según la versión del C128) a través de un único registro de datos, siguiendo un protocolo relativamente complejo: un procedimiento laborioso y lento comparado con el uso directo de los diversos registros de control/estado discretos asignados a la memoria de la configuración de memoria compartida del sistema/vídeo del VIC-II. Muchos programadores aprovecharon una primitiva de control del VDC enterrada en lo profundo de la parte del KERNAL que controlaba la pantalla de vídeo de 80 columnas, en lugar de escribir su propia primitiva.
Citas
- ^ Holroyd, Eric (noviembre de 1989). "The Australian Commodore and Amiga Review" (PDF) . Vol. 6, núm. 11. Saturday Magazine Pty Ltd. pág. 13. Archivado (PDF) del original el 11 de marzo de 2019.
{{cite magazine}}: Requiere citar revista|magazine=( ayuda ) - ^ "Walrusoft Basic 8". Retro Commodore . 28 de marzo de 2010. Archivado desde el original el 20 de septiembre de 2018 . Consultado el 11 de marzo de 2019 .
Enlaces externos
- [2] ( Archivo de texto de 270 KB ) – Del proyecto de documentación del Proyecto 64