TAVERNIER 6809

C'est la catégorie reine de l'ordinophile, 8 bits et pas un de plus!
Single board ou bus S-100 acceptés.

Modérateurs : Papy.G, fneck, Carl

Avatar de l’utilisateur
michel guyot
Messages : 616
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour à tous

Ci-dessous une image des tracés obtenus avec l'état du DRIVER actuel cette fois exempte de bug.
Je prévois pour la suite avec mjwurtz de procéder à une mise à jour du dossier KiCad pour intégrer les corrections identifiées et générer un nouveau PCB

Pour mémoire la carte est équipée:
- d'un processeur NEC µPD72020
- de quatre plans mémoire équipés chacun d'un chip AS7C1026B de 1 Mb

Ces quatre plans mémoire autorisent un fonctionnement 16 couleurs en mode RGB+I
La sortie vidéo permet d'attaquer un moniteur VGA classique
Avec les réglages actuels, la résolution est de H=768 x V=576 pixels

Cette carte s'implante sur le BUS de mon TAVERNIER et occupe 2 adresses dans l'espace mémoire système
Je pense qu'elle doit être facilement adaptable à d'autre système

Coté logiciel, le DRIVER comporte deux modules:

Le premier regroupe plusieurs routines issues du système MICROBOX II
Le deuxième regroupe les commandes de tracer et est structuré comme suit:

- un module assurant la saisie et la gestion des commandes de tracer
Ce module a été proposé dans la revue ELEKTOR pour piloter la carte graphique haute résolution décrite dans la même revue
Je l'ai réutilisé avec d'autres carte (VM9938, Microbox II, AGC09)
Les commandes sont transmises sous forme de chaines ASCII, ce qui permet la génération sous BASIC de commandes complexes

- un module assurant le controle du curseur et lançant les routines de tracer

Les commandes de base présentes dans le DRIVER permettent:
- de déplacer le curseur
- de choisir la couleur de tracer
- de tracer des points et des lignes
- de générer des figures (Cercle, rectangle, couronnes)

En l'état actuel le DRIVER créé pour les besoins d'essais, n'exploite que très peu des possibilités du processeur NEC µPD72020.


A plus
Michel
2024-01-28 - DRIVER DRV20B03.JPG
2024-01-28 - DRIVER DRV20B03.JPG (248.95 Kio) Consulté 1057 fois
Avatar de l’utilisateur
michel guyot
Messages : 616
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour à tous

Lors de mes derniers essais je me suis rendu compte qu'il manquait une couleur sur les 16 attendues
Aprés analyse du schéma issu du module adaptateur Commodore 128 RGBI, la raison en est la suivante
Les voies RGB délivrent chacune un premier niveau de couleur.
La voie I agit comme un coefficient multiplicateur de niveau
Pour le NOIR, la modification du niveau 0 redonne 0 donc du NOIR !

J'ai ressorti un schéma issu d'un autre adaptateur RGBI.
Bien que plus simple au niveau schéma, celui-ci reproduit plus fidèlement les couleur de la norme CGA
Dans ce cas la voie I agit en addition, en rajoutant ou non un niveau de BLANC

Un essai ce module sur la carte Fille permet cette fois d'afficher les 16 couleurs (avec le NOIR !)


A plus
Michel
2024-02-06 - Circuit traitement RGBI.jpg
2024-02-06 - Circuit traitement RGBI.jpg (225.92 Kio) Consulté 900 fois
2024-02-06 - Traitement RGBI - Modele 2.JPG
2024-02-06 - Traitement RGBI - Modele 2.JPG (274.64 Kio) Consulté 900 fois
Avatar de l’utilisateur
hlide
Messages : 3507
Inscription : 29 nov. 2017 10:23

Re: TAVERNIER 6809

Message par hlide »

A un détail près en parlant de CGA :
Schermata-2015-12-15-alle-19.19.35.png
Schermata-2015-12-15-alle-19.19.35.png (71.88 Kio) Consulté 852 fois
Avatar de l’utilisateur
michel guyot
Messages : 616
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour hlide,

Tout à fait d'accord, ci dessous un autre document qui m'a servi pour comparer les choses....
Attention aussi au fait que le rendu des copies d'écrans est souvent différent de ce que l'on observe directement sur le moniteur.
A plus
Michel
CGA.jpg
CGA.jpg (130.81 Kio) Consulté 822 fois
Zebulon
Messages : 2806
Inscription : 02 nov. 2020 14:03

