SIO2Arduino ( microSD )

du 400 au 130 xe

Modérateur : Politburo

Répondre
Avatar de l’utilisateur
Sir thierry
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1639
Inscription : 14 mai 2006 11:42

SIO2Arduino ( microSD )

Message par Sir thierry » 14 août 2015 16:28

Bonjour,

Quelqu'un connait ? J'ai des Arduino en stock que je pense recycler en émulateur 1050. Me manque juste les câbles SIO avant de me lancer.
Dernière édition par Sir thierry le 19 sept. 2015 22:06, édité 1 fois.

Avatar de l’utilisateur
kweeky
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2031
Inscription : 05 oct. 2007 19:46
Localisation : Pas très loin de Bordeaux

Re: SIO2Arduino

Message par kweeky » 14 août 2015 23:34

Bonsoir

Je ne connais pas, mais je suis potentiellement intéressé, ayant moi aussi quelques Arduino ainsi que de l'Atari. Pour ton câble SIO, tu n'as pas un vieux lecteur de K7 en rab que tu pourrais cannibaliser ? Parce qu'en fait tu as juste besoin de la prise SIO du côté de l'Atari.

En tout cas si tu as des infos (j'ai trouvé ce site grâce à Google) je suis preneur.

@+

P.S.: sinon le SIO2SD est pas mal non plus. C'est ce que j'utilise.

Avatar de l’utilisateur
Antique
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 448
Inscription : 05 sept. 2011 10:09
Localisation : 73- Savoie

Re: SIO2Arduino

Message par Antique » 15 août 2015 07:23

Salut à tous, comme j'en ai monté deux je ramène mon grain de sel,
ça marche mais c'est un peu galère pour la compil de la partie logiciel, la dernière version des pilotes sd empêche la compil (quelques erreur dus à un manque de rétro compatibilité peut être) elle se trouve ici :https://github.com/greiman/SdFat .
pour ma part je compile avec la version de novembre 2014 (https://github.com/greiman/SdFat/tree/f ... 26a123cf05) sur un arduino nano (mais ça marche avec les autres arduinos)
pour l'instant j'ai pas fini de trouver les trucs qui déconnes mais j'ai constaté que les fichiers était mal sélectionnés lors de l'appuie sur le bouton (avec ou sans afficheur) et que seul le premier lecteur est fonctionnel (il me semble qu'on doit pouvoir en gérer 4 virtuel avec la carte...ben non, au final on en gère qu'un)
du coup j'essaye d'en faire marcher un proprement (quand j'ai le temps), mais il y a l'air d'y avoir des trucs pas au point dans cet affaire, sinon ça lit très bien les atr et xex, le mieux étant de passer par l'autorun (bouton shift appuyé au démarrage de la machine) et d’éteindre la machine pour changer de disk (toujours via le menu de l'autorun).

bon après c'est peut être moi qui déconne quelque part ... (je suis pas un pro du language arduino)
Dernière édition par Antique le 01 janv. 2016 20:03, édité 1 fois.

Avatar de l’utilisateur
Antique
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 448
Inscription : 05 sept. 2011 10:09
Localisation : 73- Savoie

Re: SIO2Arduino

Message par Antique » 15 août 2015 07:32

tiens d'ailleurs j'en profite pour vous poser LA question :

disk_image.cpp: In member function ‘boolean DiskImage::loadFile(SdFile*)’:
disk_image.cpp:391:9: error: ‘class SdFile’ has no member named ‘getFilename’
file->getFilename((char*)&filename);
^

j'ai ça lors de la compilation avec la dernière version (c'est du langage arduino) quelqu'un[e](ne soyons pas misogyne) peut me dire comment je doit comprendre ça ?

Avatar de l’utilisateur
Antique
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 448
Inscription : 05 sept. 2011 10:09
Localisation : 73- Savoie

Re: SIO2Arduino

Message par Antique » 15 août 2015 07:39

bon histoire d’être un peu plus clair, la classe en question dit ceci:

#if ENABLE_ARDUINO_FEATURES
/**
* \class SdFile
* \brief Class for backward compatibility.
*/

class SdFile : public PrintFile {
public:
SdFile() {}
/** Create a file object and open it in the current working directory.
*
* \param[in] path A path for a file to be opened.
*
* \param[in] oflag Values for \a oflag are constructed by a
* bitwise-inclusive OR of open flags. see
* FatFile::open(FatFile*, const char*, uint8_t).
*/
SdFile(const char* path, uint8_t oflag) : PrintFile(path, oflag) {}
};
#endif // #if ENABLE_ARDUINO_FEATURES

Avatar de l’utilisateur
Antique
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 448
Inscription : 05 sept. 2011 10:09
Localisation : 73- Savoie

Re: SIO2Arduino

Message par Antique » 15 août 2015 08:09

pour ce qui est de la version qui fonctionne (l'ancienne lib) on retrouve :

(dans le .ino, le fichier principale du programme)
// get current filename
file.getFilename(name);

et dans disk_image.cpp
file->getFilename((char*)&filename);
int len = strlen(filename);
char *extension = filename + len - 4;

et aucune correspondance pour getfilename dans le répertoire de la dernière version ...
du coup que faire ?, si vous avez des idées ...

Avatar de l’utilisateur
Antique
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 448
Inscription : 05 sept. 2011 10:09
Localisation : 73- Savoie

Re: SIO2Arduino

Message par Antique » 15 août 2015 08:19

ouppsss, dans l'ancienne lib on retrouve (je m'est trompé de dossier)

dans sdbasefile.h :
/** \return The first cluster number for a file or directory. */
uint32_t firstCluster() const {return m_firstCluster;}
bool getFilename(char* name);

dans sdbasefile.cpp :
//------------------------------------------------------------------------------
/** Get a file's name
*
* \param[out] name An array of 13 characters for the file's name.
*
* \return The value one, true, is returned for success and
* the value zero, false, is returned for failure.
*/
bool SdBaseFile::getFilename(char* name) {
dir_t* p;
if (!isOpen()) {
DBG_FAIL_MACRO;
goto fail;
}
if (isRoot()) {
name[0] = '/';
name[1] = '\0';
return true;
}
// cache entry
p = cacheDirEntry(SdVolume::CACHE_FOR_READ);
if (!p) {
DBG_FAIL_MACRO;
goto fail;
}
// format name
dirName(*p, name);
return true;

fail:
return false;
}


qu'on ne retrouve dons PAS dans la nouvelle lib :mrgreen:

Avatar de l’utilisateur
kweeky
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2031
Inscription : 05 oct. 2007 19:46
Localisation : Pas très loin de Bordeaux

Re: SIO2Arduino

Message par kweeky » 15 août 2015 09:19

Il manque peut-être des bouts de code dans l'archive, non ?
En tout cas je vais peut-être attendre s'il faut trop mettre les mains dans le cambouis. Le sio2sd suffit pour le moment pour l'utilisation que je fais de mon Atari.

Avatar de l’utilisateur
Sir thierry
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1639
Inscription : 14 mai 2006 11:42

Re: SIO2Arduino

Message par Sir thierry » 16 août 2015 10:56

J'ai tellement "construit" de SIO2SD que je n'ai plus de nouveau câble déjà pour tester mon 1050 et pour faire ce montage à base d'Arduino.
Je crois qu'il va me falloir faire du rangement pour espérer en retrouver un.

Pour le code, il va falloir aller sur le forum arduino !!!

Avatar de l’utilisateur
Antique
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 448
Inscription : 05 sept. 2011 10:09
Localisation : 73- Savoie

Re: SIO2Arduino

Message par Antique » 16 août 2015 16:40

Sir thierry a écrit : Pour le code, il va falloir aller sur le forum arduino !!!
ou que je trouve le courage de vérifier si la partie du code est indispensable ...

sinon pour ton câble, tu peux récupérer un câble sio et monter une db9 male à l'autre bout, puis tu monte une db9 femelle sur le câble que tu as piraté, de façon à n'avoir besoin que de prises db9 femelle pour tes montages et tes autres periphs.

le connecteur SIO correspond à ça :
1. Clock Input
2. Clock Output
3. Data Input
4. Ground
5. Data Output
6. Ground
7. Command'
8. Motor Control
9. Proceed'
10. +5V/Ready (1200XL lacks +5V thanks to current limit resistor R63. Replace R63 with a jumper wire to enable +5V on this pin on the 1200XL.)
11. SIO Audio Input
12. 400/800: +12V ; XL/XE: Not Connected
13. Interrupt'

les broches 10,11 et 12 ne serves pas et la 13 je suis pas sur, au pire tu détourne la broche 13 vers la 6 de la db 9, sinon tu garde les mêmes numéros de broche (ça aide quand tu y reviens plus tard :roll: )

Avatar de l’utilisateur
Sir thierry
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1639
Inscription : 14 mai 2006 11:42

Re: SIO2Arduino

Message par Sir thierry » 16 août 2015 18:22

Merci, mais de toute façon il m'en faut un pour tester mon 1050 donc si je dois en acheter un aux USA autant en prendre deux.
Sauf si je trouve ailleurs

Avatar de l’utilisateur
Antique
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 448
Inscription : 05 sept. 2011 10:09
Localisation : 73- Savoie

Re: SIO2Arduino

Message par Antique » 24 août 2015 17:20

bon devant les soucis de la version sio2arduino je me suis tourné vers sio2microsd, en transposant le montage sur arduino et en gravant la flash avec un usbasp, ça à l'air de bien fonctionner, sauf que j'ai un soucis avec la lecture de la carte sd ('sd error') quelqu'un à déjà essayé ? si oui sur quels broche faut il branché le lecteur sd sur l'arduino ?

merci d'avance ...

Avatar de l’utilisateur
Sir thierry
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1639
Inscription : 14 mai 2006 11:42

Re: SIO2Arduino

Message par Sir thierry » 27 août 2015 11:18

J'ai pas encore trop regardé mais tu fais ta selection sur l'atari ? n'accete pas les disk de 16Mo ?

Normalement le code du SIO2SD qui est sur un Atmega devrait pouvoir aller sur Arduino ?

Avatar de l’utilisateur
Antique
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 448
Inscription : 05 sept. 2011 10:09
Localisation : 73- Savoie

Re: SIO2Arduino

Message par Antique » 27 août 2015 20:18

bon ben du coup j'ai pris une paire d'heure pour bosser dessus (et flinguer la partition windows du portable au passage :mrgreen: Image).
pour l'erreur de lecture, c’était dû à mon montage (breadboard et câble volant, c'est pas toujours terrible), le second soucis vient de mes cartes sd (plusieurs sont bloqués en lecture sans que je sache pourquoi et d'autres pas reconnus), mais bonnnnn j'ai réussi à en avoir une qui fonctionne (mais qui est bloqué en lecture depuis, va falloir que je me penche la dessus), et comme j'avais pas lu la doc du sio2sd j'faisait pas la manip comme il faut pour lancer la disquette.

le lien pour ceux qui veulent tenter l’expérience du sio2sd https://diskwiz.wordpress.com/sio2microsd/

par contre même si c'est un peu plus chiant à mettre en œuvre au départ (il faut réécrire l'eprom de l'arduino), ça marche beaucoup mieux (moins de soucis de lecture de la sd, gestion des 4 lecteurs, pas d'erreur de compil, etc)
donc à choisir, oubliez le sio2arduino (ou alors avec beaucoup de temps et de patience) et tentez plutôt le sio2sd sur arduino, pour le câblage y'a rien de sorcier, suffit de se référer à ça (j'indique juste en rouge les connexion qui sont pas bien indiqués d'origine):

* Menu Button A0
* Up Button A1
* Down Button A2
* Enter Button A3

* LCD Connections *
* LCD RS pin to digital pin 7 (d7)
* LCD Enable pin to digital pin 6 (d6)
* LCD D4 pin to digital pin 5 (d5)
* LCD D5 pin to digital pin 4 (d4)
* LCD D6 pin to digital pin 3 (d3)
* LCD D7 pin to digital pin 2 (d2)
* LCD R/W pin to ground

* Atari Connections *
* Atari SIO Pin 4 or 6 Black to Arduino GND
* Atari SIO Pin 5 Green to Pin 0 TX (D0)
* Atari SIO Pin 3 Orange to Pin 1 RX (D1)
* Atari SIO Pin 7 Violet to Pin 8 Digital Input (D8)

* SD Card Pinout *
* Pin 10 CS (be sure to protect to 3.3v) (d10)
* Pin 11 DI (be sure to protect to 3.3v) d11 vers MOSI
* Pin 12 DO d12 vers MISO
* Pin 13 SCK (be sure to protect to 3.3v) (d13)

Avatar de l’utilisateur
Sir thierry
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1639
Inscription : 14 mai 2006 11:42

Re: SIO2Arduino

Message par Sir thierry » 28 août 2015 11:56

tu fais faire le pcb du SIO2SD ou tu le fais toi comme un grand ?

Je voudrais en refaire mais il me faudrait le pcb.

PS : je viens d'aller voir ton lien et je commence à comprendre. Comme dans mon idée, j'étais parti sur des arduino avec carte SD sur la partie RJ45, je ne comprenais pas trop.
En fait, sauf erreur, sur la seconde version, il est parti d'un UNO et sur une plaque d'essai il a rajouté les boutons et le SD. Il n'est pas possible de reprendre celui du RJ45 ?
Ensuite, quel version du compilateur pour Arduino as tu pris pour compiler le HEX ?
Remarque tu pourrais essayer, si tu as le temps, de nous expliquer le matos nécessaire puis la compilation ?

Dés que j'ai fini mes ventes, et mes colis, je regarde cela de plus prêt.

Répondre

Revenir vers « Atari 8bits »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité