CS91-280 - Contrôleur de carte SD pour interface SDMOTO ou SDMO

Le contrôleur CS91-280, associé à l'interface SDMOTO ou SDMO,
permet de simuler un contrôleur et deux lecteurs de disquette 3"1/2
pour tous les ordinateurs 8 bits Thomson (MO ou TO, sauf le TO9).
Les disquettes, sous forme de fichiers .sd copiés sur la carte SD, sont
accessibles en Basic ou en langage machine. Toutes les applications et
tous les jeux sur disquette peuvent être lancés à partir de la carte SD.

Les interfaces SDMOTO et SDMO permettent à tous les ordinateurs Thomson d'accéder aux secteurs physiques d'une carte mémoire microSD. Le contrôleur CS91-280 ajoute la logique nécessaire pour simuler un contrôleur et deux lecteurs de disquettes, totalement compatibles avec le format des disquettes Thomson. Les disquettes sont remplacées par des fichiers .sd copiés sur la carte SD. C'est le système idéal pour tous les utilisateurs, en particulier les joueurs et les développeurs. Il est très facile à réaliser. La version "boîtier nanoréseau" ne nécessite aucune soudure. La simplicité d'utilisation et le coût réduit du contrôleur CS91-280 sont des avantages décisifs par rapport aux autres systèmes. C'est le seul choix possible si l'ordinateur n'est pas équipé d'un contrôleur de disquette Thomson.

Auteur : Daniel Coulom - Site internet : Emulateur DCMOTO - Dernière mise à jour le 14 mai 2018

previous Retour à la page Bricolage

Le matériel : contrôleur CS91-280 et interface SDMO ou SDMOTO


Le système de simulation de disquette sur carte SD est composé de deux périphériques :

- Le contrôleur CS91-280 connecté au port d'extension de l'ordinateur. Il simule un contrôleur de disquette Thomson.


cs91280


- L'interface avec la carte SD : SDMO pour le connecteur magnétophone du MO5, ou SDMOTO pour le connecteur manette de tous les ordinateurs Thomson.


sdmo     sdmoto


Le logiciel du contrôleur est stocké dans une EPROM. Il permet d'initialiser la carte SD et de simuler un contrôleur de disquette avec deux lecteurs en ligne, soit 4 unités Thomson (4 faces de disquettes), pour un total de 1280 Koctets. Ce nombre se retrouve dans l'identification CS91-280 : CS9 signifie "Contrôleur de carte SD", tout comme CD9 signifie "Contrôleur de disquette" dans CD90-015, CD90-640 ou CD90-351.

L'EPROM du contrôleur a une taille de 4Ko, elle est composée de deux banques de 2Ko. La banque 0 contient la version pour SDMOTO et la banque 1 contient la version pour SDMO. Elles sont vues par l'ordinateur aux mêmes adresses qu'un contrôleur de disquette Thomson. La banque visible par le système est sélectionnée par un commutateur à deux positions.

On peut construire le contrôleur CS91-280 à partir d'un circuit imprimé, ou utiliser un contrôleur nanoréseau et changer l'EPROM.

Depuis janvier 2018 la version "circuit imprimé" avec interface SDMOTO est proposée entièrement montée et testée.
La photo et le lien pour commander sont en bas de cette page.

Construction du contrôleur CS91-280 avec un circuit imprimé


Le schéma ci-dessous correspond aux versions 2017-09 et suivantes du circuit imprimé.
Pour les versions précédentes le schéma est différent, consultez les versions archivées de ce document : version 2014 et version 2017


cs91280-2017_schema


Le circuit imprimé est prévu pour une EPROM 2732 en boîtier DIL24. Une EPROM de plus grande capacité en boîtier DIL28 ne convient pas.
Un commutateur à deux positions permet de configurer le contrôleur pour SDMOTO ou SDMO.


cs91280_pcb_nu


