TO7/70, problème avec un port d'extension

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

Datadrainer
Messages : 27
Inscription : 04 déc. 2021 19:04

TO7/70, problème avec un port d'extension

Message par Datadrainer »

Bonjour,
Depuis quelque temps je fais fait un audit de mon ancien matériel informatique. Aujourd'hui c'était au tour d'un de mes Thomson et de ses extensions, il s'agit d'un TO7/70 avec clavier mécanique. Cela n'a pas bien commencé car après un deuxième allumage, la capacité de protection a explosée et la chaleur dégagée à fondre le fusible à côté. Rien de bien grave, j'ai des condensateurs équivalents en stock et après un remplacement de ces deux composants, mise à part l'odeur, tout est rentré dans l'ordre et la machine fonctionne parfaitement. J'ai donc poursuivi en effectuant un grand nettoyage sur les lecteurs/enregistreurs, à savoir deux lecteurs de cassettes et un lecteur de disquettes 5"1/4. Il y avait quelques soucis avec les MK 90-070, mais après un démontage et quelques soudures, ils fonctionnent à nouveau parfaitement ce qui m'a permis de tester l'extension de mémoire qui fonctionne elle aussi parfaitement. Là où mon premier vrai problème est survenu, c'est lors du test du DD 90-320, celui-ci est associé à un contrôleur CD 90-640. J'ai utilisé le premier port d'extension du TO7/70.
L'alimentation du DD 90-320 s'allume et le lecteur de disquette fait son bruit normal de démarrage (un petit clac). Lorsque je démarre le TO7/70 le contrôleur est bien détecté car l'option 2 avec l'icône d'une disquette s'affiche mais lorsque je la sélectionne, BASIC me donne très rapidement le message d'erreur "?IO ERROR In 0" sans que le lecteur de disquette n'est tenté de faire quoi que ce soit. Afin de déterminer où était le problème j'ai connecté un lecteur de disquette 3"1/2 branché sur un adaptateur. Et rebelote... Rien. Je me suis alors dis que le problème venait du contrôleur. Mais avant de le déclarer coupable j'ai tenté de le branché sur le port 2 et là, le moteur qui s'active, la LED qui s'allume et le lecteur qui tente de lire la disquette. Sans succès, à nouveau l'erreur "?IO ERROR In 0" mais après plusieurs secondes de tentative de lecture de la disquette. Je pense que cela est normal car j'ai mis une disquette formatée en FAT12. Je rebranche le lecteur d'origine et cela marche aussi. J'ai des disquettes DOS BASIC pour tester mais je pense qu'elles ne doivent plus être lisible. Je testerais plus tard après avoir vérifier que les têtes du lecteur soient propres et bien alignées. Donc, pour en revenir à mon problème, il vient du port 1 du TO7/70. Mais si il y a un problème avec ce port, pourquoi le contrôleur est-il détecté lors du démarrage ?
Il y a de grands spécialistes des machines MOTO ici, aussi l'un de vous aura peut-être une idée pour m'aider à résoudre ce problème. Peut-être y avez-vous déjà été confronté.
Je vous remercie d'avance pour toute l'aide que vous saurez m'apporter :)
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: TO7/70, problème avec un port d'extension

Message par Daniel »

Le principal problème des connecteurs d'extension des ordinateurs Thomson est l'oxydation. Elle provoque de mauvais contacts, surtout quand ils n'ont pas été utilisés depuis longtemps. La solution est le nettoyage avec un abrasif léger, par exemple une gomme à encre. La pulvérisation d'un produit anti-oxydant pour contacts est également conseillée.

On peut expliquer la détection du contrôleur et le non fonctionnement du lecteur par un mauvais contact sur une ou deux broches seulement. S'il y a une connexion correcte sur les autres broches, il suffit de pouvoir lire les premiers octets de la ROM du contrôleur pour considérer qu'il est présent. Mais ça ne garantit pas le bon fonctionnement si toutes les connexions ne sont pas correctes.

L'hypothèse du mauvais contact, bien qu'extrêmement probable, n'exclut pas une autre cause. Par exemple une piste coupée sur la carte mère. On peut vérifier à l'ohmmètre que tous les contacts du premier connecteur sont reliés électriquement au contact équivalent du deuxième connecteur.

