APPLICATIONS ★ A LA RECHERCHE DE L'ENREGISTREMENT PERDU ★

A la Recherche de l'Enregistrement Perdu

Beaucoup de nos lecteurs n'ont jamais osé avouer qu'il leur arrivait de ne pas pouvoir recharger un programme pourtant enregistré. Il ne faut pas croire que cela ne concerne que les débutants... Oh que non ! Soit par "erreur technique", soit par manque d'organisation.

La chose est plus fréquente sur cassette que sur disquette, nous insisterons donc sur ce premier cas. Ne croyez pas que nous allons énumérer les soixante-dix commandements des supports magnétiques, vous les avez certainement lus (ou survolés) plusieurs fois... Le mieux est de faire connaissance avec certains petits détails de fonctionnement, qui ne figurent pas dans le manuel et qui vont alors élucider certains "mystères malheureux" dont vous avez peut-être été victime. Si ce n'est pas (encore) le cas, vous saurez alors vous éviter de commettre telle ou telle gaffe car vous devinerez le risque. Et si un malheur survient, par étourderie, ces notions nouvelles vous permettront souvent de réparer les dégâts.
N'est-ce pas plus efficace que des conseils "bruts" ?

L'autre ennemi des sauvegardes est le manque d'organisation : au début, on ne se méfie pas et l'on est tout surpris de se trouver piégé dans un désordre irréversible. Des conseils ? Non, mais plutôt des suggestions contre cela. Vous pourrez alors choisir ou établir l'AUTODISCIPLINE qui convient le mieux à votre personnalité.

Les cassettes audio

Elles et les platines cassettes ont été conçues pour le son, UNIQUEMENT. Les utiliser en informatique constitue une prouesse technique ; on peut donc tolérer certaines servitudes et des performances très inférieures à celles des disquettes. Seul intérêt des sytèmes cassettes : le prix et c'est un argument de poids... A titre de consolation, sachez que Ton ne pourrait pas enregistrer de la musique par un lecteur de disquettes, c'est techniquement impossible. Je m'explique :

L'ensemble bande magnétique + tête de lecture-enregistrement + l'électronique qui lui est affectée a été étudié pour reproduire fidèlement des variations très rapides de volume (le son). Autrement dit, il sait magnétiser la bande à des niveaux très variables, et sans à-coups, de zéro à "très fort". Or, en informatique, on se moque de ces milliers de niveaux possibles ! On n'en veut que DEUX, qui seront baptisés "1" et "0"... L'ordinateur qui veut transmettre ces bits 1 et 0 doit alors les CODER en un signal "musical" afin qu'il puisse être enregistré, compris, par un magnétophone.

Ce codage musical est très complexe, non pour le secret mais pour assurer une sauvegarde et une lecture sans risque d'erreur. Un exemple : un logiciel du commerce va représenter environ 300 000 bits. Si un seul est perdu, l'octet en question est incomplet, d'où une incohérence, d'où plantage quasi immédiat ! Le tristement célèbre "read error a" (ou "b"). Donc aucun droit à l'erreur, même 1 sur 300 000... Voilà pourquoi j'ai parlé de prouesse technique. Notez qu'en cas de "loupé", un lecteur de disquettes fait (à notre insu) une relecture du passage, mais avec un magnéto cassettes, c'est bien sûr impossible. Avec une platine K7 ordinaire, telle celle du CPC 464, la fréquence maxi se situe vers 6 à 8000 Hz ( = signaux, impulsions par seconde) ; au-delà, le niveau à la lecture s'écroule et la "pureté" avec. Une sauvegarde à 2000 bauds ( = 2000 bits par seconde) obtenue par la commande SPEED WRITE 1 doit correspondre à peu près à un signal modulé de l'ordre de 4000 Hz. Il existe des utilitaires qui permettent de sauvegarder à des vitesses très supérieures, 4000, 6000 bauds. Un petit calcul rapide vous permet d'évaluer le risque ainsi encouru... Une bande "ferro" ordinaire de bonne marque peut aller jusqu'à 13000 Hz environ ; une de la meilleure qualité possible approchera les 20000. Mais le gain sur une platine K7 de bas de gamme sera infime, quelques centaines d'hertz seulement. Donc inutile d'alimenter votre 464 avec des bandes super HI-FI. Et surtout pas avec des bandes à l'oxyde de chrome (Cr02) car il ne pourrait pas effacer complètement l'enregistrement précédent !

Techniquement, on pourrait enregistrer et lire à 6000 bauds sur une platine cassette HI-FI avec une cassette au chrome ; mais je vous signale que le prix atteint serait alors celui d'un lecteur de disquettes.

La qualité d'enregistrement sur cassette

Le manuel préconise de sauvegarder à 1000 bauds et c'est SPEED WRITE 0 qui est pris par défaut. Je ne suis pas du tout d'accord face à un tel pessimisme. Le 2000 bauds est fiable sur des cassettes "ferro" de bas de gamme mais de marque connue, ou avouée, telles celles de grandes surfaces (Carrefour, Mammouth...).

En revanche, l'auteur déconseille très vivement les marques bidon ou inexistantes du genre "Trois C-60 sous blis-ter pour 10 francs". Il s'agit de rebuts de fabrications conditionnés par des officines plus ou moins fantômes : Enduction souvent irrégulière {surépaisseurs en vagues ou manques), niveau de reproduction très faible et bruit de fond important. Pour enregistrer grand-père passe encore, mais surtout pas pour l'informatique ; même pas à 1000 bauds. Une autre gaffe consiste à utiliser de la C-120, car le support est trop mince, trop fragile pour une mécanique non HIFI ; d'autre part, on observe souvent une faible copie du signal magnétique d'une spire à l'autre...

Revenons au signal codé : il n'y a pas que la fréquence qui compte, il y a aussi le volume à la lecture. Il semblerait, après examen (difficile) à l'oscilloscope, qu'il y ait DEUX niveaux (amplitudes) dans les signaux. Conséquences, si le niveau moyen est trop faible, pas de détection ; s'il est trop fort (saturation), les niveaux "bas" seront presque aussi forts que les "hauts" et là, pas de décodage possible. Avec un CPC 464, aux réglages fixés en usine, on ne cours pas ce risque. Sauf si on veut dupliquer notre précieuse cassette par copie entre deux magnétophones.

Il faut savoir qu'un magnétophone non HI-FI est équipé d'un dispositif électronique assez farceur, le C.A.G. ou "contrôle automatique de gain" qui règle automatiquement le volume à l'enregistrement, ce qui va "comprimer" notre signal. C'est très bien pour la parole, mais nuisible en musique et en microinformatique. Le niveau moyen à la lecture est plutôt faible, parfois à la limite de ce que peut tolérer le 464. Donc, pour dupliquer votre bande, vous pouvez la lire sur un magnéto ordinaire, mais il faut enregistrer sur une platine HI-FI en position "volume manuel", et assez fort, mais sans saturer.

Les éditeurs de logiciels exploitent souvent ce fait pour limiter la piraterie de leurs cassettes : celles-ci sont volontairement enregistrées à des volumes faibles et avec peu d'écart entre les deux niveaux, à ras de la tolérance des CPC 464. Ainsi, une copie faite entre deux magnétophones conduira à l'échec au chargement. Parfois, ils "envoient le bouchon trop loin" et l'original est presque impossible à charger. A ce propos, on se souvient d'une certaine série de "SORCERY" qui fut un désastre, environ 70 % de retours au dire d'un vendeur FNAC...

Le cycle d'un enregistrement cassette

Supposons la sauvegarde d'un programme BASIC de 5000 octets.

