Projet VG5000µ

Cette catégorie traite de développements récents destinés à nos vieilles machines, applications, jeux ou démos... Amis programmeurs, c'est ici que vous pourrez enfin devenir célèbres!

Modérateurs : Papy.G, fneck, Carl

Répondre
Avatar de l’utilisateur
rendomizer
Messages : 413
Inscription : 17 juin 2016 21:00
Contact :

Projet VG5000µ

Message par rendomizer »

C'est un drôle de choix le VG5000 je l'avoue car il y a tant d'autres machines a explorer mais celui ci est bien documenté et en français bien que l'Alice aussi aurait été intéressant a coder mais bon comme j'ai débuté avec le VG5000 et que a l'époque je n'étais pas aussi documenté je pense en faire quelque chose aujourd’hui. Je vais tenter de coder en langage machine aussi pour exploiter à fond les ressources vidéo et comme l’émulateur est très fidèle à l'original, c'est d'autant plus intéressant.
Je ne suis qu'un utilisateur pas un pro
Avatar de l’utilisateur
rendomizer
Messages : 413
Inscription : 17 juin 2016 21:00
Contact :

Re: passion du VG5000µ

Message par rendomizer »

est-ce que quelqu'un peut me donner les adresses du port de l'EF9345 du VG5000 ?
j'ai scruté les documentations du site myVG5000 et dcvg5000 mais rien sur l'adressage du EF9345 :?
Je ne suis qu'un utilisateur pas un pro
Markerror
Messages : 2123
Inscription : 31 oct. 2011 19:21
Localisation : Orléans
Contact :

Re: passion du VG5000µ

Message par Markerror »

Bonjour,

On part deux jours en formation, et paf, un nouveau programmeur VG5000 qui arrive sur le forum :-). Bienvenue !

Pour avoir des exemples concrets de programmation de l'EF9345, tu peux regarder les sources des programmes de Joaopa (Tetris, VGSargon et le petit dernier, Télécran). Tu trouveras des liens sur les topics du site ou aller sur http://vg5000bazar.free.fr, les sources sont présents avec les binaires des programmes.

La programmation de l'EF9345 est quelque chose de particulier que je ne maîtrise pas de mon côté. Méfie-toi de l'émulateur de Daniel : il n'émule pas forcément parfaitement le comportement de cette puce revêche. Joaopa a par exemple eu des problèmes avec Télécran sur le timing d'envoi de commandes. Bref, la règle d'or, toujours tester sur une vraie machine !
Avatar de l’utilisateur
rendomizer
Messages : 413
Inscription : 17 juin 2016 21:00
Contact :

Re: passion du VG5000µ

Message par rendomizer »

j'ai bien vue le site de vg5000bazard mais il faut connaitre par coeur les mnemoniques en hexadecimale sans aller chercher sur la doc pour comprendre quelque chose sinon y moyen avec beaucoup de patience... un bon vieux document avec les adresses et fonctions decritent serait tellement la bienvenue ! j'ai vraiment envie de comprendre ce foutu circuit ! pourquoi me demanderiez vous et bien le retro codding a le vent en poupe et je pense que le vg5000 a de l'avenir si on si attarde un peu le mode 80 colonnes par exemple pour ne citer que ça il y a aussi les 27 couleurs c'est pas rien pour une machine d'il y a 30 ans ! non vraiment je tiens a développer pour ce micro ordinateur vraiment sympatique.
Je ne suis qu'un utilisateur pas un pro
Avatar de l’utilisateur
Papy.G
Modérateur
Messages : 3051
Inscription : 10 juin 2014 13:40
Localisation : Haute-Garonne/Gers

Re: passion du VG5000µ

Message par Papy.G »

6502man a fait un petit memo 9345, qui me semble fort utile, et assez bien résumé, pour éviter de replonger dans la doc et fouiller à chaque instant. 8)

Personnellement, en dehors du mode pseudo-bitmap relativement direct et en monochrome, le mode 80 colonnes est un peu trop limité, on peut obtenir la même résolution avec les jeux de caractères Q dans le mode 40 colonnes, voire même deux fois plus de lignes, et en huit couleurs! :P
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.
Avatar de l’utilisateur
rendomizer
Messages : 413
Inscription : 17 juin 2016 21:00
Contact :

Re: passion du VG5000µ

Message par rendomizer »

ça devient tres interessent mais aucun adressage du circuit EF9345 VG5000 ! qu'est ce que vous pouvez me dire sur le jeux de charactere Q et le nombe de lignes ça me parait tellement fantastic pour l'époque ?
Je ne suis qu'un utilisateur pas un pro
Daniel
Messages : 17410
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: passion du VG5000µ

