CPC-POWER : CPC-SOFTS - CPCArchives 
Options de Recherche :
 
 
 

ARTICLES

30 / 43

Les disquettes 3 pouces

HISTORIQUE

 

La disquette 3 pouces (75 mm).
Un format mythique pour nous amstradiens. Ce support a été conçu et fabriqué par Matsushita au Japon et a servit pour les ordinateurs "Amstrad CPC",  "Amstrad PCW" et "ORIC ATMOS" ainsi que sur les ordinateurs "ZX Spectrum +3" après que la société AMSTRAD eut racheté  Sinclair Research.
 
En raison de l'échec commercial du format 3", la société AMSTRAD pouvaient se procurer des lecteurs à très bon marché, mais en revanche la pénurie de disquettes posait problème, les utilisateurs rencontrèrent de grandes difficultés d’approvisionnement en disquettes, qui défrayèrent la chronique.
Les disquettes 3" restèrent onéreuses en raison de cette pénurie, d'une taille plus petite que les disquettes souples, une boîte rigide de protection et une glissière de protection contre l’écriture, un standard de qualité et robuste.

 

 

LES 4 FORMATS STANDARD sur CPC

 

Il faut rappeler que sur la disquette, les informations sont réparties en pistes concentriques et que chaque piste est subdivisée en secteurs, le nombre de piste et de secteur pouvant varier suivant le format choisit, ainsi que la taille total des données pouvant y être stockés.

 

Voici quelques détails concernant les 4 formats dit "standard" sur CPC, sachez que les 2 premiers sont les plus courant.
FORMAT DATA VENDOR SYSTEM IBM
Taille secteurs &02 (512 octets)
Nombre de secteurs 9 8
Nom des secteurs &C1 a &C9 &41 a &49 &01 a &08
Octet de formatage  &E5
Piste de debut  00
Piste de fin  39
Position du Catalogue Piste 0, secteurs &C1 a &C4 Piste 2, secteurs &41 a &44 Piste 2, secteurs &41 a &44 Piste 1, secteurs &01 a &04
Taille du Catalogue 2 Ko
Entrées du Catalogue  64 max
Taille par face 178 Ko 169 Ko 154 Ko
Taille par disquette 356 Ko 338 Ko 308 Ko


Le format SYSTEM est un format VENDOR avec l'ajout d'informations pour BOOTER le CPM sur :
Piste 0, secteur &41, &42, &48, &49
Piste 1, secteur &41, &46, &42, &47, &43, &48, &44, &49, &45
Il suffira de faire |CPM pour se retrouver sous le CPM 2.2 (formatage réalisé avec le programme Oddjob).

En parlant de la commande |CPM, j'en profite pour préciser que celle-ci permet de charger les 512 octets contenu en piste 0, secteur &41 dans la mémoire de notre CPC en &100 (pour être précis de &100 a &2FF) et que nous avons une exécution automatique en &100 (C3,00,01 ; JP &100 ; en assembleur)

 

C1 C2 C3 C4 C5 C6 C7 C8 C9 = secteurs non entrelacé, temps d'accès pour la lecture = plus longue
C1 C6 C2 C7 C3 C8 C4 C9 C5 = secteurs entrelacés, temps d'accès pour la lecture = plus rapide



LES FORMATS EXOTIQUES POSSIBLES ?

 

Les disquettes 3 pouces amstrad peuvent supporter des formats exotiques, ayant plus de 9 pistes, avec des secteurs beaucoup plus gros (taille 2 a 6) et des capacités supérieures a 178 Ko par face (208 Ko est tout a fait possible), vous pouvez même utiliser plus de 41 pistes (mais honnêtement je vous le déconseille mon lecteur de disquette a fait un bruit abominable).

 

Voici a quoi correspond les tailles de secteurs :

Taille 0 = 0128 octets (Secteur faible)
Taille 1 = 0256 octets
Taille 2 = 0512 octets (La taille de référence pour les formats standard)
Taille 3 = 1024 octets (1 Ko)
Taille 4 = 2048 octets (2 Ko)
Taille 5 = 4096 octets (4 Ko)
Taille 6 = 8192 octets (8 Ko)

Certaines protections utilisent des secteurs de taille 6. Il faut savoir que l'utilitaire Discology arrive a copier les secteurs de taille 2 a 5 uniquement.

 

 

La FAT (Table d'allocation des Fichiers)

 

Les disquettes nous étaient vendu pour du 360 Ko Double face, pour lecteur de disquette simple tête et oui fallait retourner nos disquettes dans le lecteur, chose qui est complétement inutile sur un PC vu que les lecteurs sont double têtes. Après formatage même avec un Format DATA, vous n'arriviez jamais a 180 Ko par face, je vais vous expliquer pourquoi.

 

Faisons un rapide calcul avec le format DATA :
40 pistes * 9 secteurs = 360 secteurs (40 pistes car 0 a 39)
360 secteurs * 512 octets par secteurs = 184320 octets
184320 octets / 1024 = 180 Ko (n'oublions pas que 1 Ko = 1024 octets)
On retrouve bien l'information donnée par le Vendeur c'est a dire 180 Ko mais j'en vois que 178 Ko lors de mon CAT, pourquoi ?

 

Vous aviez surement pas pensé qu'il fallait retirer les 2 Ko pour stocker le nom des fichiers du CATALOGUE .
4 secteurs * 512 octets = 2048 octets / 1024 = 2 Ko
 

Les 4 formats ont une FAT pouvant supporter par défaut 64 entrées.
Chaque entrée permet de stocker les informations jusqu'à 16 Ko de données.

 

Les entrées sont écrites sur 32 octets.


 

1. Sur la première ligne de 16 octets : informations pour l'USER, le nom du fichier, le nombre de block
 

  •  USER (octet 0 : 1ère valeur)
 Par défaut nous sommes toujours sur l'USER 0 lorsque nous tapons la commande CAT.
 L'USER va de 00 a &FF (0 a 255), la valeur &E5 (229) correspond a l'USER des fichiers effacées.
 La commande RSX est très limitée : |USER,x (x = 0 a 15)
 Le mieux étant d'utiliser directement le bon poke qui lui permet d'avoir accès a tout les user : poke &A701, x (x = &00 a &FF) ainsi vous pourrez regarder très rapidement si vous avez des fichiers effacés sur votre disquette.
 Sinon avec un editeur de secteur, vous changer le &E5 en &00 et vous pourrez de nouveau avoir accès a votre fichier (sauf si d'autres fichiers ont été sauvegardé après l'effacement de ce fichier)

  •  NOM DU FICHIER (Octets 1 a 8 : 2ème a 9ème valeur)
 Les noms de fichiers sont toujours en majuscule et d'une longueur maximale de 8 caractères.

  • EXTENSION du fichier (Octets 9 a 11 / &09 a &0B : 10ème a 12ème valeur)
 Les extensions sont elles aussi en majuscule et d'une longueur maximale de 3 caratères.
 Petit exemple, avec une extension en .BIN
 - Le 1ère caractère : B, si on ajoute + &80 = READ ONLY
 - Le 2ème caractère : I, si on ajoute + &80 = HIDDEN
 - Le 3ème caractère : N
 et oui les informations READ ONLY et HIDDEN sur les fichiers sont ici. Uniquement en ajoutant la valeur &80 a une position précise, fallait y penser.

  • Nombre d'entrée utilisé (octet 12 / &0C : 13ème valeur)

Cet contient 0 si le fichier a une taille inférieur ou égal à 16 Ko (16 blocs). Dès que ça dépasse, d'autres entrées du catalogues sont utilisée et l'octet &C (13ème) comportera 01,02 ou 03 (04 maximum).

 

 

  • ? (octet 13 / &0D : 14ème valeur)

Utilisé par le CPM pour ?

 

  • ? (octet 14 / &0E : 15ème valeur

?

 

  • Nombre de bloc utilisée (octet 15 / &0F : 16ème et dernière valeur de cette ligne)

 Si vous voyez la valeur &80, ça veut tout simplement dire que votre fichier continue dans une autre entrée et qu'il a une taille supérieur a 16 Ko. ATTENTION, si le fichier fait 16384 octets, &80 sera inscrit mais il n'utilisera qu'une seule entrée.

 

 
2. Sur la deuxième ligne de 16 octets
 
  • Informations pour les blocs utilisées.
Une valeur unique est inscrite par 1 Ko utilisé (&02 a &E5)
 


Donc une image de 17 Ko vous prendra 2 entrées.

Nous allons le vérifier tout de suite.

Formatez une disquette au format DATA et saissisez la commande suivante :

SAVE"ECRAN.BIN",b,&C000,&4000


ça va sauver ce que vous voyez à l'écran (&C000 a &FFFF)
SAVE "NOM DU FICHIER, type binaire, adresse de début, longueur a sauver



Maintenant nous allons utiliser MANAGEDSK, nous pourrions tout aussi bien utiliser le programme Discology sur CPC

Nous retrouvons bien nos 2 entrées et les 17 blocs utilisées.
Visible en piste 0, Secteur &C1 (vu qu'on a utilisée un format DATA)





Donc partant de ce principe, si on sauvegarde 64 fichiers de 1Ko chacun, nous allons saturer notre disquette, il nous restera des Ko non utilisés mais impossible de rajouter quoi que ce soit.

On commence par formater une disquette au format VENDOR (169 Ko)
Nous allons taper un très court programme BASIC qui va nous permettre de sauvegarder notre listing avec comme noms de fichier 00 a 99

10 FOR lettre=0 TO 9
20 FOR chiffre=0 TO 9
30 a$=CHR$(48+lettre)+CHR$(48+chiffre)
40 SAVE a$
50 NEXT
60 NEXT

Le but étant bien entendu de voir ce qui va se passer.



Une fois le listing saisie, faire tout simplement RUN.

Et voilà nous avons un beau Drive A: Directory full
ont va passer en MODE 2 et refaire un CAT pour voir le nombre de fichier :



Nous avons bien 64 fichiers (00 a 63), tous de taille 1 Ko, et il nous reste encore 105 Ko de libre (format VENDOR 169 Ko - 64 entrée * 1 Ko = 105 Ko le compte est bon) sur la disquette mais nous ne pourrons pas les utiliser.
Vu qu'on a utilisée un format VENDOR, nous retrouvons toutes nos entrées ici :
En piste 2, Secteur &41
En piste 2, Secteur &42
En piste 2, Secteur &43
En piste 2, Secteur &44




Ce même test a été réalisé sur les 4 formats, voici les DSK :

 

 

LE DETOURNEMENT DU CATALOGUE

 

Il vous est déjà arrivez en faisant un CAT sur une disquette pour afficher la liste des fichiers de vous retrouver devans un message du style : RUN "DISK", RUN"ERE",  USE |CPM ou RUN"CITADEL ...

Peut-être vous êtes-vous demandé comment on pouvait obtenir ce résultat ?

Nous n'allons pas rentrer dans les détails ici, mais sachez que tout se situe dans la FAT et les fameuses 64 entrées et qu'il faudrat utiliser du codage ASCII a la place des noms de fichiers pour arriver a de tel résultat.

 

 

HEADER DU FICHIER

Nous avons vu au dessus que le nom du fichier était stocké dans la FAT avec la possibilité de connaître l'USER et les informations sur le READ ONLY et le HIDDEN ainsi que les ID des blocks utilisés.

Il est possible d'affiner les informations concernant le fichier, en allant lire les données dans le premier block ID du fichier.

Adresse &12 = type de fichier (00=Basic, 01=Basic protégé, 02=binaire, 03=binaire protégé)
Adresses &15 et &16 = adresse d'implementation
Adresses &18 et &19 = longueur du fichier
Adresses &1A et &1B = adresse d'execution du fichier (pour les fichiers binaires)

Adresses &43 et &44 = Somme 16bits des octets précédent, si somme ok ce n'est pas un ASCII, lecture des données à partir de l'adresse &80 sinon depuis le début du block.

 

A noter que si nous renommons le fichier, le nom d'origine stocké dans le Header ne sera pas modifié mais uniquement celui stocké dans la FAT.

 

Exemple :

 

 

LA TAILLE DES FICHIERS

 

Ce petit tableau va vous permettre de connaître la fourchette exact pour la taille de vos fichiers.

Si vous sauvegarder un fichier d'une longueur &4000 (notre écran de tout a l'heure), vous trouverez rapidement dans le tableau que ça correspond a 17 Ko où 9 blocs sur cassette.

Ce tableau pourra aussi vous permettre de connaître le nombre d'octet a réduire dans votre programme pour descendre a la taille inférieure.

Longueur du fichier en décimal  Longueur du fichier en Héxadécimal  Nombre de bloc K7  Nombre de Ko
00001 à 00896 &00001 à &00380 01 01 Ko
00897 à 01920 &00381 à &00780 01 02 Ko
01921 à 02944 &00781 à &00B80 02 03 Ko
02945 à 03968 &00B81 à &00F80 02 04 Ko
03969 à 04992 &00F81 à &01380 03 05 Ko
04993 à 06016 &01381 à &01780 03 06 Ko
06017 à 07040 &01781 à &01B80 04 07 Ko
07041 à 08064 &01B81 à &01F80 04 08 Ko
08065 à 09088 &01F81 à &02380 05 09 Ko
09089 à 10112 &02381 à &02780 05 10 Ko
10113 à 11136 &02781 à &02B80 06 11 Ko
11137 à 12160 &02B81 à &02F80 06 12 Ko
12161 à 13184 &02F81 à &03380 07 13 Ko
13185 à 14208 &03381 à &03780 07 14 Ko
14209 à 15232 &03781 à &03B80 08 15 Ko
15233 à 16256 &03B81 à &03F80 08 16 Ko
16257 à 17280 &03F81 à &04380 09 17 Ko
17281 à 18304 &04381 à &04780 09 18 Ko
18305 à 19328 &04781 à &04B80 10 19 Ko
19329 à 20352 &04B81 à &04F80 10 20 Ko
20353 à 21376 &04F81 à &05380 11 21 Ko
21377 à 22400 &05381 à &05780 11 22 Ko
22401 à 23424 &05781 à &05B80 12 23 Ko
23425 à 24448 &05B81 à &05F80 12 24 Ko
24449 à 25472 &05F81 à &06380 13 25 Ko
25473 à 26496 &06381 à &06780 13 26 Ko
26497 à 27520 &06781 à &06B80 14 27 Ko
27521 à 28544 &06B81 à &06F80 14 28 Ko
28545 à 29568 &06F81 à &07380 15 29 Ko
29569 à 30592 &07381 à &07780 15 30 Ko
30593 à 31616 &07781 à &07B80 16 31 Ko
31617 à 32640 &07B81 à &07F80 16 32 Ko
32641 à 33664 &07F81 à &08380 17 33 Ko
33665 à 34688 &08381 à &08780 17 34 Ko
34689 à 35712 &08781 à &08B80 18 35 Ko
35713 à 36736 &08B81 à &08F80 18 36 Ko
36737 à 37760 &08F81 à &09380 19 37 Ko
37761 à 38784 &09381 à &09780 19 38 Ko
38785 à 39808 &09781 à &09B80 20 39 Ko
39809 à 40832 &09B81 à &09F80 20 40 Ko
40833 à 41856 &09F81 à &0A380 21 41 Ko
41857 à 42880 &0A381 à &0A780 21 42 Ko

 

 

LES DISQUETTES DE STOCKAGE

 

On commence par la disquette historique, celle distribué par AMSOFT dans son boitier en plastique rigide, Importé du Japon, la plus cher du marché, qui est allé jusqu'à 35 Francs à l'unité :



AMSOFT dans une pochette souple, Importé du Japon :



MAXELL Compact Floppy Disk, Importé du Japon :



Magnetic Technology Media (MTM), Compact Floppy Disk, Importé du Japon :



GODEXCO Superior Quality Computer Floppy Disk, Fabriqué en Hollande ? :



PRECISION, 3" 2FD Flexible Disk, dans son boitier en plastique :



WIZ DISC, CF 2, Compact Floppy Disc :

 

PANASONIC, Single Head, CF2 :

 

 

PANASONIC, Double Head, CF2DD :

 

 

SCHNEIDER COMPUTER DIVISION, Single Head, CF2 (Allemagne) :

 

 

DIVERS DISQUETTES OU ETIQUETTES EN VRACS :

 

 

 

 

 

DISQUETTES DE NETTOYAGE

 

Sur cette disquette vous ne stockerai aucune information, elle sert a nettoyer la tête de lecture/écriture de votre lecteur de disquette 3 pouces.

 

 

 

 

 

 

Merci a MIC, EAGLE78, CPCMANIACO et KUKULCAN pour les scans.

Article rédigé par Spoke & Kukulcan

 

Article créé le : Vendredi 12 Mars 2010 à 20 h 04
Dernière mise à jour le : Lundi 18 Novembre 2019 à 18 h 37
 
 

CPC-POWER/CPCArchives, projet maintenu par Fredouille.
Programmation par Kukulcan © 2007-2024 tous droits réservés.
Reproduction sans autorisation interdite. Tous les titres utilisées appartiennent à leurs propriétaires respectifs.