Karoshi MSX Community

Archivo (pre 2018) => Applications | Aplicaciones => Mensaje iniciado por: Jon_Cortazar en 12 de Junio de 2007, 08:11:29 pm



Título: Karoshi's asMSX - MSX Cross Assembler
Publicado por: Jon_Cortazar en 12 de Junio de 2007, 08:11:29 pm
Actualización - asMSX deja de ser freeware y se subastan sus derechos y el código fuente del mismo - subasta en curso (http://cgi.ebay.es/ws/eBayISAPI.dll?ViewItem&item=180648047876)

asMSX v.0.12g

Version: 0.12g
Fecha: 18 de Marzo de 2007
Nombre: asMSX

asMSX es un ensamblador para el procesador Z80 que además incorpora una serie de elementos que facilitan mucho la tarea de programar para MSX. Se trata de un ensamblador cruzado que se ejecuta en ordenadores PC con sistema operativo Windows. Gracias a la velocidad de los actuales ordenadores personales, el ensamblado es prácticamente instantáneo, lo cual supone una ventaja considerable respecto a los ensambladores nativos para MSX. Del mismo modo, no existe ninguna restricción para el tamaño del código fuente y se puede editar con cualquier editor o tratamiento de textos.

Características:
Entre los puntos a destacar de asMSX pueden citarse los siguientes:

  • Soporta todas las instrucciones oficiales del Z80 con la sintaxis de Zilog.
  • Ensambla todas las instrucciones no oficiales documentadas por Sean Young.
  • Incluye además la sintaxis estandarizada del Z80 (acumulador implícito).
  • Compatible con distintos sistemas de numeración (decimal, hexa, octal y binario).
  • Operaciones aritméticas y lógicas incluidas a nivel de código fuente.
  • Soporta números decimales con punto flotante, convertidos a punto fijo.
  • Funciones matemáticas reales: trigonométricas, potenciales, etc.
  • Acepta múltiples ficheros a través de inclusiones, permitiendo su anidado.
  • Inclusión total o parcial de ficheros binarios externos inyectados directamente.
  • Etiquetas locales y generales para el código.
  • Rutinas de la BIOS del MSX predefinidas con sus nombres oficiales.
  • Generación automática de ficheros binarios cargables desde BASIC.
  • Producción automática de archivos ROM.
  • Soporta 4 tipos distintos de megaROM: Konami, Konami SCC, ASCII 8 y 16 KB.
  • Uso de variables numéricas internas del ensamblador.
  • Ensamblado de ficheros COM para MSX-DOS.
  • Exportación de tabla de símbolos (SYM).
  • Impresión de textos indicativos desde el código (TXT).
  • Integración con el debugger de BlueMSX.

Historia

asMSX v.0.12e - 08 de Octubre de 2006
Entre las nuevas características, merecen la pena ser señaladas las siguientes:
  • Soporte nativo para creación de megaROMs, soportando mappers Konami, Konami SCC, ASCII 8 KB y ASCII 16 KB - las instrucciones para gestión de subpáginas y selección de las mismas se han incorporado como pseudoinstrucciones, así que los usuarios no tienen porqué saber cómo funciona el mapeador elegido.
  • Extensión de la función de importación de binarios INCBIN "fichero" SKIP bytes SIZE bytes, para poder cargar partes concretas de ficheros externos.
  • Soporte para variables numéricas internas del ensamblador.
  • Soporte para bucles de repetición REPT n / ENDR.
  • Ensamblado en direcciones lógicas distintas a las físicas: PHASE dirección / DEPHASE
  • Definición del símbolo $ como valor de la posición de ensamblado (PC).
  • Integración con el debugger de BlueMSX: BREAKPOINT, DEBUG
  • Localización automática de la segunda página de ROMs: SEARCH

asMSX v.0.11c - 30 de Diciembre de 2004
Nueva versión de mantenimiento, con muy pocos cambios en el núcleo del ensamblador, pero acompañado de nuevas herramientas de apoyo a la programación y dos juegos completos con su código fuente, así como otros ejemplos más sencillos.

asMSX v.0.10c - 24 de Agosto de 2004
Versión completa y operativa que soluciona todos los problemas y errores de la primera versión pública. Además, incorpora muchas ideas de otro ensamblador que nunca se distribuyó, Rz80. No se incluye una lista de cambios y adiciones porque sería muy larga, puesto que el núcleo interno del programa ha sido reescrito desde cero.

Rz80 v.0.01 - varias versiones a lo largo de 2001 (versión privada)
Predecesor del asMSX actual y sucesor del asMSX original, supone un cambio de perspectiva respecto a la forma de entender un ensamblador. No fue nunca publicado, ya que el desarrollo no superó nunca un estado de beta-version. Sin embargo, todos los juegos presentados por Karoshi Corporation para los concursos MSXdev'03 y MSXdev'04 fueron desarrollados con esta herramienta.

asMSX v.0.01 - varias versiones a lo largo de 2000 (versión privada)
El primer ensamblador para el microprocesador Z80 que programó, adaptación de un ensamblador para Nintendo Gameboy y Gameboy Color, GAL, por lo que heredó varios problemas y errores. Como primer intento no estuvo mal. De hecho, José Vicente Masó, WYZ, ha utilizado este programa hasta la aparición de la nueva versión. Gracias a él se pudieron conocer los principales errores del núcleo.

GAL v.0.99 - verano de 1999 (versión privada)
Primera incursión de Eduardo Robsy en el mundo de los ensambladores: un ensamblador completo para el extraño procesador de la consola Nintendo Gameboy, una especie de Z80 reducido. El nombre proviene de las siglas: Gameboy Assembler Lite. Además de ser plenamente operativo, le sirvió para aprender algunos de los entresijos de los procesadores gramaticales y los escáneres léxicos, y la forma más conveniente de combinarlos en lenguaje C. Una auténtica reliquia, sólo apto para coleccionistas.