[Thomson] SDDRIVE

Placez ici vos trucs et astuces, étalez sans retenue votre savoir-faire et votre science qui va nous permettre de redonner une apparence neuve et fonctionnelle à nos bouzes.

Modérateurs : Papy.G, fneck, Carl

__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [Thomson] SDDRIVE

Message par __sam__ »

J'ai une question: j'ai remarqué que dans l'émulation SDDDrive de DCMoto, SDSEL n'est lancé que si on entre dans le basic1. Pour le basic2 il ne se passe rien de spécial. Est-ce normal ?

J'imagine que le basic2 n'initialise pas la carte SD comme attendu et qu'il faille passer par $A02E/$E02E dans ce cas?
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel »

Toutes mes excuses pour la réponse tardive, je n'avais pas vu la question.

Effectivement, les deux Basic réagissent différemment. L'explication est la suivante :
- Le Basic 1.0 n'a pas le DOS. Il commence par chercher une disquette DOS en appelant la fonction DKBOOT en $A007 ou $E007
- Les Basic 128 ou 512 ont le DOS intégré. Ils n'ont pas besoin de disquette bootable et n'appellent pas DKBOOT

Le contrôleur SDDRIVE appelle le programme de sélection sddrive.sel dans deux cas :
- Au premier appel de DKBOOT après la mise sous tension de l'ordinateur
(pas aux appels suivants de DKBOOT, car quand un fichier .sd est sélectionné il faut pouvoir booter dessus)
- A chaque appel de la fonction DKSEL, nouvelle fonction ajoutée spécialement pour SDDRIVE, en $A025 ou $E025

En Basic 128 ou 512, comme le programme de sélection n'est pas lancé automatiquement, on peut l'appeler de deux façons :

1) Par EXEC $A025 (ou $E025) : Après le choix du fichier .sd on revient au Basic. On peut alors taper n'importe quelle commande Basic (DIR, RUN"xxxx", etc.). En particulier RUN"AUTO.BAT" pour lancer une application ou EXEC $A007/$E007 si la disquette est bootable.

2) Par EXEC $A007 (ou $E007) : Après le choix du fichier .sd DKBOOT est exécuté automatiquement. Ca ne marche que si le fichier .sd choisi est bootable. Et ça ne marche qu'une fois, juste après la mise sous tension, pour la raison invoquée plus haut.

A noter que les dernières versions du contrôleur CS91-280 (à partir de janvier 2018) ont été modifiées pour fonctionner sur le même principe que SDDRIVE. Ce n'est pas le cas des versions précédentes, qui avaient un comportement légèrement différent, en particulier sur TO8, TO8D et TO9+.
Daniel
L'obstacle augmente mon ardeur.
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel »

Suite à l'essai de SDDRIVE avec la cartouche LOGO, il est apparu que cette cartouche possède sa propre routine de boot, donc n'appelle pas la fonction DKBOOT, et donc ne lance pas automatiquement le programme sddrive.sel pour sélectionner le fichier .sd. On peut appeler sddrive.sel par .ROUT 57381, mais c'est moins élégant qu'un lancement automatique.

Pour résoudre le problème, une solution est d'appeler automatiquement sddrive.sel, non plus sur la fonction DKBOOT (lancement du boot), mais sur la fonction RESET (initialisation du contrôleur). Les tests effectués ce matin sont positifs, tout fonctionne bien avec la MEMO7 LOGO et la disquette des procédures de la tortue Jeulin. Il reste à faire d'autres tests en BASIC sur toutes les machines pour valider la nouvelle version de l'EPROM de SDDRIVE. A suivre...
Daniel
L'obstacle augmente mon ardeur.
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel »

L'idée était bonne et fonctionnait sur toutes les machines de première génération, aussi bien en BASIC qu'en LOGO.
Par contre, avec les MO6, PC128, TO8, TO8D, TO9+, le RESET du contrôleur est lancé avant l'initialisation du BASIC ou du LOGO, ça ne marche pas.

La nouvelle idée est de lancer le programme de sélection de carte SD (sddrive.sel) non pas à l'appel de DKBOOT, ni de RESET, mais lors du premier appel de la fonction de lecture d'un secteur. J'ai modifié le programme et testé avec dcmoto dans toutes les configurations de BASIC et de LOGO. Ca marche 8)