Message par Daniel »

rendomizer a écrit :est-ce que quelqu'un peut me donner les adresses du port de l'EF9345 du VG5000 ?
Le VG5000 communique avec l'EF9345 par les ports cf et 8f. Exemple extrait de la ROM Basic v1.1 :

Code : Tout sélectionner

------------------------------------
affichage caractere position curseur
------------------------------------
019a 01cf03    ld      bc,03cfh
019d 3e20      ld      a,20h           20=Command register
019f d38f      out     (8fh),a
01a1 dbcf      in      a,(0cfh) <-     attente EF9345 prêt
01a3 b7        or      a          |
01a4 faa101    jp      m,01a1h ---
01a7 3e22      ld      a,22h           22=Data register R2
01a9 d38f      out     (8fh),a
01ab ed51      out     (c),d           envoi de d
01ad 3e20      ld      a,20h           20=Command register 
01af d38f      out     (8fh),a
01b1 dbcf      in      a,(0cfh) <-     attente EF9345 prêt
01b3 b7        or      a          |
01b4 fab101    jp      m,01b1h ---
01b7 3e21      ld      a,21h           21=Data register R1
01b9 d38f      out     (8fh),a
01bb ed59      out     (c),e           envoi de e
01bd 3e28      ld      a,28h           28=Command register + exec request
01bf d38f      out     (8fh),a
01c1 ed41      out     (c),b           03 = ecriture mode 40 car. 16 bits 
01c3 c9        ret     
Remarque à propos des 27 couleurs : c'est une illusion d'optique, obtenue par affichage alterné de deux couleurs différentes. Dans la pratique ce n'est pas utilisable, le VG5000 n'a que 8 couleurs. L'Alice 32, par contre, en affiche deux fois plus avec le même processeur graphique, grâce à une astuce électronique.
Daniel
L'obstacle augmente mon ardeur.
Avatar de l’utilisateur
Papy.G
Modérateur
Messages : 3051
Inscription : 10 juin 2014 13:40
Localisation : Haute-Garonne/Gers

Re: passion du VG5000µ

Message par Papy.G »

Je me trompe, ou on dirait que la routine envoie les valeurs aux adresses prévues dans les docs du 9345?
Il semble bien être mappé directement dans l'espace mémoire. :P
Je ne connais pas le code Z80, mais on dirait que ça envoie aux adresses 20h à 2Fh. :mrgreen:
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.
Avatar de l’utilisateur
rendomizer
Messages : 413
Inscription : 17 juin 2016 21:00
Contact :

Re: passion du VG5000µ

Message par rendomizer »

Je dois avouer, la première fois que j'ai été attiré par un ordi c'était pour un Alice 32, il coutait la maudite somme de 2000 francs ! c'était cher pour un si petit micro ! Et ma maman ne cautionnait pas du tout ce genre de bêbête. Il a fallut que j'attende 2 ans pour que je puisse en avoir un et ce fut le vg5000 mais je me demandais ce que j'allais faire avec ! C'est pour ça qu'aujourd'hui je suis plus à même de coder pour le vg5000 ... et donner un peu de crédit a cette machine qui n’eut pas son heure de gloire mérité, enfin peut être que je parle de moi là ?...petite remarque pour Alice, j'ai adoré le jeux gallaxion que je viens de jouer sur l’émulateur.
Je ne suis qu'un utilisateur pas un pro
Avatar de l’utilisateur
Papy.G
Modérateur
Messages : 3051
Inscription : 10 juin 2014 13:40
Localisation : Haute-Garonne/Gers

Re: passion du VG5000µ

Message par Papy.G »

