MO5 et QDD

C'est la catégorie reine de l'ordinophile, 8 bits et pas un de plus!
Single board ou bus S-100 acceptés.

Modérateurs : Papy.G, fneck, Carl

Jeff_HxC2001
Messages : 296
Enregistré le : 20 mars 2011 14:24

MO5 et QDD

Message par Jeff_HxC2001 » 11 mai 2019 10:23

Bonjour,

J'ai ici un MO5 de base avec une interface CQ 90-028 et le lecteur QD90-128, mais aucun QD formaté pour MO5.

Je cherche à faire "bootstrapper" cet ensemble sachant que je n'ai rien d'autre.

- Y a t'il un moyen à partir d'un programme K7 existant de formater un QD avec cette interface ?
(La K7 est mon seul moyen d'amorçage à ce jour...)

- Y a t'il une description du format QD bas-niveau utilisé sur MO5 ? (Encodage, format des secteurs, CRC, etc...)

- Y a t'il une description des registres du contrôleur EFGG161P quelque part ?

Merci :)

jf

Daniel
Messages : 11923
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: MO5 et QDD

Message par Daniel » 11 mai 2019 10:40

Le quick disk QDOS BASIC MO5 est indispensable pour utiliser le QDD. Deux moyens sont possibles pour l'obtenir :
1) Une copie faite avec un autre QDD (à envoyer par la Poste)
2) La création à partir de données sur cassette

La deuxième méthode n'est pas très compliquée, mais à ma connaissance il n'existe pas d'outil tout prêt. Il faut donc créer une cassette contenant l'image binaire du QDOS. Ensuite il faut écrire un programme pour lire le fichier binaire sur cassette et l'écrire dans les secteurs adéquats d'un quick disk vierge. Je l'ai fait récemment pour le DOS 5"1/4 simple densité, ce n'est pas très difficile en utilisant l'émulateur dcmoto pour créer les fichiers et les tester. Le programme peut même être écrit en BASIC vu que le temps d'exécution n'a pas grande importance.

L'image de la disquette est ici : http://dcmoto.free.fr/programmes/dos-qdd/index.html
Daniel
L'obstacle augmente mon ardeur.

Jeff_HxC2001
Messages : 296
Enregistré le : 20 mars 2011 14:24

Re: MO5 et QDD

Message par Jeff_HxC2001 » 11 mai 2019 11:04

Intéressant : Si le programme peut être écrit en BASIC, cela signifie t'il qu'il a les fonctions de bases pour formater/écrire sur le QD avec le BASIC de base du MO5 ? Ou alors faut-il "taper" dans le contrôleur du QD directement ?

Daniel
Messages : 11923
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: MO5 et QDD

Message par Daniel » 11 mai 2019 11:43

On utilise les fonctions standard du contrôleur. Les paramètres sont passés par des POKE et l'appel est fait par EXEC. Plutôt qu'un long discours, voici le programme pour le DOS BASIC MO5 5"1/4 simple densité. Pour le QDD c'est pratiquement identique, sauf les numéros de piste et de secteurs: le QDD n'a qu'une piste avec les 400 secteurs entrelacés selon un ordre très particulier donné par une table. Dans ce programme on utilise les numéros de secteurs logiques.

Code : Tout sélectionner

=========================================
dos-5.25-simple-densite_mo5
=========================================

Programme pour initialiser une disquette DOS
a partir de la cassette

============================================
Création disquette a partir de la cassette
Formate la disquette
Charge le fichier binaire DOS en $6000
Copie le DOS dans la disquette
Charge le fichier binaire FAT en $6000
Copie FAT et DIRECTORY dans la disquette
============================================
10 CLEAR,&H5FFF
15 PRINT"Formatage de la disquette..."
16 EXEC&HA00A
19 PRINT"Copie du DOS..."
20 LOADM"DOSMO5SD"
30 POKE&H2048,8
40 POKE&H2049,0 
50 POKE&H204A,0 
80 POKE&H204E,0 
92 A=&H60
100 FORI%=0 TO5
101 POKE&H204B,I% 
110 FORJ%=1 TO15 STEP2  
111 POKE&H204C,J%
112 POKE&H204F,A 
113 POKE&H2050,0
114 EXEC&HA004 
115 POKE&H204C,J%+1
116 POKE&H2050,128
117 EXEC&HA004 
118 A=A+1
119 NEXT
120 NEXT
199 PRINT"Initialisation FAT et DIRECTORY..."
200 LOADM"DOSFATSD"
201 A=&H60
202 POKE&H204B,20 
210 FORJ%=1 TO15 STEP2  
211 POKE&H204C,J%
212 POKE&H204F,A 
213 POKE&H2050,0
214 EXEC&HA004 
215 POKE&H204C,J%+1
216 POKE&H2050,128
217 EXEC&HA004 
218 A=A+1
219 NEXT
300 PRINT"Fin de traitement."
Daniel
L'obstacle augmente mon ardeur.

