DCVG5K: sortie flux dans un fichier texte

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

Modérateurs : Papy.G, fneck, Carl

Répondre
joaopa
Messages : 512
Inscription : 14 sept. 2013 12:17

DCVG5K: sortie flux dans un fichier texte

Message par joaopa »

Bonjour Daniel,

serait-il possible d'ajouter dans DCVG5K une option pour sortir les instructions assembleurs (ou du moins les adresses) exécutées lors d'un programme dans un fichier texte?
Ca aiderait à voir le déroulement d'un programme.

Merci d'avance
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: DCVG5K: sortie flux dans un fichier texte

Message par Daniel »

Dans dcmoto j'ai ajouté, à la demande d'un utilisateur, une fonction "Trace" qui donne les adresses et la valeur des registres. On doit pouvoir faire pareil dans dcvg5k. Je le note pour la prochaine version.
Daniel
L'obstacle augmente mon ardeur.
joaopa
Messages : 512
Inscription : 14 sept. 2013 12:17

Re: DCVG5K: sortie flux dans un fichier texte

Message par joaopa »

Merci d'avance Daniel.
Avatar de l’utilisateur
Patrice
Messages : 1518
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Re: DCVG5K: sortie flux dans un fichier texte

Message par Patrice »

Itou! pour Alice si possible, merci par avance Daniel. :wink:
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: DCVG5K: sortie flux dans un fichier texte

Message par Daniel »