Les jeux de caractères Q permettent de définir des caractères de 4x10 points en quatre couleurs indexées sur huit. En mode 40 colonnes, cela donne 160x240 (voire 250 avec la ligne d'état). Avec 8ko de Vram, la mémoire disponible ne permet que cinq jeux de 100 caractères, si l'on garde 3 blocs pour la page-écran, ce qui ne permet pas d'occuper tout l'espace avec des caractères uniques. On peut toutefois les afficher en double hauteur, on réduit la résolution à 120 lignes (ou 125 encore), mais on peut alors remplir l'écran entier. :lol:
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.
Avatar de l’utilisateur
rendomizer
Messages : 413
Inscription : 17 juin 2016 21:00
Contact :

Re: passion du VG5000µ

Message par rendomizer »

Daniel a écrit :
rendomizer a écrit :est-ce que quelqu'un peut me donner les adresses du port de l'EF9345 du VG5000 ?
Le VG5000 communique avec l'EF9345 par les ports cf et 8f. Exemple extrait de la ROM Basic v1.1 :

Code : Tout sélectionner

------------------------------------
affichage caractere position curseur
------------------------------------
019a 01cf03    ld      bc,03cfh
019d 3e20      ld      a,20h           20=Command register
019f d38f      out     (8fh),a
01a1 dbcf      in      a,(0cfh) <-     attente EF9345 prêt
01a3 b7        or      a          |
01a4 faa101    jp      m,01a1h ---
01a7 3e22      ld      a,22h           22=Data register R2
01a9 d38f      out     (8fh),a
01ab ed51      out     (c),d           envoi de d
01ad 3e20      ld      a,20h           20=Command register 
01af d38f      out     (8fh),a
01b1 dbcf      in      a,(0cfh) <-     attente EF9345 prêt
01b3 b7        or      a          |
01b4 fab101    jp      m,01b1h ---
01b7 3e21      ld      a,21h           21=Data register R1
01b9 d38f      out     (8fh),a
01bb ed59      out     (c),e           envoi de e
01bd 3e28      ld      a,28h           28=Command register + exec request
01bf d38f      out     (8fh),a
01c1 ed41      out     (c),b           03 = ecriture mode 40 car. 16 bits 
01c3 c9        ret     
Remarque à propos des 27 couleurs : c'est une illusion d'optique, obtenue par affichage alterné de deux couleurs différentes. Dans la pratique ce n'est pas utilisable, le VG5000 n'a que 8 couleurs. L'Alice 32, par contre, en affiche deux fois plus avec le même processeur graphique, grâce à une astuce électronique.
J'ai tapé ce bout de code mais ça ne donne rien.
Je ne suis qu'un utilisateur pas un pro
Daniel
Messages : 17410
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Projet VG5000µ

Message par Daniel »

Ce code ne peut fonctionner que dans un certain contexte. Il faut avoir au préalable initialisé l'EF9345 dans le bon mode, avoir mis les bonnes valeurs dans tous ses registres et transmettre à la routine d'affichage les bons paramètres.
Daniel
L'obstacle augmente mon ardeur.
joaopa
Messages : 512
Inscription : 14 sept. 2013 12:17

Re: Projet VG5000µ

Message par joaopa »

Pour éviter de se taper la feuille technique Thomson sur l'EF9345, il faut commencer par lire l'indispensable astuce pour l'Alice. Le fonctionnement de l'EF9345 est bien décrit à l'intérieur.
Avatar de l’utilisateur
rendomizer
Messages : 413
Inscription : 17 juin 2016 21:00
Contact :

Re: Projet VG5000µ

Message par rendomizer »

je vais teleharger ça au plus vite et voir ce que je peut en faire j'ai pu decoder le travail de mr coulom sur le mode 80 colonnes et j'y est reperé les adresse écran et changer les valeurs pour y inscrire mon penom a la place de son "ABCDEF" ! mais j'ai du me servir de ça copie d'ecran sur son site car son fichier telechargeable ne marche pas ainsi que celui de l'affichage des 27 couleurs !

Code : Tout sélectionner

10 clear 200:a=&"7000"
20 REM MACHINE CODE
21 P$="211070CDEF0218FE0000000000000000
3E20832977208129C0208229002084291220502
600270023002953278029452701295227812947
22 P$=P$+"270229492782294F2400250026002
703228FA2608270028FA"
30 REM EXE BASIC
31 FORI=1TOLEN(P$)STEP2
32 GOSUB 91/POKEA?N/A=A+1
33 NEXT I/CALL &"7000"/END
90 REM HEX TO DEC
91 N1=ASC(MID$(P$,I,1))-48
92 IF N1>9 THN N1=N1-7
93 N2=ASC(MID$(P$,I+1,1))-48
94 IF N2>9 THEN N2=N2-7
95 N=16*N1+N2/RETURN
ImageImage
encadré en rouce les caractères de mon prenom et en jaune l'adresse de debut de l'ecran
Dernière modification par rendomizer le 24 juil. 2016 10:55, modifié 9 fois.
Je ne suis qu'un utilisateur pas un pro
Avatar de l’utilisateur
rendomizer
Messages : 413
Inscription : 17 juin 2016 21:00
Contact :

Re: Projet VG5000µ

Message par rendomizer »

joaopa a écrit :Pour éviter de se taper la feuille technique Thomson sur l'EF9345, il faut commencer par lire l'indispensable astuce pour l'Alice. Le fonctionnement de l'EF9345 est bien décrit à l'intérieur.
L'avez vous en votre possession car sur le site dcalice le fichier est mort ! :?
Je ne suis qu'un utilisateur pas un pro
Répondre