Page 1 sur 1
Mon petit désassembleur
Publié : dim. 21 nov. 2010 18:18
par Tanuki
Voici le petit désassembleur que j'avais fait pour étudier le code de Son Son II.
Ce n'est pas un truc sophistiqué comme celui de Mooz, mais bon, peut-être que celà intéréssera quelqu'un (c'est sous Win32).
Ce serai chouette si quelqu'un pouvait le sauver de ce lien extrémement temporaire...
http://www.mediafire.com/?nq6lb1dxp2vnssy (pcedasm.zip)
Re: Mon petit désassembleur
Publié : dim. 21 nov. 2010 20:40
par touko
C'est sympa, mais perso j'en utilise pas ..

Re: Mon petit désassembleur
Publié : dim. 21 nov. 2010 20:45
par MooZ
Pourquoi tu ne mettrais pas les sources sur un truc genre
github ou
gitorious?
Re: Mon petit désassembleur
Publié : dim. 21 nov. 2010 21:32
par Tanuki
Voici un nouveau lien. (le source est dedans)
http://www.mediafire.com/?nq6lb1dxp2vnssy (pcedasm.zip)
Re: Mon petit désassembleur
Publié : dim. 21 nov. 2010 22:49
par Tanuki
Avis à la population:
Pour tous ceux qui ont eu des problèmes pour télécharger: le lien du dessus fonctionne.
(il sera supprimé après 21 jours sans téléchargements)
Merci à Mooz pour son aide.
Re: Mon petit désassembleur
Publié : lun. 29 nov. 2010 00:55
par Mathdea
Merci à toi de nous faire partager cet utilitaire.
Re: Mon petit désassembleur
Publié : lun. 29 nov. 2010 09:57
par touko
Bon je sais bien que je vais me faire lyncher, mais un debugger, personne ne se sentirai d'en faire un ???

Re: Mon petit désassembleur
Publié : lun. 29 nov. 2010 14:18
par MooZ
Il y a celui de mednafen (alt+d pour l'avoir). Mais c'est de l'asm.
Si tu veux faire un debugger C il faudrait générer des infos de ... debug soit dans la rom, soit dans un fichier annexe que tu devras filer à l'émulateur. En gros... des heures de souffrance pour le développeur

Re: Mon petit désassembleur
Publié : lun. 29 nov. 2010 16:28
par touko
Ok merci, on va rester au put_number, put_hex, et put_string alors

Re: Mon petit désassembleur
Publié : lun. 29 nov. 2010 18:34
par xav
Ok merci, on va rester au put_number, put_hex, et put_string
A la rigueur, si les infos que tu veux visualiser sont très simpliste, tu peux utiliser la bordure de l'écran, c'est la couleur 0 de la première palette sprite, comme ça:
/* Tu définie d'abord quelque couleurs ( sur 9bits) */
#define BLACK 0x0000
#define GREEN 0x01C0
#define RED 0x0038
#define BLUE 0x0007
/* Puis tu place cette ligne à l'endroit de ton code ou tu veux avoir une info visuelle */
set_color(256, RED);
Ça ne gène pas le gameplay et en utilisant la compilation conditionnel tu peut méme le laisser dans ton code tout le temps, style IFDEF DEBUG

Re: Mon petit désassembleur
Publié : lun. 29 nov. 2010 20:41
par MooZ
Sinon tu peux utiliser l'interruption 2 avec l'instruction brk. Tu peux t'en servir comme d'un assert. Si un test échoue (mauvaise valeur, etc...). Paf tu exécutes l'instruction. Ou un solution plus brutale consiste à passer par le port d'extension. Par exemple si tu as un arduino, tu cables un pin sur la pin B21. Comme ça tu pourras déclencher l'interruption depuis ton PC

Pour revenir à l'irq2... tu codes une sorte de mode debug qui backup et stoppe certains trucs (sauvegarde de le BAT, arret du player audio). Et ensuite tu affiches ce qui t'intéresse.
Re: Mon petit désassembleur
Publié : lun. 29 nov. 2010 20:51
par touko
Ouaip, l'astuce de xav est pas mal, assez simple en fait ..
Celle de mooz est plus pro, mais bon là c'est un peu difficult pour moi
