Karoshi MSX Community

MSX Actualidad => General => Mensaje iniciado por: manolito74 en 05 de Noviembre de 2010, 12:01:59 am



Título: Duda formato de instrucción en AsMSX
Publicado por: manolito74 en 05 de Noviembre de 2010, 12:01:59 am
Hola a todos:

Estaba intentando ensamblar un programa usando el AsMSX. Estaba simplemente probando pero según me ha comentado su autor, muy amablemente, el formato del ensamblador RSC digamos que no se lleva bien con el AsMSX.

He quitado los dos puntos a las etiquetas, quitado los números de línea, cambiado () por [] y las direcciones hexadecimales con formato &H las he cambiado por $. No obstante, el programa sigue sin funcionar. Tengo esta línea:

B0  CALL PRINT

Donde BO y PRINT son dos etiquetas. El AsMSX protesta y me dice que eso no puede ser... ¿Cómo adapto esa línea para que funcione en AsMSX?.

Gracias y Saludetes. ;-)


Título: Re: Duda formato de instrucción en AsMSX
Publicado por: pitpan en 05 de Noviembre de 2010, 02:37:09 am
Para definir una etiqueta tienes que ponerle dos puntos, así que la línea te quedaría así:

B0: call PRINT

Y donde defiinas la etiqueta print, asegúrate también de ponerle :

Que aproveche.


Título: Re: Duda formato de instrucción en AsMSX
Publicado por: manolito74 en 05 de Noviembre de 2010, 07:38:40 pm
Me again... (Joer, como me está costando esto...)

Vale, lo de las etiquetas tienes razón LLEVAN : (es que me había liado con lo que me dijiste de que EQU no lleva :, por ejemplo BUFFER  EQU 52000) MEA CULPA

No obstante, he tenido que cambiar la palabra-etiqueta PRINT por IMPRI (ya que supongo que PRINT al ser una palabra reservada se hará un lío el pobrecito AsMSX...)

Ahora, los únicos errores que me quedan por solventar, los tengo con este tipo de instrucciones:

LD A, "-" ¿Cómo debo poner este tipo de instrucciones?.


Y la instrucción DEFM " BYTES" , ¿cómo debo modificarla?.

Gracias de nuevo y saludetes.


Título: Re: Duda formato de instrucción en AsMSX
Publicado por: pitpan en 06 de Noviembre de 2010, 06:01:56 pm
Para utilizar un carácter como valor, debes usar comilla simple:

LD A,'-'

Y el DEFM puedes substituirlo directamente por DB

DB "BYTES"

Quédate con la diferencia: comilla simple para un único carácter (char), comillas para textos (strings).

Con esto ya debería ensamblar sin problemas.