Jeff_HxC2001
Messages : 296
Enregistré le : 20 mars 2011 14:24

Re: MO5 et QDD

Message par Jeff_HxC2001 » 11 mai 2019 12:12

Merci mille fois, c'est ce qu'il me manquait. :)
Je vais déjà tester le formatage !

( il y a une doc de ces appels quelque-part ? )

__sam__
Messages : 4703
Enregistré le : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: MO5 et QDD

Message par __sam__ » 11 mai 2019 13:05

Oui c'est le MINIDOS présent dans tous les contrôleurs disks thomson: http://collection.thomson.free.fr/code/ ... ?XI=1&XJ=1
Samuel.
A500 Vampire V2+ ^8^, A1200(030@50mhz/fpu/64mb/cf 8go),
GVP530 (MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.

Jeff_HxC2001
Messages : 296
Enregistré le : 20 mars 2011 14:24

Re: MO5 et QDD

Message par Jeff_HxC2001 » 11 mai 2019 15:30

__sam__ a écrit :
11 mai 2019 13:05
(...)
C est parfait ! Merci ! :D

Jeff_HxC2001
Messages : 296
Enregistré le : 20 mars 2011 14:24

Re: MO5 et QDD

Message par Jeff_HxC2001 » 15 août 2019 15:47

J'ai pris mon temps mais voici à quoi m'a servi le MO5 et son interface QuickDisk : A tester/valider le nouveau firmware HxC pour Gotek avec l'émulation QuickDisk ! :)

https://hxc2001.com/download/floppy_dri ... _notes.txt

https://hxc2001.com/download/floppy_dri ... rmware.zip

Et voici également une image .QD formatée directement avec le MO5 et le CQ90-028 : Dans cette image on a tout : Le préambule, les headers des secteurs, les CRCs, les GAPs.. etc etc, exacts à l'impulsion près.

https://hxc2001.com/download/floppy_dri ... rmatted.QD

Quelques photos:

Image

Image

Image

Image

Image

Image

Merci encore pour c'est précieux renseignements !
:)

hlide
Messages : 1102
Enregistré le : 29 nov. 2017 10:23

Re: MO5 et QDD

Message par hlide » 15 août 2019 20:19

Et en terme de temps d'accès, ça "blaste" le vrai lecteur quick disc ?

__sam__
Messages : 4703
Enregistré le : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: MO5 et QDD

Message par __sam__ » 15 août 2019 23:05

