Shell   01-12-2022, 14:23
#1
Buenas!.

La idea es poder usar Visual Code para programar en el basic de Zx Spectrum (Basic Sinclair) y que el editor me permita usar un script en bash para convertir
y ejecutar en el emulador.  Este script lo lamaría Visual Code.

Visual Code dispone de distintos "complementos" que permiten desde "descatar" palabras reservadas de un basic de Commodore,
Msx, Zx Spectrum y mucho más. Esto también lo hacen otros editores, como SublimeText y su alternativa libre que ahora no recuerdo el nombre.

Este es el script que pretendo ejecutar. Claro, el archivo fuente de basic creado deberá ser guardado en un directorio a escoger por el usuario y entonces llamarlo.
( Perdonar la sencillez del script, que seguro que es mejorable. Lo principal es que  funciona ). Rolleyes

Código:
#!/bin/bash

# Convierte un archivo .bas que debe contener codigo basic de Zx Spectrum
# Se le pasa como único parámetro un archivo con extensión .bas
# Se asigna su valor, nombre, a la variable f
f=$1

# La extensión a la que convertimos es tap
extension='.tap'

# Eliminamos la extensión bas quedando solo el nombre sin esta para poder concatenar luego
noextension="${f%.*}"

# Convertimos el nombre original del archivo con la extensión .bas al mismo pero con .tap
# Y ademas usamos el guión -n para que a la hora de cargar la cinta se vea su nombre en el emulador
zmakebas $1 -o $noextension$extension -n $noextension

# Inicia el emulador fuse para ver la cinta creada con nuestro programa
fuse $noextension$extension

Siempre pregunto y no busco lo suficiente. Wink

Es algo como si tuvieras un código escrito en "C" y le dijeses al editor que programa debe usar para ejecutar el código y que opciones.
En este caso Visual Code grabaría el archivo.bas en un directorio y le pasaría el nombre al script para su conversión a cinta.

Saludos

El código en Visual Studio Code:

[Imagen: 0aNGgZ2.png]

El script lo guardé en /usr/local/bin
En este caso le paso el HolaMundo.bas que tengo en un directorio cualquiera.
El emulador carga la cinta y muestro el código en su interprete basic.

[Imagen: 3PPJ87A.png]
Última modificación: 01-12-2022, 14:42 por Shell.

"El conocimiento es la mejor inversión que se puede hacer" - Abraham Lincoln
  
Usuarios navegando en este tema: 1 invitado(s)
Powered By MyBB, © 2002-2025 MyBB Group.
Made with by Curves UI.