Un simulateur, comme son nom l'indique, "simule", c'est à dire reproduit, copie, imite le comportement d'une machine. Cela demande un gros travail car il faut "copier" tout le comportement de toutes les fonctions et les instructions d'une machine et le reproduire. Si la fonction SIN fait une erreur de calcul, et bien il faut aussi que le simulateur produise cette erreur. Le seul avantage, c'est que l'on pas besoin de connaitre les entrailles de la machine (CPU, hardware, bus, PIO, controleurs...), ni de copie de la ROM. Enfin, c'est libre de droits, pas de copyright. En revanche, on ne decouvrira jamais les fonctions éventuellement cachées, et surtout, on ne saura rien de technique sur la machine. Par contre, ajouter de nouvelles fonctionnalités est très simple, car il suffit de les coder directement. On pourrait facilement avoir un PC1211 avec 1G de mémoire, la gestion étendue des chaines de caractères, un écran graphique... Le logiciel free42 est un simulateur de HP-42S.Professeur_Octopus a écrit :Au fait, c'est quoi la différence entre simulateur et émulateur et quels sont les avantages/inconvénients respectifs de chaque méthode ?
Le cas de l'émulateur, au contraire "simule" le CPU et les composants (le matériel). On a donc juste besoin des documents techniques pour coder les instructions du CPU, les accès mémoires, interruptions, gestion du clavier et de l'écran, bus d'interface avec les périphériques. Mais, dans ce cas, comme le CPU est émulé, il faut une image de la ROM, car on va pas simuler la fonction SIN, mais les instructions CPU qui sont déroulées lors de l'appel à la fonction SIN. Avec, un émulateur, on découvre donc les entrailles et les secrets de la machine. Aussi les problèmes de license et de copyright peuvent intervenir et certaines sociétés sont très sensibles à ce sujet. De plus, dans un émulateur, si on souhaite rajouter des fonctionnalités (nouvelles fonctions ou instructions), on doit les coder en langage machine, ce qui revient à modifier la ROM. PockEmul, Nonpareil sont des émulateurs.
L'èmulateur est le plus proche de la machine originale.
Pour dumper une ROM, il faut au moins la fonction PEEK, qui n'est pas présente sur le PC1211. Un dump de la ROM par une méthode conventionnelle n'est donc pas possible. Après, il peut y avoir d'autres solutions, mais cela demande du matériel (analyseur de signaux,...) et aussi certaines données techniques (temps d'accès de la ROM, timing des signaux...).Professeur_Octopus a écrit :Et enfin, pourquoi ne peut-on pas faire de dump de la rom depuis le 1211 ? Un peu comme vous l'avez fait avec le FP-200 au poke, il n'y a pas moyen ?