Forum Linux.noyau Portage/Désassemblage driver Windows->Linux

Posté par .
Tags : aucun
0
11
fév.
2006
Bonjour,

J'ai une petite question assez tricky, car malgré différentes recherche à l'aide de mon moteur favori, je n'ai pas trouvé la (ou peut-être les) réponse(s) à ma question:

Comment faire pour désassembler un driver Windows (sous forme de .dll), de comprendre son fonctionnement, afin d'ensuite le coder sous linux ?

J'aimerais utiliser toutes les fonctionnalités du touchpad de mon portable, touchpad Elantech / KTP, incluant scrolling vertical et horizontal, clic à 1, 2 ou 3 doigts et bouton bi-directionnel entre les 2 boutons traditionnels.

Le problème, c'est qu'il n'est reconnu qu'en tant que souris Logitech ImPS/2 - unknown model 99, donc même le driver synaptics n'est pas utilisable.

Et au passage, en profiter pour développer de la même manière un driver pour les lecteurs de carte X-en-1 que l'on trouve sur les tout derniers laptops.

Merci beaucoup à qui pourra me donner des pistes, j'ai déjà fait un peu d'assembleur et lu des docs sur comment implémenter un driver linux, mais là je suis un peu dépassé ...
  • # Reverse engineering

    Posté par . Évalué à -2.

    L'ingenierie inverse d'un driver pour windows est illegal en règle générale, c'est normal que tu trouve peu de doc la dessus.
    Avant de savoir decompiler, il fait savoir compiler.
    Je suis pas expert mais je pense que dans la doc d'un compilateur; sur le paragraphe des dll il y a peut-être quelque chose
    • [^] # Re: Reverse engineering

      Posté par (page perso) . Évalué à 5.

      Rhaa, ce n'est pas illégal!!!

      Si c'est a des fins de compatibilités (comme dans le cas présent), c'est PARFAITEMENT légal en france.

      Bon après il risque un procès de la part de la boite qui a fait le hard parce qu'il veulent faire ch**r leur monde, mais normalement le juge te donnerais raison... (au terme d'un très long procès si il sont collant)
  • # bonne chance...

    Posté par . Évalué à 1.

    Sous windows, t'as des decompileurs qui te fourniront un code asm à partir d'un exe/dll (wdasm32, ollydebug).

    Si tu pars dans cette voie, il faudra d'abord t'assurer que le code decompilé est correct (certains editeurs mettent des protections comme un decalage d'offset, meme si je ne pense pas que ce soit le cas dans des drivers) puis identifier les bons bout de code et les analyser.

    Tu peux aussi utiliser des debuggers windows pour tracer les appels au système (il y a quelques années, softice permettait de faire pas mal de choses, je sais pas s'il existe encore).

    Je n'y connais pas grand chose dans le domaine, mais une chose est sure, c'est que c'est bien pus facile à dire qu'à faire, surtout si le driver a été mal codé. Et prepare toi à y passer beaucoup de temps.

    Bref, bonne chance.
  • # DVD Jon en parle

    Posté par (page perso) . Évalué à 1.

    C'est rigolo que tu en parles mais DVD Jon prodiguait justement des conseils pour ce genre de travail. Il en parle là : http://nanocrew.net/2006/02/09/reverse-engineering/
    Le site de Fravia dont DVD Jon parle :
    http://woodmann.com/fravia/index.htm

    Après, je sais pas ce que ça vaut mais de toute façon, ça sera mieux que rien ;)

    Bonne chance !

    Yannig

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.