LES DISQUETTES ET LE DRIVE DISK II
Ici il s'agit de comprendre le fonctionnement du lecteur de disquette DISKII ainsi que tout ce qui concerne l'enregistrement et la lecture des données sur disquettes. Evidement le DISK II est idéal pour cela car il est facilement démontable et permet des manipulations aisées.

Petit menu de choix...
Structure physique d'une disquette
Savoir comment est faite physiquement une disquette : Qui n'en n'a pas rêvé ? Pour vous éviter d'en détruire une, je l'ai fait à votre place ... vous pouvez toujours m'en envoyer une évidement. Accessoirement vous saurez comment doubler la capacité de la disquette en utilisant le verso mais également modifier le lecteur pour installer un switch qui permet de forcer l'écriture sur une disquette protégée contre l'écriture, d'empêcher l'écriture sur une disquette non protégée contre l'écriture (décidément on veut tout faire à l'envers) ou de fonctionner normalement (ah quand même!...) et accessoirement verrez ce qu'est le "hardsectoring"

Les types d'enregistrement
Il y a plusieurs modes d'enregistrement et c'est ce dont il est question ici. Attention il ne s'agit pas des variétés de formattage utilisées pour les protections dont nous parlons juste après dans la partie "format". On en profite toutefois pour savoir comment régler la vitesse d'un drive. C'est pas que ce soit la rubrique idéale pour cela mais il fallait bien le mettre quelque part... tout comme la notion de "densité"

Les "nibbles"
Notion indispensable à connaître car la traduction autour du verbe "grignoter" ne signifie rien quand on ne sait pas de quoi il s'agit ... à savoir les seuls octets valides qu'il est possible d'écrire sur une disquette.

Le format d'une disquette
Quelle est la structure logique du format sur APPLE II ? Vous serez incollable sur la découpe en pistes, sur la découpe d'une piste en secteurs et sur ce qu'est l'interleaving (appelé aussi skewing). Cette première approche permet déjà de comprendre les schémas de protection utilisant des modifications à ce stade : les formats exotiques. Vous pourrez même apprendre à réaliser un marquage permettant de repérer les pistes.

La synchronisation
Pourquoi et comment ? Indispensable à connaître pour comprendre comment Apple a pu se passer de repères physiques externes pour le formattage.
ATTENTION :
Cette synchronisation n'a rien avoir avec la protection dite de synchronisation des pistes

Les transitions magnétiques (lire et écrire)
Pourquoi et comment ? Indispensable à connaître pour comprendre ce qu'il est possible de faire et de ne pas faire en matière de protection. Accessoirement cela permet de comprendre pourquoi c'est rapidement la panique quand le magnétisme de la disquette est altéré...

Le fonctionnement du LOGIC STATE SEQUENCER
Toujours le pourquoi et comment ? Complément absolument indispensable de la rubrique précédente, le LSS est à connaître pour comprendre le coeur des schémas de protection destinés à empêcher la copie.

Sa compréhension vous permettra de recenser le nombre incalculable d'approximations qui ont pu être écrites sur les protections... et je ne parle pas des informations particulièrement ellipitiques du style "Pour déprotéger le programme Nunuche game II : remplacez les octets 4C 56 DF par EA EA EA sur le secteur 7 de la piste $14, remplacez l'octet A9 du secteur 2 de la piste $3 par 60 et c'est fini! Je vous le dis elle est nulle cette protection." (c'est peut être vrai mais on n'apprend rien et en tout cas pas grand chose)

Les mode de fonctionnement du LSS sont dépecés et détaillés par opération ci-dessous :
LE DETAIL DE L'OPERATION "READ" PAR LE LSS
LE DETAIL DE L'OPERATION "WRITE" PAR LE LSS

Le codage des données
Les contraintes d'écriture sont telles que l'on ne peut pas écrire les 256 valeurs possibles que peut prendre un octet. Des techniques de codage ont été mises au point pour stocker ces 256 valeurs en utilisant un minimum de celles-ci, tout en retrouvant les originales.

Ce pour faire du remplissage mais ici il était indispensable d'ajouter des explications sur ces deux routines du DOS 3.3 qui sont symétriques, l'une pour l'écriture et l'autre pour la lecture :
DOS 3.3 LA PRENIBBILIZATION
DOS 3.3 LA POSTNIBBILIZATION

Mais avec PRODOS c'est très différent, il faut donc voir :
LA METHODE PRODOS

Modalités pour écrire
Tout sur la façon dont se fait l'écriture sur une disquette d'un octet en mémoire... en fait de plusieurs octets car on écrit par pages de 256 octets. On en profite pour détailler et comprendre les timings critiques des routines d'écriture en DOS 3.3 :
DOS 3.3 ECRITURE DE L'ENTETE ADRESSE
DOS 3.3 ECRITURE DU CHAMP DES DONNEES
Vous y trouverez également le détail des opérations EOR dans la rubrique EORING DES VALEURS et celui des tables de translation dans la rubrique TABLES DE TRANSLATION DES NIBBLES.


Modalités pour lire
Tout sur la façon de lire les données écrites sur la disquette (les fameux NIBBLES) et la façon de les remettre en place en mémoire par la routine de POSTNIBBILIZATION EN DOS 3.3 soeur jumelle de la PRENIBBILIZATION EN DOS 3.3. Mais avec l'autre système d'exploitation qu'est PRODOS, tout est différent, il faut voir la rubrique LA METHODE PRODOS

Le bootstrap
Indispensable à connaître pour savoir comment se fait le chargement d'un programme de la disquette vers la mémoire. Bien maitrisée cette connaissance a permis de mettre au point la redoutable technique du "boot-tracing" également appelé parfois "front door technique" à laquelle absolument AUCUN programme protégé ne peut résister.

Le déplacement de la tête de lecture
Ecrire sur une piste c'est bien, sur plusieurs c'est mieux... donc ici on apprend comment se fait le déplacement du bras de lecture. Redoutable également car cette partie a été utilisée pour bien des schémas de protection. Avec mon sens habituel du sacrifice, j'ai même démonté le moteur pas à pas d'un drive pour faire comprendre le fonctionnement du rotor et donc des phases... alors merci qui ? Et en plus on rappelle comment repérer les pistes


"J'ai tout lu (enfin je crois) mais je n'ai rien compris ! Ya pas plus simple ?"

Bon pour toi lecteur qui lit sans doute trop vite, il y a la rubrique:

"J'appartiens depuis hier au *Simplet Cracking Group* mais je veux comprendre"