Re: TAVERNIER 6809

Message par Zebulon »

Et pas qu'un peu... partant d'un signal électrique "pur" et théorique généré par la carte vidéo on enchaine : numérisation du signal au niveau de l'écran, restitution de l'image sur la dalle de l'écran, diffusion des photons qui se mêlent à l'éclairage ambiant, captage et numérisation de l'image par l'appareil photo, enfin affichage de la photo sur notre écran (pc, smartphone). A chaque étape des erreurs/distorsions s'ajoutent. Sans compter que nos yeux sont aussi source d'erreur, je ne parle même pas de pathologies graves.

Laissons le peuple drosophile vivre en paix. :wink:
Avatar de l’utilisateur
hlide
Messages : 3507
Inscription : 29 nov. 2017 10:23

Re: TAVERNIER 6809

Message par hlide »

Du coup, pour l'avoir il faudrait par exemple :

Code : Tout sélectionner

R' = #AA * R + #55 * I
V' = #55 * V + #55 * I + #55 * I'
B' = #AA * B + #55 * I
Avec I' :

Code : Tout sélectionner

I' = V & !(!I & R & !B)
A défaut d'un GAL, ça demanderait une porte ET et une porte NOT et une résistance supplémentaire pour #55 * I', non ?

Je pose la question en aparté pour le cas j'aurais besoin de le reproduire sur une autre machine.
Avatar de l’utilisateur
michel guyot
Messages : 616
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour hlide,
A utre page du document : Un schéma qui propose une solution de traitement pour le cas de la couleur 6
(origine Module Commodore RGBI to RGBA Adapter by Digital Concepts)

A plus
Miche
dac_c128rgbi_schema.jpg
dac_c128rgbi_schema.jpg (104.84 Kio) Consulté 775 fois
Avatar de l’utilisateur
hlide
Messages : 3507
Inscription : 29 nov. 2017 10:23

Re: TAVERNIER 6809

Message par hlide »

Bon ben, ça a l'air de marcher. J'ai fait tous les cas et j'obtiens bien #AA5500 pour le marron.
cga.png
cga.png (28.61 Kio) Consulté 750 fois
Avatar de l’utilisateur
michel guyot
Messages : 616
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour à tous


Voici les schémas des deux cartes concernant ce projet de carte graphique basée sur un µPD72020 et qui vont servir à la réalisation des PCB.

Images de PCB
Carte de Base_B.jpg
Carte de Base_B.jpg (99.42 Kio) Consulté 673 fois
Carte Fille_A.jpg
Carte Fille_A.jpg (111.3 Kio) Consulté 673 fois
Carte Fille_B.jpg
Carte Fille_B.jpg (92.86 Kio) Consulté 673 fois


A plus
Michel
Pièces jointes
Carte de Base_A.jpg
Carte de Base_A.jpg (101.09 Kio) Consulté 673 fois
2024-0209 - Carte Graphique uPD72020 - Schéma Carte Fille V05 Rev03 - Reduit.pdf
(540.72 Kio) Téléchargé 15 fois
Avatar de l’utilisateur
Papy.G
Modérateur
Messages : 3054
Inscription : 10 juin 2014 13:40
Localisation : Haute-Garonne/Gers

Re: TAVERNIER 6809

Message par Papy.G »

Vu la faible disponibilité des moniteurs RGBI et la mauvaise prise en charge de la plupart des solutions censées êtres compatibles, ne serait-il pas intéressant d'intégrer le petit montage proposé par Hilde directement sur la carte?
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
michel guyot
Messages : 616
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour Papy.G

Sur la carte nous avons retenu d'implanter 3 types de sortie:

- une sortie avec un simple étage ne mise à niveau sur chaque voie R,G,B et I
- une sortie avec un mode de traitemen RGB+I basé sur le schéma n°2 (Cf post du 06-02-2024)
- une sortie directe des signaux TTL R,G,B et I

Cela devrait répondre à tous les besoins

A plus
Michel
Avatar de l’utilisateur
mjwurtz
Messages : 90
Inscription : 30 nov. 2014 17:27

Re: TAVERNIER 6809

Message par mjwurtz »

Bonsoir à tous,