Ensuite, pour la lecture des disquettes, il faut commencer à vérifier que les rails du mécanisme supportant les têtes de lecture ne sont pas bloqués par de la graisse figée. Un nettoyage soigneux peut suffire. Pour s'assurer que le lecteur fonctionne, il faut formater une disquette, écrire un fichier et essayer de le relire. Si ce test fonctionne, le lecteur est bon. Le problème peut venir des disquettes ou d'un mauvais alignement des têtes.
Daniel
L'obstacle augmente mon ardeur.
Fool-DupleX
Messages : 2284
Inscription : 06 avr. 2009 12:07

Re: TO7/70, problème avec un port d'extension

Message par Fool-DupleX »

Entièrement d'accord avec Daniel. Nettoyer les connecteurs et aussi le connecteur femelle du contrôleur, désoxydant etc. enfin les trucs usuels.

C'est bien le BASIC 1.0 que tu utilises ? Le BASIC 128 pourrait simplifier les tests, vu que le DOS est intégré. Il permettrait par exemple de tenter un formatage pour observer ce qu'il se passe.

La graisse figée sur le lecteur DD90-320 je n'y crois pas trop, mais enfin pourquoi pas.

Est-ce que le câble est branché dans le bon sens ? C'est un grand classique aussi. S'il est à l'envers, tout semblera normal, mais le lecteur ne bronchera pas.
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: TO7/70, problème avec un port d'extension

Message par Daniel »

Il est évidemment beaucoup plus facile d'accéder à la disquette avec le BASIC 128, mais même avec le BASIC 1.0 on peut formater et écrire sur une disquette sans le DOS. Je l'ai déjà fait plusieurs fois, en particulier pour recréer une disquette DOS à partir d'un fichier sur cassette ou carte SD.

Il faut spécifier les paramètres des commandes par des POKE et appeler ensuite directement la routine du contrôleur (DKFORMAT ou DKCONT) avec un EXEC. Il faut du temps et du courage, mais ça marche bien...
Daniel
L'obstacle augmente mon ardeur.
Datadrainer
Messages : 27
Inscription : 04 déc. 2021 19:04

Re: TO7/70, problème avec un port d'extension

Message par Datadrainer »

Merci pour toutes ces réponses.
Oui exact. C'est la première cause à laquelle j'ai pensé, j'aurais dû préciser que j'ai nettoyé les contacts avec du nettoyant contact WD-40 et cela à deux reprise mais sans changement et que visuellement je n'ai pas constaté de problème sur la carte mère. Je testerai la continuité des pistes sans doute dans la journée. J'ai les disquettes originales du DOS mais je ne pense pas qu'elles fonctionnent encore et j'ai peur de les abîmer au cas ou les têtes de lecture du lecteur ne soient plus alignées. Il y a la possibilité de rayé la surface du disque.
En effet un BASIC 128 aiderai bien, mais malheureusement je n'en ai pas en version MEMO 7, juste en version disquette. Ayant un programmeur d'EEPROM je pensai justement à fabriquer une MEMO 7 universelle de Daniel pour en avoir un de disponible sous la main, car en trouver un d'occasion aujourd'hui relève du miracle...
J'ai pas mal de docs sur ces machines, mais pour l'heure je ne me sens pas de tenter de formater une disquette par des appels POKE, rien que rechercher les adresses risque de prendre plus de temps que de commander les pièces d'une MEMO 7 universelle et de l'assembler. Cela dis c'est intéressant de savoir qu'il est possible de le faire ainsi ! :P
Cela m'embête de démonter le TO7/70 à nouveau car les connecteurs du clavier sont ultra-fragiles. Mais prévoyant que je devrais peut-être le faire un jour à nouveau, j'ai profité de la réparation de l'alim pour remplacer le fils de masse soudé entre le shield sous la CM et l'alim par un connecteur détachable facilitant déjà une partie de l'opération.
Je vous tiens informé des tests et de ce qu'ils révéleront. Merci encore.
Fool-DupleX
Messages : 2284
Inscription : 06 avr. 2009 12:07

Re: TO7/70, problème avec un port d'extension

Message par Fool-DupleX »

Il y a un ou deux condensateurs dans le contrôleur CD90-640 qui peuvent poser problème, en particulier celui d'appel. S'il est défectueux, il arrive que le contrôleur ne soit pas correctement détecté et configuré à l'allumage. Ca se traduit par devoir rallumer une ou deux fois la machine pour qu'il fonctionne.

Si les disquettes ont été conservées dans de bonnes conditions, elles fonctionneront. Mais il est préférable de tester avec des disquettes qu'on peut abimer sans risque. L'astuce de Daniel est excellente, elle permettra de tester la mécanique du lecteur. Peut-être pourrais-tu (Daniel) livrer ici un petit programme BASIC qui fait les bons poke ? M'est avis que ça devrait tenir en un bon vieux deulignes.