En BASIC c'est exactement comme avant (sur DKBOOT), puisque DKBOOT commence par lire le secteur 1 de la piste 0.
Le LOGO n'appelle pas la fonction DKBOOT du contrôleur, puisque la procédure de boot est sur la cartouche. Par contre cette procédure lit elle aussi le secteur 1 de la piste 0, donc le programme sddrive.sel de sélection de la carte SD se lance automatiquement.

Sur TO7/70, il suffit de cliquer sur l'icône de la disquette et de choisir le fichier .sd dans la liste. Le programme DEPART.LOG se lance automatiquement. Ensuite on peut taper MENU, puis RAMENE "JEULIN JEULIN

screenshots.png
screenshots.png (14.15 Kio) Consulté 4101 fois

Il me reste à tester la nouvelle EPROM avec les vraies machines, mais je n'ai aucune inquiétude, ça va marcher.
Si number-one est d'accord je lui enverrai aussi la nouvelle EPROM pour essai sur sa configuration, avec la tortue.
Daniel
L'obstacle augmente mon ardeur.
number-one
Messages : 58
Inscription : 19 mars 2017 10:45

Re: [Thomson] SDDRIVE

Message par number-one »

Oui Daniel je suis d'accord pour tester la nouvelle EPROM
et j'ai un ami qui peut la graver.
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel »

Si tu as la possibilité de la graver c'est encore mieux, ça évite de l'envoyer par la Poste.

Dans le fichier .zip ci-dessous, il y a deux fichiers, le premier pour une EPROM de 2Ko style 2716, la deuxième pour une EPROM de 4Ko style 2732. Dans SDDRIVE on peut utiliser l'une ou l'autre. Avec une 2732 seuls les deux derniers Koctets sont utilisés. C'est ce qu'il y a dans ton SDDRIVE.
sddrive_rom_2080929.zip
(3.32 Kio) Téléchargé 105 fois
C'est une version expérimentale non garantie, car je n'ai pas encore eu le temps de la tester avec tous les ordinateurs et toutes les configurations.

Attention en changeant l'EPROM de ne pas tordre les pattes, il faut être très prudent en la retirant et surtout en la remettant. Ne pas appuyer fort tant que toutes les pattes ne sont pas en bonne position dans le support.
Daniel
L'obstacle augmente mon ardeur.
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel »

Tous les tests avec la nouvelle version de l'EPROM de SDDRIVE sont bons avec le MO5, le MO6, le TO8 et le TO8D. Il y a même une petite amélioration car sddrive.sel se lance automatiquement en Basic 128 sur MO6 et en Basic 512 sur TO8. Ce n'était pas le cas avec la version 20180702, puisqu'il fallait taper une commande EXEC pour lancer le programme de sélection.

J'attends le résultat des tests en LOGO sur TO7/70 pour diffuser officiellement la nouvelle version.
Daniel
L'obstacle augmente mon ardeur.
jasz
Messages : 1313
Inscription : 05 oct. 2016 20:05
Localisation : Quelque part dans le 31

Re: [Thomson] SDDRIVE

Message par jasz »

Intéressant :)

Pour ceux qui ne peuvent ou ne savent pas reprogrammer l'EPROM (comme moi par exemple :oops: ), il y a une solution pour cette MAJ?
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel »

Ah oui, j'ai oublié de le préciser, mais c'est comme pour le contrôleur CS91-280 : Je fournis la dernière version de l'EPROM de SDDRIVE en échange d'un don de 5€, tous frais compris pour expédition en France.

Dès que possible j'ajouterai cette information dans le post concernant la vente de sddrive : viewtopic.php?f=10&t=9196
Daniel
L'obstacle augmente mon ardeur.
number-one
Messages : 58
Inscription : 19 mars 2017 10:45

Re: [Thomson] SDDRIVE

Message par number-one »

On a prévu de faire l'essai demain mardi, je vous tiens au courant ;)
number-one
Messages : 58
Inscription : 19 mars 2017 10:45

Re: [Thomson] SDDRIVE

Message par number-one »

Bonsoir, mon ami Jacques a gravé la rom 2080929 avec succès sur l'EPROM d'origine fourni avec le SDDRIVE.

J'ai fait le test sur mon TO7/70 en logo et avec le programme tortue.

Cela fonctionne parfaitement comme sur les captures d'écran sur ce lien
viewtopic.php?f=18&t=8448&p=143152#p143065

Félicitions Daniel !

Par contre je n'ai pas testé avec le basic 1.0
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel »

Merci pour ta collaboration. De mon côté j'utilise la nouvelle version de SDDRIVE depuis trois jours sur plusieurs ordinateurs différents et je n'ai constaté aucune anomalie. On peut donc valider cette nouvelle version, elle sera diffusée avec les prochains SDDRIVE et je l'ai ajoutée à la page officielle : http://dcmoto.free.fr/bricolage/sddrive/index.html
Daniel
L'obstacle augmente mon ardeur.
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel »

Pour faciliter l'intégration de SDDRIVE dans un boîtier Thomson il existe un module pour carte microSD avec buffer d'adaptation au niveau TTL beaucoup plus petit que le module Catalex : https://www.sparkfun.com/products/13743

Image Image

Il est très petit et n'a que deux inconvénients : son prix élevé et son brochage différent de celui du module Catalex.
Pour le prix attendons les copies chinoises bon marché. Le brochage n'est pas un problème si on le relie avec des fils.

Attention, il existe aussi le même sans buffer d'adaptation de niveau et sans alimentation 3.3V. Ne pas confondre, ce dernier ne convient pas, vérifiez bien au dos la présence des deux circuits intégrés.
Daniel
L'obstacle augmente mon ardeur.
OlivierH
Messages : 63
Inscription : 22 janv. 2017 00:42
Localisation : AUCH (Gers)
Contact :

Re: [Thomson] SDDRIVE

Message par OlivierH »

Hello,

J'ai un petit soucis avec ma version du SDDrive (20180702 je pense) sur mon MO5

Après avoir chargé une "disquette" DOS+BASIC, tout va bien jusqu'à ce que j'appuie sur "Initial Prog." (le petit carré blanc en haut à gauche du MO5 :) )
Dans ce cas, plus moyen d'accéder à la "disquette".

Le problème c'est que quand je code, bien souvent le "Initial. Prog" est la seule solution pour sortir de mon merdier ^^
Pour pallier à ça, il faut que je pense à sauvegarder systématiquement avant chaque RUN, puis à refaire un redémarrage complet du MO5 (couper l'alim et patienter 10 secondes)... c'est pas super pratique ^^

Est-ce que la nouvelle version de l'EPROM corrigerait ce problème ?
Dernière modification par OlivierH le 01 nov. 2018 08:59, modifié 1 fois.
Olivier
Il n'y a que 10 sortes de gens. Ceux qui lisent le binaire, et les autres.
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel »

Dans la version 20180702 l'appui sur le bouton Initial. Prog ne donne pas toujours le même résultat. Souvent on perd l'accès à la disquette, d'autres fois on plante le MO5 (en particulier dans les jeux commerciaux). Si par chance on revient au BASIC en perdant l'accès à la disquette on peut relancer le programme de sélection avec la commande DOS, mais dans ce cas tout le contenu de la mémoire est effacé, ce qui n'est pas l'objectif recherché.

La dernière version 20180930 réagit différemment, c'est sûr, mais je ne sais pas si elle résout le problème. Il faut que je fasse le test (pas avant la fin de la semaine car je ne suis pas chez moi). Je donnerai le résultat ici, et si c'est bon Olivier aura droit à une nouvelle EPROM gratuite pour avoir contribué aux tests. Sinon je chercherai une solution pour la prochaine version. A suivre...

[Edit 1]
Avec l'émulateur dcmoto la nouvelle version de SDDRIVE ne résout pas le problème. L'appui sur la touche Initial. Prog écrase des zones mémoire utilisées par SDDRIVE et plante le MO5. Mais ça ne prouve rien, il faut attendre l'essai avec un vrai MO5.

[Edit 2]
Après étude de la procédure d'initialisation du MO5, je confirme que les zones de travail du contrôleur SDDRIVE sont remises à zéro lors de l'appui sur le bouton blanc. Reste à savoir si le programme de sélection se relance normalement et rend la main au BASIC. Seul un essai sur la vraie machine peut le confirmer. Réponse en début de semaine prochaine.
Daniel
L'obstacle augmente mon ardeur.
Répondre