[Thomson] SDDRIVE
Modérateurs : Papy.G, fneck, Carl
-
- Messages : 7970
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: [Thomson] SDDRIVE
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?
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Re: [Thomson] SDDRIVE
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+.
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.
L'obstacle augmente mon ardeur.
Re: [Thomson] SDDRIVE
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...
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.
L'obstacle augmente mon ardeur.
Re: [Thomson] SDDRIVE
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
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
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.
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
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
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.
L'obstacle augmente mon ardeur.
-
- Messages : 58
- Inscription : 19 mars 2017 10:45
Re: [Thomson] SDDRIVE
Oui Daniel je suis d'accord pour tester la nouvelle EPROM
et j'ai un ami qui peut la graver.
et j'ai un ami qui peut la graver.
Re: [Thomson] SDDRIVE
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. 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.
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. 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.
L'obstacle augmente mon ardeur.
Re: [Thomson] SDDRIVE
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.
J'attends le résultat des tests en LOGO sur TO7/70 pour diffuser officiellement la nouvelle version.
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
Re: [Thomson] SDDRIVE
Intéressant
Pour ceux qui ne peuvent ou ne savent pas reprogrammer l'EPROM (comme moi par exemple ), il y a une solution pour cette MAJ?
Pour ceux qui ne peuvent ou ne savent pas reprogrammer l'EPROM (comme moi par exemple ), il y a une solution pour cette MAJ?
Re: [Thomson] SDDRIVE
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
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.
L'obstacle augmente mon ardeur.
-
- Messages : 58
- Inscription : 19 mars 2017 10:45
Re: [Thomson] SDDRIVE
On a prévu de faire l'essai demain mardi, je vous tiens au courant
-
- Messages : 58
- Inscription : 19 mars 2017 10:45
Re: [Thomson] SDDRIVE
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
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
Re: [Thomson] SDDRIVE
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.
L'obstacle augmente mon ardeur.
Re: [Thomson] SDDRIVE
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
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.
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.
L'obstacle augmente mon ardeur.
Re: [Thomson] SDDRIVE
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 ?
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.
Il n'y a que 10 sortes de gens. Ceux qui lisent le binaire, et les autres.
Re: [Thomson] SDDRIVE
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.
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.
L'obstacle augmente mon ardeur.