Entrelacement des secteurs sur Quick Disk

Des MO et des TO...

Modérateur : Politburo

Répondre
Daniel

Entrelacement des secteurs sur Quick Disk

Message par Daniel »

Peu à peu le QDD dévoile ses mystères, sans pour autant perdre de son charme ;-)
Dans les FAQ du site http://dcmo5.free.fr je donne la table d'entrelacement des secteurs logiques.
Elle explique pourquoi certaines pistes sont plus rapides à lire que d'autres.
La surprise est que ce n'est pas si simple qu'on pouvait l'imaginer.
Comme quoi, vingt ans après, le matériel Thomson donne encore des satisfactions intellectuelles aux collectionneurs un peu fous qui s'y intéressent encore :wink:

Daniel

PS: L'émulation du QDD fonctionne maintenant parfaitement dans DCMO5 v8.1 :)
Il n'y a plus que quelques contrôles d'erreurs à ajouter pour pouvoir le publier. Peut-être en octobre...
Avatar du membre
foolduplex
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 628
Enregistré le : 02 oct. 2002 23:06
Localisation : Lausanne, Suisse
Contact :

Message par foolduplex »

Daniel,

aurais-tu la gentillesse de fusionner cette faq au document que je t'avais envoyer sur la technique du qd et de m'envoyer la mise a jour, merci. j'etais offline ces temps-ci et je n'ai pas travaille davantage sur le qd. De plus, j'ai un ennui, mon lecteur de qd semble avoir rendu l'ame. Il est vrai que je l'ai pas mal torture, mais tout de meme :roll:

je n'ai pas bcp de temps a consacrer aux thomson pour le moment, mais ca repartira d'ici septembre.

Cette table d'entrelacement est tres interessante, et explique certaines choses... mais il y a quelque chose que je me suis toujours demande, comment se fait-il par exemple que le DIR se fasse en une passe sur le quick disk, alors que si on programme un outil equivalent en assembleur, qui appelle les routines du DKCOH, il faut quasiment une passe par secteur pour obtenir le meme resultat?

Fool

Fool
Avatar du membre
foolduplex
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 628
Enregistré le : 02 oct. 2002 23:06
Localisation : Lausanne, Suisse
Contact :

Message par foolduplex »

J'oubliais: j'ai commence a ecrire un tres bel outil en Borland C++ pour lire et ecrire les QD sur PC via le port parallele, ca marche aussi sous 2000/XP. Malheureusement, mon QDD ayant rendu l'ame, je suis coince (pour l'instant, le soft ne permet que de sauver/charger une image .qd, extraire des fichiers de l'image, et autodetecte quand on insere ou enleve un QD, facon macintosh, en proposant les operations les plus intuitives selon le contexte, mais je ne peux ni lire ni ecrire le disque)

est-ce que ca interesse quelqu'un de reprendre la chose?

Fool
smague

principe de base du QDD

Message par smague »

excusez mon ignorance ,mais je croyais que le principe du quick disk drive etait un balayage de la tete de lecture le long d une piste en spirale.
comme une pointe de lecture parcout un microsillon.
donc pour acceder au secteur n° 140 il fallait balayer sequentiellement les 139 secteurs precedent
ce qui le differencie d un lecteur de disquettes et a conduit rapidement Thomson à abandonner le QDD.
Donc je ne saisis pas bien l interet du facteur d entrelacement sur le QDD.
d ailleurs sur disquette il est fixé à 7 et le modifier presente peu d interet .
Ce n est pas votre FAQ consacré au QDD avec des colonnes de datas hexadecimaux qui eclairera beaucoup les gens.
Meme si la plupart des gens qui iront le lire n en diront pas grand chose de peur de passer pour des c...moi je vous en fait la remarque !
Daniel

Message par Daniel »

