IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

Emuler une eeprom


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Nono Sto
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    350
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 350
    Par défaut Emuler une eeprom
    Hello world

    Lors de l'execution d'un programme, il crash car il recherche une eeprom dans le systeme que j'ai du retirer.

    En gros le programme se lance il tourne un peu et a un moment il vas rechercher une information et sa plante. Je cherche donc à emuler en C++ cette fameuse eeprom. L'eeprom est un Microchip 24LC24 2k Serial.

    Avant d'essayer d'emuler l'eeprom auriez vous une idées de comment je pourrais faire pour creer un programme qui lancerais ce famuex executable, et qui pendant l'execution indiquerait au dit programme de se diriger vers mon emulateur d'eeprom.

    Ensuite une idée pour l'emulation en elle meme? SVP

    Merci

    NB: Malheureusement je n'ai pas les sources. J ai pu faire du debug kernel dessus mais je maitrise pas....surtout les retour sont en assembler....

  2. #2
    Expert confirmé
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 226
    Par défaut
    Difficile de répondre correctement (vu que c'est assez brouillon).
    La plupart des émulateurs émule une rom/eeprom etc etc
    Par un simple tableau ! x)

    Si tu veux faire un émulateur le premier truc a faire , c'est émuler son processeur (ce qui est assez simple vu qu'une doc existe pour la plupart des processeurs existant sur le net !)
    Quand cela est fait , bah le mieux c'est juste de simuler une memory map est tu as deja un début émulateur fonctionnel
    Deja je pense que pour ces deux chose tu on a pour une ou deux bonne semaine (pour un programmeur confirmer) , plusieurs mois si ce n'est pas le cas , bon courage

  3. #3
    Membre éclairé Avatar de Nono Sto
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    350
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 350
    Par défaut
    Merci. Ta remarque m a fait réfléchir sur la démarche a suivre, et c est vrai qu a priori il s agit d un petit fichier de moins de 2k dans cette eeprom. Du coup il faudrait indiqué un chemin au programme dans un folder du hdd pour lire ecrire dans ce tableau. Aurais tu une idée de comment faire sachant que je travail sur du vieux matos qui peut lancer un seul exe en même temps et que je ne dispose pas des sources.

  4. #4
    Expert confirmé
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 226
    Par défaut
    Citation Envoyé par Nono Sto Voir le message
    Du coup il faudrait indiqué un chemin au programme dans un folder du hdd pour lire ecrire dans ce tableau.
    Quel est ta question ? comment savoir ouvrir/lire un fichier en C++ ?
    Tu lis ton ta rom via ifstream et tu met tout ça dans unsignar char eeprom[2048]; et voila :p

  5. #5
    Membre éclairé Avatar de Seabirds
    Homme Profil pro
    Post-doctoral fellow
    Inscrit en
    Avril 2015
    Messages
    294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Post-doctoral fellow
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2015
    Messages : 294
    Par défaut
    Citation Envoyé par Kannagi Voir le message
    Déjà je pense que pour ces deux chose tu on a pour une ou deux bonne semaine (pour un programmeur confirmer) , plusieurs mois si ce n'est pas le cas , bon courage
    Cette phrase me rassure tellement sur le gouffre d’expérience qui nous sépare ...

  6. #6
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Si j'ai bien compris le problème n'est pas tant de faire un programme qui contient une zone mémoire, que de faire un programme qui intercepte les tentatives d'accès à l'EEPROM pour fournir sa mémoire à la place...
    Et vu qu'il s'agit d'un système mono-processus, ça implique de faire un TSR qui intercepte l'interruption hardware générée par l'échec de la tentative d'accès à l'EEPROM. Loin d'être un truc trivial!
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  7. #7
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 502
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 502
    Par défaut
    Si on dispose d'un peu plus d'information sur la manière dont le programme accède à l'EEPROM, cela permettrait de trouver des moyens simples de contournement.
    L'OS cible où se fera la "supercherie" permettrait aussi de trouver les différentes possibilités et leur facilité de mise en œuvre.
    TSR pour DOS, mais des drivers pour Windows (et peut-être Linux ? )

Discussions similaires

  1. Gestion d'une flash ou d'une eeprom
    Par Bayard dans le forum C
    Réponses: 7
    Dernier message: 04/07/2008, 10h00
  2. Copie du contenu d'une eeprom vers une autre
    Par Aliveli dans le forum C
    Réponses: 9
    Dernier message: 05/06/2007, 18h51
  3. Réponses: 19
    Dernier message: 04/06/2007, 17h12
  4. Emuler une ancienne version de Windows sur une plus récente.
    Par damien99 dans le forum Autres Logiciels
    Réponses: 10
    Dernier message: 21/03/2006, 09h14
  5. [PIC 16C84] Ajouter une eeprom externe i2c à un programme
    Par jacques8 dans le forum Autres architectures
    Réponses: 2
    Dernier message: 30/09/2005, 17h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo