Un compilador de ZX Spectrum BASIC
Moderador: Sir Cilve Sinclair
- oblo
- Sabreman
- Mensajes: 327
- Registrado: Lun Feb 07, 2011 9:53 am
Re: Un compilador de ZX Spectrum BASIC
Thank you LCD and many thanks for your BorIDE
I used to use trackers so they won't be a problem for me. But what you were using (interrupt driver as binary) is way too far from my programming knowledge Could you give some advice about some documentation, book or else to implement AY music and merge it with the ZXBasic?
Thanks you very much and regards
I used to use trackers so they won't be a problem for me. But what you were using (interrupt driver as binary) is way too far from my programming knowledge Could you give some advice about some documentation, book or else to implement AY music and merge it with the ZXBasic?
Thanks you very much and regards
-
- rst 0
- Mensajes: 8
- Registrado: Mar Jul 05, 2011 12:47 am
Re: Un compilador de ZX Spectrum BASIC
oblo escribió:Thank you LCD and many thanks for your BorIDE
I used to use trackers so they won't be a problem for me. But what you were using (interrupt driver as binary) is way too far from my programming knowledge Could you give some advice about some documentation, book or else to implement AY music and merge it with the ZXBasic?
Thanks you very much and regards
Thank you about your opinion about BorIDE. Yes, it will be improved...
I used my own IntMake Program to create all Interrupt tables and initialisation routines. This was made over 10 years ago. Look here:
http://www.worldofspectrum.org/infoseek ... id=0022992. It was in Outlet magazine, so you can download it and use it with a Emulator.
I use it on real Spectrum, but it is planed to include all its functions in BorIDE to make it easier to use. At moment tap must be exported and merged with compiled programs.
I used it also in my "Indian Patience" in 1996 by the way.
http://www.worldofspectrum.org/infoseek ... id=0017137
Hope, this helps a little bit
- oblo
- Sabreman
- Mensajes: 327
- Registrado: Lun Feb 07, 2011 9:53 am
Re: Un compilador de ZX Spectrum BASIC
Thanks, I'll give it a try and it's great news if you implement it in BorIDE (I'm waiting for a new release!)
Cheers
Cheers
-
- rst 0
- Mensajes: 8
- Registrado: Mar Jul 05, 2011 12:47 am
Re: Un compilador de ZX Spectrum BASIC
oblo escribió:Thanks, I'll give it a try and it's great news if you implement it in BorIDE (I'm waiting for a new release!)
Cheers
Okay, it depends on my job and overtime hours, but I hope, I can finish the Interrupt maker for BorIDE very soon.
- falvarez
- Sabreman
- Mensajes: 375
- Registrado: Mar Abr 17, 2007 12:28 am
- Ubicación: Madrid
- Contactar:
Re: Un compilador de ZX Spectrum BASIC
¡Buenas!
Después de tantos años, al escuchar el último podcast de Retro Entre Amigos me picó el gusanillo de probar ZX BASIC.
Me he encontrado que no me funcionaba hasta que me he bajado la librería PLY y la he descomprimido en el mismo directorio de ZX BASIC. ¿Eso es normal? No me ha parecido ver nada en la documentación.
Según escuché en el programa, me pareció entender que era 100% compatible con el BASIC de Sinclair, así que mi primer impulso ha sido recuperar mi cutre zxsnake y ver que no compilaba. Curiosamente, el mismo zxsnake está disponible como ejemplo en el wiki de ZX BASIC, lo que me ha hecho mucha ilusión, y he visto que algunas líneas estaban modificadas. Así que imagino que la compatibilidad no es 100%.
En cualquier caso, muchas gracias a Boriel por crear esta herramienta que seguro que ha ayudado y ayudará a que muchas personas expresen su creatividad en forma de programa para el ZX Spectrum.
Saludos.
Después de tantos años, al escuchar el último podcast de Retro Entre Amigos me picó el gusanillo de probar ZX BASIC.
Me he encontrado que no me funcionaba hasta que me he bajado la librería PLY y la he descomprimido en el mismo directorio de ZX BASIC. ¿Eso es normal? No me ha parecido ver nada en la documentación.
Según escuché en el programa, me pareció entender que era 100% compatible con el BASIC de Sinclair, así que mi primer impulso ha sido recuperar mi cutre zxsnake y ver que no compilaba. Curiosamente, el mismo zxsnake está disponible como ejemplo en el wiki de ZX BASIC, lo que me ha hecho mucha ilusión, y he visto que algunas líneas estaban modificadas. Así que imagino que la compatibilidad no es 100%.
En cualquier caso, muchas gracias a Boriel por crear esta herramienta que seguro que ha ayudado y ayudará a que muchas personas expresen su creatividad en forma de programa para el ZX Spectrum.
Saludos.
-
- Sabreman
- Mensajes: 351
- Registrado: Lun May 28, 2007 9:55 am
- Ubicación: Tenerife
- Contactar:
Re: Un compilador de ZX Spectrum BASIC
Eres tú el autor?? Wow!
No recuerdo si fue en este mismo foro en el hilo de ZX Basic te estaba buscando para pedir permiso para convertirlo. No recuerdo si fuiste tú u otra persona quien me dijo que si (el listado debería tener el nombre del autor original).
Me alegro que te guste.
Tuve que ponerle algunos retardos (un beep entre ellos) porque iba muy rápido.
ZX Basic intenta acercarse al sInclair Basic, pero tiene características extendidas.
Ya hay quien me ha dicho que divida el compilador en dos:
Uno para compilar el Basic de Sinclair con la máxima compatibilidad posible y otro para la sintaxis extendida.
Pero me daría pena y sería doble trabajo.
Cambian otras cosas, pero en principio en los ejemplos se ve.
Aún estamos mejorando cosas (ya hay gente que está colaborando activamente en subrutinas y testing), como la generación de un código más eficiente. Vamos a ver...
No recuerdo si fue en este mismo foro en el hilo de ZX Basic te estaba buscando para pedir permiso para convertirlo. No recuerdo si fuiste tú u otra persona quien me dijo que si (el listado debería tener el nombre del autor original).
Me alegro que te guste.
Tuve que ponerle algunos retardos (un beep entre ellos) porque iba muy rápido.
ZX Basic intenta acercarse al sInclair Basic, pero tiene características extendidas.
Ya hay quien me ha dicho que divida el compilador en dos:
Uno para compilar el Basic de Sinclair con la máxima compatibilidad posible y otro para la sintaxis extendida.
Pero me daría pena y sería doble trabajo.
Cambian otras cosas, pero en principio en los ejemplos se ve.
Aún estamos mejorando cosas (ya hay gente que está colaborando activamente en subrutinas y testing), como la generación de un código más eficiente. Vamos a ver...
- falvarez
- Sabreman
- Mensajes: 375
- Registrado: Mar Abr 17, 2007 12:28 am
- Ubicación: Madrid
- Contactar:
Re: Un compilador de ZX Spectrum BASIC
Buenas.
No hace falta pedir permiso para usar el listado. Para eso lo publiqué con fines didácticos en Magazine ZX: https://magazinezx.speccy.org/10/basic.html
¿Lo de que se necesita PLY es normal, o es cosa de mi sistema operativo?
La verdad es que mi idea era compilar los juegos en BASIC que hicimos en Compiler Software. Pero si hay que adaptar el código, la cosa no es tan inmediata como yo pensaba
Muchas gracias por vuestro trabajo. Un saludo.
No hace falta pedir permiso para usar el listado. Para eso lo publiqué con fines didácticos en Magazine ZX: https://magazinezx.speccy.org/10/basic.html
¿Lo de que se necesita PLY es normal, o es cosa de mi sistema operativo?
La verdad es que mi idea era compilar los juegos en BASIC que hicimos en Compiler Software. Pero si hay que adaptar el código, la cosa no es tan inmediata como yo pensaba
Muchas gracias por vuestro trabajo. Un saludo.
-
- Sabreman
- Mensajes: 351
- Registrado: Lun May 28, 2007 9:55 am
- Ubicación: Tenerife
- Contactar:
Re: Un compilador de ZX Spectrum BASIC
Bueno, realmente es un "fallo" mío, porque no suelo empaquetar los módulos python externos al compilador en la distribuciones que no son de windows. Ya lo he arreglado.
Puedes descargarte de nuevo la versión 1.6.9 (o posterior) desde aquí y decirme si te funciona?
http://www.boriel.com/wiki/en/index.php ... nt_Version
Habrá que adaptar algún código, pero normalmente no es complicado. El principal escollo es que cada IF debe de cerrarse con un :END IF
Lo demás depende.
Si quieres ver listados de ejemplo, aquí tienes algunos:
http://www.boriel.com/wiki/en/index.php ... e_Programs
Puedes descargarte de nuevo la versión 1.6.9 (o posterior) desde aquí y decirme si te funciona?
http://www.boriel.com/wiki/en/index.php ... nt_Version
Habrá que adaptar algún código, pero normalmente no es complicado. El principal escollo es que cada IF debe de cerrarse con un :END IF
Lo demás depende.
Si quieres ver listados de ejemplo, aquí tienes algunos:
http://www.boriel.com/wiki/en/index.php ... e_Programs
- wilco2009
- Freddy Hardest
- Mensajes: 543
- Registrado: Lun Sep 17, 2012 9:40 am
- Ubicación: Valencia
Re: Un compilador de ZX Spectrum BASIC
Boriel escribió:Bueno, realmente es un "fallo" mío, porque no suelo empaquetar los módulos python externos al compilador en la distribuciones que no son de windows. Ya lo he arreglado.
Puedes descargarte de nuevo la versión 1.6.9 (o posterior) desde aquí y decirme si te funciona?
http://www.boriel.com/wiki/en/index.php ... nt_Version
Habrá que adaptar algún código, pero normalmente no es complicado. El principal escollo es que cada IF debe de cerrarse con un :END IF
Lo demás depende.
Si quieres ver listados de ejemplo, aquí tienes algunos:
http://www.boriel.com/wiki/en/index.php ... e_Programs
Con --sinclair se hace bastante más compatible, ¿no es así?. Lo que no se es si sigue haciendo falta cerrar los IF con END IF
-
- Sabreman
- Mensajes: 351
- Registrado: Lun May 28, 2007 9:55 am
- Ubicación: Tenerife
- Contactar:
Re: Un compilador de ZX Spectrum BASIC
sigue haciendo falta.
Ese problema es realmente difícil de arreglar.
Si queremos que el IF admita varias lineas como en otros lenguajes, no se puede arreglar fácilmente. Es un límite de la herramienta (yacc y derivados) que solo admite ciertas gramáticas.
Una de las posibilidades es cambiar toda la parte de parseo del compilador (un trabajo titánico, pero posible). A ver si encuentro un hueco. Esto lo tengo en la "cola de TODOs" desde hace años...
Ese problema es realmente difícil de arreglar.
Si queremos que el IF admita varias lineas como en otros lenguajes, no se puede arreglar fácilmente. Es un límite de la herramienta (yacc y derivados) que solo admite ciertas gramáticas.
Una de las posibilidades es cambiar toda la parte de parseo del compilador (un trabajo titánico, pero posible). A ver si encuentro un hueco. Esto lo tengo en la "cola de TODOs" desde hace años...
-
- Sabreman
- Mensajes: 351
- Registrado: Lun May 28, 2007 9:55 am
- Ubicación: Tenerife
- Contactar:
Re: Un compilador de ZX Spectrum BASIC
Hola!
He sacado la versión 1.7.0 que ya admite READ, DATA, RESTORE y llamadas a SUB sin parámetros (lo que sería como "expandir la sintaxis). Así: mysub 1, 4, a-5 (por ejemplo)
Se puede descargar donde siempre:
http://www.boriel.com/wiki/en/index.php ... IC:Archive
He sacado la versión 1.7.0 que ya admite READ, DATA, RESTORE y llamadas a SUB sin parámetros (lo que sería como "expandir la sintaxis). Así: mysub 1, 4, a-5 (por ejemplo)
Se puede descargar donde siempre:
http://www.boriel.com/wiki/en/index.php ... IC:Archive
- radastan
- Phantomas
- Mensajes: 2232
- Registrado: Lun May 07, 2007 5:34 pm
- Contactar:
Re: Un compilador de ZX Spectrum BASIC
¡Descargando!
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
-
- Sabreman
- Mensajes: 351
- Registrado: Lun May 28, 2007 9:55 am
- Ubicación: Tenerife
- Contactar:
Re: Un compilador de ZX Spectrum BASIC
Wow, realmente no había actualizado esto.
Ya está (hace más de un año?) la rama 1.8.x (concretamente la última versión es la 1.8.10).
Quizá el cambio más notable de esta versión es que sí, finalmente ya se admiten IF ... THEN en una linea sin tener que poner END IF al final, con lo cual la compatibilidad con antiguos programas BASIC del ZX Spectrum es muy alta!
Se puede descargar, como siempre, desde aquí:
http://boriel.com/wiki/en/index.php/ZX_BASIC:Archive
Ya está (hace más de un año?) la rama 1.8.x (concretamente la última versión es la 1.8.10).
Quizá el cambio más notable de esta versión es que sí, finalmente ya se admiten IF ... THEN en una linea sin tener que poner END IF al final, con lo cual la compatibilidad con antiguos programas BASIC del ZX Spectrum es muy alta!
Se puede descargar, como siempre, desde aquí:
http://boriel.com/wiki/en/index.php/ZX_BASIC:Archive
¿Quién está conectado?
Usuarios navegando por este Foro: Amazon [Bot] y 21 invitados