ARTICLES
30 / 43 |
Les disquettes 3 pouces
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).
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
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.
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.
1. Sur la première ligne de 16 octets : informations pour l'USER, le nom du fichier, le nombre de block
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)
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.
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).
Utilisé par le CPM pour ?
?
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
|
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 :
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.
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 :
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 |
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 :
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 |