Tous les composants sont bon marché et faciles à trouver, sauf le connecteur "nez de carte" 2x19 contacts. On peut encore se le procurer chez quelques revendeurs pour professionnels, mais à des prix trop élevés. J'utilise un connecteur 2x20 contacts disponible sur ebay (chercher industrial card edge connector). Après avoir enlevé deux broches au milieu, il faut le scier pour enlever cette paire de contacts et raccorder les deux morceaux après les avoir ajustés à la lime.
Le connecteur est écarté du circuit imprimé par des surépaisseurs aux quatre angles. Sous le connecteur il subsiste un espace d'environ 1 mm, il ne faut pas chercher à le supprimer.
Bien observer sur la photo la position et l'orientation des circuits intégrés. Insérer l'EPROM dans son support avec beaucoup de précautions pour ne pas tordre les pattes.

Le contenu de la dernière version de l'EPROM est ici : cs91280_20180514.bin

Il est possible d'obtenir le circuit imprimé, l'EPROM programmée et testée, le contrôleur complet en kit ou le contrôleur testé et prêt à l'emploi.
Consultez le dernier paragraphe en bas de cette page pour plus de précisions.


Construction du contrôleur CS91-280 avec un boîtier nanoréseau


Les contrôleurs nanoréseau ont été produits par Thomson a plusieurs centaines de milliers d'exemplaires. La plupart des collectionneurs en ont plusieurs et ne les utilisent pas. On les trouve occasionnellement dans les sites de vente.

cs91280

La préparation du contrôleur consiste à ouvrir le boîtier (4 vis), changer l'eprom, refermer le boîtier, coller une étiquette. On ne peut pas faire plus simple.

Pour retirer l'ancienne EPROM, utilisez un outil spécial pour l'extraction des circuits intégrés. A défaut un petit tournevis, manipulé avec précaution, permet de soulever tour à tour, progressivement, les quatre coins, et d'enlever ensuite le circuit sans tordre les pattes.

Vérifiez avec attention la position et le sens de la nouvelle EPROM. Le repère (ou encoche) sur le boîtier DIL24 ou DIL28 doit être du côté du petit circuit intégré DIL16, marqué NR V3. Les boîtiers DIL24 doivent laisser 4 trous libres du côté du repère. En l'insérant à sa place, assurez-vous que les pattes sont toutes centrées sur les trous et appuyez doucement sans trop forcer. Attention de ne pas tordre les pattes.

eprom_1    eprom_2

Le connecteur d'eprom du contrôleur nanoréseau permet d'utiliser des modèles DIL24 ou DIL28. On peut donc utiliser les eproms originales de type Am2732 ou Am2732B, mais aussi des 2764, 27128, 27256, 27C32, 27C64, 27C128, 27C256, 27C512...
On peut aussi utiliser des EEPROM compatibles, par exemple Atmel AT28C64B ou Winbond W27C512. Elles ont l'avantage d'être effaçables électriquement par le programmateur, donc sans lampe à ultra-violets.
Si vous n'êtes pas équipé pour programmer l'EPROM, vous pouvez utiliser le service proposé tout en bas de cette page.

La dernière version du contenu de l'eprom est ici : cs91280_20180514.bin

Le fichier binaire a une taille de 4 Ko. Il faut le reproduire autant de fois que nécessaire pour remplir toute l'eprom.
Une fois pour une 2732, deux fois pour une 2764, quatre fois pour une 27128 et huit fois pour une 27256.

Pour distinguer le contrôleur modifié du contrôleur original, il est conseillé de coller cette étiquette sur la face supérieure :

etiquette

