Compilador de Basic para ZX

¿Tienes problemas con tu equipo?, preguntanos.

Moderador: Fundadores

Avatar de Usuario
merlinkv
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 6391
Registrado: 06 Abr 2015, 23:08
Ubicación: Madrid / Europa del Este
Has thanked: 124 times
Been thanked: 329 times
Contactar:

Compilador de Basic para ZX

Mensaje por merlinkv »

Hola a todos:

Estoy buscando un compilador de Basic para hacer algunas cosas que me sirvan sobre todo para los +3 o ZX con disqueteras.

He estado mirando el Boriel ZX Basic y he creado un pequeño menú para lanzar distintos juegos.

Pero no he podido encontrar como hacer cosas tan simples como esta:

Es decir pulsar una tecla y que cargue un determinado programa en Basic que está en el disco. A la hora de compilar siempre me dice que error al final de linea (de la línea de LOAD).

¿Alguna idea? ... Gracias :)


Código: Seleccionar todo

...
  70  PRINT  AT 3,6; "Alien 8"
  80  PRINT  AT 5,6; "Knight Lore"
  90  PRINT  AT 7,6; "Way of Exploding Fist"
 100  PRINT  AT 9,6; "JetPac"
 110  PRINT  AT 11,6; "Prince of Persia"
 120  PRINT  AT 13,6; "Abu Simbel"
 130  PRINT  AT 15,6; "Arkanoid"
 140  PRINT  AT 17,6; "La Abadia del Crimen"
 150  LET k$=INKEY$ 
 160  IF k$="1" THEN LOAD "ALIEN8"
 170  IF k$="2" THEN  LOAD "LORE"
 180  IF k$="3" THEN  LOAD "FIST"
 190  IF k$="4" THEN  LOAD "JETPAC"
 200  IF k$="5" THEN  LOAD "POPERSIA"
 210  IF k$="6" THEN  LOAD "ABUSIM"
 220  IF k$="7" THEN  LOAD "ARKANOID"
 230  IF k$="8" THEN  LOAD "ABADIA"
 240  IF k$="n" OR k$ = "N" THEN  LET p = 2: GO TO 270
 250  IF k$="l" OR k$ = "L" THEN  LET p = 4: GO TO 690
 260  GO TO 150
 ...
 
No sé como será la tercera Guerra Mundial. Pero sí sé como será la cuarta: Con palos y piedras.
Aquí yace un valiente, un temible adversario y un verdadero hombre de honor. Descanse en paz. 21-04-1918
Visita mi Github igual te gusta algo.
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 5875
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1210 times
Been thanked: 2829 times
Contactar:

Re: Compilador de Basic para ZX

Mensaje por cacharreo »

Conozco el Boriel ZX Basic solo por referencias pero ni lo tengo ni lo he usado.

No obstante te recomendaría reestructurar el programa para que trabajara con listas (secuencias de datos) y de esa forma no tienes que repetir las líneas (de impresión, de lectura de teclado, de carga,...) para cada programa que fueras añadiendo (por un lado el código en sí y por otro los datos).

Para cualquier cosa, ya sabes... ;)
© cacharreo
Avatar de Usuario
merlinkv
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 6391
Registrado: 06 Abr 2015, 23:08
Ubicación: Madrid / Europa del Este
Has thanked: 124 times
Been thanked: 329 times
Contactar:

Re: Compilador de Basic para ZX

Mensaje por merlinkv »

Hola @cacharreo:

Sí, lo que he puesto es un ejemplo hecho en el propio ZX hace ya mucho tiempo y que pensaba pasarlo a ZX Basic aprovechando las ventajas que ofrece.

El caso es que, como digo, es muy simple y se compila bien, pero no consigo que cargue un programa cuando pulso la tecla adecuada, simplemente no carga, se cuelga y no hace nada.

He mirado documentación del ZX Basic y parece que no tiene esa opción de cargar otros ficheros de un disco. Aunque acabo de empezar con ese compilador y lo más seguro es que yo no sepa como.
No sé como será la tercera Guerra Mundial. Pero sí sé como será la cuarta: Con palos y piedras.
Aquí yace un valiente, un temible adversario y un verdadero hombre de honor. Descanse en paz. 21-04-1918
Visita mi Github igual te gusta algo.
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 5875
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1210 times
Been thanked: 2829 times
Contactar:

