Emulation VBHector

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

Modérateurs : Papy.G, fneck, Carl

Répondre
Avatar de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Emulation VBHector

Message par yo_fr »

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 : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Emulation Hector sur MESS

Message par Daniel »

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 de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Emulation Hector sur MESS

Message par yo_fr »

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 : 464
Inscription : 12 sept. 2007 21:32

Re: Emulation Hector sur MESS

Message par yves »

excellent ! :)
Avatar de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Emulation Hector sur MESS

Message par yo_fr »

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 : 464
Inscription : 12 sept. 2007 21:32

Re: Emulation Hector sur MESS

Message par yves »

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 de l’utilisateur
6502man
Messages : 12286
Inscription : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Emulation Hector sur MESS

Message par 6502man »

Super boulot :)


A quand la diffusion ?
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.
Avatar de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Emulation Hector sur MESS

Message par yo_fr »

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 de l’utilisateur
6502man
Messages : 12286
Inscription : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Emulation Hector sur MESS

Message par 6502man »

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 de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Emulation Hector sur MESS

Message par yo_fr »

source libre transmisse à Yves pour son site !
A suivre...
Avatar de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Emulation Hector sur MESS

Message par yo_fr »

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 de l’utilisateur
6502man
Messages : 12286
Inscription : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Emulation Hector sur MESS

Message par 6502man »

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 de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Emulation Hector sur MESS

Message par yo_fr »

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 de l’utilisateur
6502man
Messages : 12286
Inscription : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Emulation Hector sur MESS

Message par 6502man »

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 : 464
Inscription : 12 sept. 2007 21:32

Re: Emulation Hector sur MESS

Message par yves »

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