Manuel d’utilisation du logiciel
EID210
Z.A. de Pissaloup
4, avenue d’Alembert
78197 Trappes Cédex
tél. : (33) 01 30 66 08 88
fax : (33) 01 30 66 72 20
Référence : EID210
Page :2 / 22
Sommaire
1 Présentation 5
2 Installation 5
3 La barre des menus 6
3.1 Fichier 6
3.2 Edition 7
3.3 Assembleur 7
3.4 Compile 8
3.5 EID210 8
3.6 Configuration 9
3.7 Affichage 9
3.8 Fenêtre 10
3.9 A propos… 10
4 La barre d’outil 10
5 Assembleur/linker 68000 11
5.1 Directive d’assemblage 11
5.2 Configuration de l’assembleur pour l’EID210 11
5.3 Fichier de définition de l’eid210 12
6 Le compilateur GNU C/C++ 13
6.1 Configuration de la chaîne GNU pour l’EID210 13
6.2 Bibliothèques 14
7 Le moniteur 16
7.1 Liste des commandes 16
7.2 Description des commandes 16
Page :3 / 22
Page :4 / 22
EID210
1 Présentation
Le logiciel EID210 est composé :
D’un éditeur de texte pour l’édition de programme assembleur ou C
D’une fenêtre moniteur de type VT52 permettant la communication avec le système
cible EID210000.
D’un assembleur/linker 68000
D’une interface pour la chaîne de développement GNU C/C++.
Le logiciel EID210 fonctionne sous les systèmes d’exploitations suivant :
WINDOWS95
WINDOWS98
WINDOWS ME
WINDOWS NT 4
WINDOWS 2000
WINDOWS XP
2 Installation
Pour l’installation de l’environnement de développement de l’EID210, il faut exécuter
le programme Setup.exe depuis le CD-ROM.
Il y a la possibilité de choisir le type d’installation. Le tableau suivant décrit les options
installées en fonction du type d’installation.
Page :5 / 22
dms didalab EID210
Type EID210 Source Source tp Source C Compilateur
assembleur assembleur C/C++ GNU
EID210 assembleur X X X X X
compilateur GNU
C/C++
EID210 assembleur X X Non installer X Non installer
3 La barre des menus
3.1 Fichier
3.1.1 Nouveau
Permet de créer un nouveau programme.
3.1.2 Ouvrir
Permet l’édition d’un programme sous l’éditeur
3.1.3 Fermer
Permet de fermer la fenêtre en cours (édition ou fenêtre moniteur).
3.1.4 Enregistrer
Permet l’enregistrement du programme en cours d’édition.
3.1.5 Enregistrer sous
Permet l’enregistrement du programme en cours d’édition sous un autre nom.
3.1.6 Téléchargement S-RECORD
Permet de télécharger un fichier S-RECORD dans le système cible EID210000. Cette
commande est uniquement disponible sous la fenêtre moniteur.
Page :6 / 22
EID210
3.1.7 Imprimer
Permet l’impression de la fenêtre courante
3.1.8 Aperçu avant impression
Permet la visualisation avant impression de la fenêtre en cours.
3.1.9 Configuration de l’impression
Permet le paramétrage de l’impression (choix de l’imprimante, orientation du papier …)
3.1.10 Quitter
Permet de quitter le logiciel.
3.2 Edition
Ces commandes ne sont valides qu’en mode édition de programme.
3.2.1 Annuler
Permet d’annuler la dernière commande.
3.2.2 Couper
Permet de couper une zone sélectionner dans le presse papier.
3.2.3 Copier
Permet de copier une zone sélectionner dans le presse papier.
3.2.4 Coller
Permet de coller ce qu’il y a dans le presse papier.
3.2.5 Tout sélectionner
Permet la sélection de toute la fenêtre d’édition.
3.2.6 Rechercher
Permet de recherche une chaîne de caractère
3.2.7 Suivant
Continue la recherche d’une chaîne de caractère.
3.2.8 Remplacer
Permet de remplacer une chaîne de caractères par une autre.
3.2.9 Aller à la ligne
Permet de déplacer le curseur à une ligne spécifique.
3.3 Assembleur
Permet d’assembler un fichier source assembleur.
Page :7 / 22
dms didalab EID210
Une boite de dialogue permet de voir les résultats de la phase d’assemblage (nombre
d’erreur et de warning).
Dans le cas ou il n’y a pas d’erreur, il y a la possibilité d’ouvrir la fenêtre moniteur et de
télécharger automatiquement (voir configuration du moniteur).
3.4 Compile
Les éléments de ce menu permette l’utilisation de la chaîne de développement GNU
compilateur C/C++.
L’accès a cette commande n’est possible que si le compilateur GNU C/C++ est installé
(option de l’EID210).
3.4.1 Compiler…
Permet d’exécuter la compilation C/C++ du fichier source C ou C++.
3.4.2 Linker
Exécute la phase de linkage sur la chaîne GNU.
3.4.3 Construire
Lance la phase de compilation puis de linkage.
Dans le cas où il n’y a pas erreurs, il y a la possibilité de télécharger automatiquement le
fichier S-RECORD dans le système cible.
3.5 EID210
3.5.1 Moniteur
Permet d’ouvrir la fenêtre moniteur en liaison avec l’EID210.
3.5.2 Recharger
Permet de recharger le fichier S-RECORD en cours dans le système cible.
3.5.3 CPU32
Permet l’édition et la modification des registres du microcontrôleur.
3.5.4 Exécuter
Permet de lancer l’exécution d’un programme sur le système cible EID210.
Page :8 / 22
EID210
3.5.5 Pas à pas
Permet l’exécution en mode pas à pas d’un programme sur le système cible.
Après chaque instruction assembleur, le moniteur indique l’état des registres du
processeur (voir le chapitre « Le moniteur »).
3.6 Configuration
3.6.1 Assembleur
Permet de configurer l’assembleur 68000 intégré au logiciel EID210.
Dans le cas ou l’utilisateur utilise des sections, il faut définir l’adresse des sections :
Section de code (9),
Section de variable (15).
3.6.2 GNU C/C++
Permet de configurer la chaîne de développement GNU C/C++.
3.6.3 Moniteur
Permet de configurer les paramètres de la fenêtre moniteur.
Pour simplifier l’utilisation, il vaut mieux que les options suivantes soit validée :
Détection automatique de l’EID210,
Téléchargement automatique.
3.6.4 Langage
Permet de choisir le langage au niveau des menus et des boites de dialogues.
Il y a le choix entre :
Le Français,
L’anglais.
Pour que toutes les boites de dialogue soit dans la langue demandée, il faut que
windows soit installé avec le langage correspondant.
3.7 Affichage
3.7.1 Barre d’état
Permet de valider ou non l’affichage de la barre d’état.
Page :9 / 22
dms didalab EID210
3.7.2 Barre d’outil
Permet de valider ou non l’affichage de la barre d’outil.
3.8 Fenêtre
3.8.1 Cascade
Réorganise l’affichage des fenêtres en mode cascade.
3.8.2 Mosaïque
Réorganise l’affichage des fenêtres en mode mosaïque.
3.8.3 Réorganise les icônes
Réorganise les icônes en bas de la fenêtre du logiciel EID210.
3.9 A propos…
Affiche la version du logiciel EID210.
4 La barre d’outil
Pour que la barre d’outil soit disponible, il faut que l’affichage de celle-ci soit validée.
Pour cela, se reporter à la commande affichage barre d’outil de la barre de menu.
Outil Description
Fichier Nouveau
Fichier Ouvrir
Fichier Enregistrer
Edition Couper
Edition Copier
Edition Coller
Fichier Imprimer
A propos de…
EID210 Cpu32 (voir commande dr du moniteur)
EID210 pas à pas (voir commande ss du moniteur)
EID210 Exécuter (voir commande go du moniteur)
Page :10 / 22
EID210
5 Assembleur/linker 68000
L’assembleur intégré dans le logiciel EID210 génère du code 68000. Le format du
fichier est du S-RECORD de type S3 (adresse sur 32 bits).
5.1 Directive d’assemblage
Il supporte les directives de compilation suivante :
Directive Description
ORG Définition de l’adresse absolue du code
END Fin de programme
EQU Définition d’un symbole à une valeur.
SET Définition d’un symbole à une valeur
DC Définition d’une table de constante
DCB Définition d’une zone de constante
DS Définition d’une constante
INCLUDE Inclure un fichier
SECT/SECTION Spécification de la section
LIST Activation de la commande LISTFILE
NOLIST Suspend la commande LISTFILE
5.2 Configuration de l’assembleur pour l’EID210
L’assembleur gère les sections :
code (ou 9),
variable (ou 15)
L’adresse des différentes sections doit être dans la RAM de l’EID210
La configuration par défaut est la suivante :
Section Adresse de début
9 (code) $802000
15 (var) $803000
Page :11 / 22
dms didalab EID210
5.3 Fichier de définition de l’eid210
Les différents registres sont déclarés dans le fichier « EID210.def ».
MONITEUR Point de retour au moniteur (JMP MONITEUR)
PORTQS Registre de donnée du port QS
PQSCTR Registre de contrôle du port QS
SCCR1 Registre de contrôle du SCI n°1
SCCR0 Registre de contrôle du SCI N°0
SCSR Registre d’état du SCI
SCDR Registre de donnée du SCI.
TDRE Masque pour tester si un caractère est transmit sur SCI
RDRF Masque pour tester si un caractère est reçu sur SCI.
RAF
PITR Registre d’interruption du TIMER
PICR Registre de contrôle du TIMER
TRAMMCR Registre de configuration du module TPURAM
TRAMTST Registre de test du TPURAM
TRAMBAR Registre d’état et d’adresse du TPURAM
TPUMCR Registre de configuration du TPU
TCR Registre de test de la configuration du TPU
CFSR0 Registre de sélection de fonction
CFSR1
CFSR2
CFSR3
HSQR0 Registre de séquence Host
HSQR1
HSRR0 Registre de service HOST
HSRR1
CPR0 Registre de priorité
CPR1
CTRL_TPU0 Registre de contrôle des lignes du TPU
CTRL_TPU1
CTRL_TPU2
CTRL_TPU3
CTRL_TPU4
CTRL_TPU5
CTRL_TPU6
CTRL_TPU7
CTRL_TPU8
CTRL_TPU9
CTRL_TPU10
CTRL_TPU11
CTRL_TPU12
CTRL_TPU13
CTRL_TPU14
CTRL_TPU15
CTRL Adresse de base de l’EPLD contrôle
REG_ETAT Registre d’état de l’EPLD de contrôle
Port_C Registre d’accès au port C
DIR_Port_C Registre de direction du Port C
CNA Adresse de base du CNA
SA0 Accès à la sortie n°0 du CNA
SA1 Accès à la sortie n°1 du CNA
SA2 Accès à la sortie n°2 du CNA
SA3 Accès à la sortie n°3 du CNA.
PC104 Adresse de base permettant l’accès au bus PC104.
Tab_vect Adresse de base de la table des vecteurs ;
Page :12 / 22
EID210
6 Le compilateur GNU C/C++
6.1 Configuration de la chaîne GNU pour l’EID210
6.1.1 Répertoire
Le logiciel détecte automatiquement si la chaîne GNU est installé.
Valeur par défaut Description
Utilitaire C:\gccashware\bin Répertoire où sont installer les
utilitaires de la chaîne GNU
Compilateur C:\gccashware\gcc-m68k-ashware\bin Répertoire où sont installer le
compilateur
Les valeurs par défaut sont données dans le cas ou la chaîne GNU est installée sur le
disque « c: » et sous le répertoire « c:\gccashware ».
6.1.2 Assembleur / Compilateur C/C++
Les options par défaut sont :
Compilateur C/C++ -c –O0 -gcoff -mcpu32
6.1.3 Linker
Les options par défaut du linker sont :
Options Linker -Teid210.ld -mcpu32 -Wl -nostartfiles
La liste des fichiers à inclure est la suivante :
Fichier Description
Crt0.o Fichier de démarrage (fonction ENTRY)
Eid210.o Bibliothèque d’adaptation du des fonctions bas niveau pour
l’EID210.
Page :13 / 22
dms didalab EID210
6.2 Bibliothèques
6.2.1 standard
void exe_sup(void *fonction)
Exécute une fonction en mode superviseur.
Paramètres d’entrées fonction : pointeur sur la fonction à éxecuter en
mode superviseur.
Paramètres de sorties Aucun.
void clrscr()
Efface l’écran
Paramètres d’entrées Aucun.
Paramètres de sorties Aucun.
void gotoxy(char x,char y)
Positionne le curseur à la ligne « y », et la colonne « x »
Paramètres d’entrées x : numéro de la colonne
y: numéro de la ligne
Paramètres de sorties Aucun.
void out_rs(char a)
Ecrit le caractère « a » sur le port.
Paramètres d’entrées a : caractère à envoyer sur le port
Paramètres de sorties Aucun.
char in_rs()
Attend la frappe d’un caractère, et retourne le code ASCII de celui-ci.
Paramètres d’entrées Aucun
Paramètres de sorties Code ASCII du caractère frappé.
Void setvect(int num,void (*p_func)())
Installe une fonction d’interruption
Paramètres d’entrées Num : numéro de vecteur
P_func : fonction d’interruption
Paramètres de sorties Aucun.
Void RestoreVect(int num)
Restitue le vecteur d’interruption
Paramètres d’entrées Num : numéro de vecteur
Paramètres de sorties Aucun
Page :14 / 22
EID210
6.2.2 EID210
Pour inclure cette bibliothèque, il faut inclure le fichier « eid210.h »
Cette bibliothèque contient la définition des registres du 68332 et de la carte EID210.
Page :15 / 22
dms didalab EID210
7 Le moniteur
Lorsque le moniteur est disponible pour accepter une commande, une invite
représentant une flèche (prompt) est visualisée.
Les commandes décrites ci-après sont entrées au clavier en respectant la syntaxe et
terminées par un « retour chariot » (RC).
Si la commande est erronée, incomplète ou n’existe pas, un message d’erreur est
retourné à l’écran de la fenêtre moniteur.
Le port RS232 de l’EID210 émule un terminal de type VT52.
7.1 Liste des commandes
Commande Description
AS Assemble
BF Remplissage d’un bloc mémoire
BM Déplacement d’un bloc mémoire
BY visualisation d’un octet de l’espace adressable
CA appel d'un sous programme
DB suppression des points d'arrêt
DI Désassemble
DR visualisation formatée des registres
DM visualisation du contenu de la mémoire
FM remplissage d'un bloc de mémoire
GI Génère une demande d’interruption
GO lance l’exécution d’un programme
LB liste des points d'arrêt
OP modification du contenu de la mémoire
PM Ajoute en mémoire
SB mise en place de points d'arrêt
SE recherche en mémoire
SS exécution en mode pas à pas
TD Trace des registres
7.2 Description des commandes
7.2.1 AS : Assemble
Syntaxe : AS <adresse>
Exemple : AS 1938 débute l'assemblage à partir de l'adresse $1938
Description :
Cette commande fait appel à l'assembleur ligne. Avant qu'une entrée ne soit faite,
l'assembleur affiche l'instruction qui est mémorisée à l'adresse indiquée.
Lorsque la ligne est correcte, elle est validée par un retour chariot et est stockée en
RAM.
Si la ligne contient des erreurs l'assembleur affiche l'ancienne instruction.
L'entrée d'un point "." comme premier symbole d'une ligne termine l'assemblage.
7.2.2 BF : remplissage d'un bloc de mémoire:
syntaxe: BF <adresse de début> <adresse de fin> <donnée>
Page :16 / 22
EID210
Exemple : BF 1000000 1001000 55 initialise la mémoire entre $1000000 et
$1001000 avec $55
Description :
Réalise l'initialisation d'un bloc de mémoire bornes incluses avec une donnée 8 bits, les
adresses de début et de fin peuvent être paires ou impaires.
7.2.3 BM : déplacement d'un bloc de mémoire
Syntaxe : BM <adresse de début> <adresse de fin> <adresse de destination>
Exemple : BM 1000000 1001000 1002000
Description :
Recopie un bloc de mémoire à un autre emplacement dont on précise l'adresse de
début. L'adresse de début du bloc à déplacer doit être supérieure à l'adresse de fin de
bloc, sinon ne fait rien.
Si l'adresse de début est la même que l'adresse de fin, l’octet situé à cette adresse
est déplacé.
L'adresse de destination peut être incluse à l'intérieur du bloc à déplacer.
7.2.4 BY : visualisation d’un octet de l’espace adressable
Syntaxe : BY <adresse absolue>
Exemple : BY 800001
Description :
Visualise le contenu d'un octet de l'espace adressable.
Cette commande est utile pour lire le contenu de registres dans lesquels un accès par
mot peut provoquer des effets indésirables.
7.2.5 CA appel d'un sous programme:
Syntaxe : CA <adresse du sous programme>
Exemple : CA 40349A
Description :
Cette commande exécute un sous programme (terminé par RTS), et redonne le contrôle
au moniteur.
Si l'état du processeur est modifié pendant l'exécution du sous programme, le nouvel
état peut être observé en faisant une demande de trace des registres (commande DR).
7.2.6 DB : suppression des points d'arrêt (voir SB)
Syntaxe : DB
DB <adresse>
Exemple : DB 2048
Description :
Supprime le point d'arrêt à l'adresse spécifiée, si aucune adresse n'est précisée tous
les points d'arrêt sont supprimés.
La pose de points d'arrêts utilise TRAP #15, ils ne peuvent être posés qu'en
mémoire vive RAM.
7.2.7 DI :désassemble
Syntaxe : DI <adresse de début ><compteur> DI <adresse>
Exemple : DI 2000 40
Description :
Cette commande désassemble le contenu de la mémoire depuis l'adresse spécifiée
et selon le nombre de mots spécifié dans le compteur.
Page :17 / 22
dms didalab EID210
Si le compteur est omis, le programme désassemble seulement le contenu de
l'adresse de départ.
L'adresse de départ doit impérativement être paire, sinon il y à déclenchement d'une
exception "adresse erreur".
7.2.8 DR : visualisation formatée des registres (voir TD).
Syntaxe : DR
Exemple :
Description :
Cette commande permet de visualiser les contenus de tous les registres de l'unité
centrale, ainsi que l'instruction désassemblée qui se trouve à l'adresse pointée par le
compteur de programme.
Les registres sont aussi visualisés en mode trace ou à la rencontre d'un point d'arrêt.
Le contenu du registre d'état est visualisé à la fois en hexadécimal et en binaire, les bits
marqués par un point sont à 0, une lettre visualise les bits d'état qui sont à 1, le mode
superviseur, le mode trace. Le masque d'interruption est noté directement avec la valeur 0 à
7.
Le contenu de chacun des registres peut être individuellement:
examiné : en indiquant son nom symbolique suivi d'un retour chariot:
ex: D3 (RC) affiche D3=00000000
initialisé : en indiquant son nom symbolique suivi d'un argument:
ex: A2=12345678 (RC), initialise le registre d'adresse A2 à $12345678
ex: PC=1002400 (RC), initialise le compteur de programme à $1002400
ex: USP=1001000 (RC), initialise le pointeur de pile utilisateur à $1001000
ex: SR= 2700 (RC), initialise le registre d’état à $2700
Sauf pour le registre d’état SR, les arguments sont traités comme des longs mots.
par exemple : D2=1 initialise le registre D2 à la valeur $00000001.
7.2.9 DM visualisation du contenu de la mémoire
Syntaxe : DM <adresse de début >
DM <adresse de début ><compteur>
Exemple : DM 4000 100
Description :
Cette commande permet de visualiser le contenu de la mémoire à la fois en hexadécimal
et en ASCII à partir de l'adresse spécifiée.
Le nombre d'octets visualisés par défaut en l'absence d'une spécification de compteur
est de 16, lorsqu'un <compteur> est spécifié, le nombre d'octets correspondant est
affiché.
Si la quantité à visualiser ne tient pas sur un seul écran, il est possible d'arrêter le
défilement en actionnant les touches "contrôle-S, contrôle-Q".
L'adresse de début peut être paire ou impaire.
7.2.10 FM remplissage d'un bloc de mémoire:
Syntaxe : FM <adresse de début> <adresse de fin> <compteur><donnée>
Exemple : FM 1001000 1003000 AA initialise la mémoire entre $1001000 et
$1003000 avec $AA
FM 1002000 100 55 initialise la mémoire entre $1002000 et $1002100 avec $55
Description :
Page :18 / 22
EID210
Réalise l'initialisation d'un bloc de mémoire avec l'octet de donnée, une relecture de
l'emplacement écrit est exécutée.
Si la relecture est impossible, le message d'erreur "il est impossible d’écrire a l’adresse
$<adresse>" est émis, et la commande prend fin.
Si la valeur qui suit l'adresse de départ est plus petite que celle-ci, elle est
considérée comme un compteur et par exemple FM 1002000 100 55, remplit 256 cases
de mémoire avec la valeur $55.
Les adresses de début et de fin peuvent être paires ou impaires.
7.2.11 GI : Génère une demande d’interruption
Syntaxe : GI <numéro de vecteur ><niveau de l'interruption>
Exemple : GI 7 6
Description :
Cette commande simule la survenance de l'exception dont le numéro est spécifié avec le
masque du niveau spécifié (niveau 5 par défaut).
En l'absence d'initialisation par l'utilisateur des vecteurs d'interruption un message est
émis par exemple pour GI 7 *TRAPV INSTRUCTION* les contenus des registres sont
visualisés et le contrôle est redonné au moniteur.
Si l'utilisateur initialise un sous programme d'exception (adresse début dans le
vecteur souhaité, terminé par RTE) celui-ci est exécuté, les contenus des registres sont
visualisés et le contrôle est redonné au moniteur.
Les deux exceptions "bus error" et "address error", montrent les informations qui
ont été rangées sur la pile selon le format long (17 mots)
SR = contenu du registre d'état
PC = l'adresse contenue dans le compteur de programme
FMT = format, 4 bits MSB= 0 format court, 4 bits MSB = 1 format long numéro de
vecteur bits [9-0]
SSW = mot d'état spécial les 3 bits LSB reflètent [FC2-FC0]
MM = masque dans le cas d'une instruction "move multiple"
emplacement long mot contenant des informations internes non visualisé dans
le stack dump
TPD = erreur dans un cycle d'écriture, la donnée peut être trouvée à cette adresse
TPF = adresse véhiculée sur le bus pendant le cycle défectueux
DBIN = la donnée qui a été lue avant le cycle défectueux peut être trouvée à cette
adresse
IR = garde l'instruction qui était en cours lors du cycle défectueux
IRC = garde soit l'instruction qui était en cours d'exécution soit l'instruction qui a
été recherchée.
7.2.12 GO : lance l’exécution d’un programme
Syntaxe : GO <adresse de début > [NB]
Exemple : GO 1001000
Description :
Cette commande provoque l'exécution d'un programme dont l'adresse est spécifiée.
Les points d'arrêt présents sont transférés dans la mémoire RAM.
Le programme s'exécute en temps réel s'il n'y à pas de points d'arrêt Si l'adresse de
départ n'est pas spécifiée, l'exécution débute à l'adresse présente dans le registre PC, qui
a pu être initialisé grâce à la commande PC=xxxxxxxx.
Si NB est spécifié, l'exécution à lieu sans tenir compte des points d'arrêt.
Page :19 / 22
dms didalab EID210
7.2.13 LB : liste des points d'arrêt
Syntaxe : LB
Exemple : LB
Description :
Visualise le contenu de la table des points d'arrêt (10 au maximum)
Les points d'arrêt qui ne sont pas associés à un compteur sont affichés par leur adresse seule, dans le
cas
contraire ils sont affichés sous la forme adresse suivie du compteur.
Remarque: l'état des compteurs qui peuvent être associés aux points d'arrêt n'est pas sauvegardé,
aussi après les avoir utilisés, ils ne sont plus affichés par la commande LB.
7.2.14 OP : modification du contenu de la mémoire
Syntaxe : OP <adresse de début >
Exemple : OP 2000
Description :
Cette commande permet l'examen et/ou la modification du contenu de cellules mémoire.
L'alignement sur une adresse PAIRE est automatique. Le contenu du mot mémoire
spécifié est visualisé, les commandes suivantes peuvent être utilisées:
! CR accès au mot suivant,
! / CR accès au mot précédent,
! , CR accès au même mot,
! ; CR désassemble le contenu de la case mémoire,
! . CR termine la commande OP
Si l'on veut modifier le contenu d'un emplacement mémoire, il suffit de taper les
caractères que l'on veut y introduire [$0 - $F].
Tous les caractères non hexadécimaux sont refusés.
Si l'option désassemblage a été introduite (; cr), le moniteur accepte l'entrée de
mnémoniques d'instructions qu'il assemble et met en mémoire.
7.2.15 PM : Ajoute en mémoire
Syntaxe : PM <adresse de début ><donnée>[<donnée> <donnée> <donnée>.... ]
Exemple : PM 2000
Description :
Cette commande permet d'introduire des données en mémoire, la longueur de la
première donnée détermine automatiquement l'emploi de la taille octet, mot ou long
mot.
Cette commande accepte l'entrée d'une chaîne de caractères ASCII :
ex: PM 1001000 'ABCD', place en mémoire à partir de $1001000, 41424344.
Cette commande accepte le signe moins devant une valeur numérique :
ex: PM 1001000 -2, place en mémoire l'équivalent hexadécimal $FE.
7.2.16 SB : mise en place de points d'arrêt (voir DB et LB)
Syntaxe : SB <adresse_1 >;(compteur_1)
Exemple : SB 1001140 20
Description :
La commande SB est utilisée pour mettre en place des points d'arrêt.
Jusqu'à 10 points d'arrêt peuvent être spécifiés simultanément.
Chaque point d'arrêt peut être associé à un compteur (optionnel) qui permet
d'indiquer combien de fois le programme doit passer par le point d'arrêt avant que la
routine de traitement du point d'arrêt ne soit activée. Par défaut les compteurs ont la
valeur 0.
Page :20 / 22
EID210
Avant que le contrôle ne soit passé au programme utilisateur, la table des points
d'arrêt est recherchée par le moniteur, et des instructions TRAP #15 sont mises dans les
adresses désignées par les points d'arrêt, les instructions qui y figuraient sont
sauvegardées pour pouvoir être remises en place lors de la rencontre des points d'arrêt.
Ce processus explique pourquoi il n'est pas possible de poser des points d'arrêt en
mémoire EPROM.
La commande LB visualise tous les points d'arrêt existants.
7.2.17 SE : recherche en mémoire:
Syntaxe : SE <adresse de début> <adresse de fin> <donnée>
Exemple : SE $4000 $4200 $AAAA
SE $4000 $4200 $65F623C0
Description :
Cette commande permet de chercher en mémoire entre les deux adresses de début et de
fin spécifiées (bornes incluses):
- un octet, un mot, ou un long mot
C'est la longueur de la <donnée> à rechercher qui fixe la longueur.
Les adresses de début et de fin doivent obligatoirement être paires.
7.2.18 SS : exécution en mode pas à pas
Syntaxe : SS
Exemple : SS
Description :
Cette commande, utilisable après la rencontre d’un point d’arrêt, fait exécuter, à chaque action sur
la touche CR, l'instruction qui est pointée par le compteur de programme.
Les contenus des registres sont visualisés selon le format fixé à l'aide de la commande TD.
Lorsque la commande d'exécution en mode pas à pas est active, l'invite est constituée d'une flèche
suivie du signe égal ( »-->= ).
La sortie du mode pas à pas à lieu dès qu'une commande valide est entrée ex: DR
7.2.19 TD : Trace des registres
Syntaxe : TD [reg ... reg <IN><AL><CL>]
Exemple : TD
TD A0 Al D3 SR
Description :
Cette commande permet de visualiser et de modifier, le contenu de tous les registres,
elle est utilisée par les points d'arrêt ainsi que par la commande de fonctionnement en mode
pas à pas .
Lorsque aucun argument n'est spécifié, cette commande visualise l'état courant du
processeur.
Selon les valeurs optionnelles, une sélection des registres et instruction à visualiser peut
être faite:
! TD CL (Clear), aucun registre n'est plus visualisé,
! TD AL (All), tous les registres sont visualisés,
! TD IN (Instruction), l'instruction pointée par le compteur de programme est
visualisé
! TD A0 D3, seuls les registres A0 et D3 sont visualisés.
Page :21 / 22
dms didalab EID210
7.2.20 Modification de la valeur des registres
Pour modifier les registres du CPU32, il faut taper le nom du registre, suivi du signe
« = », puis de la valeur en hexadécimal à mettre dans le registre.
Exemple : D0=55AA
Page :22 / 22