Re: Compilador de Basic para ZX

Mensaje por cacharreo »

No lo he mirado pero ¿esas sentencias de carga no serían para cargar de cinta?
© cacharreo
Avatar de Usuario
merlinkv
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 6391
Registrado: 06 Abr 2015, 23:08
Ubicación: Madrid / Europa del Este
Has thanked: 124 times
Been thanked: 329 times
Contactar:

Re: Compilador de Basic para ZX

Mensaje por merlinkv »

Bueno, en principio sí, pero ese mismo programa en un disco, me carga los programas que yo quiero sin problemas.

Por ejemplo, en el caso de las +D lo que hacía era cambiar LOAD "PROGRAMA" por LOAD D*"PROGRAMA" y, ya te digo, todo sin problemas.

¿Quizá hay otro compilador con sentencias específicas para manejar ficheros de un disquette? Me refiero a otros ficheros BASIC, no del tipo LOAD "PROGRAMA" CODE.
No sé como será la tercera Guerra Mundial. Pero sí sé como será la cuarta: Con palos y piedras.
Aquí yace un valiente, un temible adversario y un verdadero hombre de honor. Descanse en paz. 21-04-1918
Visita mi Github igual te gusta algo.
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 5875
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1210 times
Been thanked: 2829 times
Contactar:

Re: Compilador de Basic para ZX

Mensaje por cacharreo »

Tienes razón, en el caso del +3DOS no es estrictamente necesario pero con microdrives, +D, etc. sí.
© cacharreo
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 5875
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1210 times
Been thanked: 2829 times
Contactar:

Re: Compilador de Basic para ZX

Mensaje por cacharreo »

No parece que Boriel ZX BASIC soporte el +3DOS.

https://www.boriel.com/forum/showthread ... +from+disk
boriel escribió:Unfortunately not, but maybe there is a library to use the microdrive.
If I find out about something, I will post it here.

Also, if you know how to access the microdrive from ASM I can guide you to create your library.
ZX Basic allows using ASM, so it's possible to create a library for the microdrive.
En el mismo tema, Sergio Chico asegura haber creado una API para el +3DOS pero intuyo que requiere utilizarla en ensamblador.
© cacharreo
Avatar de Usuario
merlinkv
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 6391
Registrado: 06 Abr 2015, 23:08
Ubicación: Madrid / Europa del Este
Has thanked: 124 times
Been thanked: 329 times
Contactar:

Re: Compilador de Basic para ZX

Mensaje por merlinkv »

Sí, estuve leyendo ese artículo, pero requiere tirar de ensamblador y lo que pretendo es hacer algo simple en Basic y poder compilarlo.

Seguiré buscando, igual hay algun compilador que soporte el +3DOS directamente.
No sé como será la tercera Guerra Mundial. Pero sí sé como será la cuarta: Con palos y piedras.
Aquí yace un valiente, un temible adversario y un verdadero hombre de honor. Descanse en paz. 21-04-1918
Visita mi Github igual te gusta algo.
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 5875
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1210 times
Been thanked: 2829 times
Contactar:

Re: Compilador de Basic para ZX

Mensaje por cacharreo »

Como no sé qué hace el cargador, no acabo de comprender la necesidad de utilizar otro BASIC o uno compilado. Si es para mostrar una lista de programas, esperar una tecla y lanzar el programa, con el BASIC convencional debería ser suficiente.
© cacharreo
Avatar de Usuario
jordigahan
Demonio segundo orden
Demonio segundo orden
Mensajes: 1759
Registrado: 06 Sep 2013, 02:17
Has thanked: 3 times
Been thanked: 17 times
Contactar:

Re: Compilador de Basic para ZX

Mensaje por jordigahan »

no entiendo muy bien lo de la linea 150 yo diria que sobra.
yo la quitaria y hubiera hecho algo parecido a esto:

Código: Seleccionar todo

 160  IF INKEY$="1" THEN LOAD "ALIEN8
Responder

Volver a “Consultas”