En principe non. Le HxC ne fait que remplacer le support physique (la diskette). Il émule les signaux originaux au bit et au timing près depuis le contenu USB. Donc ca ne doit pas aller plus vite que le QDD normal sinon le driver thomson du qdd n'y comprendra rien. Bref, avec un gotek on ne va jamais plus vite que ce que le contrôleur d'origine de l'ordi attends.
Samuel.
A500 Vampire V2+ ^8^, A1200(030@50mhz/fpu/64mb/cf 8go),
GVP530 (MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.

hlide
Messages : 1102
Enregistré le : 29 nov. 2017 10:23

Re: MO5 et QDD

Message par hlide » 15 août 2019 23:31

oui pour ce qui est d'un vrai floppy disk mais là il s'agit d'un quick disc émulé comme un floppy disc : l'interface n'est pas le même. Je présumais sûrement à tort que le lecteur quick disk original contenait une "traduction" de l'interface FD -> QD. Donc le Gotek contient un firmware capable d'interpréter l'interface QD au lieu du FD : alors oui j'imagine, que l'on aura toujours autant un accès secteur tous les 8 secondes au pire cas.

__sam__
Messages : 4703
Enregistré le : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: MO5 et QDD

Message par __sam__ » 15 août 2019 23:39

C'est le contrôleur QDD qui est utilisé coté Thomson. On fonctionnera donc à la vitesse des signaux d'un vrai QDD, même si celui-ci est virtualisé sur une clef USB.
Samuel.
A500 Vampire V2+ ^8^, A1200(030@50mhz/fpu/64mb/cf 8go),
GVP530 (MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.

Jeff_HxC2001
Messages : 296
Enregistré le : 20 mars 2011 14:24

Re: MO5 et QDD

Message par Jeff_HxC2001 » 29 août 2019 07:43

Daniel a écrit :
11 mai 2019 11:43
On utilise les fonctions standard du contrôleur. Les paramètres sont passés par des POKE et l'appel est fait par EXEC. Plutôt qu'un long discours, voici le programme pour le DOS BASIC MO5 5"1/4 simple densité. Pour le QDD c'est pratiquement identique, sauf les numéros de piste et de secteurs: le QDD n'a qu'une piste avec les 400 secteurs entrelacés selon un ordre très particulier donné par une table. Dans ce programme on utilise les numéros de secteurs logiques.
Encore une question : Sachant que je peux maintenant générer des secteurs MFM QDD MO5, je peux convertir les .QD de dcmoto en MFM pour l'emulateur floppy. A propos de l’entrelacement et de cette fameuse table de correspondance : Comment sont organisés les fichiers .QD ? En secteur logiques séquentiellement ou a travers la table ? Et ou trouver cette table ?

(Pour info le MO5 au formatage numérote les secteurs de 1 à 400 sans entrelacement au niveau piste).

Et comment lancer les jeux ? J'imagine qu'ils sont "autobootable" ou qu'une simple commande "dos" suffit, ou faut il faire autre chose ?

Daniel
Messages : 11923
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: MO5 et QDD

Message par Daniel » 29 août 2019 08:21

Les fichiers .qd contiennent les 400 secteurs à la suite, mais attention : ils sont dans l'ordre des numéros de secteurs logiques (pas physiques).

Code : Tout sélectionner

//Table des secteurs logiques en fonction des secteurs physiques du Quick Disk
int qdsector[400] =
{
 321, 33,225,129,322, 34,226,130,323, 35,227,131,324, 36,228,132, //p20,2,14,8
 325, 37,229,133,326, 38,230,134,327, 39,231,135,328, 40,232,136,
 329, 41,233,137,330, 42,234,138,331, 43,235,139,332, 44,236,140,
 333, 45,237,141,334, 46,238,142,335, 47,239,143,336, 48,240,144,
 337,305,209,113,338,306,210,114,339,307,211,115,340,308,212,116, //p21,19,13,3
 341,309,213,117,342,310,214,118,343,311,215,119,344,312,216,120,
 345,313,217,121,346,314,218,122,347,315,219,123,348,316,220,124,
 349,317,221,125,350,318,222,126,351,319,223,127,352,320,224,128,
 353,289,193, 97,354,290,194, 98,355,291,195, 99,356,292,196,100, //p22,18,12,6
 357,293,197,101,358,294,198,102,359,295,199,103,360,296,200,104,
 361,297,201,105,362,298,202,106,363,299,203,107,364,300,204,108,
 365,301,205,109,366,302,206,110,367,303,207,111,368,304,208,112,
 369,273,177, 81,370,274,178, 82,371,275,179, 83,372,276,180, 84, //p23,17,11,5
 373,277,181, 85,374,278,182, 86,375,279,183, 87,376,280,184, 88,
 377,281,185, 89,378,282,186, 90,379,283,187, 91,380,284,188, 92,
 381,285,189, 93,382,286,190, 94,383,287,191, 95,384,288,192, 96,
 385,257,161, 65,386,258,162, 66,387,259,163, 67,388,260,164, 68, //p24,16,10,4
 389,261,165, 69,390,262,166, 70,391,263,167, 71,392,264,168, 72,
 393,265,169, 73,394,266,170, 74,395,267,171, 75,396,268,172, 76,
 397,269,173, 77,398,270,174, 78,399,271,175, 79,400,272,176, 80,
  17,241,145, 49, 18,242,146, 50, 19,243,147, 51, 20,244,148, 52, //p1,15,9,3
  21,245,149, 53, 22,246,150, 54, 23,247,151, 55, 24,248,152, 56,
  25,249,153, 57, 26,250,154, 58, 27,251,155, 59, 28,252,156, 60,
  29,253,157, 61, 30,254,158, 62, 31,255,159, 63, 32,256,160, 64,
   1,  9,  5, 13,  2, 10,  6, 14,  3, 11,  7, 15,  4, 12,  8, 16  //p0
};
Le lancement des applications sur QDD est semblable au lancement des applications sur disquette Thomson :
- Soit la disquette est bootable et lance automatiquement l'application, soit directement, soit par le programme "AUTO.BAT".
- Soit la disquette contient le QDOS, elle le charge au boot et on peut ensuite exécuter un programme BASIC par RUN"xxxx" ou un programme binaire par LOADM"xxxx",,R
- Sinon il faut démarrer avec une disquette QDOS pour le charger, puis mettre la disquette d'application et procéder comme dans le cas précédent.
Daniel
L'obstacle augmente mon ardeur.

Jeff_HxC2001
Messages : 296
Enregistré le : 20 mars 2011 14:24

Re: MO5 et QDD

Message par Jeff_HxC2001 » 29 août 2019 23:33

Super merci ! :D Et en plus ça fonctionne impec ! :mrgreen:

Image

Image

Image

Image

Image

Image

Je posterai ici une description du format bas niveau des secteurs.

Répondre