Pratique de l\'assembleur sur MSX

Les compilateurs

Les compilateurs assembleur



Il existe plusieurs compilateurs pour assembleur Z80, soit fonctionnant sur MSX, soit fonctionnant sur une machine non MSX, ces derniers étant appelés "cross-compiler" ou "cross-compilateur" (en franglais).

Voici quelques-uns des compilateurs pour langage assembleur :

Assembleurs sur MSX



Cross assembleurs



Grâce à la puissance des ordinateurs actuels, l'assemblage est pratiquement instantané, ce qui constitue un avantage considérable par rapport aux assembleurs MSX natifs. De même, il n'y a aucune restriction sur la taille du code source et il peut être modifié avec n'importe quel éditeur ou traitement de texte.


Pour plus d'informations, voir ce sujet sur les cross-assembleurs

D'autre part cette page fourni un nombre impressionnant d'outils pour le Z80.

Assembleur en ligne



Il existe également cet assembleur Z80 en ligne :
clrhome.org

asMSX



AsMSX est un cross assembleur qui a été développé en langage C par Eduardo A. Robsy Petrus à l'origine en 2000.
Comme son nom l'indique il est spécialisé pour générer des exécutables (.BIN, .ROM, .COM) sur MSX, ce qui est assez rare pour être souligné.

Les sources étant disponibles le compilateur a évolué en passant par différents mainteneurs et donnant lieu à des versions divergentes.
Une version est disponible dans notre village avec quelques corrections et améliorations.

Manuel asMSX



Vous trouverez ici le Manuel asMSX v0.18.5

Versions disponibles



Ci-dessous asMSX disponible en version 0.18.5 pour Linux Ubuntu et Windows 64 bits :

asmsx_v_0_18_5_ubuntu64
asmsx_v_0_18_5_windows64

Caractéristiques



Parmi les points forts de cette version d’asMSX, on peut citer les suivants :

  • supporte toutes les instructions officielles du Z80 avec la syntaxe de ZILOG.
  • assemble toutes les instructions non-officielles documentées par Sean Young
  • comprend la syntaxe de la norme Z80 (accumulateur implicite)
  • compatible avec différents systèmes de numération (décimal, hexadécimal, octal et binaire)
  • opérations arithmétiques et logiques, y compris au niveau des codes source
  • prise en charge des nombres décimaux à virgule flottante, converti en virgule fixe
  • fonctions mathématiques réelles : trigonométriques, puissances, etc.
  • accepte de multiples fichiers via des inclusions
  • inclusion de tout ou partie de ces fichiers binaires
  • étiquettes locales ou générales pour le code source
  • déclaration interne des étiquettes routines du Bios du MSX avec leur nom officiel
  • déclaration interne des étiquettes des variables système du MSX avec leur nom officiel
  • génération automatisée de fichiers binaires exécutables depuis le Basic
  • production automatisée de fichiers ROM
  • supporte 4 types distincts de megaROM : Konami, Konami SCC, ASCII 8 bits et 16 bits
  • utilisation de variables numériques à l'intérieur de l'assembleur
  • assemblage de fichiers COM (pour MSX-DOS)
  • export de la table des symboles
  • impression de textes indicatifs depuis le code
  • intégration avec le débogueur de BlueMSX
  • amélioration de l'assemblage conditionnel
  • génération de fichiers CAS ou WAV pouvant être chargés sur MSX

Il manque pour l'instant la possibilité de créer des Macros.
Cette page a été vue 11390 fois