Un interrupteur accessible à l'arrière du contrôleur est utilisé pour choisir la banque visible par le système : c'est l'interrupteur numéroté 7 parmi les huit disponibles. La position ON sélectionne la banque 0 (pour l'interface SDMOTO) et la position OFF sélectionne la banque 1 (pour l'interface SDMO). Attention, en cas d'erreur de positionnement le système ne fonctionne pas, il est important de bien vérifier la position de cet interrupteur.

switches

Préparation de la carte SD


ATTENTION : La préparation de la carte SD et l'utilisation du simulateur de disquette sont différentes pour les anciennes versions de l'EPROM :

- Avant décembre 2014 : version 2014
- Entre décembre 2014 et décembre 2017 : version 2017


Les instructions suivantes concernent uniquement les versions 20180213 et suivantes de l'EPROM.

Les cartes utilisables sont les microSD (jusqu'à 2 Go) et microSDHC (jusqu'à 32 Go). Les microSDXC (plus de 32 Go) ne sont pas supportées.
Formatez la carte sur PC (ou Mac), en FAT ou en FAT32.
Choisissez la taille d'unité d'allocation la plus grande possible pour éviter le fractionnement du répertoire principal.

Copiez le fichier sdmoto.sel dans la carte. C'est le programme permettant de sélectionner un fichier d'image de disquette au format .sd

Copiez ensuite les images de disquettes au format .sd. Ces fichiers peuvent être téléchargés à la section Programmes du site dcmoto, ou créés à partir des fichiers .fd avec l'utilitaire FD2SD. Inversement une image de disquette au format .sd peut être transformée en fichier .fd avec l'utilitaire SD2FD.

Notes :

- La carte microSD n'est pas protégée en écriture.
Il est fortement conseillé d'en faire une sécurité en copiant tout son contenu dans un répertoire du disque dur de votre PC (ou Mac).

- Le contrôleur CS91-280 accède uniquement au répertoire principal.
Vous ne pouvez pas utiliser une arborescence de dossiers et sous-dossiers.

- Les fichiers ne doivent pas être fractionnés.
Si la carte vient d'être formatée il n'y a aucun risque. En cas de doute, reformatez la carte et recopiez les fichiers à partir de la copie de sécurité.


Utilisation du simulateur de disquette


Ordinateur hors tension (impératif), connectez le contrôleur CS91-280 à un port d'extension de l'ordinateur Thomson, et mettez en place l'une des interfaces carte SD :

- SDMOTO utilise le connecteur de la deuxième manette : à droite vu de l'extérieur de l'ordinateur pour la plupart des ordinateurs et le contrôleur SX90-018, à gauche pour le MO5E et le MO5NR. S'il n'y a pas de contrôleur musique et jeu intégré à l'unité centrale, il faut utiliser le contrôleur externe SX 90-018. Le MO5 n'a qu'un seul connecteur d'extension, il lui faut donc un doubleur de bus, un megabus Peritek ou un module d'extension MO5. Ce n'est pas nécessaire pour tous les autres ordinateurs Thomson.

- SDMO est utilisable avec le MO5, le MO5E et le MO5NR. Il se connecte au port magnétophone, avec le fil d'alimentation dans la broche 5 du connecteur du crayon optique.

switches     commutateur

L'interrupteur 7 du boîtier nanoréseau sélectionne la banque 0 ou 1 de l'eprom : position "ON" pour SDMOTO et "OFF" pour SDMO. Dans la version sur circuit imprimé, il est remplacé par un commutateur à glissière. N'oubliez pas de le positionner en fonction de l'interface utilisée. Mettez ensuite le système sous tension.


Sélection de la disquette au démarrage de l'ordinateur


sdmoto

Après la mise sous tension de l'ordinateur, vous pouvez choisir le fichier le fichier image de disquette au format .sd utilisé par le système.
La procédure est fonction du modèle :

- MO5, MO5E
L'écran SDMOTO s'affiche automatiquement.
Choisissez le fichier .sd avec les flèches du clavier et validez ce choix par la touche ENTREE.
La disquette choisie doit être bootable, par exemple la disquette BASIC-DOS pour MO, ou un programme lancé par un secteur de boot.

- T9000, TO7 et TO7/70
Avec le T9000 et le TO7, l'extension mémoire de 16 Ko est obligatoire. A l'écran d'accueil lancez le BASIC 1.0 avec la fonction 1 du menu d'accueil.
L'écran SDMOTO s'affiche automatiquement. Choisissez le fichier .sd avec les flèches du clavier et validez ce choix par la touche ENTREE.
La disquette choisie doit être bootable, par exemple la disquette BASIC-DOS pour TO, ou un programme lancé par un secteur de boot.

- MO5N, MO5NR, MO6, PC128
Si vous lancez le BASIC 128 avec la touche 1, tapez la commande EXEC &HA007 pour démarrer le programme de sélection.
Si vous lancez le BASIC 1.0 avec la touche 2, l'écran SDMOTO s'affiche automatiquement.
Dans un cas comme dans l'autre, choisissez le fichier .sd avec les flèches du clavier et validez ce choix par la touche ENTREE. L'appui sur le bouton d'initialisation de l'ordinateur ne modifie pas la sélection.

- TO8, TO8D, TO9+ sans lecteur de disquette
Avec le TO8, le lecteur externe doit être débranché ou éteint. Avec le TO8D ou le TO9+ il faut en plus débrancher le lecteur interne.
Si vous lancez le BASIC 512 avec la touche 1, tapez la commande EXEC &HE007 pour démarrer le programme de sélection.
Si vous lancez le BASIC 1.0 avec la touche 2, l'écran SDMOTO s'affiche automatiquement.
Dans un cas comme dans l'autre, choisissez le fichier .sd avec les flèches du clavier et validez ce choix par la touche ENTREE. L'appui sur le bouton d'initialisation de l'ordinateur ne modifie pas la sélection.

- TO8, TO8D, TO9+ avec lecteur de disquette
Au démarrage le contrôleur interne est sélectionné automatiquement.
Pour choisir la disquette lancer le BASIC 512 (touche 1) ou le BASIC 1.0 (touche 2) et tapez les commandes suivantes pour sélectionner le contrôleur CS91-280 et lancer le programme SDMOTO.SEL :

POKE &HE7E7, &HD4
EXEC &HE007

A chaque appui sur le bouton d'initialisation de l'ordinateur le contrôleur interne est sélectionné automatiquement, il faut taper la commande POKE&HE7E7,&HD4 pour accéder à nouveau au contrôleur CS91-280.

- TO9
Le TO9 est incompatible avec tous les contrôleurs externes de disquettes et donc avec le contrôleur CS91-280.


Changement de disquette


sdmoto

Certaines applications, en particulier quelques jeux commerciaux et quelques démonstrations, ne permettent pas le retour au BASIC, même en utilisant le bouton d'initialisation de l'ordinateur. Dans ce cas le seul moyen pour changer de disquette est de couper l'alimentation, attendre une dizaine de secondes et remettre l'ordinateur sous tension.

Quand on peut revenir au BASIC, soit en fin de programme, soit en utilisant le bouton d'initialisation, on peut appeler le programme SDMOTO.SEL en tapant deux commandes BASIC. Si le contrôleur interne des TO8, TO8D ou TO9+ est sélectionné, il faut au préalable taper la commande POKE&HE7E7,&HD4 pour accéder à nouveau au contrôleur CS91-280.

Lancement de SDMOTO.SEL pour MO:

CLEAR,&H4FFF
EXEC&HA025

Lancement de SDMOTO.SEL pour TO:

CLEAR,&H8FFF
EXEC&HE025

Après sélection d'une disquette, le programme SDMOTO.SEL retourne au BASIC. On peut alors lancer l'application, comme avec une vraie disquette.


Lancement d'une application


sdmoto

Chaque disquette d'application, démonstration ou jeu est différente, il n'y a pas de règle générale. En résumé l'application peut nécessiter le Basic 1.0 ou le BASIC 128 ou 512, et démarrer par un secteur de boot, un programme AUTO.BAT ou une commande manuelle. En Basic 1.0 il est parfois nécessaire de charger le DOS avant de lancer l'application. Avec le nombre de combinaisons possibles, il n'est pas facile de recenser tous les cas.

La documentation, si elle existe, donne souvent la procédure à utiliser. Sinon il faut essayer l'un ou l'autre BASIC, le boot sur la disquette ou le lancement du programme AUTO.BAT.

Notez aussi que les programmes qui appellent directement des routines contenues dans le contrôleur de disquette Thomson doivent être modifiés pour fonctionner avec le contrôleur CS91-280. En dernier recours le forum system-cfg peut être utilisé pour obtenir de l'aide, les meilleurs spécialistes Thomson le fréquentent et pourront répondre à toutes les questions.

Pour tester le système vous pouvez lancer la démonstration SDPLAY 2017 disponible ici --> SDPLAY 2017
Elle nécessite le contrôleur Musique et Jeux s'il n'est pas intégré dans l'unité centrale (c'est le cas des TO7, TO7/70 et MO5).