— Pendant quelques secondes, silence mais le magnéto tourne : ne croyez surtout pas que cette pause au départ soit suffisante pour passer l'amorce transparente de la cassette !
— C'est tout d'abord l'enregistrement de ce que l'on appelle l'étiquette du programme (ou du fichier) : on y trouve la vitesse 1000 ou 2000 bauds, le type (BASIC, BASIC protégé, binaire ou ASCII), le nom de baptême et la taille exact en octets, d'où le nombre de "blocks".
— La succession des blocks de 2048 octets maxi. Chacun débute par une mini-étiquette rassemblant le nom, le numéro de block et sa taille exacte. Pour nos 5000 octets, on aura donc deux blocks complets, plus un troisième pour les 1000 octets restants.

A la lecture, même scénario, mais à la fin de chaque block, l'ordinateur vérifie que le nombre d'octets entrés est égal à ce qui était annoncé dans l'étiquette, sinon il affiche "read error". A la fin du dernier block se trouve un signal de fin : il sera exécuté s'il n'y a pas eu de "read error" dans un des blocks. Si c'est malheureusement le cas, le magnéto continuera de tourner après cette fin non validée. Conclusion, si un "read error" apparaît, il est inutile de poursuivre le chargement, c'est sans appel I

A présent, parlons des disquettes :

Constitution d'une disquette 3"

Dans le boîtier se trouve un disque de plastique enduit sur ses deux faces, découpé à l'emporte-pièce. Sa "rigidité" est à peu près celle du papier de cette revue. Des feutres de guidage assurent une pseudo planéité. Il comporte deux trous, un central renforcé par un solide moyeu d'entraînement et un petit excentré, d'environ 3 mm de diamètre, qui va servir à repérer le début de chaque tour (par une cellule photo-électrique). Insistons sur le fait que ce disque magnétique est uniforme, comme une feuille de papier non ligné. Le fabricant ignore le nombre de pistes que vous désirez y mettre, c'est à l'utilisateur de tracer ses pistes, c'est le rôle du FORMATAGE : Celui-ci va tracer 40 pistes de guidages concentriques et sur chacune, neuf repères de SECTEURS ; la position du petit trou permet alors de numéroter ces secteurs. Le drive peut alors écrire sur cette face de disquette formatée. Un secteur peut contenir 512 octets. Calculons la capacité d'une face de disquette : 512 x  9 x 40 =  184 320 octets, ce qui, divisé par 1024, donne 180 kilo-octets.

Le principe physique de la magnétisation de ces aimants microscopiques, enrobés dans le vernis de la disquette, est fondamentalement différent du principe des bandes : au lieu de lire des variations continues de forces d'aimantations, on se contente ici d'observer des changements brutaux de polarités magnétiques, "nord" ou "sud". C'est plus compliqué que cela mais je simplifie... Avantage, la vitesse est de l'ordre de 120 000 bauds, soixante fois plus rapide que sur bande !

Les trois types de formatages

La commande FORMAT sous CPM va, après formatage, enregistrer sur les deux premières pistes un programme de 9 kilo-octets que l'on appelle "SYSTEME" ou "DOS" ou "CPM". Il va compléter l'AMSDOS résidant dans les CPC 664 et 6128 où l'interface drive des 464. Grâce à cela, nous pourrons taper des ICPM. On dit que cette face de disquette est "formatée Système". Certes, on a perdu 9 kilo-octets, mais c'est vivement recommandé par l'auteur, prudence oblige...
FORMAT V (V comme Vendeur) a peu d'intérêt pour nous : c'est idem "système" mais sans l'enregistrer tout en RESERVANT SA PLACE. On pourra le transférer ensuite par le programme SYSGEN de la disquette CPM. Pourquoi ? Parce que si le Système est indispensable sur tel logiciel du commerce, l'éditeur n'a pas le droit de le "vendre" avec son produit ; c'est à l'utilisateur final d'y copier le sien. Une des lois sur le COPYRIGHT ; sans commentaires.

FORMAT D donne une disquette formatée DATA. Toute la place est disponible ; tous les logiciels du commerce sont formatés DATA. Mais pour les nôtres, qu'il s'agisse de programmes ou de fichiers personnels, je vous déconseille fortement cette fausse économie car un jour vous serez piégé par l'absence du Système. Impossible de le rajouter ensuite par SYSGEN. Vous pourrez calculer que ces 9 Ko si souvent utiles représentent un "gaspillage" de 75 centimes par face ; donc une très mauvaise économie.
Quand au FORMAT I "conforme IBM PC" j'en cherche encore une application pratique, car cela concerne les disquettes IBM PC formatées en CP/M (jamais vues !l et comme ces micros utilisent les formats 5" 1/4 ou 3" 1/2...

Le catalogue d'une disquette

C'est la table des matières, le descriptif de tout ce qu'il y a sur une face de disquette. Le catalogue se réserve 2 kilo-octets ; c'est pourquoi il reste 180 - 2 = 178 Ko sur une disquette formatée DATA et 180 - 2 - 9 = 169 Ko sur une formatée Système.

Il se loge sur la première piste d'une disquette DATA, mais A LA SUITE du programme Système si la disquette a été formatée Système ou Vendeur. Cette plage réservée correspond à un maximum de 64 noms de programmes ou fichiers. Chacun d'entre eux est référencé comme suit :

—  Le numéro de USER (généralement 0) qui est une sorte de classement par groupe, utile avec disque dur mais de peu d'intérêt sur disquette.
—  Le nom du fichier, ainsi que certains paramètres optionnels, BASIC protégé, non effaçable par ERA, invisible par CAT ou DIR, etc.
—  Enfin, la LOCALISATION, les numéros de pistes et de secteurs où il a été

La gestion de la disquette par CP/M

Comment se passe un effacement de fichier par ERA ? Ultra simple : dans le catalogue, le numéro de USER devient 229, c'est tout I Deux conséquences : le nom n'apparaît plus par CAT ou DIR. Le contenu du fichier ou programme est toujours intact, mais les zones qu'il occupait sont désormais disponibles pour d'autres sauvegardes, lorsque la place sur disque deviendra insuffisante. Il est alors possible de ressusciter un fichier effacé par erreur en remplaçant ce 229 par 0, (sauf s'il a été écrasé par d'autres sauvegardes) ; par exemple, avec le bon vieux logiciel "ODDJOB". Lorsque l'on a fait le ménage en effaçant de nombreux petits programme pour y loger un gros, on devine alors que ce dernier va "boucher les trous" çà et là, il peut être fragmenté, éparpillé sur des pistes non consécutives. Ce n'est pas très gênant, au plus un léger ralentissement pour le chargement. Ceci amène une remarque concernant la confidentialité : il est arrivé qu'une personne serviable se trouvant à court de disquettes vierges pour délivrer une copie d'un petit programme, prenne un double de disquette très confidentielle et en "l'effaçant" d'abord par ERA *.* : Si le destinataire est du genre curieux, il lui faudra moins d'une minute pour remettre au catalogue la plupart des titres effacés. Rappelez-vous que la seule méthode pour effacer réellement une disquette est de la reformater.

Vous avez sans doute été surpris par le fait qu'un enregistrement même très court occupe 1 kilo-octet lorsque l'on tape CAT. L'explication est que le CPC enregistre par BLOCS de 1024 octets. soit deux secteurs à la fois. (Cela rappelle la sauvegarde sur cassette par "block" de 2 kilo-octets). Supposons 15 fichiers de 24 octets ; ils feront 15 titres de 1 Ko, mais sur la disquette, il y aura ainsi 15000 octets "gaspillés", car les compléments de blocs sont en quelque sorte remplis par des "blancs". (Même chose sur cassette pour le dernier block).
La duplication de disquettes

Une disquette au contenu précieux doit être dupliquée. On ne sait jamais quel malheur il pourrait arriver à un exemplaire unique... L'autre cas est une copie pour un ami. Pour cela, il faut faire la distinction entre deux méthodes ; la copie "physique" et la copie "logique" :

