CODINGAMSLIVE ★ AMSLIVE n°02 - CHOISIR SON ASSEMBLEUR : DAMS ★

AMSLIVE n°02 - Choisir Son AssembleurCoding Amslive

Pour choisir un logiciel, on aimerait connaître ce qu'il vaut. Mais ses qualités et ses défauts ne se révèlent qu'après une longue utilisation. Alors laissez-moi vous faire profiter de mon expérience de DAMS du monde. (Suivront bientôt des articles sur les autres assembleurs)

L'EDITEUR

C'est lui qui vous permet d'entrer votre programme, appelé source (au masculin, même si votre routine n'est pas couillue). Assez déroutant au début, il se montre bon. DAMS utilisant des routines système pour lire le clavier, des KEY DEF et SPEED KEY bien placés permettront de résoudre de menus problèmes : pavé numérique, lenteur du curseur (surtout pour aller corriger des commentaires automatiquement tabulationnés à perpète et se déplacer dans son source).

La place réservée aux labels est assez courte, mais cela ne gênera pas ceux qui utilisent des laconiques LOOP ou encore PROUT.

A noter qu'on peut entrer dans son source à l'emplacement d'un label en désignant les premières lettres de celui-ci. Ceci implique un petit désagrément : si un label LINE_DIS se trouve avant un label UNE, vous ne pouvez pas atteindre directement ce dernier.
Vous pouvez COUPER/COLLER, et les fonctions de recherche/remplacement sont assez efficaces. La plupart des erreurs de frappes son repérées, c'est toujours plus confortable a corriger sur le coup qu'à l'assemblage.

Le source est partiellement codé non lisible en tant que texte, il occupe environ 7 à 9 fois plus de place que le code machine qu'il va générer.

L'ASSEMBLEUR

Il est un peu lent.
Une "table de symbole" est créée table de correspondance entre le nom des labels et leurs adresses réelles. D'ailleurs ces adresses ne dépendent pas de l'adresse d'assemblage.

Exemple :

ORG #C000 TOURNE JP TOURNE

assemblé en #4000 donnera :

#4000 #C3
#4001 #00
#4002 #C0

DAMS gère les sources répartis en plusieurs fichiers. Dans les expressions algébriques, qui peuvent êtres assez complexes, les règles de priorités des opérateurs mathématiques ne sont pas respectées. 1+2*3 donnera 9.
Des pseudo-instructions, dont une conditionnelle, permettent que des parties du source ne soient assemblées.

LE MONITEUR

Où l'on peut désassembler et lister à gogo les RAMs et les ROMs (le résultat est joignable ou non dans le source). Il n'y a pas de fonction catalogue. Le retour au basic pour utiliser CAT doit être réfléchi. On ne peut que charger des sources, et l'enregistrement du code machine semble merdouiller.
Outre les commandes classiques, il y en a une superbe :

LA TRACE. RECTA !

Il est possible se suivre pas à pas l'évolution du programme, tous les registres étant affichés (seul R ne peut pas évoluer de la façon qu'il le ferait en "réel"). Vous pourrez, après avoir charger les registres, observer le résultat d'instructions inconnues de DAMS ou de vous.

DAMS vérifie les instructions, histoire qu'aucune ne lui écrive dessus. Le plantage est quand même possible, en sélectionnant une bank à l'endroit dans lequel s'exécutait DAMS, par exemple.

On peut aussi jongler avec la trace rapide (pour les boucles, les routines en ROM...) qui effectue une vérification mais n'affiche pas le contenu des registres et n'attend pas l'appui d'une touche pour passera l'instruction suivante. Tout cela est assez formidable.

CONCLUSION

DAMS offre beaucoup avec ses 10 ko relogeables partout en RAM centrale, ce qui explique que ce logiciel de 85 (pardon, 1985) soit encore utilisé par les CPCiens actuels. A signaler un bug gênant : l'appui de la touche ESC provoque un plantage !
Et comme l'aurait dit mon petit-fils si Pierre Dac n'y avait pas pensé avant : il vaut mieux prendre ses désirs pour des réalités que son slip pour Une tasse à café.

AMSLIVE n°2

★ ANNÉE: ???
★ AUTEUR: MADRAM

Page précédente : AMSLIVE n°02 - Balayage Video

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Coding » AMSLIVE n°03 - Creation Sonore
» Coding » AMSLIVE n°15 - PPI / PSG
» Coding » AMSLIVE n°07 - INITIATION ASSEMBLEUR : LES TABLES
» Coding » AMSLIVE n°04 - Asic - Scrollhard
» Coding » AMSLIVE n°04 - Initiation Au Soundtracker
» Coding » AMSLIVE n°03 - CPC Plus - Ssn
Je participe au site:

» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop
Page créée en 859 millisecondes et consultée 2413 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.