[DCMOTO] Amélioration de la fonction "Trace"

Couvre tous les domaines de l'émulation ou de la virtualisation ainsi que les discussions sur les divers outils associés.

Modérateurs : Papy.G, fneck, Carl

__sam__
Messages : 6800
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [DCMOTO] Amélioration de la fonction "Trace"

Message par __sam__ »

__sam__ a écrit : 15 juin 2021 18:24 Oui. Perso j'imagine assez une 3e fenêtre avec une image 256x256 où chaque pixel représente un octet de la ram. Ce pixel se colorie dynamiquement en R/G/B suivant le type d'accès (R=lecture, G=écriture, B=execution par exemple). Ils se combinent: un accès RW sur une même adresse donnerait R+G=jaune. Quand on click sur un pixel alors l'adresse et le type d'accès correspondant s'affiche dans la fenêtre. Enfin un bouton permettrait de tout remettre à zero pour refaire une autre cartographie.

C'est clairement un outil à l'usage très restreint qui ne concerne pas grand monde. Cela dit ca doit être un effet très captivant (voire psychédélique) de voir l'image se remplir et évoluer en direct avec le programme en cours d'execution. :shock:
Bon, j'ai finalement réalisé (plus ou moins) cet outil. Je donnerais plus d'info quand je pourrais libérer du temps. En attendant il se trouve par là bas et le README.md explique ce qu'il fait.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Bentoc
Messages : 103
Inscription : 14 sept. 2019 13:35
Localisation : Var - France

Re: [DCMOTO] Amélioration de la fonction "Trace"

Message par Bentoc »

Bentoc a écrit : 15 juin 2021 20:30
C'est clairement un outil à l'usage très restreint qui ne concerne pas grand monde. Cela dit ca doit être un effet très captivant (voire psychédélique) de voir l'image se remplir et évoluer en direct avec le programme en cours d'execution. :shock:
Pour ce genre d'outils spécifiques (j'ai aussi d'autres idées dans le même style) je me demande si la solution ne serait pas de mettre en place dans DCMOTO un système de mémoire partagée accessible à des applications tierces.

On pourrait donc depuis une application indépendante de DCMOTO, avoir un accès en lecture (seulement) à l'intégralité de la RAM, ROM, des registres processeur, de l'horloge (ou compteur de cycle ?), les adresses en cours de lecture/ecriture ...

Je n'ai jamais mis en place ce système, c'est juste une piste.

Edit: Chacun serait ainsi libre de faire son propre dev spécifique indépendant de DCMOTO.
Dans mon esprit ça me paraissait simple (allocation d'un segment de mémoire partagée en remplaçant malloc par shmat), mais ça doit être plus complexe que ça ...
En fait l'outil existe déjà ! Il s'agit de "010 Editor"
2021-08-19 12_01_34-Window.png
2021-08-19 12_01_34-Window.png (87.62 Kio) Consulté 1267 fois
Il permet de visualiser les données d'un processus et d'appliquer des templates pour visualiser les données hexa sous forme d'arborescence de variables ... un peu comme le debugger d'Eclipse. Je vais me faire quelques templates pour tester ça ...
Répondre