En attendant la prochaine version officielle je donne ici une version provisoire avec la fonction TRACE (bouton dans l'outil de mise au point).
Le fichier est créé dans le même dossier que dcvg5k et s'appelle dcvg5k_trace.txt
Il liste les 10000 dernières instructions exécutées.
Si ce n'est pas assez, ou si vous avez d'autres suggestions, n'hésitez pas...

trace.png
trace.png (20.45 Kio) Consulté 5816 fois
dcvg5k_20200520.zip
(177.17 Kio) Téléchargé 143 fois

@Patrice: bonne idée, je vais regarder si c'est possible dans dcalice.
[Edit 13:00] La fonction Trace a été ajoutée à dcalice

trace2.png
trace2.png (17.91 Kio) Consulté 5798 fois
dcalice_20200520.zip
(126.16 Kio) Téléchargé 154 fois
Daniel
L'obstacle augmente mon ardeur.
Avatar de l’utilisateur
Patrice
Messages : 1518
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Re: DCVG5K: sortie flux dans un fichier texte

Message par Patrice »

C'est super, merci beaucoup Daniel! :D :D :D :wink:

[EDIT 20-05-2020-19h24]: Serait-il possible de synchroniser le TRACE sur le registre PC saisi au départ du traçage?
Dernière modification par Patrice le 20 mai 2020 19:24, modifié 1 fois.
joaopa
Messages : 512
Inscription : 14 sept. 2013 12:17

Re: DCVG5K: sortie flux dans un fichier texte

Message par joaopa »

Super. Merci Daniel. Si je peux abuser une petite suggestion:
l'utilisateur peut dire combien d'instructions il veut.

En tous cas, merci pour ce superbe boulot.
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: DCVG5K: sortie flux dans un fichier texte

Message par Daniel »

Oui, j'y ai pensé. Il faut saisir le nombre, faire une allocation dynamique de mémoire, tester si l'utilisateur n'a pas été trop gourmand et envoyer éventuellement un message d'erreur. Et il faut le faire au lancement de l'émulateur, pour pouvoir stocker l'historique. Quand on demande le dump c'est trop tard, on ne peut pas revenir en arrière.

Ce n'est pas très difficile, mais aujourd'hui j'étais un peu paresseux. J'y réfléchirai à la prochaine occasion.
En attendant, si 10000 est insuffisant, je peux facilement mettre plus, il suffit de recompiler, il y en a pour moins de 10 secondes.
Daniel
L'obstacle augmente mon ardeur.
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: DCVG5K: sortie flux dans un fichier texte

Message par Daniel »

Patrice a écrit : 20 mai 2020 18:04 Serait-il possible de synchroniser le TRACE sur le registre PC saisi au départ du traçage?
Cette nouvelle fonction Trace est rétroactive : elle donne les instructions précédentes jusqu'à l'instruction actuelle.
Tu veux aussi faire la trace à partir de l'instruction actuelle pour les n prochaines instructions.
Ce sont deux fonctions différentes. Je crois qu'elles ont chacune une utilité en fonction de ce que l'on recherche.
Il faudrait donc pouvoir choisir l'une ou l'autre. Je le note, ce sera pour une prochaine version.

Comme quoi une petite fonction très simple peut vite devenir compliquée :wink:
Daniel
L'obstacle augmente mon ardeur.
Avatar de l’utilisateur
Patrice
Messages : 1518
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Re: DCVG5K: sortie flux dans un fichier texte

Message par Patrice »

Dans ce contexte, le traçage est borné entre la valeur du registre PC et le point d'arrêt qu'il faut obligatoirement renseigner pour ce type
de traçage et si la valeur de chaque registre est également ajoutée dans le fichier txt pour chaque instruction tracée dans les 3 modes (statique,
pas à pas et saut de sous-programme),cette fonction devient vraiment très performante je pense.


La présentation pourrait être de ce type:

9000 b6904c LDAA $904c
A:xx B:xx X:xxxx SP:xxxx HINZVC: xxxxxx
9003 816f CMPA #$6f
A:xx B:xx X:xxxx SP:xxxx HINZVC: xxxxxx
9005 2217 BHI $901e
A:xx B:xx X:xxxx SP:xxxx HINZVC: xxxxxx
901e 16 TAB
A:xx B:xx X:xxxx SP:xxxx HINZVC: xxxxxx
901f c40f ANDB #$0f
A:xx B:xx X:xxxx SP:xxxx HINZVC: xxxxxx
etc....

ou

9000 b6904c LDAA $904c A:xx B:xx X:xxxx SP:xxxx HINZVC: xxxxxx
9003 816f CMPA #$6f A:xx B:xx X:xxxx SP:xxxx HINZVC: xxxxxx
9005 2217 BHI $901e A:xx B:xx X:xxxx SP:xxxx HINZVC: xxxxxx
901e 16 TAB A:xx B:xx X:xxxx SP:xxxx HINZVC: xxxxxx
901f c40f ANDB #$0f A:xx B:xx X:xxxx SP:xxxx HINZVC: xxxxxx
etc...
Qu'en penses-tu Daniel?
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: DCVG5K: sortie flux dans un fichier texte

Message par Daniel »

Je le note. A la prochaine occasion j'essaierai de le faire, mais aujourd'hui je ne promets rien.
Daniel
L'obstacle augmente mon ardeur.
Avatar de l’utilisateur
Patrice
Messages : 1518
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Re: DCVG5K: sortie flux dans un fichier texte

Message par Patrice »

Autre avantage pour le fichier "txt" créé, son volume est limité au nombre d'instructions tracées (bornage entre registre PC et Point d'arrêt uniquement).
Avatar de l’utilisateur
hlide
Messages : 3469
Inscription : 29 nov. 2017 10:23

Re: DCVG5K: sortie flux dans un fichier texte

Message par hlide »

Euh l'expression "bornage entre PC et le point d'arrêt" me fait tiquer. Si c'est l’intervalle entre deux extrêmes, on va avoir un problème car nul doute qu'il y aura des instructions exécutées en dehors : on fait quoi ? si c'est pour dire que l'on trace à partir du PC jusqu'au breakpoint, c'est tout simplement faire une exécution tracée jusqu'au point d'arrêt.
Avatar de l’utilisateur
Patrice
Messages : 1518
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Re: DCVG5K: sortie flux dans un fichier texte

Message par Patrice »

Non, c'est vis à vis du paramétrage de l'outil de mise au point de l'émulateur pour éditer le fichier "txt" contenant le traçage défini par l'adresse
saisie dans le registre PC comme instruction de départ du traçage et un point d'arrêt comme instruction d'arrivée temporaire du traçage. Pour
faire simple cela concerne uniquement la mise en forme du document édité par l'outil de mise au point.
Répondre