VG5000 : Schémas des périphériques
Modérateurs : Papy.G, fneck, Carl
VG5000 : Schémas des périphériques
Comme exercice de vacances, j'ai dessiné les schémas des périphériques du VG5000 (qui semble n’apparaître dans aucune doc). Bon ce n'est pas indispensable, mais ça peut toujours être utile. Ils sont en pdf et j'ai ajouté une vue de l'implantation des composants avec la numérotation utilisée car la numérotation philips est assez spéciale ou absente (VU0031)
l'interface manette vg5200: l'extension mémoire VU0031:
l'interface manette vg5200: l'extension mémoire VU0031:
- Mokona
- Messages : 1042
- Inscription : 17 déc. 2016 22:01
- Localisation : Nord Est des Yvelines
- Contact :
Re: VG5000 : Schémas des périphériques
Les vacances, c'est bien aussi pour ça
Merci !
Merci !
- Carl
- Modérateur
- Messages : 13300
- Inscription : 08 avr. 2007 13:21
- Localisation : http://www.doledujura.fr
- Contact :
Re: VG5000 : Schémas des périphériques
merci Fred !
Puis je mettre les PDF à dispo sur mon site, merci ?
Carl
Puis je mettre les PDF à dispo sur mon site, merci ?
Carl
Re: VG5000 : Schémas des périphériques
De rien.
Oui bien sur Carl, il n'y a pas de soucis.
Tu auras bientôt un 3ème schéma à ajouter...
Oui bien sur Carl, il n'y a pas de soucis.
Tu auras bientôt un 3ème schéma à ajouter...
Re: VG5000 : Schémas des périphériques
Et pour finir, voici le schéma de l'extension VG5216:
Edit :Petite correction du 04/08: erreur de numérotation des pins du connecteur imprimanteRe: VG5000 : Schémas des périphériques
En vérifiant le schéma, j'ai trouvé quelques incohérences dans le système:
Tout d'abord, une erreur dans la doc VG5216 au niveau du connecteur imprimante, la numérotation est inversée (miroir) par rapport à la réalité. (le schéma précédent est mis à jour).
En regardant le schéma du contrôleur de disquettes (qui n'existe pas) il apparaît que les adresses choisies pour les registres du FDC sont en conflits avec le décodage incomplet des éléments de l'extension VG5216.
SI le port $00 est libre en écriture, tout comme les ports $20, $40 et $60. Ils ne le sont pas en lecture car il correspondent à la manette gauche.
Pareil pour le port $01 qui n'est utilisable qu'en écriture (en faisant attention au bit 7), la lecture correspond à la manette droite.
Le contrôleur de disquette utilise une EPROM de 16K placée en parallèle avec la RAM 16K du module VG5216. Pour cela, un mécanisme de commutation est en place et permet de désactiver la RAM grâce au signal Busdir (un 0 désactive la RAM) et de la réactiver par une écriture sur le port $01 (bit D7=0 active la RAM).
Mais en regardant bien le schéma du contrôleur, on voit que l'EPROM est activée par un 74LS273 (latch avec reset sur le port $01) via le bit D7. Or pour activer l'EPROM, il faut D7=0 ce qui devrait activer aussi la RAM (mais il n'y a pas de conflit car Busdir est à 0). Au final, ce système de commutation fait penser que l'idée était de pouvoir basculer de la RAM à l'EPROM pour garder la mémoire vive mais en fait ça ne marche pas. Il manque simplement un inverseur à la sortie du latch ???
Bref, pas mal d'interrogations, d'où la question : Y aurait-il eu une 2ème version de l'extension VG5216 avec un décodage plus restreint ?
Tout d'abord, une erreur dans la doc VG5216 au niveau du connecteur imprimante, la numérotation est inversée (miroir) par rapport à la réalité. (le schéma précédent est mis à jour).
En regardant le schéma du contrôleur de disquettes (qui n'existe pas) il apparaît que les adresses choisies pour les registres du FDC sont en conflits avec le décodage incomplet des éléments de l'extension VG5216.
SI le port $00 est libre en écriture, tout comme les ports $20, $40 et $60. Ils ne le sont pas en lecture car il correspondent à la manette gauche.
Pareil pour le port $01 qui n'est utilisable qu'en écriture (en faisant attention au bit 7), la lecture correspond à la manette droite.
Le contrôleur de disquette utilise une EPROM de 16K placée en parallèle avec la RAM 16K du module VG5216. Pour cela, un mécanisme de commutation est en place et permet de désactiver la RAM grâce au signal Busdir (un 0 désactive la RAM) et de la réactiver par une écriture sur le port $01 (bit D7=0 active la RAM).
Mais en regardant bien le schéma du contrôleur, on voit que l'EPROM est activée par un 74LS273 (latch avec reset sur le port $01) via le bit D7. Or pour activer l'EPROM, il faut D7=0 ce qui devrait activer aussi la RAM (mais il n'y a pas de conflit car Busdir est à 0). Au final, ce système de commutation fait penser que l'idée était de pouvoir basculer de la RAM à l'EPROM pour garder la mémoire vive mais en fait ça ne marche pas. Il manque simplement un inverseur à la sortie du latch ???
Bref, pas mal d'interrogations, d'où la question : Y aurait-il eu une 2ème version de l'extension VG5216 avec un décodage plus restreint ?
- Carl
- Modérateur
- Messages : 13300
- Inscription : 08 avr. 2007 13:21
- Localisation : http://www.doledujura.fr
- Contact :
Re: VG5000 : Schémas des périphériques
Merci Fred,
d'après la personne qui m'a fournit les documents, il a existé quelques prototypes....mais je ne sais pas si la carte contrôleur se connectait directement sur le VG5000 ou sur le VG5216...?
Je ne croit pas qu'il existe une version 2 du VG5216...
Carl
d'après la personne qui m'a fournit les documents, il a existé quelques prototypes....mais je ne sais pas si la carte contrôleur se connectait directement sur le VG5000 ou sur le VG5216...?
Je ne croit pas qu'il existe une version 2 du VG5216...
Carl
Re: VG5000 : Schémas des périphériques
D'après la doc (disk demonstration) le contrôleur de disquette se compose de 2 cartouches: une cartouche adaptateur et une cartouche contrôleur le tout placé dans le port cartouche de la VG5216, c'est donc une cartouche à double étage. D'où mon étonnement concernant les conflits d'adresses.
Mais après une relecture du document avec le schéma du contrôleur (disk controller). Il n'est pas fait mention d'un montage en 2 parties. Il semble d'ailleurs que ce document soit juste un document d'analyse de faisabilité. Donc les adresses sont certainement fausses. (?)
Comme tu dis, des prototypes ont existé donc ça a marché mais on ne saura certainement jamais comment ...
Mais après une relecture du document avec le schéma du contrôleur (disk controller). Il n'est pas fait mention d'un montage en 2 parties. Il semble d'ailleurs que ce document soit juste un document d'analyse de faisabilité. Donc les adresses sont certainement fausses. (?)
Comme tu dis, des prototypes ont existé donc ça a marché mais on ne saura certainement jamais comment ...
- Carl
- Modérateur
- Messages : 13300
- Inscription : 08 avr. 2007 13:21
- Localisation : http://www.doledujura.fr
- Contact :
Re: VG5000 : Schémas des périphériques
Fred, le contrôleur est-il proche de cette interface Philips pour MSX ?
https://ia800702.us.archive.org/24/item ... vy0010.pdf
Carl
https://ia800702.us.archive.org/24/item ... vy0010.pdf
Carl
- Mokona
- Messages : 1042
- Inscription : 17 déc. 2016 22:01
- Localisation : Nord Est des Yvelines
- Contact :
Re: VG5000 : Schémas des périphériques
Le document se présente en tout cas comme analyse de faisabilité "A devil's advocate maximum feature/minimum component design just for VG5000"
Sur la partie "ports", je ne comprends pas. Les ports Joysticks sont (comme tu l'indiques sur tes schémas) les ports $07 et $08. Et c'est bien là que va lire la ROM ($0ed7 et $0ee2 pour l'axe horizontal et $0f0f, $0f1a pour l'axe vertical).
Quand tu parles de ports, tu parles bien de ce qui est accessible par in/out ?
Sur la partie "ports", je ne comprends pas. Les ports Joysticks sont (comme tu l'indiques sur tes schémas) les ports $07 et $08. Et c'est bien là que va lire la ROM ($0ed7 et $0ee2 pour l'axe horizontal et $0f0f, $0f1a pour l'axe vertical).
Quand tu parles de ports, tu parles bien de ce qui est accessible par in/out ?
Re: VG5000 : Schémas des périphériques
VG5200:
[EDIT: ignorer ce message, car j'ai pris les OR pour des AND)]
[EDIT: effectivement, le décodage de IRQ est "universel")
Sur le décodeur d'adresse:
Joy1: A3*( A4 * A7 )
Joy2: A2*( A4 * A7 )
Est-tu sûr de la référence du composant?
Si on a A4 ou A7, ça sélectionne les deux joysticks !
]
[EDIT: ignorer ce message, car j'ai pris les OR pour des AND)]
Suivant les plans, on scrute l' IORQ (un par joystick).Code : Tout sélectionner
IN A,(152) DB 98 LD C,A 4F LD B,0 06 00 RET C9
Sur le décodeur d'adresse:Code : Tout sélectionner
IN A,(148) DB 94 LD C,A 4F LD B,0 06 00 RET C9
Joy1: A3+( A4 + A7 )
Joy2: A2+( A4 + A7 )
Joy1 (Gauche) sur bit 2 : %100 = 4Code : Tout sélectionner
b b b b b b b b 7 6 5 4 3 2 1 0 1 0 0 1 1 0 0 0 = $98 (J1 Gauche) 1 0 0 1 0 1 0 0 = $94 (J2 Droite)
Joy2 (Droite) sur bit 3 : %1000 = 8
Sur le plan, ont a $07 & $08. (normal ?)Code : Tout sélectionner
b b b b b b b b 7 6 5 4 3 2 1 0 0 0 0 0 0 0 0 1 = Nord (1) 0 0 0 0 0 0 1 0 = Est (2) 0 0 0 0 0 0 1 0 0 = Sud (4) 0 0 0 0 1 0 0 0 = Ouest (8) 0 0 0 1 0 0 0 0 = Action 1 (16) 0 0 1 0 0 0 0 0 = Action 2 (Broche 7: NC)
à vérifier.
Code : Tout sélectionner
IN A,(7) DB 07
LD C,A 4F
LD B,0 06 00
RET C9
Code : Tout sélectionner
IN A,(8) DB 08
LD C,A 4F
LD B,0 06 00
RET C9
[EDIT: effectivement, le décodage de IRQ est "universel")
Sur le décodeur d'adresse:
Joy1: A3*( A4 * A7 )
Joy2: A2*( A4 * A7 )
Est-tu sûr de la référence du composant?
Si on a A4 ou A7, ça sélectionne les deux joysticks !
]
Dernière modification par Xavier_AL le 05 août 2019 09:18, modifié 4 fois.
Re: VG5000 : Schémas des périphériques
VU0031:
C'est l'information du port d'extension, donc il n'est pas \A14 de ce côté.
"Wait" pas de "E".
Pas de "X" devant "Reset"... mais c'est à vérifier…
(mais sur deux sources différentes, on a soit des X soit un WaitE…)
Ha… ok!
Tu mets ta mémoire sur le port cartouche (VG5216) et pas sur le port extension !
Il serai bon de le préciser, même si le nombre de pins est différent.
U6c et U6d... du LS08 : (?)
Code : Tout sélectionner
A14
|>------
"Wait" pas de "E".
Pas de "X" devant "Reset"... mais c'est à vérifier…
(mais sur deux sources différentes, on a soit des X soit un WaitE…)
Ha… ok!
Tu mets ta mémoire sur le port cartouche (VG5216) et pas sur le port extension !
Il serai bon de le préciser, même si le nombre de pins est différent.
U6c et U6d... du LS08 : (?)
Dernière modification par Xavier_AL le 05 août 2019 09:20, modifié 1 fois.
Re: VG5000 : Schémas des périphériques
@ Carl : Non le schéma est très différent, plus compliqué et il utilise un 2793 plus évolué mais le principe de cartouche semble le même.
@Mokona : Oui je parle bien des I/Os du Z80 accessibles par les instructions in et out. Dans la doc de faisabilité du contrôleur ils donnent les adresses des registres du FDC (un 1770) et ces adresses entrent en conflit avec le décodage incomplet des ports joystick. Sur le schéma (de la VG5216) j'ai précisé les adresses à côté du 74LS138 mais en fait il y en a plus car les lignes A5 et A6 ne sont pas décodées donc toutes les adresses inférieures à $80 sont couvertes. Il suffit d'ajouter $20 ,$40 ou $60 aux adresses indiquées, donc le joystick est vu en $08 mais aussi en $00, en $28, $48, ...
@ Xaviel_AL : Oui je suis sûr des adresses car j'ai été voir dans la ROM pour contrôler vu que le décodage est très sommaire le schéma seul ne pouvait pas me donner les adresses des ports. Pas de problème de lecture simultanée car le 74LS 138 est un décodeur 1 parmi N donc une seule sortie peut être active à la fois.
Oui l'extension VU0031 se place dans le port cartouche de la VG5216. Je ne l'ai pas précisé car le nom du périphérique me semblait suffisant. Le signal A14 est bien inversé sur le connecteur cartouche (pourquoi avoir fait cela ???).
Il y a bien un X devant Reset car c'est la cartouche par contre il y a une erreur dans la doc, le Xreset (broche 15) est inversé donc barre.
Pour le Wait, c'est le même signal, à vérifier pour le E
Pour le 74LS08, oui U6c et U6d (c'est un quadruple AND a 2 entrées).
@Mokona : Oui je parle bien des I/Os du Z80 accessibles par les instructions in et out. Dans la doc de faisabilité du contrôleur ils donnent les adresses des registres du FDC (un 1770) et ces adresses entrent en conflit avec le décodage incomplet des ports joystick. Sur le schéma (de la VG5216) j'ai précisé les adresses à côté du 74LS138 mais en fait il y en a plus car les lignes A5 et A6 ne sont pas décodées donc toutes les adresses inférieures à $80 sont couvertes. Il suffit d'ajouter $20 ,$40 ou $60 aux adresses indiquées, donc le joystick est vu en $08 mais aussi en $00, en $28, $48, ...
@ Xaviel_AL : Oui je suis sûr des adresses car j'ai été voir dans la ROM pour contrôler vu que le décodage est très sommaire le schéma seul ne pouvait pas me donner les adresses des ports. Pas de problème de lecture simultanée car le 74LS 138 est un décodeur 1 parmi N donc une seule sortie peut être active à la fois.
Oui l'extension VU0031 se place dans le port cartouche de la VG5216. Je ne l'ai pas précisé car le nom du périphérique me semblait suffisant. Le signal A14 est bien inversé sur le connecteur cartouche (pourquoi avoir fait cela ???).
Il y a bien un X devant Reset car c'est la cartouche par contre il y a une erreur dans la doc, le Xreset (broche 15) est inversé donc barre.
Pour le Wait, c'est le même signal, à vérifier pour le E
Pour le 74LS08, oui U6c et U6d (c'est un quadruple AND a 2 entrées).
Re: VG5000 : Schémas des périphériques
Dernière chose, le nombre de pins des connecteurs est le même (50 broches), seule la numérotation fait penser le contraire.
Re: VG5000 : Schémas des périphériques
Toujours à comprendre et à chercher des problèmes imaginaires:
Vg5216:
IRQ pour les joystick...
Entrée U201:
\XWR=1 (in donc pas de d'écriture en out)
a a a a a a a a
7 6 5 4 3 2 1 0
x x x + x x x +
Sortie U201:
o o o o o o o o
7 6 5 4 3 2 1 0
0 0 0 x 0 0 0 0 O4:GAUCHE - >$04 %100 a4=0 a0=0
0 0 x 0 0 0 0 0 O5:DROITE - >$05 %101 a4=0 a0=1
Vg5216:
IRQ pour les joystick...
Entrée U201:
\XWR=1 (in donc pas de d'écriture en out)
a a a a a a a a
7 6 5 4 3 2 1 0
x x x + x x x +
Sortie U201:
o o o o o o o o
7 6 5 4 3 2 1 0
0 0 0 x 0 0 0 0 O4:GAUCHE - >$04 %100 a4=0 a0=0
0 0 x 0 0 0 0 0 O5:DROITE - >$05 %101 a4=0 a0=1
Code : Tout sélectionner
IN A,(0) DB 0
LD C,A 4F
LD B,0 06 00
RET C9
Code : Tout sélectionner
IN A,(1) DB 1
LD C,A 4F
LD B,0 06 00
RET C9