—  La copie physique est comparable à une photocopie de l'original, car c'est une reproduction fidèle secteur par secteur. C'est ce que l'on obtient par DISC-COPY ou par certains logiciels de "copies autorisées" tels que ODDJOB, HERCULE, DISCOLOGIE, etc. Avantage, c'est très rapide et le formatage de la copie est simultané. Inconvénient, la copie conserve les séquelles de l'original, à savoir les fichiers "effacés" et les éventuelles dispersions d'un fichier un peu partout sur la disquette.
—  La copie logique ou "séquentielle" consiste à recopier les divers titres un par un sur une disquette préalablement formatée. C'est plus long, mais c'est plus "propre". En effet, on peut faire une copie sélective ou totale des titres et les fichiers "dispersés" se retrouvent alors "recompactés". C'est le cas du FILE-COPY *.* du CP/M ou COPYFILE ou PIP si vous possédez un second drive. Deux remarques : les fichiers "cachés" (non visibles par CAT ou DIR) ne sont pas copiés. Certains logiciels plus performants que FILECOPY exigent que l'original soit formaté Système.

Les incompatibilités entre les CP/M

Même chez AMSTRAD, il existe plusieurs versions de Systèmes CP/M (ou DOS   =  Disc Operating System) et la compatibilité entre elles est loin d'être parfaite ! (Si cela peut vous consoler, c'est bien pire encore chez les IBM PC). Avec le CPC 464, nous ne disposons que du CPM 2.2, tandis que le CPC 6128 est livré avec CPM 2.2 et CPM PLUS. Le PCW ne possède que ce dernier. La version "PLUS" est plus étoffée que la "2.2", mais le drame vient du fait que sa façon d'écrire et de formater soit légèrement différente ; bien qu'il s'agisse toujours de 40 pistes en 9 secteurs. Un 464 a du mal à lire une disquette créée sous CPM PLUS. Le possesseur d'un 6128 en usage générai a intérêt à adopter le CPM 2.2 et ce, pour pouvoir profiter d'échanges avec les possesseurs de 464. Réserver le CPM PLUS pour des échanges de fichiers ASCII avec des PCW ou pour se livrer à des "magouilles du second degré" avec le DOS.
C'est terminé pour les connaissances théoriques, abordons les astuces pour mieux assurer nos sauvegardes :

L'organisation des cassettes

Pour un début de cassette, il est conseillé de démarrer la sauvegarde sur le COLLAGE amorce-bande, en bobinant à la main à l'aide d'un corps de stylo, sinon l'enregistrement commencera sur cette amorce. En revanche, il est dangereux de confier ce bobinage au magnétophone car, étant très imprécis, la lecture pourrait commencer par le début d'une "étiquette" obsolète avant de lire la bonne... Lorsque l'on enregistre plusieurs petits programmes indépendants sur une même cassette, tout en notant les repères compteur pour les retrouver, la grave erreur est de les mettre immédiatement à la suite les uns des autres. Deux raisons à cela :

—  on ne pourra augmenter la taille d'un programme sans effacer le début du suivant ;
—  le pré-positionnement précis par le compteur est long à réaliser.

Laissez plus de 10 unités de compteur entre deux titres et démarrez sur des multiples de 10. Exemple, une sauvegarde se termine sur "36", faites la suivante à partir de 50. Ainsi pour rechar ger ce titre, il suffira de se positionner "un peu avant 50". Remarquez que laisser tourner de 45 à 50 prend moins de temps que de fignoler un positionnement. D'autant plus que tes repères du compteur ne sont pas d'une fidélité remarquable...

Ne pensez pas au petit gaspillage que cela représente, car de toute façon, vous n'auriez pas rempli cette C 60. De même, n'utilisez pas la face B ; déjà qu'un programme sur cassete est long à charger, si on y ajoute encore le temps d'un rebobinage complet ! Si vous enregistrez sur un magnéto extérieur stéréo (CPC 664 et 6128) pour lire sur un 464, il vous faut relier ensemble les canaux gauche et droite. Sans cette précaution, le signal ne sera que sur la voie gauche ; or, le 464 lit les deux pis tes et s'il reste sur la voie droite de la musique que vous aviez cru effacer par ce SAVE...

Possesseur d'un 464, vous tapez un long programme : bien sûr, vous en faites une sauvegarde tous les quarts d'heures au cas où... (surtout par temps d'orage). Mats il serait absurde de reprendre chaque fois le même début de cassette : imaginez une coupure de courant en cours de sauvegarde. Que restera-t-il ? Rigoureusement rien ! Deux méthodes au choix : ou bien on a deux cassettes utilisées alternativement (après rebobinage) ou une seule où l'on prend toujours la suite, mais en notant chaque fois le repère compteur du départ. Le risque est de ne plus savoir où est la toute dernière version. Alors plutôt que de retaper chaque fois SAVE "MACHIN", prenez l'HEURE comme nom. Ainsi. SAVE "1506" signifiera sauvegardé à 15 heures 06 minutes ; "MACHIN" sera pour la version définitive.

L'organisation des disquettes

Reprenons le problème précédent de saisie de listing. Là, il faut DEUX disquettes distinctes. Ne comptez pas trop sur les versions .BAK à cause de la loi de MURPHY (la loi de l'em... maximum) : si une coupure survenait lors de la ré-écriture du catalogue, on perdrait toute la disquette ! Ici encore, prenez l'heure comme nom.

Ne mettez pas un point d'honneur à remplir complètement vos disquettes, 15 kilo-octets disponibles par face est un minimum. Songez que vous serez un jour amenés à modifier l'un d'eux et qu'il est grotesque d'être bloqué par un "dise full" parce que l'on n'avait pas prévu l'encombrement du BAK... Sur le carton des boîtiers de disquettes, vous notez le contenu de chaque face ; mais inscrivez aussi AU CRAYON les kilo-octets encore disponibles. Cela sera très utile pour savoir sur laquelle vous allez loger ce programme de 37 Ko.
Il est très difficile d'écrire sur le papier trop glacé des étiquettes de disquettes, surtout les AMSOFT. Pour que le stylo-bile ou le crayon "prennent", gommer énergiquement ce papier avant d'écrire ; ou collez par-dessus une étiquette adhé-sive au papier bien mat Pour faire vos étiquettes à l'imprimante voir "CPC" n° 25 page 62.

Si vous aimez programmer, réservez-vous une disquette spéciale que vous nommerez "TRAVAIL". C'est l'établi sur lequel on tape le nouveau programme, où il ne sera d'ailleurs qu'en transit, les autres titres y sont à demeure car ce sont vos programmes d'aide à la programmation, ainsi que les sous-programmes utilitaires que l'on recharge par MERGE. Le gain de temps est alors considérable. (Voir du même auteur "PROGRAMMES UTILITAIRES POUR AMSTRAD, SORACOM).

Le CAT sur telle disquette montre une vingtaine de titres dont la plupart sont des sous-programmes ou des fichiers. Comment repérer les quelques "noms de lancements" sur lesquels on fait RUN ? INe vous fiez pas à votre mémoire...). Il suffit de les renommer en mettant comme premier caractère le signe moins. Ainsi, TRUC.BAS deviendra -TRUC.BAS. Et comme CAT affiche les titres par ordre alphabétique, ils seront regroupés en tête de liste.

Conclusion

C'est une évidence de dire que pour être un bon automobiliste, il faut avoir assi mile quelques notions de mécanique générale, même si elles ne sont que superficielles. Il en va de même en microinformatique car il n'y a rien de plus frustrant, démotivant, que de perdre bêtement le fruit de nombreuses heures de travail. Pire encore, si on ne sait pas pourquoi ! Ces quelques notions vont souvent "faire réfléchir avant d'agir", mais vous permettront aussi de créer vos propres "astuces de sécurité". Certaines de mes "explications techniques" ont été volontairement très simplifiées, ce qui va encore m'attirer les foudres de certains universitaires puristes... Le but était d'être compris par tous ceux qui veulent avoir confiance lorsqu'ils tapent un SAVE.

CPC n°27

★ ANNÉE: ???
★ AUTEUR: Michel ARCHAMBAULT

CPCrulez[Content Management System] v8.75-desktop/cache
Page créée en 761 millisecondes et consultée 587 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.