Ceci dit, je rappelle l'existence de la Mégarom T.2, qui contient les BASIC 1.0 et BASIC 128, entre autres choses.
Datadrainer
Messages : 27
Inscription : 04 déc. 2021 19:04

Re: TO7/70, problème avec un port d'extension

Message par Datadrainer »

@Fool-DupleX
Merci pour le lien de la Mégarom T.2, bon travail. Je ne connaissais pas. Elle est fournie avec toute une collection de logiciels. Je ne sais pas si c'est légal, mais cela permettrai d'avoir BASIC 1.0, BASIC 128 et l'assembleur sur une seule cartouche. Je verrais, j'ai une petite collection de MEMO 7 et c'est vraiment le BASIC 128 qui me manque.
Concernant les disquettes, c'est le problème. Elles n'ont, tout comme les machines pas été spécialement conservée dans de bonnes conditions. Ne pouvant faire autrement, tous le matériel a été stocké pendant plus de 20 ans dans une grange relativement humide en hiver et chaude en été. Certes j'avais pris des précautions en protégeant au maximum avec des sacs hermétiques, du plastique bulles et beaucoup de papier journal. Aussi tout semble en parfait état visuellement. Mais je ne pense pas que les données des disquettes aient survécues à cela, à moins d'un miracle. Certains composants ont pu aussi se dégrader. Par exemple le condensateur de protection en entrée d'alim. Si il a explosé je pense que cela est du à un stress du passé du à des chocs électriques suivi d'une lente dégradation au fil des années de stockages.
Je testerai les condensateurs mais que ce soit sur le contrôleur disquette ou sur la carte mère, tous les électrolytiques sont en parfait état visuels, ce qui ne veut rien dire, mais qui donne déjà une idée. Et là c'est vraiment uniquement le port 1 (celui de gauche) qui pose soucis, car le contrôleur est toujours détecté, mais le lecteur jamais accédé. Contrairement aux deux autres ports qui eux semblent fonctionner normalement (tentative de lecture de disquette) également à chaque fois. Je dois encore tester 2 lecteurs DD-90-352 et un TO8. Ayant le contrôleur CD 90-351, je testerais un des lecteurs sur le TO7/70 dans le même temps. Peut-être aurais-je de nouveaux indices ainsi.
Je vous dirai.
Datadrainer
Messages : 27
Inscription : 04 déc. 2021 19:04

Re: TO7/70, problème avec un port d'extension

Message par Datadrainer »

Petit hors sujet. Mais je viens de voir que la Mégarom T.2 est fournie avec le logiciel MacroAssembler. Est-il similaire dans son fonctionnement à la MEMO 7 assembleur 6809 ? Avez-vous rédigé une documentation ? Cela m’intéresserai beaucoup. Merci.
Fool-DupleX
Messages : 2284
Inscription : 06 avr. 2009 12:07

Re: TO7/70, problème avec un port d'extension

Message par Fool-DupleX »

Le logiciel MacroAssembler est une réécriture presque intégrale par Prehisto du fameux assembleur 6809 de Microsoft. Totalement rétro-compatible, il est aussi trois fois plus rapide à l'assemblage, l'affichage dans l'éditeur de code est très rapide lui aussi et il y a une foule de fonctionnalités additionnelles, dont les macros, l'inclusion de fichiers binaires et la compatibilité MO/TO transparente (on peut travailler en mode MO sur TO et vice-versa).

Tous les détails ici : http://dcmoto.free.fr/programmes/assemb ... index.html
Datadrainer
Messages : 27
Inscription : 04 déc. 2021 19:04

Re: TO7/70, problème avec un port d'extension

Message par Datadrainer »

Fool-DupleX a écrit : 05 déc. 2021 12:50 Le logiciel MacroAssembler est une réécriture presque intégrale par Prehisto du fameux assembleur 6809 de Microsoft. Totalement rétro-compatible, il est aussi trois fois plus rapide à l'assemblage, l'affichage dans l'éditeur de code est très rapide lui aussi et il y a une foule de fonctionnalités additionnelles, dont les macros, l'inclusion de fichiers binaires et la compatibilité MO/TO transparente (on peut travailler en mode MO sur TO et vice-versa).

Tous les détails ici : http://dcmoto.free.fr/programmes/assemb ... index.html
Super, merci beaucoup ! :D
Fool-DupleX
Messages : 2284
Inscription : 06 avr. 2009 12:07

