Parece extraño en 2022 hablar de herramientas de programación C64, y mucho menos de NUEVAS herramientas para la plataforma, ¡pero aquí estamos!
¿Qué es Visión BASIC?
Puede obtener toda la información oficial en el sitio web y hay un video de introducción del autor, Dennis Osborn, aquí en YouTube:
En pocas palabras, puede pensar en Vision BASIC como tres cosas:
Un compilador que acepta código C64 BASIC (principalmente) y genera un binario independiente C64.
Nuevas funciones y comandos del lenguaje C64 BASIC (más sobre eso en un momento).
Un sistema extensible de módulos y bibliotecas para permitir que la comunidad contribuya a las capacidades del sistema.
Si eso no era MUCHO, de hecho, hay otra faceta de Vision BASIC que lo hace increíblemente poderoso en las manos adecuadas. Puede ensamblar código en línea, o incluso usar esencialmente el compilador de Vision como ensamblador/compilador 6510.
Si bien ese no es obviamente el objetivo completo del paquete, vale la pena destacarlo porque una de las principales quejas sobre BASIC y los compiladores BASIC es que hay algunas cosas que siempre serán más rápidas en ensamblaje puro, sin importar qué tan bueno sea su Las optimizaciones del compilador son. Esto básicamente le dice al programador... ok, ¡adelante!
Desafíos con Vision BASIC
¿Suena perfecto? Bueno, es muy, muy bueno, pero no 100% perfecto, ¡y tampoco deberías esperar que lo sea!
En primer lugar, su panera C64 no puede ejecutar Vision sin ayuda. Necesitará al menos 256 K de RAM adicional para ejecutar Vision BASIC, lo que significa que necesita una REU/SuperCPU original o emulada.
Si, como yo, tienes un, Ultimate 64 o TheC64, o tienes algo como un, Ultimate II+, eres oro.
De lo contrario, los emuladores C64 modernos, como VICE, admiten la emulación REU y simplemente puede compilar su código en su computadora de desarrollo y luego ejecutarlo en cualquier C64 después de la compilación, como lo haría normalmente.
Incluso sin los requisitos de memoria, es probable que desee compilar cualquier cosa bastante robusta en la emulación o con aceleración de hardware de todos modos, ya que la compilación de código en un procesador de 8 bits es un proceso bastante largo.
Diferencias de código Vision BASIC
Si bien Vision tiene una excelente compatibilidad con C64 BASIC, hay algunas diferencias a tener en cuenta.
Estoy seguro de que surgirán muchas peculiaridades a medida que profundice y comience a codificar una vez que tenga el manual en mis manos (compré la caja física para enviarla a Inglaterra, pero ya tengo acceso a la descarga digital), pero por ahora parece que los principales escollos están en lo que respecta a las matemáticas y, en particular, el orden de las operaciones.
Vision procesa ecuaciones matemáticas de izquierda a derecha y no le gustan los paréntesis. Tampoco puede hacer los cálculos en línea y devolver el valor a una función.
Esto significa que si tienes algo como:
Código: Seleccionar todo
10 PRINT 1+2*3
… En lugar de hacer la multiplicación primero y el resultado mostrar la respuesta como 7, arrojaría un error de formato de código pidiéndole que divida el cálculo, y luego, independientemente, obtendría la respuesta como 9.
Visión BÁSICA Habilidades adicionales
Como se mencionó anteriormente, Vision ofrece muchas características adicionales que no están presentes en el C64 BASIC original.
Rutinas de dibujo de líneas Vision BASIC
Por supuesto, algunos son visuales, como sugiere el nombre, lo que permite que el dibujo, la redefinición del juego de caracteres y los sprites se realicen mucho más fácilmente. También hay comandos para sonido y música, interrupciones y joysticks, etc.
Menos impresionante inicialmente, pero algo por lo que estoy muy agradecido es que puedes agregar tus propias subrutinas e incluso compartirlas con otros programadores. Estos se denominan paquetes complementarios.
Una característica muy bienvenida es la capacidad de agregar etiquetas usando el comando TAG y usarlas para GOTO y GOSUB en lugar de especificar números de línea.
¡Es mucho más fácil hacer referencia a una sección nombrada que usar números de línea!
Actualizaciones futuras
Dennis parece muy receptivo a las ideas sobre su creación y tiene un foro en su sitio web para interactuar con él y otros usuarios.
Me encantaría que se facilitara el uso de editores de código externos para que no tenga que editar en el C64 (o emulador), y dado el escape del editor de código C64, para eliminar los números de línea.
Por supuesto, estoy escribiendo todo esto sin tener mi paquete Vision en mis manos, ¡estoy seguro de que habrá muchas más ideas después de aprender a codificar de verdad!
https://www.youtube.com/watch?v=ROR1NQE-2DY
Donde conseguir Vision Basic
Artículo Original en Inglés