zmakebas no convierte bien los DEF FN
Moderador: Sir Cilve Sinclair
- programandala.net
- Manic Miner
- Mensajes: 210
- Registrado: Mié Ago 04, 2010 9:20 pm
- Ubicación: España
- Contactar:
zmakebas no convierte bien los DEF FN
Recientemente he descubierto que zmakebas no traduce bien las definiciones de funciones. Cualquier intento de llamada a una función produce el error de BASIC "Q Parameter error". Editar la línea en que está el DEF FN con el editor del sistema, sin hacer cambios, soluciona el problema.
Bastó examinar un TAP creado por zmakebas, usando un editor hexadecimal, para ver dónde estaba el fallo: En la representación interna de los parámetros solo están sus nombres, no los cinco octetos que deben ir a continuación de cada uno para guardar sus valores durante la ejecución de la función (tanto números como cadenas).
¿Alguien lo había notado?
Tengo instalado el paquete de Raspbian/Debian. Es la versión más reciente que existe de zmakebas, la 1.2. Me he bajado las fuentes para echar un vistazo.
Mientras, está la alternativa de BAS2TAP, aunque carece de algunas funcionalidades útiles de zmakebas.
Bastó examinar un TAP creado por zmakebas, usando un editor hexadecimal, para ver dónde estaba el fallo: En la representación interna de los parámetros solo están sus nombres, no los cinco octetos que deben ir a continuación de cada uno para guardar sus valores durante la ejecución de la función (tanto números como cadenas).
¿Alguien lo había notado?
Tengo instalado el paquete de Raspbian/Debian. Es la versión más reciente que existe de zmakebas, la 1.2. Me he bajado las fuentes para echar un vistazo.
Mientras, está la alternativa de BAS2TAP, aunque carece de algunas funcionalidades útiles de zmakebas.
Marcos Cruz (programandala.net)
- antoniovillena
- Nonamed
- Mensajes: 1164
- Registrado: Dom Ene 09, 2011 8:55 am
Re: zmakebas no convierte bien los DEF FN
Yo tengo un fork del zmakebas y más o menos sé cómo funciona el código fuente. Si no te importa pon un programa de ejemplo para que pueda detectar el bug. El enlace al código fuente de mi fork es este:
http://sourceforge.net/p/emuscriptoria/ ... ZMakeBas.c
http://sourceforge.net/p/emuscriptoria/ ... ZMakeBas.c
- antoniovillena
- Nonamed
- Mensajes: 1164
- Registrado: Dom Ene 09, 2011 8:55 am
Re: zmakebas no convierte bien los DEF FN
Vale, con este simple programa me muestra el error, lo estoy investigando.antoniovillena escribió:Yo tengo un fork del zmakebas y más o menos sé cómo funciona el código fuente. Si no te importa pon un programa de ejemplo para que pueda detectar el bug. El enlace al código fuente de mi fork es este:
http://sourceforge.net/p/emuscriptoria/ ... ZMakeBas.c
Código: Seleccionar todo
10 DEF FN r(x)= INT (x+O.5)
20 PRINT FN r(2.9)
- antoniovillena
- Nonamed
- Mensajes: 1164
- Registrado: Dom Ene 09, 2011 8:55 am
Re: zmakebas no convierte bien los DEF FN
Ya he arreglado el bug. La última versión está aquí (es el mismo enlace de arriba, si quieres ponlo en marcadores porque es donde estará siempre la última versión del ZMakeBas):
http://sourceforge.net/p/emuscriptoria/ ... ZMakeBas.c
http://sourceforge.net/p/emuscriptoria/ ... ZMakeBas.c
- programandala.net
- Manic Miner
- Mensajes: 210
- Registrado: Mié Ago 04, 2010 9:20 pm
- Ubicación: España
- Contactar:
Re: zmakebas no convierte bien los DEF FN
Muchas gracias. Voy a probarlo.antoniovillena escribió:Ya he arreglado el bug. La última versión está aquí (es el mismo enlace de arriba, si quieres ponlo en marcadores porque es donde estará siempre la última versión del ZMakeBas):
Sabía que tenías una versión propia, y la tenía descargada en mi archivo, pero estaba usando la 1.2 que viene con Raspbian/Debian porque, si no estoy equivocado, la tuya está basada en la versión de 1998, que debe de ser la 1.0 o 1.1.
Este fallo es importante y habría que corregirlo en la última versión disponible en las distros que lo incluyen. Pero, por lo que sé, este programa ya no es mantenido por su autor y no hay un único lugar en que esté la fuente original, ¿no?
Marcos Cruz (programandala.net)
- antoniovillena
- Nonamed
- Mensajes: 1164
- Registrado: Dom Ene 09, 2011 8:55 am
Re: zmakebas no convierte bien los DEF FN
Pues no tengo ni idea de qué versión partí, supongo que busqué la más moderna pero lo mismo no estaba disponible. Como trabajo en un repositorio, en este enlace está la primera versión que subí:
http://sourceforge.net/p/emuscriptoria/ ... ZMakeBas.c
Puedes compararla con la versión que tienes para ver de cuál se trata.
http://sourceforge.net/p/emuscriptoria/ ... ZMakeBas.c
Puedes compararla con la versión que tienes para ver de cuál se trata.
- antoniovillena
- Nonamed
- Mensajes: 1164
- Registrado: Dom Ene 09, 2011 8:55 am
Re: zmakebas no convierte bien los DEF FN
Esta es la 1.2 de zmakebas.
https://github.com/catseye/zmakebas/blo ... zmakebas.c
Edito: Comparando los archivos concluyo que partí de la versión 1.2
https://github.com/catseye/zmakebas/blo ... zmakebas.c
Edito: Comparando los archivos concluyo que partí de la versión 1.2
¿Quién está conectado?
Usuarios navegando por este Foro: Google [Bot] y 22 invitados