Salut,
Oui, l'émulation demande beaucoup de rigueur et de patience...
Pour répondre plus précisément à la question:
J'aimerai bien savoir comment on fait un émulateur... Mon rêve d'émuler mon sergio max computeur a base de Z80 mais pas de vdp encore.
L'émulateur heigthy-one peut t'aider.
Les sources sont disponible et fonctionnelles.
comment on émule le micro-processeur, doit on le faire mnémonique par mnémonique ou y a t'il des moteurs z80 6502, 6510...
La source du Z80 est incluse dans l'émulateur cité plus haut.
comment on émule le vdp avec les défauts (image pas nette, à la commodore 64) ? doit on le faire pixel par pixel avec des fichier image retravaillé ?
Tu verra que le rendu écran est un "gadget" qui n'a aucune utilité dans le fonctionnement de l'émulateur.
Mais, si tu le désires, les codes sources de EO ont un filtre de distorsion vidéo, pour rendre le rendu plus réaliste.
ou trouver la doc et la rom ?
C'est la question la plus importante.
Sans doc, livre ou notices techniques ... impossible d'émuler.
Sans ROM ou copie des mémoires statiques, impossible de faire du retro-engineering sur la code de la machine (IO clavier/écran adressage....)
Il faut donc que tu fasses un Dump des ROMs.(BIOS/BASIC)
Dans un premier temps, fait un mapping d'adresses ROM, mémoire écran et mémoire intégrée... extension mémoire...
Puis Dumpe les ROMs.
-Dump direct avec un lecteur/graveur d'Eprom.
-Sortie hexa sur imprimante et OCR.(ou en création de fichier sur un terminal RS)
-Sortie dans un fichier cassette (wav).
-Sortie écran avec photos...puis OCR
-Sortie sur disquette...
Le plus rapide est le lecteur d'Eprom, car le fichier Wav doit être décodé...
Sur imprimante, je l'ai fait pour une rom de driver disque de 2K, mais il faut effectuer un CRC pour la vérification des codes.
Sur disquette, il reste un problème de compatibilité de dump sur PC... car cela est parfois impossible.
Sur K7, si le protocole wav est connu et que tu disposes déjà d'une cassette, cela est possible.
C'est après cette étape que l'émulation peut commencer.