★ CODING ★ LA BIBLE DU CPC 6128 ★ |
La bible du CPC 6128 : 5 Le moniteur (!) |
Le moniteur Certainement qu'un bon nombre d'entre vous brûlent de découvrir ce que renferme précisément le listing de la ROM, qui n'est rien d'autre que le contenu symbolique du système d'exploitation. Malheureusement, un peu de persévérance vous sera nécessaire. Si vous ne disposez pas déjà d'un moniteur de langage machine, il faut d'abord que vous tapiez celui que nous publions ici. Excepté deux petites routines machine, l'une pour lire un octet dans la mémoire, l'autre pour aller chercher un octet dans un fichier, le programme est entièrement écrit en Basic. Comme toutefois le jeu d'instructions tout entier est d'abord placé dans des tableaux, le désassembleur reste cependant très rapide. Nous devons cependant confesser une insuffisance. Le procédé utilisé ne permet pas de traiter certaines instructions du type (IX+xx). Si une telle instruction apparaît, le message "!! instruction spéciale ...." apparaîtra dans le listing. En cas de besoin, il faudra donc que vous insériez vous-même cette instruction, en utilisant sa forme binaire. De telles instructions sont cependant vraiment rares. Elles apparaissent seulement deux ou trois fois dans le Sound Manager. Par ailleurs, la représentation des instructions ne correspond pas tout à fait au standard du Z80. C'est ainsi par exemple que, dans notre moniteur, les valeurs immédiates sont marquées par une dièze les précédant. Les valeurs de deux octets non marquées de cette façon sont des adresses. Vous avez la possibilité de désassembler la RAM, la ROM ou un fichier. Cette dernière possibilité n'est que rarement offerte par d'autres programmes. Il est intéressant de l'utiliser lorsque le programme à traiter ne peut tenir en mémoire en même temps qu'un programme Basic. Avant que nous n'en venions à la description des instructions, encore un petit conseil: laissez tout d'abord de côté les lignes 20 à 40, de façon à ce qu'une erreur de syntaxe provoquée par des fautes de frappe ne soit pas inhibée. De toute façon, si vous n'avez pas l'intention de travailler à partir d'un fichier, ces lignes peuvent être négligées car elles servent uniquement à empêcher le "nettoyage" de la mémoire qui est sinon inévitable lors de l'ouverture d'un fichier. Vous devez également déduire de ces lignes que vous devez appeler le programme "mimo.bas", pour que OPENIN trouve bien un fichier. Venons-en maintenant aux quelques instructions disponibles. Le principe est que tous les paramètres doivent être placés immédiatement à la suite de l'instruction, en hexadécimal. Si vous voulez, par exemple, fixer l'adresse actuelle sur $0048, entrez: m48 >ENTER<
Il nous reste encore à espérer que la frappe du listing suivant ne vous posera pas trop de problèmes. Notez que 'A' dans le listing correspond à la flèche verticale. ** DOWNLOAD MONITEUR.DSK **
|