sdplay2017 sdplay2017


Performances


Quelques opérations courantes ont été chronométrées sur MO6, d'une part avec un contrôleur CD90-351 et un lecteur de disquette 3,5", d'autre part avec un contrôleur CS91-280 et un module SDMOTO. Le tableau ci-dessous donne les résultats. Il montre la supériorité de l'émulation de disquette sur carte SD : toutes les opérations sont nettement plus rapides qu'avec la disquette réelle. A noter le temps très court pour un DSKINI. Il s'explique par le formatage "rapide" effectué par le contrôleur CS91-280 : la carte SD étant déjà formatée par un PC, il suffit d'initialiser la table d'allocation et le répertoire principal stockés sur la piste 20, et d'effacer la piste 0. Les autres pistes ne sont pas modifiées.

============================================
Temps comparés entre les contrôleurs sur MO6
- CD90-351 avec disquette 3,5 pouces
- CS91-280 avec interface SDMOTO et carte SD
============================================

Fonction               CD90-351   CS91-280  
--------------------   --------   --------  
Charger MACH3             0:58       0:32  
Charger SPACE RACER       0:25       0:15  
Charger TURBO CUP         1:13       0:56              
DSKINI0                   0:35       0:02        
BACKUP0TO1                3:45       2:56  

Galerie de photos


