C A S S A C A S S
Auteur : Jean Pierre Lalevée
Publié dans MicroStrad numero 6 * Juillet/Aout 1986
Basic et langage machine
CPC 464, 664, 6128 aevc lecteur de cassette
Aussi simple d'emploi qu'indispensable, l'utilitaire Cassacass
fonctionne sur tous les modèles de CPC. Il vous permet d'éviter ces
moments difficiles où vous découvrez que la cassette sur laquelle vous
avez stocké un précieux fichier refuse tout service et vous oblige à
reprendre à zéro un travail laborieux. En effet, il effectue une copie
des fichiers sur cassette, que ce soient des fichiers de données, des
fichiers binaires ou des programmes. Si le fichier source compte plus
de dix-sept blocs, la phase de lecture pourra etre interrompue en
pressant sur la touche ESC des la fin d'un bloc. Elle sera reprise
apres la phase d'écriture.
Quant aux programmes sauvegardés avec l'option P du Basic CPC, ils ne
pourront pas etre deproteges.
JEAN-PIERRE LALEVÉE
POUR MIEUX COMPRENDRE LE PROGRAMME
----------------------------------
Le programme se compose de deux parties essentielles, l'une en Basic,
l'autre en langage machine (LM). Pour vous aider à mieux comprendre
son fonctionnement, nous vous soumettons un désassemblage de la partie
LM. Il va de soi que cette partie (liste 2) n'a pas à être tapée au
clavier, car elle est intégrée ou programme Basic sous la forme d'un
chargeur placé entre les lignes 830 à 1130. Mais voyons un peu le
découpage du programme général (liste 1).
Lignes 160 à 230 : diverses initialisations sont effectuees.
La ligne 230 renvoie au sous-programme contenant le chargeur de la
routine de lecture/écriture sur cassette.
Lignes 250 à 340 : affichage du menu de travail.
L'utilisateur peut choisir entre deux vitesses de sauvegarde; la vitesse
par défaut correspond SPEED WRITE 0. Le lancement de la lecture se fait
ensuite, par pression sur la touche 3.
Lignes 360 à 600 :
L'appel de la routine en lecture, puis en écriture, a lieu après
l'affichage des messages indispensables (lignes 380 -390 et 510-520).
Les blocs successifs sont mis en mémoire, puis restitués dans l'ordre sur
la cassette. L'espace disponible (environ 34 Ko) permet de mettre en
mémoire des fichiers de 17 blocs maximum.
Lignes 620 à 770:
Les caractéristiques du bloc chargé/sauvegardé sont affichées à l'écran.
Lignes 800 et 810: en cas d'erreur, retour à la case départ...