SECTEDIT
--------
Par Sined & Jun
Publie dans Amstrad 100% numéro 8 * Octobre 1988
Page 57 !
Comme vous pouvez le voir, cet éditeur de secteurs n'est pas très long.
Il contient deux RSX, dont le listing assembleur est fourni, et qui sont
aussi simples que possible. LOADSEC permet de lire un secteur et SAVESEC
permet de l'écrire. Ces routine font malheureusement appel a l'AMSDOS.
Peut-être que si vous etes sages, vous aurez la même version sans passer
par les routines systèmes, avec les petits IN et OUT que tout le monde
connait maintenant. Pour le moment, nous devrons nous contenter de cela.
Voici la syntaxe de ces instructions :
LOADSEC, n° de piste, n° de secteur, adresse en mémoire ou seront logées
les données (512 octets)
SAVESEC s'utilise de la même manière.
Il faut aussi savoir que le numéro du premier secteur n'est pas 1 mais
&C1 pour une disquette au format DATA, et &41 pour une disquette au format
CPM. Le choix du type de support est donc laisse a l'utilisateur, selon le
type de format utilise. De plus, les disquettes possèdent normalement 40
pistes, numérotées de 0 a 39. Nous avons décide d'accorder jusqu'à
quarante-quatre pistes, valeur que certains lecteurs de disquettes arrivent
a gérer.
Pour les commandes de l'éditeur, rien de bien sorcier :
- S(ecteur) : permet de modifier le numéro de secteur du cours.
- P(piste) : faire de même pour le numéro de piste.
- W(rite) : sauve les données contenues dans le buffer dans le secteur et
la piste prédéfinie avec les commandes précédentes.
- L(oad) : lit le secteur de la piste prédéfinie avec les commandes S et P.
- E(nd) : interrompt le programme.
- V(aleur a changer) : permet de modifier les données du buffer, ceci par
saisie d'une adresse et d'une valeur a poker.
- U(ndo) : offre la possibilité, si une fausse manoeuvre de sauvegarde a été
commise, de remettre le secteur écrase dans son état initial.
- La barre d'espace change de page, car seule la moitie d'un secteur peut
être affichée a l'écran, pour des raisons d'encombrement.
Ce petit éditeur est plus puissant qu'il n'y parait, car il est possible de
déplacer un secteur, en procédant, par exemple, de la manière suivante :
SC4, pour lire le secteur 4 de la piste 0.
P12, pour passer en piste 12.
SC9, pour sélectionner le neuvième secteur de la piste 12.
W, pour écrire le buffer sur disquette.
Pour lire un secteur précis, il faut le sélectionner par S, forcer la piste
avec P, puis ordonner le chargement avec L.
Comme vous pouvez le voir, il est simple de se promener sur une disquette et
de visualiser son contenu, de façon lente, bien entendu, car c'est tout de
même écrit en Basic : mais c'est assez fiable et cela permet de s'amuser un
peu. Au passage, nous vous donnerons un petit conseil : pour vos premiers
essais de cette routine, utilisez une copie et non un original, le temps de
vous familiariser avec les commandes disponibles.
Sined