Format des fichiers cassette audio

Introduction

Le but de cette page est d'expliquer en détail, la structure d'un fichier cassette audio DAI.

Représentation graphique

Ce schéma se passerait presque de commentaires non ?

En haut j'ai représenté la structure d'un fichier BASIC, juste au dessous celle d'un fichier binaire et les trois représentations du bas correspondent aux trois types de tableau (INT, FPT et STR). Comme vous le voyez, les tableaux ne sont pas différenciés par le type de fichier car c'est le même pour les 3 types de tableau (32H). C'est le quatrième bloc qui sert de discriminant :

  • 00H suivi du checksum ACH pour un tableau de réels (FPT) ;
  • 10H suivi du checksum 8CH pour un tableau d'entier (INT) ;
  • 20H suivi du checksum ECH pour un tableau de caractères (STR)
Un checkum sur un octet peut prêter à sourire, mais vous aurez compris que c'est la rançon de la réutilisation !

Comme vous le voyez, on reconnaît un fichier par son type codé sur un octet (en bleu ciel).

Le leader et le type de fichier

Chaque fichier est précédé d'un leader qui est une suite de bits de type leader suivi d'un bit de données à 1. Vous apprendrez à quoi ces bits ressemblent dans la page AudioCassetteInterface. En plus de ce bit "1" (que l'on ne voit pas sur le schéma car nous n'avons représenté que des octets) le leader est toujours terminé par une suite de 8 bits représentant le nombre 55H. Si vous avez suivi, le leader est une suite de bits leader, suivis de 1 bit de donnée à "1" et 8 autres bits de donnée "01010101" (55H). C'est une façon de voir les choses mais nous aurions tout aussi bien pu dire que le leader est une suite de bits leader terminée par 9 bits de données "101010101".

Le leader dure entre 2,3 secondes (2024 bits de leader + 1 bit de données à 1 + 8 bits (55H).

Après le leader vient le type de fichier dont nous avons parlé (30H pour un programme BASIC, 31H pour un fichier binaire et 32H pour un tableau de données).

Le corps du fichier est une suite de blocs

Ensuite le reste du fichier est constitué d'une suite de blocs terminée par un trailer.

Un bloc est une suite d'octets suivi d'un checksum. Vous pouvez en apprendre plus sur le calcul du checksum ici.

Prenons le cas du fichier BASIC, le premier bloc contient la longueur du nom de programme et son checksum. Le deuxième bloc est le nom du programme (qui comprend le nombre d'octets indiqué dans le bloc précédant) suivi de son cheksum. le troisième bloc contient la longueur du texte du programme suivi de son checksum, le quatrième bloc est le bloc de texte du programme suivi de son checksum, le cinquième  contient la longueur de la table des symboles suivi de son checksum et enfin, le sixième bloc est le bloc table des symboles suivi de son checksum.

Le trailer

C'est une suite de bits de type trailer terminée par un bit à 1. Le trailer indique la fin d'un fichier. Ceci dit, le DAI génère le trailer lors de l'écriture du fichier mais ne s'en sert plus jamais ensuite.

Mais ce n'est pas parceque le DAI ne s'en sert pas qu'il est inutile ! Il y a plusieurs bonnes raisons à la présence d'un trailer sur bande :

  1. c'était une bonne idée déjà à l'époque car sans aucun autre appareil que nos deux oreilles, nous pouvions savoir si un enregistrement était complet ou tronqué (et il y en a des enregistrements qui ne vont pas jusqu'au bout !) ;
  2. De nos jours ça s'avère encore utile avec un outil de manipulation des fichiers audio, en vue spectrale on voit tout de suite où se situent le début de l'enregistrement, les données, et la fin de l'enregistrement.
  3. Ça permet d'introduire une temporisation avant la coupure du relai moteur et évite de laisser la bande sous la tête d'écriture, le délai introduit par le trailer amène la bande environ 1/2cm après la tête d'écriture et évite de démagnétiser le dernier bit enregistré en cas d'enregistrements successifs.
  4. C'est une bonne idée pour d'éventuels outils ou mécanismes tiers pour identifier/indexer des enregistrements.
  5. Nous ne sommes pas à l'abris d'un utilitaire DAI exploitant la présence du TRAILER, même si le DAI lui-même n'en fait rien.

 

 

Copyright 2004-2023 © Bruno VIVIEN tous droits réservés.