mo5

mo6

to7/70

to8

mo5e

mo5

mo5e

eprom

dcmo

Complément d'information

La source principale d'informations sur le projet CS91-280 est le forum system-cfg : system-cfg
Vous pouvez y relire toute la genèse et demander de l'aide en cas de difficulté.

Pour les développeurs d'applications et de démonstrations, un document spécial donne plus de détails sur la programmation du système, avec des exemples de programmes : demos

Si vous ne disposez pas du matériel pour effacer et reprogrammer l'EPROM, il est possible d'en obtenir une prête à l'emploi. Il est également possible d'obtenir le circuit imprimé et les autres composants sous forme de kit à monter soi-même. Consultez le sujet "Contrôleur CS91-280 pour Thomson" à la rubrique Bricolage du forum system-cfg. En particulier ce post.

pcb
kit pcb
sdmoto sdmo


Dernières nouvelles :
- L'ensemble complet contrôleur CS91-280 et interface SDMOTO sans carte microSD, est vendu monté et testé, prêt à être utilisé, au même prix que le kit.
- Les utilisateurs d'anciennes versions de l'EPROM peuvent obtenir la dernière version en échange d'un don de 5 € tout compris (EPROM, emballage, affranchissement et frais paypal).
Toutes les informations sont dans ce sujet du forum system-cfg : Contrôleur CS91-280 + SDMOTO pour Thomson

solde


La demande doit être faite dans le fil de discussion. Après accord et confirmation de la disponibilité de l'interface, le bouton ci-dessous "Faire un don" vous permettra alors de participer aux frais d'achat du matériel.

Ne faites pas de don sans dialogue préalable et respectez la procédure ci-dessus, pour éviter tout malentendu.

previous Retour à la page Bricolage