Emulation VBHector

Couvre tous les domaines de l'émulation ou de la virtualisation ainsi que les discussions sur les divers outils associés.

Modérateurs : Carl, Papy.G, fneck

Répondre
Avatar du membre
yo_fr
Messages : 1320
Enregistré le : 13 août 2009 18:24
Localisation : 78...
Contact :

Emulation VBHector

Message par yo_fr » 19 sept. 2012 21:19

Petite info;
Ces derniers jours j'étais en déplacement et dans mon pc j'avais Visual Basic (2010 version express, gratuite...).
M'ennuyant un peu le soir j'en ai profité pour essayer quelque chose qui me trottait dans la tête : émuler un Z80 en VB dot Net....

J'ai récupéré de VB81 (un émulateur ZX81 en VB6 http://freestuff.grok.co.uk/vb81/) le code de l'émulation du Z80, j'ai mis en place la ROM (de l'Hector MX40, tant qu'a faire...) et fait le programme pour émuler la mémoire (paginations), l'écran et le clavier...
Résultat des courses : cela tourne bien ! :) les interruptions à 20ms tournent à temps sans accoups avec le Z80 à 5Mhz !
Ceci sur un PC portable en core2duo 2,3 Ghz... pas un foudre de guerre mais loin d'un ordinausore quand même...
Je ne m'attendais pas à une émulation si fluide...
Je me demande si je ne vais pas aller un peu plus loin : cassette notamment; probablement pas le reste (trop de boulot, aucun intérêt : dcHector et Mess sont suffisant !)

Daniel
Messages : 10326
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Emulation Hector sur MESS

Message par Daniel » 20 sept. 2012 10:49

L'époque où il fallait programmer les émulateurs en assembleur pour approcher la vitesse de la machine d'origine est révolue. Avec la vitesse actuelle des ordinateurs, et en particulier des cartes vidéo, on peut utiliser des langages beaucoup plus évolués. Ce n'est pas forcément plus facile de faire un bon émulateur, mais on peut lui ajouter des fonctions évoluées sans trop de difficulté.
Même en Basic :D
Daniel
L'obstacle augmente mon ardeur.

Avatar du membre
yo_fr
Messages : 1320
Enregistré le : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Emulation Hector sur MESS

Message par yo_fr » 01 nov. 2012 15:47

Petite info au passage: le projet MESS a migré directement au sein de MAME. Les sources sont maintenant dispo avec la distribution MAME.

yves
Messages : 307
Enregistré le : 12 sept. 2007 21:32

Re: Emulation Hector sur MESS

Message par yves » 01 nov. 2012 17:10

excellent ! :)

Avatar du membre
yo_fr
Messages : 1320
Enregistré le : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Emulation Hector sur MESS

Message par yo_fr » 10 nov. 2012 18:04

bon ben je suis tombé dedans quand j'étais petit : j'ai continué un peu de code VBNet et j'ai mis en place :
* Couleurs,
* BR/HR et 80 colonnes,
* Choix le la machine :HR plus / HRX /MX40 / MX80c
* Clavier entier,
* Joystick,
* Un désassembleur Z80 et débugger (breakpoint, pas à pas...)
* Gestion des cassettes.
Bon c'est vraiment plus didactique qu'utile (quoique, quel émulateur est utile ?), mais ça fonctionne pas mal et en temps réel !

Image

Image

C'est sympa de programmer en VBNet. De plus, hormis le coeur du code d'émulation du Z80 (que j'ai transformé en VBNet, quand même) j'ai tout écris contrairement au code MESS où j'ai utilisé des drivers existant pour créer la machine... :)

yves
Messages : 307
Enregistré le : 12 sept. 2007 21:32

Re: Emulation Hector sur MESS

Message par yves » 10 nov. 2012 18:33

carrément ! respect, avec un desassembleur et le pas à pas !

tu as mis combien de temps à développer tout ca ?

Si tu veux le mettre en téléchargement je peux le mettre sur hectorvictor.

Yves

Avatar du membre
6502man
Messages : 8933
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Emulation Hector sur MESS

Message par 6502man » 10 nov. 2012 19:17

Super boulot :)


A quand la diffusion ?
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
yo_fr
Messages : 1320
Enregistré le : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Emulation Hector sur MESS

Message par yo_fr » 10 nov. 2012 21:51

pourquoi, pas. Ta proposition Yves => OK, je vais demain contrôler un peu le code et mettre un peu plus de commentaires ensuite je te l'envoi. Le but étant didactique et pas de créer un émulateur concurrentiel.

PS : ne pas oublier : il est pour VB Net et il faut donc le Framework installé. De plus il faut mettre à coté de l'exécutable les ROM d'Hector (HRP HRX, MX40 et MX80) pur que cela fonctionne.

Avatar du membre
6502man
Messages : 8933
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Emulation Hector sur MESS

Message par 6502man » 10 nov. 2012 23:19

Sinon pour les roms tu peut les intégrer en ressources dans l'exécutable ;)
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
yo_fr
Messages : 1320
Enregistré le : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Emulation Hector sur MESS

Message par yo_fr » 11 nov. 2012 20:53

source libre transmisse à Yves pour son site !
A suivre...

Avatar du membre
yo_fr
Messages : 1320
Enregistré le : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Emulation Hector sur MESS

Message par yo_fr » 21 nov. 2012 21:37

Yves a mis en ligne VBHector sur son site :
http://hectorvictor.free.fr/

Merci Yves !

Deux remarques : en page d’accueil une petite erreur : pas d'émulation de l'Hector1; et petite info : le fait de cliquer sur le l'écran d'Hector (la zone grise) lance l’émulation... :wink:
Pour info aussi il vaut mieux utiliser VB2012 express, que VB2010. Les prochaines versions seront plutôt sur 2012.

Avatar du membre
6502man
Messages : 8933
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Emulation Hector sur MESS

Message par 6502man » 21 nov. 2012 22:22

Super, et merci a vous deux :D

A quand l'émulation des disquettes :wink:


Au faite tu n'a compilé que la version "debug" mais pas la "release" ?
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
yo_fr
Messages : 1320
Enregistré le : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Emulation Hector sur MESS

Message par yo_fr » 22 nov. 2012 16:54

si, mais pour gagner de la place j'ai supprimé d'exe. De toute façon on gagne quasiment rien en release.

Pour ce qui est du lecteur Disc2... il est hélas dans les plans...
J'ai déjà mis en place
=> le 2eme Z80 sa mémoire (Rom et Ram + pagination) => OK
dans un 2eme thread (pas de changement donc de la capacité de traitement, sur les pc multi core)
=> j'ai mis en place le debugger pour le 2eme Z80 => OK
=> les zones d'échange entre les 2 processeurs (pas encore OK aujourd'hui.)...
C'est malin, on dirais que je suis retombé dedans...

Quelqu'un a parcouru les sources ? qu'en pensez vous :?: :?: (code et commentaire)
il faut que je fasse mieux, pour que cela ressemble à quelque chose ?

Avatar du membre
6502man
Messages : 8933
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Emulation Hector sur MESS

Message par 6502man » 23 nov. 2012 08:15

Les sources sont "propres" et clairs avec les commentaires.

Le principal avant tout c'est que cela fonctionne et que tu te fasses plaisir a le faire :wink:
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

yves
Messages : 307
Enregistré le : 12 sept. 2007 21:32

Re: Emulation Hector sur MESS

Message par yves » 23 nov. 2012 19:42

yo_fr a écrit : Pour ce qui est du lecteur Disc2... il est hélas dans les plans...
Tu mets le doigts dedans, impossible de t'arrêter ! :)

Yves

Répondre