Autor Tema: bug en asMSX?  (Leído 3857 veces)

0 Usuarios y 1 Visitante están viendo este tema.

alucardX

  • Karoshi Lover
  • ***
  • Mensajes: 102
  • MSX, so say we all!!
    • lieutenant marmitakus
bug en asMSX?
« en: 24 de Octubre de 2012, 04:15:02 pm »
Hola amiguitos:

Cuando utilizo asMSX en Linux (compilado desde fuentes), siempre me da un error de munmap_chunk(): invalid pointer al incluir cualquier otro fuente en mi codigo:

.include "tools/depack.asm"

Pensaba que era un error de mi glibc, pero he probado en tres linux diferentes (32 y 64 bits, ubuntu, fedora y archlinux) y siempre falla ;-(
Podeis confirmar si a vosotros tb os pasa, o solo usais asMSX en Windows?

Un saludote
Iban Nieto - Viper MK II pilot
find me on twitter, facebook, tumblr

theNestruo

  • Karoshi Lover
  • ***
  • Mensajes: 236
    • Email
Re: bug en asMSX?
« Respuesta #1 en: 24 de Octubre de 2012, 07:03:43 pm »
Yo sólo lo utilizo en Windows y tengo dos tipos de errores frecuentes:
- El compilador deja de responder al llegar a algún include: lo soluciono con el botón de quitar espacios al final de las líneas o, cuando eso no funciona, quitando el tabulador inicial a línea del include (o poniéndoselo de nuevo si lo tenía quitado)
- El compilador da errores por referencias inválidas (que sí son válidas): aquí no he encontrado una solución que me funcione siempre, así que quito código comentado (me suele dar cuando comento código) o añado algún nop por ahí y luego cuando toque otra cosa lo quito a ver si ya deja de dar.

Un saludo, ¡y suerte!
theNestruo."Old BASIC programmers never die; they GOSUB but never RETURN."

nenefranz

  • Karoshi Fan
  • **
  • Mensajes: 67
Re: bug en asMSX?
« Respuesta #2 en: 25 de Octubre de 2012, 12:32:27 am »

Yo también uso únicamente la versión windows (en windows XP). El único error extraño que me da a veces es el mismo que a theNestruo ... la referencias inválidas que no lo son.
También lo resuelvo con NOP's. Al final de fichero .asm principal añado el siguiente código:

Código: [Seleccionar]

.REPT 0
nop
.ENDR


Por defecto el .rept está 0, pero cuando me da algún error de referencia no válida, y estoy seguro que debería funcionar,
voy cambiando el número a 8, 16 , 32 ... voy probando con diferentes números hasta que me vuelve a compilar sin problemas.


alucardX

  • Karoshi Lover
  • ***
  • Mensajes: 102
  • MSX, so say we all!!
    • lieutenant marmitakus
Re: bug en asMSX?
« Respuesta #3 en: 25 de Octubre de 2012, 12:00:58 pm »
- El compilador deja de responder al llegar a algún include: lo soluciono con el botón de quitar espacios al final de las líneas o, cuando eso no funciona, quitando el tabulador inicial a línea del include (o poniéndoselo de nuevo si lo tenía quitado)

Pues ésto es lo primero que voy a probar, thx por el tip!
Iban Nieto - Viper MK II pilot
find me on twitter, facebook, tumblr

theNestruo

  • Karoshi Lover
  • ***
  • Mensajes: 236
    • Email
Re: bug en asMSX?
« Respuesta #4 en: 25 de Octubre de 2012, 02:21:58 pm »
De hecho, el error que te da a ti, si no me equivoco, es exactamente éste: http://code.google.com/p/asmsx-license-gpl/issues/detail?id=1

Hay un parche que lo soluciona.
Si sabes cómo hacerlo (yo no) puedes bajarte el código, aplicar dicho parche y recompilarte el asmsx.
theNestruo."Old BASIC programmers never die; they GOSUB but never RETURN."

alucardX

  • Karoshi Lover
  • ***
  • Mensajes: 102
  • MSX, so say we all!!
    • lieutenant marmitakus
Re: bug en asMSX?
« Respuesta #5 en: 25 de Octubre de 2012, 04:14:49 pm »
Pa'matarme... lo podría haber mirado ahí antes de preguntar nada  >:(

Es un diff, así que se puede parchear fácilmente, recompilar y volver a hacer la prueba.

De nuevo, muchas gracias por vuestra ayuda!
Iban Nieto - Viper MK II pilot
find me on twitter, facebook, tumblr

alucardX

  • Karoshi Lover
  • ***
  • Mensajes: 102
  • MSX, so say we all!!
    • lieutenant marmitakus
Re: bug en asMSX?
« Respuesta #6 en: 25 de Octubre de 2012, 04:59:56 pm »
Comprobado el patch y funciona correctamente. Para los que no sepan hacerlo, tan solo hay que bajar el parche y los fuentes del asMSX. Despues descomprimirlos los fuentes y antes de compilarlos, copiamos el parche en el mismo nivel de directorio:

asMSX <-- directorio descomprimido
asMSX.zip <-- paquete asMSX comprimido
patch <-- fichero del parche tal y como baja de la web

Ejecutamos la orden de parcheo con "patch":
$ patch -p1 < patch
patching file asMSX/src/parser1.l

Compilamos y probamos el ejecutable que esta en asMSX/src/asmsx. Recomiendo copiar el nuevo binario al $PATH para que siempre os funcione con el nuevo ejecutable parcheado.

Un saludote y gracias a todos por vuestra ayuda (y al usuario que hizo el parche)
Iban Nieto - Viper MK II pilot
find me on twitter, facebook, tumblr