Construction d'un SDMOTO
Salut les vieux,
Etant possesseur de plusieurs ordinateurs Thomson comme le MO5, MO6, TO7 etc… j’ai décidé, après une visite sur l’excellent site DCMOTO dédié à ces machines, de me lancer dans la fabrication d’un SDMOTO.
Alors qu’est-ce qu’un SDMOTO, et bien tout simplement un lecteur de carte micro SD qui se branche sur le port manette de n’importe quel ordinateur MO ou TO et qui va nous permettre de transférer des programmes ou jeux en format FD sur des disquettes au format Thomson. C’est une excellente alternative à ce tuto que je vous avais fait et qui n’est pas réalisable si vous n’avez plus de lecteur de disquette sur votre PC.
Pour plus d'information sur le SDMOTO vous trouverez toute l’information ici.
Comme vous le savez déjà je suis un chancre en électronique, donc ce tutoriel est relativement facile.
Alors pour le matériel, il vous faut :
1 – Un lecteur de carte SD SPI
2 – Une prise femelle DB9
3 – Des câbles Dupont
Sur un site d’enchères bien connu j’en ai eu pour à peine 6€.
Ensuite vient la partie la plus drôle, la construction. Il faut tout d’abords suivre ce schéma de construction proportionné par nos amis de DCMOTO :
Pour se faire, j’ai décidé de coller à la super glue les câbles pour en faire un connecteur compact. J’ai ensuite coupé et dénudé les extrémités afin de les connecter au DB9 en suivant minutieusement le schéma ci-dessus.
Pour l’instant c’est moche mais je pense y ajouter plus tard une Led témoin ainsi qu’une gaine thermo rétractable.
L’étape suivante est la préparation de la carte. Il vous faut donc une carte micro SD formatée en FAT16 ou FAT 32 dans laquelle vous injecterez les programmes que vous voulez transferer depuis le SDMOTO, ils sont répertoriés sur le site de DCMOTO avec l’extension FD.
Branchez ensuite le SDMOTO sur le port de la deuxième manette.
Pour pouvoir transferer vos fichier il vous faudra tapez ce petit programme depuis votre ordinateur Thomson préféré et le sauvegarder sur cassette :
10 '===================================
11 ' SD2DISK - version 2014.07.17
12 ' Transfert fichier .fd
13 ' Sens carte SD vers disquette
14 ' Daniel Coulom - février 2013
15 ' http://dcmoto.free.fr
16 '===================================
20 CLEAR,&H9DFF
21 CLS:SCREEN2,0,0:LOCATE0,0,0
22 HR$="":FORI=1TO40:HR$=HR$+"=":NEXT
23 GOSUB100
30 PRINT"Vous devez avoir:"
31 PRINT"- Un lecteur contenant une disquette"
32 PRINT" formatée et non protégée."
33 PRINT"- Un module SDMOTO avec une carte SD"
34 PRINT" et sur cette carte un fichier .fd"
35 PRINT"- L'adresse physique du premier bloc"
36 PRINT" du fichier .fd, en hexadécimal."
37 PRINT:COLOR3
38 PRINT"Le contenu de la disquette sera détruit"
40 PRINT:COLOR7
41 PRINT"Si tout est prêt, appuyez sur":PRINT
42 PRINT"0 = fd face 0 vers disquette face 0"
43 PRINT"1 = fd face 0 vers disquette face 1"
44 PRINT"2 = fd 2 faces vers disquette 2 faces":PRINT
45 PRINT"Les autres touches arrêtent SD2DISK";
50 F$=INPUT$(1)
51 IFF$<"0"THENEND
52 IFF$>"2"THENEND
53 '===================================
60 CLS:GOSUB100
61 PRINT"Patientez...";:LOCATE0,7:A=&H9E00
62 READX:IFX>=0THENPOKEA,X:A=A+1:GOTO62
70 PRINT"Tapez l'adresse hexadécimale du"
71 PRINT"premier bloc du fichier .fd"
72 PRINT"(ou CTRL-C pour abandonner)"
73 PRINT:PRINT"Exemple: 0BECCA00"
74 LOCATE7,13,1:INPUTX$
75 CLS:LOCATE0,13,0:GOSUB100
76 PRINT"Transfert vers face";
77 IFF$<"2"THENPRINT" ";F$; ELSEPRINT"s 0 & 1";
78 PRINT" en cours...";:LOCATE0,20,0
80 A=&H9FD7:FORI=1TO7STEP2
81 POKEA,VAL("&H"+MID$(X$,I,2))
82 A=A+1:NEXTI
83 IFF$<>"1"THENPOKE&H9FD0,0:EXEC&H9E00
84 IFF$<>"0"THENPOKE&H9FD0,1:EXEC&H9E00
90 R=PEEK(&H9FD0)
91 PRINT"Transfert terminé. Code retour:";R;
92 PRINT" ":PRINT
98 END
99 '===================================
100 COLOR2:PRINTHR$:ATTRB1,1
101 PRINT"SD2DISK ";:ATTRB0,0
102 PRINT"version 2014.07.17"
103 PRINT"Transfert d'un fichier .fd d'une"
104 PRINT"carte SD vers une disquette Thomson"
105 PRINTHR$:COLOR7:RETURN
109 '==================================
200 DATA 52,127,26,208,142,31,64,230,132,99,132,225,132,39,6,99,132,134,167,32,14,142,64,0,191,159,209,142,96,0,191,159,211,134,231,31,139,150,206,132,251,151,206,198,96,215,204,138,4,151,206,134,84,183,231,231,254,159,211,182,159,208,167,200,73,134,1
210 DATA 183,159,208,167,200,72,173,201,128,4,79,95,237,200,74,76,167,200,76,134,8,167,200,72,134,10,23,1,53,51,141,1,121,23,0,218,16,37,0,125,23,0,206,134,4,23,1,34,134,2,183,159,208,16,142,2,0,49,63,39,104,51,141,1,103,23,0,181,23,0,178,37,240,134,3
220 DATA 183,159,208,23,0,168,37,82,111,141,1,59,23,0,232,72,42,4,108,141,1,49,134,3,23,0,236,141,102,16,190,159,209,254,159,211,16,175,200,79,173,201,128,4,166,200,76,129,16,38,18,230,200,75,193,79,39,29,92,231,200,75,134,1,167,200,76,32,214,76,167,200
230 DATA 76,16,174,200,79,49,169,1,0,16,175,200,79,32,209,127,159,208,53,255,182,159,213,38,15,124,159,217,38,15,124,159,216,38,10,124,159,215,32,5,124,159,218,38,13,124,159,217,38,8,124,159,216,38,3,124,159,215,57,198,8,52,4,16,190,159,209,51,141,0,185
240 DATA 141,29,141,100,129,254,38,250,142,2,0,141,91,167,160,48,31,38,248,141,83,141,81,141,180,106,228,38,223,53,132,141,71,76,38,251,142,0,6,166,192,141,14,48,31,38,248,141,35,161,192,39,2,67,57,79,57,198,8,52,4,72,86,84,215,204,202,32,215,204,196
250 DATA 223,215,204,106,228,38,239,202,64,215,204,53,132,79,198,127,215,204,209,204,198,95,215,204,37,4,134,252,32,5,74,38,237,134,254,198,127,215,204,209,204,198,95,215,204,73,37,243,57,52,2,204,127,95,151,204,215,204,151,204,215,204,151,204,215,204
260 DATA 151,204,215,204,151,204,215,204,151,204,215,204,151,204,215,204,151,204,215,204,106,228,38,220,53,130,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,81,0,0,0,0,255,0,64,0,0,0,0,149,1,72,0,0,1,170,135,0,119,0,0,0,0,255,0,105,64,0,0,0,255,0,122,0,0
270 DATA 0,0,255,0,-1
Lorsque vous exécuterez ce programme une adresse vous sera demandée, elle correspond à l’adresse du premier octet du jeux ou application que vous voulez charger depuis la carte SD. Pour le trouver, rien de plus simple, téléchargez BOOTADDRESS et exécutez-le, il vous donnera l’adresse octet dont vous avez besoin.
Rentrez l’adresse dans le programme BASIC et validez, si tout s’est bien passé le tranfert pourra commencer depuis la carte SD.
Mettez votre disquette préalablement formattée sur un Thomson : DSKINIT0
Et voila:
Sachez que vous pouvez faire aussi l’inverse c’est-à-dire transférer vos disquette Thomson sur une carte SD afin de les préserver grâce à ce programme :
10 '===================================
11 ' DISK2SD - version 2014.07.17
12 ' Transfert fichier .fd
13 ' Sens disquette vers carte SD
14 ' Daniel Coulom - février 2013
15 ' http://dcmoto.free.fr
16 '===================================
20 CLEAR,&H9DFF
21 CLS:SCREEN2,0,0:LOCATE0,0,0
22 HR$="":FORI=1TO40:HR$=HR$+"=":NEXT
23 GOSUB100
30 PRINT"Vous devez avoir:"
31 PRINT"- Un lecteur contenant une disquette"
32 PRINT" à transférer dans un fichier .fd."
33 PRINT"- Un module SDMOTO avec une carte SD"
34 PRINT" et sur cette carte un fichier .fd"
35 PRINT"- L'adresse physique du premier bloc"
36 PRINT" du fichier .fd, en hexadécimal."
37 PRINT:COLOR3
38 PRINT"Le fichier .fd sera écrasé. Sa taille"
39 PRINT"est 320K (1 face) ou 640K (2 faces)."
40 PRINT:COLOR7
41 PRINT"Si tout est prêt, appuyez sur":PRINT
42 PRINT"0 = disquette face 0 vers fd face 0"
43 PRINT"1 = disquette face 1 vers fd face 0"
44 PRINT"2 = disquette 2 faces vers fd 2 faces":PRINT
45 PRINT"Les autres touches arrêtent DISK2SD";
50 F$=INPUT$(1)
51 IFF$<"0"THENEND
52 IFF$>"2"THENEND
53 '===================================
60 CLS:GOSUB100
61 PRINT"Patientez...";:LOCATE0,7:A=&H9E00
62 READX:IFX>=0THENPOKEA,X:A=A+1:GOTO62
70 PRINT"Tapez l'adresse hexadécimale du"
71 PRINT"premier bloc du fichier .fd"
72 PRINT"(ou CTRL-C pour abandonner)"
73 PRINT:PRINT"Exemple: 0BECCA00"
74 LOCATE7,13,1:INPUTX$
75 CLS:LOCATE0,13,0:GOSUB100
76 PRINT"Transfert face";
77 IFF$<"2"THENPRINT" ";F$; ELSEPRINT"s 0 & 1";
78 PRINT" en cours...";:LOCATE0,20,0
80 A=&H9FD7:FORI=1TO7STEP2
81 POKEA,VAL("&H"+MID$(X$,I,2))
82 A=A+1:NEXTI
83 IFF$<>"1"THENPOKE&H9FD0,0:EXEC&H9E00
84 IFF$<>"0"THENPOKE&H9FD0,1:EXEC&H9E00
90 R=PEEK(&H9FD0)
91 PRINT"Transfert terminé. Code retour:";R;
92 PRINT" ":PRINT
98 END
99 '===================================
100 COLOR2:PRINTHR$:ATTRB1,1
101 PRINT"DISK2SD ";:ATTRB0,0
102 PRINT"version 2014.07.17"
103 PRINT"Transfert d'une disquette Thomson"
104 PRINT"vers un fichier .fd d'une carte SD"
105 PRINTHR$:COLOR7:RETURN
109 '==================================
200 DATA 52,127,26,208,142,31,64,230,132,99,132,225,132,39,6,99,132,134,167,32,14,142,64,0,191,159,209,142,96,0,191,159,211,134,231,31,139,150,206,132,251,151,206,198,96,215,204,138,4,151,206,134,84,183,231,231,254,159,211,182,159,208,167,200,73,134,1
210 DATA 183,159,208,167,200,72,173,201,128,4,79,95,237,200,74,76,167,200,76,134,2,167,200,72,134,10,23,1,62,51,141,1,121,23,0,227,16,37,0,128,23,0,215,134,4,23,1,43,134,2,183,159,208,16,142,2,0,49,63,39,107,51,141,1,103,23,0,190,23,0,187,37,240,134,3
220 DATA 183,159,208,23,0,177,37,85,111,141,1,59,23,0,241,72,42,4,108,141,1,49,134,3,23,0,245,16,190,159,209,254,159,211,16,175,200,79,173,201,128,4,166,200,76,129,16,38,23,141,83,254,159,211,230,200,75,193,79,39,29,92,231,200,75,134,1,167,200,76,32,211
230 DATA 76,167,200,76,16,174,200,79,49,169,1,0,16,175,200,79,32,204,127,159,208,53,255,182,159,213,38,15,124,159,217,38,15,124,159,216,38,10,124,159,215,32,5,124,159,218,38,13,124,159,217,38,8,124,159,216,38,3,124,159,215,57,198,8,52,4,16,190,159,209
240 DATA 51,141,0,182,141,35,134,254,141,57,142,2,0,166,160,141,50,48,31,38,248,141,44,141,42,141,87,132,31,129,5,38,248,141,174,106,228,38,217,53,132,141,71,76,38,251,142,0,6,166,192,141,14,48,31,38,248,141,35,161,192,39,2,67,57,79,57,198,8,52,4,72,86
250 DATA 84,215,204,202,32,215,204,196,223,215,204,106,228,38,239,202,64,215,204,53,132,79,198,127,215,204,209,204,198,95,215,204,37,4,134,252,32,5,74,38,237,134,254,198,127,215,204,209,204,198,95,215,204,73,37,243,57,52,2,204,127,95,151,204,215,204,151
260 DATA 204,215,204,151,204,215,204,151,204,215,204,151,204,215,204,151,204,215,204,151,204,215,204,151,204,215,204,106,228,38,220,53,130,0,0,0,0,0,0,0,0,0,0,32,0,0,88,0,0,0,0,255,0,64,0,0,0,0,149,1,72,0,0,1,170,135,0,119,0,0,0,0,255,0,105,64,0,0,0,255
270 DATA 0,122,0,0,0,0,255,0,-1
Voilà, j’espère que ce tuto vous aura aidé et je tiens à remercier l’équipe de DCMOTO pour avoir mis à disposition toutes ces informations et pour l’énorme travail qu’ils font autour de ces vielles machines Thomson.