J'ajoute pour compléter ce qu'a écrit Michel Guyot que la sortie directe R,G,B,I permet en particulier de faire :
- une sortie en 16 niveaux de gris (avec un réseau R/2R pour faire un convertisseur digital/analogique simple)
- une sortie 16 couleurs parmi n (256 ou plus) en utilisant une LUT (Look-up table)
- afficher sur plus d'un écran (p.ex signal I en noir et blanc et signal RVB pur sur un autre)

Bref des heures d'amusement et de bricolage en vue :D :D :D

Michel
Avatar de l’utilisateur
michel guyot
Messages : 616
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour à tous

Ci dessous un exemple de tracer de courbe réalisé sur le TAVERNIER avec la carte uPD72020 et la carte coprocesseur AM9511

https://youtu.be/-cWgviUyaUc
2024-02-13 - Image 2.JPG
2024-02-13 - Image 2.JPG (443.8 Kio) Consulté 551 fois
2024-02-13 - Image 2.JPG
2024-02-13 - Image 2.JPG (443.8 Kio) Consulté 551 fois
Avatar de l’utilisateur
michel guyot
Messages : 616
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour à tous

Mon post du 30-12-2021 montrait ce que permettait d'afficher la carte graphique haute résolution ELEKTOR basée sur un processeur EF9367.
Le driver réalisait l'affichage à partir de commandes transmises sous forme de chaines de caractères ASCII.
Une simple routine BASIC permet alors la réalisation de figures complexes.

J'ai repris et adapté ce même driver pour la carte graphique basée sur le processeur NEC uPD72020

Voici deux images affichées à partir des routines PALETTE.BAS et FIG20.BAS

A plus
Michel

PALETTE.BAS

110 PRINT CHR$(18)
115 PRINT "U3,65535"+CHR$(13)
120 PRINT "M40,150"+CHR$(13)
130 FOR J=0 TO 7 STEP 1
140 PRINT "C"+STR$(J)+CHR$(13)
150 PRINT "X20,14"+CHR$(13)
160 PRINT "R40,0"+CHR$(13)
170 NEXT J
180 PRINT "M40,90"+CHR$(13)
190 FOR J=8 TO 15 STEP 1
200 PRINT "C"+STR$(J)+CHR$(13)
210 PRINT "X20,14"+CHR$(13)
220 PRINT "R40,0"+CHR$(13)
230 NEXT J
240 PRINT "A"
250 STOP
2024-02-16 - PALETTE-BAS.JPG
2024-02-16 - PALETTE-BAS.JPG (377.51 Kio) Consulté 486 fois

FIG2.BAS

130 PRINT CHR$(18)
132 PRINT "U3,65535"+CHR$(13)
140 FOR J=0 TO 180 STEP 1
142 K=INT(J*15/180)
145 PRINT "C"+STR$(K)+CHR$(13)
150 T=6.28*J/201
160 X=INT(255*(1-0.8*COS(T)))
165 T=T*3
170 Y=INT(128*(1-0.8*SIN(T)))
180 PRINT "M"+STR$(X)+","+STR$(Y)+CHR$(13)+"I"+CHR$(13)
190 PRINT "X20,14"+CHR$(13)
200 NEXT J
210 PRINT "A"
220 STOP
2024-02-16 - FIG20-BAS.JPG
2024-02-16 - FIG20-BAS.JPG (478.29 Kio) Consulté 486 fois
Avatar de l’utilisateur
michel guyot
Messages : 616
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour à tous

Et voici suite aux essais, les PCB corrigés V05 - Carte de Base V03 et Carte Fille Rev03


A plus
Michel
V05 - Carte de Base Rev03_a.jpg
V05 - Carte de Base Rev03_a.jpg (461.05 Kio) Consulté 410 fois
V05 - Carte de Base Rev03_b.jpg
V05 - Carte de Base Rev03_b.jpg (462.64 Kio) Consulté 410 fois
V05 - carte Fille Rev03_a.jpg
V05 - carte Fille Rev03_a.jpg (439.85 Kio) Consulté 410 fois
V05 - Carte Fille Rev03_b.jpg
V05 - Carte Fille Rev03_b.jpg (439.36 Kio) Consulté 410 fois
2024-02-20 - FIG22-BAS.JPG
2024-02-20 - FIG22-BAS.JPG (479.73 Kio) Consulté 410 fois
Répondre