foolduplex a écrit :aurais-tu la gentillesse de fusionner cette faq au document que je t'avais envoyer sur la technique du qd et de m'envoyer la mise a jour
Ce n'est pas nécessaire : ma FAQ est dans un fichier texte qu'on peut copier-coller sans problème. Ne pas tenir compte du copyright, j'ai la mauvaise manie d'en mettre partout, mais tout ce qui est sur mon site est copiable sans autorisation préalable. A propos, Smague a vu de l'hexadécimal dans le tableau, il ne doit pas savoir ce que c'est car je ne me souviens pas en avoir utilisé.
foolduplex a écrit :j'ai un ennui, mon lecteur de qd semble avoir rendu l'ame
A ta place je serais inconsolable. Je vis tous les jours dans la hantise d'un pareil malheur, c'est pour celà que j'évite de brancher mon QDD sur un port parallèle :wink: Il y a du 12 V, je crois, et il n'aime peut-être pas.
foolduplex a écrit :comment se fait-il par exemple que le DIR se fasse en une passe sur le quick disk, alors que si on programme un outil equivalent en assembleur, qui appelle les routines du DKCOH, il faut quasiment une passe par secteur pour obtenir le meme resultat?
En exécutant le DIR dans DCMO5 sous debugger, j'ai pu analyser sa façon de lire la piste 20 du QD.
Il lit d'abord le secteur 2 (FAT) dans un buffer en 2648-26c7.
Il l'écrase ensuite par les secteurs 3 et 4 (début de la DIR) en 2648-2747.
Puis il lit les secteurs suivants (5 à 16) et les stocke en 4cbe-52bd.
Je crois que l'astuce consiste à ne pas analyser immédiatement les secteurs lus. Ils sont seulement stockés en mémoire. C'est très rapide et peut donc être effectué en une seule passe, en profitant du facteur d'entrelacement. Ensuite seulement il effectue le décodage et l'affichage.
C'est aussi le principe du BACKUP, qui utilise toute la mémoire disponible pour stocker les secteurs en 4 passes : une passe au premier transfert, deux passes au deuxième et une au troisième. Et en traitant directement les secteurs physiques de 2 en 2, il réduit de moitié le facteur d'entrelacement, c'est encore plus rapide.
foolduplex a écrit :est-ce que ca interesse quelqu'un de reprendre la chose?
Malheureusement pas possible pour moi, je suis en permanence surbooké. De plus je pars en vacances à la fin de la semaine :wink:

Daniel
Daniel

Re: principe de base du QDD

Message par Daniel »

smague a écrit :je ne saisis pas bien l interet du facteur d entrelacement sur le QDD
S'il faut un centième de seconde pour parcourir une piste, un mauvais entrelacement fait perdre un ou deux tours, soit quelques centièmes.
S'il faut plus d'une seconde, comme sur le QDD, on peut perdre plusieurs secondes.
D'où ma maxime : "Plus le parcours dure, mieux l'entrelacement doit être optimisé"
Pour Philou : on peut aussi l'appliquer au coït.

Daniel
Avatar du membre
foolduplex
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 628
Enregistré le : 02 oct. 2002 23:06
Localisation : Lausanne, Suisse
Contact :

Message par foolduplex »

Daniel a écrit :Il y a du 12 V, je crois, et il n'aime peut-être pas.
non, le port parallele est compatible TTL dans sa specification d'origine. C'est le port serie qui bosse en 12v. En fait, mon lecteur de QD fonctionne, dans le sens ou je peux demarrer le moteur, demander une ecriture ou une lecture, detecter la disquette etc. Mais ce que je ne comprends pas, c'est que le stream binaire que je recois en lecture, c'est du n'importe quoi (rien qui ressemble a du MFM en tout cas). De plus, le QDOS ne se charge plus sur le mo5. Donc j'en ai deduis qu'il a lache, mais quoi exactement dans le QD c'est difficile a dire, puisqu'il y a quand meme un bitstream qui passe!

Fool
smague

Message par smague »

Daniel a écrit : De plus je pars en vacances à la fin de la semaine

Daniel
Quel dommage !
parce que ça m aurait interessé de savoir comment ça se passe au niveau de la lecture si le QDD doit lire par exemple un fichier qui occupe les secteurs disons ...20,21 et 50 .
Concretement que fait la tete,car avec votre FAQ (qui ne dit pas tout à fait la même chose que les docs Thomson) on a un peu la tête farcie et on ne comprend plus tres bien comment fonctionne cette merveilleuse mecanique de QDD.
Daniel

Message par Daniel »

smague a écrit :on a un peu la tête farcie et on ne comprend plus tres bien comment fonctionne cette merveilleuse mecanique de QDD
Ne soyez pas amer comme ça, je vais vous expliquer (mais de grâce évitez les commentaires désobligeants sur mes vacances).
Pour lire les secteurs 20, 21 et 50, le QDD fait deux passes. A la première, il lit le secteur 20, puis le 21 qui se trouve physiquement 4 secteurs plus loin. Le secteur 50 étant avant le 21, il ne peut pas être lu dans la même passe. Donc il y a une deuxième passe. Je ne sais pas exactement combien elle dure, peut-être une seconde, donc il faudra environ 2 secondes pour lire votre fichier. Notez que si vous faites un traitement un peu long sur le secteur 20, vous allez dépasser le 21 avant de lancer le deuxième ordre de lecture. Il faudra donc une passe de plus, et 3 secondes au lieu de 2.
Pour Philou : puisqu'on parle de passes, sais-tu pourquoi la disquette de 2,8 pouces est appelée Quick Disk ? Parce-que 3 passes en 3 secondes c'est un record, même chez les putes.
Pour les autres : excusez ma vulgarité s.v.p.

Daniel
Avatar du membre
Stéphane Vanlierde
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 2567
Enregistré le : 09 oct. 2002 16:10
Localisation : Marne la Vallée, Seine & Marne, France
Contact :

