Emulation VBHector
Modérateurs : Papy.G, fneck, Carl
Re: Emulation Hector sur MESS
J'ai donc fini le dialogue entre l'Hector et le Disc2, Le boot du Disc2 est donc ok (avec le transfert du micro code dans Hector) :
Reste 50% du problème : Simuler (ou émuler...) le fonctionnement du uPD765... Si quelqu'un a un code VB ou C simulant le uPD, je suis preneur (hormis le code MESS que je connais ).
Pour le uPD en l'absence de code exemple, ça va donc être beaucoup plus long : il faut tout faire !
Reste 50% du problème : Simuler (ou émuler...) le fonctionnement du uPD765... Si quelqu'un a un code VB ou C simulant le uPD, je suis preneur (hormis le code MESS que je connais ).
Pour le uPD en l'absence de code exemple, ça va donc être beaucoup plus long : il faut tout faire !
Re: Emulation Hector sur MESS
Aller, un point de passage important : J'ai simulé le uPD sur quelques fonctions (specify, sense drive status, sense interrupt status, recalibrate et read). Avec seek, write et format c'est normalement les seules fonctions du uPD qu'Hector utilise. Néanmoins grâce à ces seules fonctions j'ai lancé le CP/M et depuis le CP/M je peux charger des soft
J'ai encore du boulot (gestion de la tête plus fine, et les 3 dernières fonctions manquantes), Gestion des disquettes (plusieurs disquettes et choix des fichiers)... Mais maintenant j'ai 90% du soft du uPD (avec sa structure pour pouvoir facilement ajouter les fonctions manquante !
Heureux !
J'ai encore du boulot (gestion de la tête plus fine, et les 3 dernières fonctions manquantes), Gestion des disquettes (plusieurs disquettes et choix des fichiers)... Mais maintenant j'ai 90% du soft du uPD (avec sa structure pour pouvoir facilement ajouter les fonctions manquante !
Heureux !
- Carl
- Modérateur
- Messages : 13290
- Inscription : 08 avr. 2007 13:21
- Localisation : http://www.doledujura.fr
- Contact :
Re: Emulation Hector sur MESS
Pour info j'ai donné à Yves une copie de la version en cours avec le lecteur fonctionnel, sauf formatage et sauvegarde des disquettes, qui sont encore dans les cartons (pas encore ouvert).
Pour le début d'année, il devrait y avoir un gros plus... à suivre
Pour le début d'année, il devrait y avoir un gros plus... à suivre
Re: Emulation Hector sur MESS
Bonne année !
L'émulateur est en ligne !
Yves
L'émulateur est en ligne !
Yves
Re: Emulation Hector sur MESS
Salut,
Suite à la perte de ma clef usb avec mes sources à jour (!) j'ai donc du reprendre à 0 la partie que j'avais presque terminée : le son.
Voila qui est fait. La nouvelle version de VB Hector possède donc maintenant :
* Emulation du clavier, écran (BR/HR/80c), joystick 0 et 1,
* Le son 1 bit et le son SN76477 !
* Les cassettes,
* L'unité Disc 2 (disquette Forth et CP/M : ok)
* Les snap (copies de mémoires)
* le debugger avec traces (Z80 Hector et Disc 2, bloc cassette et uPD765) .
Juste pour info, j'ai essayé divers solutions pour le son mais c'est uniquement avec DirectX que j'ai eu de bon résultats. J'ai essayé la bibliothèque SFML mais les temps de latence sont trop important (400ms mini et encore avec 3 buffers...). Maintenant j'utilise SharpDX.
Evidemment tout cela en natif VB Net puisque c'était le challenge de base
Si Yves veut bien, je lui transmettrais mon source pour qu'il soit dispo sur son site
Suite à la perte de ma clef usb avec mes sources à jour (!) j'ai donc du reprendre à 0 la partie que j'avais presque terminée : le son.
Voila qui est fait. La nouvelle version de VB Hector possède donc maintenant :
* Emulation du clavier, écran (BR/HR/80c), joystick 0 et 1,
* Le son 1 bit et le son SN76477 !
* Les cassettes,
* L'unité Disc 2 (disquette Forth et CP/M : ok)
* Les snap (copies de mémoires)
* le debugger avec traces (Z80 Hector et Disc 2, bloc cassette et uPD765) .
Juste pour info, j'ai essayé divers solutions pour le son mais c'est uniquement avec DirectX que j'ai eu de bon résultats. J'ai essayé la bibliothèque SFML mais les temps de latence sont trop important (400ms mini et encore avec 3 buffers...). Maintenant j'utilise SharpDX.
Evidemment tout cela en natif VB Net puisque c'était le challenge de base
Si Yves veut bien, je lui transmettrais mon source pour qu'il soit dispo sur son site
Re: Emulation Hector sur MESS
C'est excellent et presque incroyable d'avoir réalisé tout cela avec si peu de doc, en particulier pour le Disc 2. Bravo
Le temps de latence du son est un problème insoluble, même avec DirectX. J'ai essayé toutes les tailles et nombres de buffers possibles sans jamais trouver de combinaison miracle. Il doit être difficile de descendre sous le dixième de seconde. Je crois qu'il y a un minimum imposé par la carte son, et le logiciel, même s'il est très rapide, ne peut pas descendre au-dessous.
Le temps de latence du son est un problème insoluble, même avec DirectX. J'ai essayé toutes les tailles et nombres de buffers possibles sans jamais trouver de combinaison miracle. Il doit être difficile de descendre sous le dixième de seconde. Je crois qu'il y a un minimum imposé par la carte son, et le logiciel, même s'il est très rapide, ne peut pas descendre au-dessous.
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
Re: Emulation Hector sur MESS
En faisant des tests avec un programme séparé, je n'ai pas réussi à descendre sous les 30ms. Pour obtenir cela j'ai mis en place le système de notifications. Avec ce système, le son produit (en relançant un nouveau buffer à la suite de la notification) ne possède pas de "trou" dans le son (vérifié en enregistrant le son produit et en visualisant le signal, échantillon par échantillon).
Pour être synchro dans VB Hector, j'ai donc utilisé 40ms (soit 2 interruptions à 20ms). Sur les versions précédentes je synchronisais toutes les 20ms, ici la 1ere fois j'attends 20 ms, la seconde fois la notification de fin de buffer de 40ms... Ce qui fait un son sans trop de latence (non perceptible).
Pour être synchro dans VB Hector, j'ai donc utilisé 40ms (soit 2 interruptions à 20ms). Sur les versions précédentes je synchronisais toutes les 20ms, ici la 1ere fois j'attends 20 ms, la seconde fois la notification de fin de buffer de 40ms... Ce qui fait un son sans trop de latence (non perceptible).
Re: Emulation Hector sur MESS
wow excellent bravo.yo_fr a écrit :Si Yves veut bien, je lui transmettrais mon source pour qu'il soit dispo sur son site
Avec plaisir pour le sources !
Yves
Re: Emulation Hector sur MESS
hop version 1.60a en ligne !
J'ai testé avec un programme ASM qu'un passionné avait écrit à l'époque "Crystelium" (jeu dans l'espace avec gestion des ressources), c'est tout simplement géant !
Yves
J'ai testé avec un programme ASM qu'un passionné avait écrit à l'époque "Crystelium" (jeu dans l'espace avec gestion des ressources), c'est tout simplement géant !
Yves
Re: Emulation Hector sur MESS
désespérant...
J'ai voulu voir ce que pouvait donner le mini disque, du coup j'ai mis en place la ROM..., j'ai mis en place les appels vers le WD1793...., j'ai émuler les 1ere fonctions du WD.... hé hop, voilà le résultat :
j'ai donc replongé !!!
La lecture du catalogue est réalisable (selon copie d'écran) et on peut lancer des softs... Reste à chasser 2/3 bug et je pourrais vous distribuer le programme !
(C'est vrai que ça sert à rien, mais bon ça fait plaisir à bibi )
J'ai voulu voir ce que pouvait donner le mini disque, du coup j'ai mis en place la ROM..., j'ai mis en place les appels vers le WD1793...., j'ai émuler les 1ere fonctions du WD.... hé hop, voilà le résultat :
j'ai donc replongé !!!
La lecture du catalogue est réalisable (selon copie d'écran) et on peut lancer des softs... Reste à chasser 2/3 bug et je pourrais vous distribuer le programme !
(C'est vrai que ça sert à rien, mais bon ça fait plaisir à bibi )
Re: Emulation Hector sur MESS
Je partage cette philosophie : le plaisir est plus grand si c'est très difficile et complètement inutile
Bravo pour ce nouvel exploit
Bravo pour ce nouvel exploit
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.