CPC Rulez
https://cpcrulez.fr/forum/

Dams 1.2 dev
https://cpcrulez.fr/forum/viewtopic.php?f=4&t=5504
Page 2 sur 2

Auteur :  AsT [ 15 Avr 2015, 16:02 ]
Sujet du message :  Re: Dams 1.2 dev

Pour bloquer Esc, un simple poke &bdee,&c9 fera l'affaire...
-----
Pour le reste, tu l'as déjà implémenté ou pas ?

Auteur :  qbert [ 15 Avr 2015, 18:35 ]
Sujet du message :  Re: Dams 1.2 dev

Donc... pour faire suite au cahier des charges, et bien que je ne sois absolument pas qualifié pour traiter moi-même ces besoins :pig: , je vais jeter un bon pavé dans la mare (trop calme jusqu'à présent)... :pir8:

1 - Ajouter l'insertion et le traitement automatique de points d'arrêt ("breakpoints") : Il semble bien que le méthode du RST 6 ("user restart") ait fait ses preuves depuis 30 ans sur le CPC... il ne reste plus qu'à l'intégrer à DAMS pour en faire le moniteur ultime (mode trace en isolation + points d'arrêt).

2 - Et tant qu'à faire, pourquoi pas, en supplément, la possibilité de définir facilement des conditions en pseudo-code sur les points d'arrêt ? (code généré automatiquement et inséré dans la routine de traitement du RST !). :D :cow: cette fonction étant cette fois associée au chargement d'un "text" dans l'éditeur. Pour le pseudo-code, il y a, après tout, déjà un interpréteur d'expressions numériques dans DAMS. L'étendre à l'examen des registres serait probablement un beau (bon) boulot. Pour faire plus simple, la possibilité d'ajouter des conditions en code Z80 dans le RST directement depuis l'interface de DAMS serait déjà un plus indéniable !

Auteur :  PSy [ 15 Avr 2015, 21:36 ]
Sujet du message :  Re: Dams 1.2 dev

AsT a écrit :
Pour bloquer Esc, un simple poke &bdee,&c9 fera l'affaire...
-----
Pour le reste, tu l'as déjà implémenté ou pas ?


Non pas du tout.

Honnêtement, je vais retoucher la doc mais je ne pense pas que j'aurai le temps ni l'occasion de retoucher au code, je préfère l'annoncer.

Auteur :  PSy [ 15 Avr 2015, 21:49 ]
Sujet du message :  Re: Dams 1.2 dev

qbert a écrit :
1 - Ajouter l'insertion et le traitement automatique de points d'arrêt ("breakpoints")


Au fait, je me demande si dams 1.2 n'aurait pas une commande en plus de dams 1.0 qui permet de poser un point d'arrêt: !addr
(point d'exclamation suivi de l'adresse)
En tout cas c'est pas dans le manuel si j'ai bien lu.

Si on regarde dans le source on voit:
Code :
;
; Monitor commands
;
TBMNT   DEFM   LN.DTKRHJOXPGSABQWFEM!


Voyez que la dernière commande est '!', elle pointe sur une routine 'SETBRK' qui pose effectivement un breakpoint.
dsl, pas de moyen simple de vérifier là.

Auteur :  qbert [ 15 Avr 2015, 22:48 ]
Sujet du message :  Re: Dams 1.2 dev

Waaaaaaaaaaah c'est un énorme scoop en ce qui me concerne :kissed: : il y aurait eû une commande breakpoint dans DAMS v1.1 !? :D

Concernant DAMS v1.0 (la seule version publique à ce jour), je n'ai jamais rien vu de ce genre dans la doc, alors j'ai jusqu'à présent été obligé de bidouiller mes breaks à la main (extrêmement fatiguant à la longue quand on est sur du code externe) ou... de me tourner parfois vers "le" principal concurrent de l'époque ou encore... :evil: un émulateur ! (oui,... j'ai honte ! pardon,... j'ai parfois péché lorsque j'étais affaibli, c'est mal !... :oops: )

Apparemment on ne peut placer qu'un seul point d'arrêt à la fois. Au pire, il faudra prendre un peu de RAM pour garder la trace de plusieurs breakpoints du moniteur (ce qui n'est plus trop un problème aujourd'hui car la majorité des développeurs ont 128K ou 320K à disposition, voire plus!).

Code :
;
; Install a breakpoint at BC, cancelling a previous one
;
SWAP
   PUSH   BC
   LD   HL,BRKCPY   ; storage for the original user's code
   LD   DE,(BRKPT)   ; DE = requested breakpoint address
   LD   BC,3
   PUSH   BC
   LDIR         ; Restore the breakpoint location original code
   POP   BC
   POP   HL
   PUSH   HL
   LD   (BRKPT),HL   ; store the new BP address
   LD   DE,BRKCPY
   PUSH   BC
   LDIR         ; Save the BP pointed bytes (original user's code)
   POP   BC
   LD   HL,SWAPZ   ; HL = address of our debugger breakpoint entry point
   POP   DE
   LDIR         ; patch the user's code with a jump to our breakpoint entry
   RET

SWAPZ            ; A 'jump to dams debuger' sample code used by the BP installer
   DEFB   195      ; 195 => opcode 'jump'
   DEFW   BRKENT


PSy a écrit :
qbert a écrit :
1 - Ajouter l'insertion et le traitement automatique de points d'arrêt ("breakpoints")


Au fait, je me demande si dams 1.2 n'aurait pas une commande en plus de dams 1.0 qui permet de poser un point d'arrêt: !addr

Auteur :  PSy [ 27 Avr 2015, 16:33 ]
Sujet du message :  Re: Dams 1.2 dev

Hello,

J'ai fait un commit avec principalement :
- Les typo signalés par totO
- Le manuel DAMS en format asciidoc
- La mise a jour du manuel à DAMS 1.2

Pour rappel vous pouvez visualiser le projet: https://github.com/pseguy/dams

Pour bosser dessus ou corriger mes typo, installer git et:
Code :
git clone git@github.com:pseguy/dams.git


Vous pouvez voir les spécificités de DAMS 1.1 dans la doc en cherchant "depuis DAMS".
Accès direct a la doc formatée en HTML: https://github.com/pseguy/dams/blob/mas ... an-fr.adoc

Auteur :  PSy [ 27 Avr 2015, 16:40 ]
Sujet du message :  Re: Dams 1.2 dev

Dans la doc affichée par github, y'a pas la table des matières.
Si vous la générez a partir du makefile elle y est, c'est juste qu'ils l'ont viré pour la visu.

Ci-joint ce que mon asciidoc sous Ubuntu/trusty produit en html (gzipé sinon ca passe pas).

Auteur :  AsT [ 07 Mai 2015, 16:48 ]
Sujet du message :  Re: Dams 1.2 dev

Salut,

Est-ce que quelqu'un aurait généré les fichiers sources d1.bin, d2.bin et d3.bin de dams dans un fichier dsk ?
Si tel est le cas, je serais interressé.

Merci de poster ici.

Auteur :  gryken [ 31 Oct 2015, 16:14 ]
Sujet du message :  Re: Dams 1.2 dev

Bonjour,

j'avais fait quelques essais, et j'ai généré un dsk, avec les 3 fichiers BIN

J'espère que ça pourra aider quelqu'un :)

Auteur :  hERMOL [ 31 Oct 2015, 17:47 ]
Sujet du message :  Re: Dams 1.2 dev

thk gryken ! c'est quoi exactement ces fichiers "D?.BIN" ???? ils sont chargés a quel moment ?

Auteur :  AsT [ 31 Oct 2015, 22:50 ]
Sujet du message :  Re: Dams 1.2 dev

Merci!
hERMOL, les fichiers d** sont les fichiers sources de dams (d1.bin, d2.bin et d3.bin)

Je regarderai cela de plus près et surtout un grand Merci à Pascal pour nous avoir fait partager son programme ainsi que le code source.

Auteur :  hERMOL [ 31 Oct 2015, 23:46 ]
Sujet du message :  Re: Dams 1.2 dev

Alors il est possible de compiler DAMS dans DAMS .. :winner:

Auteur :  gryken [ 01 Nov 2015, 11:29 ]
Sujet du message :  Re: Dams 1.2 dev

En fait il avait mis les explications dans sa page sur github :

https://github.com/pseguy/dams/blob/master/README

Page 2 sur 2 Le fuseau horaire est UTC+1 heure
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/