Message par Stéphane Vanlierde »

Daniel a écrit :Pour Philou : puisqu'on parle de passes, sais-tu pourquoi la disquette de 2,8 pouces est appelée Quick Disk ? Parce-que 3 passes en 3 secondes c'est un record, même chez les putes.
:lol: Il faut bien ça pour que Philou s'intéresse au forum Thomson :twisted:
Daniel a écrit :Pour les autres : excusez ma vulgarité s.v.p.
Pas de problème... ça change des habituelles engueulades
smague

pas tres convaincant

Message par smague »

c est bien beau de dire qu en fonction du tableau disponible sur votre site la tete magnetique du QDD lit le secteur 20
et puis elle rencontre les secteurs 244,puis 148 et 52 avant de lire le secteur 21
si j ai bien compris votre tableau (que j avais pris au depart pour des datas en hexa alors qu il s agit d un banal tableau d entiers de dimension 400 ).
Mais cela ne prouve rien car vous n expliquez aucunement pourquoi le secteur 50 qui est situé avant n est lu que dans une deuxieme passe.
Daniel

Re: pas tres convaincant

Message par Daniel »

smague a écrit :c est bien beau de dire qu en fonction du tableau disponible sur votre site la tete magnetique du QDD lit le secteur 20
et puis elle rencontre les secteurs 244,puis 148 et 52 avant de lire le secteur 21
si j ai bien compris votre tableau (que j avais pris au depart pour des datas en hexa alors qu il s agit d un banal tableau d entiers de dimension 400 ).
Mais cela ne prouve rien car vous n expliquez aucunement pourquoi le secteur 50 qui est situé avant n est lu que dans une deuxieme passe.
Smague, comprenez-moi bien : je suis prêt à répondre à toutes vos questions, même les plus naïves, mais il faut les poser poliment. Ce n'est pas le premier avertissement qu'on vous donne, les modérateurs l'on fait avant moi, vous auriez tout intérêt à en tenir compte. On a bien rigolé avec les graviers et autres gels à l'eau, redevenons sérieux.
Donc voici la réponse :
Comme vous l'avez expliqué, le QD n'a qu'une seule piste, lue séquentiellement en une seule passe. Si, dans la première passe, il a dépassé le secteur 50 sans le traiter, il faut une deuxième passe pour pouvoir le récupérer.
Dans un message précédent, vous avez écrit que mes explications étaient en contradiction avec la documentation Thomson. Pouvez-vous S.V.P. donner vos sources, pour que je puisse vérifier ? Je suis assez sûr de ce que j'ai écrit, pour l'avoir vérifié sur le matériel et avec l'émulateur, et d'un autre côté ça m'étonne qu'il y ait des erreurs dans la doc Thomson.

Daniel
Avatar du membre
foolduplex
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 628
Enregistré le : 02 oct. 2002 23:06
Localisation : Lausanne, Suisse
Contact :

Re: pas tres convaincant

Message par foolduplex »

Daniel a écrit :Dans un message précédent, vous avez écrit que mes explications étaient en contradiction avec la documentation Thomson. Pouvez-vous S.V.P. donner vos sources, pour que je puisse vérifier ? Je suis assez sûr de ce que j'ai écrit, pour l'avoir vérifié sur le matériel et avec l'émulateur, et d'un autre côté ça m'étonne qu'il y ait des erreurs dans la doc Thomson.
A mon avis, il pretend que c'est en contradiction parce que la doc thomson annonce que c'est une piste unique en spirale avec les secteurs enregistres sequentiellement. Le fait qu'il puisse y avoir un facteur d'entrelacement le depasse... :lol:

Fool
Daniel

Re: pas tres convaincant

Message par Daniel »

foolduplex a écrit :A mon avis, il pretend que c'est en contradiction parce que la doc thomson annonce que c'est une piste unique en spirale avec les secteurs enregistres sequentiellement. Le fait qu'il puisse y avoir un facteur d'entrelacement le depasse... :lol:
Je l'explique comme toi, mais j'aimerais en avoir confirmation. Les messages dans les forums sont quelquefois assez difficiles à interpréter, car malgré les smilies on ne sait pas ce que pensent vraiment les auteurs. Est-ce de la naïveté, de la bêtise, de l'ironie, du machiavélisme ou de la provocation primaire ? Je préfère ne pas faire de suppositions et juger uniquement sur la réalité.
Daniel
Daniel

Message par Daniel »

foolduplex a écrit :mon lecteur de qd semble avoir rendu l'ame
http://cgi.ebay.fr/ws/eBayISAPI.dll?Vie ... gory=17008
Mise à prix 40 euros, c'est déraisonnable. J'ai acheté le mien sur ebay pour 15,50 euros, avec en plus la boîte en bon état, l'alimentation 9V et le livre du Basic Q-DOS.

Daniel
Répondre

Retourner vers « Thomson »