Prehisto a écrit:
Si tu as du temps libre un de ces jours, tu peux même tester les codes machine non officiels, voir quel effet ils produisent et les implémenter. Des fois qu'un programmeur malicieux se risque à les utiliser...
J'avais commencé, il y a quelques années, en essayant de compléter une liste d'instructions non documentées trouvée sur internet. J'en ai testé quelques autres. La plupart (mais pas toutes) réagissent comme une autre instruction valide. Exemple le fameux 01, utilisé par William Hennebois dans la protection des cassettes MO d'infogrames, est un BRN. C'est la seule actuellement émulée par dcmoto.
Pour faire un travail sérieux, c'est à dire déterminer la fonction précise de l'instruction dans tous les cas de figure, il faut malheureusement beaucoup de temps. Après avoir testé deux ou trois codes j'ai abandonné, comme beaucoup d'autres. Il faudrait se partager le travail pour arriver à tout découvrir.
Et alors j'aurais un autre problème : dans dcmoto j'utilise des instructions invalides pour émuler les accès cassette et disquette, et lire la position de la souris. S'il n'y a plus un seul code opération invalide, je suis coincé
Prehisto a écrit:
Au fait, j'ai parlé dans un topique du 6309. Nous n'en avons pas sous la main, mais il serait possible de l'émuler sous... émulateur.
L'année dernière j'ai écrit un émulateur 6803 pour l'émulateur DCAlice. J'ai pu utiliser en grande partie l'émulateur 6809 de dcmoto, si bien que tout a été écrit et testé en moins de 2 jours. Pour le 6309 ce n'est peut-être pas plus difficile.
Prehisto a écrit:
Mis à part ça, quelque chose qui ne prendrait pas trop de temps (il suffirait de savoir où intercepter ou bien changer un peu le code dans la ROM "Exploitation de fichiers") serait d'initialiser automatiquement la date du jour à chaque retour à la page de menu des TO.
A priori ça paraît effectivement très simple. Reste à trouver le temps de le faire
Et puisqu'on parle d'améliorations de l'émulateur, je donne une petite info qui devrait plaire à Yoann : le désassembleur de dcmoto a été réécrit pour donner le nombre de cycles. Il reste à le tester. A noter toutefois un problème insoluble : le nombre de cycles des branchements longs dépend du contexte : si le branchement a lieu ou non, le nombre de cycles est différent. Au désassemblage on ne peut pas savoir. Je considérerai que le branchement n'a pas lieu. Il y a un problème analogue pour le RTI, dont la longueur varie en fonction du nombre de registres à dépiler.
Daniel