Modèles de programmes pour démarrer (asMSX)
Table des matières
But de l'article
Cet article présente des modèles de codes source assembleur pour démarrer un programme destiné à être compilé avec asMSX.
Modèle pour créer un exécutable .BIN
Les fichiers .BIN sont exécutables depuis MSX-BASIC
Code ASM :
; squelette de départ pour programme BINAIRE ; exécutable à partir du BASIC MSX ; chargement des étiquettes BIOS ; et variables RAM si version asMSX >= 0.18.5 .BIOS .ORG 0xC000 .BASIC .START depart ; début des données du programme = adresse indiquée par .ORG debut: nop ; remplacer 'nop' par des routines si besoin, peut être supprimé ; point d'entrée du programme indiqué par .START depart: nop ; remplacer 'nop' vos instructions d'initialisation si besoin ; boucle infinie à remplacer par votre code boucle: jr boucle
Modèle pour créer un exécutable .COM
Les fichiers .COM sont exécutables depuis MSX-DOS
Code ASM :
; squelette de départ pour programme MSX-DOS ; chargement des étiquettes BIOS ; et variables RAM si version asMSX >= 0.18.5 .BIOS ; directive MSX-DOS origine = 0100h .MSXDOS ; début des données et point d'entrée du programme = 0100h depart: nop ; remplacer 'nop' par vos instructions d'initialisation si besoin ; boucle infinie à remplacer par votre code boucle: jr boucle
Modèle pour créer un exécutable .ROM (non Megarom)
Les fichiers .ROM sont destinés à être intégrés aux cartouches pour MSX, cependant ils peuvent être exécutés avec différents outils depuis le MSX-BASIC ou le MSX-DOS.
Code ASM :
; squelette de départ pour programme ROM ; chargement des étiquettes BIOS ; et variables RAM si version asMSX >= 0.18.5 .BIOS ; implémentation du code en page 1 ; à modifier selon votre besoin ; .PAGE 0 équivaut à .ORG 0000h ; .PAGE 1 équivaut à .ORG 4000h ; .PAGE 2 équivaut à .ORG 8000h ; .PAGE 3 équivaut à .ORG C000h .PAGE 1 .ROM .START depart ; début des données du programme = adresse indiquée par .PAGE + 16 octets (entête ROM) debut: nop ; remplacer 'nop' par vos instructions d'initialisation si besoin ; point d'entrée du programme indiqué par .START depart: ; search, si page 1 (4000h) est utilisée, ; permet de chercher automatiquement le slot primaire ; et le slot secondaire de la page 2 correspondante (8000h). .search ; boucle infinie à remplacer par votre code boucle: jr boucle
Modèle pour créer un exécutable .ROM (Megarom)
Les fichiers .ROM sont destinés à être intégrés aux cartouches pour MSX, cependant ils peuvent être exécutés avec différents outils depuis le MSX-BASIC ou le MSX-DOS.
Les fichiers Megarom nécessitent que la machine dispose de plus de 128 ko de RAM
Code ASM :
; squelette de départ pour programme MEGAROM ; chargement des étiquettes BIOS ; et variables RAM si version asMSX >= 0.18.5 .BIOS ; implémentation du code en page 1 ; à modifier selon votre besoin ; .PAGE 0 équivaut à .ORG 0000h ; .PAGE 1 équivaut à .ORG 4000h ; .PAGE 2 équivaut à .ORG 8000h ; .PAGE 3 équivaut à .ORG C000h .PAGE 1 .MEGAROM .START depart ; début des données du programme = adresse indiquée par .PAGE + 16 octets (entête ROM) debut: nop ; remplacer 'nop' par vos sous routines si besoin ; point d'entrée du programme indiqué par .START depart: ; search, si page 1 (4000h) est utilisée, ; permet de chercher automatiquement le slot primaire ; et le slot secondaire de la page 2 correspondante (8000h). .search ; boucle infinie à remplacer par votre code boucle: jr boucle