Re: TO7/70, problème avec un port d'extension

Message par Fool-DupleX »

Elle est fournie avec toute une collection de logiciels. Je ne sais pas si c'est légal
C'est avant tout une cartouche programmable de 2 Mo. Nous avons mis la compilation de logiciels en bonus, mais on peut l'effacer pour y mettre ce que l'on veut. Nous avons pu vérifier pour une partie de ces logiciels qu'ils sont effectivement libres, et pour les autres, leur situation en termes de droits est floue. Plus aucun des éditeurs n'existe si ce n'est Microsoft. Vu qu'ils ont rendu le code de MS-DOS public, on a le droit de penser que ce qui a été produit avant leur importe peu.
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: TO7/70, problème avec un port d'extension

Message par Daniel »

Fool-DupleX a écrit : 05 déc. 2021 10:41 Peut-être pourrais-tu (Daniel) livrer ici un petit programme BASIC qui fait les bons poke ? M'est avis que ça devrait tenir en un bon vieux deulignes.
J'ai écrit un tel programme en mars 2019 pour créer une disquette DOS 5"1/4 simple densité avec le lecteur UD 90-070.
https://forum.system-cfg.com/viewtopic. ... 1&start=58

Je l'ai retrouvé dans mes archives.
L'adaptation au DOS 5"1/4 double densité est très facile.
Voici le programme BASIC :

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."
Les fichiers binaires et le fichier .k7 :
dosmo5sd_fichiers.zip
(7.69 Kio) Téléchargé 37 fois
dosmo5sd_mo5k7.zip
(7.66 Kio) Téléchargé 39 fois
Daniel
L'obstacle augmente mon ardeur.
Fool-DupleX
Messages : 2284
Inscription : 06 avr. 2009 12:07

Re: TO7/70, problème avec un port d'extension

Message par Fool-DupleX »

Super ! Donc le formatage simple tient en une instruction : EXEC &HE00A, ce qui permet déjà de se faire une idée de l'état du lecteur.
Datadrainer
Messages : 27
Inscription : 04 déc. 2021 19:04

Re: TO7/70, problème avec un port d'extension

Message par Datadrainer »

Super ! Merci Daniel. J'aurais aimé tester ça immédiatement mais...
De ce que je comprends, c'est une bien plus grosse partie du code qui initialise la disquette.
En plus ce que fait le programme, c'est de copier le DOS depuis un cassette sur la disquette fraîchement formatée, un peu à la manière d'un FORMAT /S sous MS-DOS.
Maintenant pour isoler le code d'initialisation du code de copie, mon assembleur 6800 est un peu rouillé. Simplement en lisant les adresses et les variables, cela sans compter la double itération qui change pas mal de chose; là comme ça, je n'en suis pas capable. Il faudra un peu d'analyse, mais je garde ça précieusement pour les soirées à venir ;)
J'ai passer une partie de l'après-midi à tester la carte mère sans arriver à trouver de problème... J'ai bien vérifier toute la partie des ports à la loupe et au multimètre sans succès. Il faudrait faire une analyse à l'oscilloscope. J'ai des bouquins sur l’électronique de ces machines, mais je ne les ai pas encore déballés et peut-être contiennent-ils des erreurs. Pourriez-vous, s'il vous plaît, me donner le pinout des ports d'extensions ?
De ce que j'ai compris, mais je peux avoir tout faux. Il semble d'après l'allure des pistes que les ports ne puissent pas fonctionner tous en même temps. Je ne pense pas que la machine gère les interruptions, donc je pense qu'il doit y avoir une ligne de sélection pour lire/écrire sur un port donné. Pouvez-vous confirmer ? Merci :)
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: TO7/70, problème avec un port d'extension

Message par Daniel »

Le mauvais fonctionnement du port d'extension n'est pas un problème électronique, car les trois ports sont reliés électriquement broche à broche.
Si un port fonctionne, les autres doivent fonctionner, sinon il y a une rupture de piste ou un mauvais contact, facile à trouver avec un ohmmètre, comme je l'ai indiqué dans un post précédent.

Tous les schémas du matériel sont sur mon site : http://dcmoto.free.fr/documentation/schemas.html

ports_to7-70.png
ports_to7-70.png (143.61 Kio) Consulté 1394 fois
connecteurs.png
connecteurs.png (25.47 Kio) Consulté 1391 fois
Daniel
L'obstacle augmente mon ardeur.
Répondre