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 du membre
6502man
Messages : 9778
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: TAVERNIER 6809

Message par 6502man » 21 janv. 2020 20:01

Tu trouveras tout dans le fichier joint :
Tavernier_VDP9938.a09 => [source ASM (complet avec data) format texte]
Tavernier_VDP9938.a09.bin => [binaire à graver sur une eprom ou utiliser sur emu ou autre]
Tavernier_VDP9938.a09.hex => [fichier Hex pour transfert en port série ou gravage ou autre]
Tavernier_VDP9938.a09.lst => [le source assemblé avec adresses en hexa et mnémo en hexa]

Pour l'assembleur essaye sur le site http://www.asm80.com/ je te garantie que ça fonctionne très bien, je viens de tester et le source est bien assemblé et même interprété dans l'ému en ligne ;)

Sinon quel est le problème (format du binaire, adresse de ORG, ...) ?
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
michel guyot
Messages : 139
Enregistré le : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot » 21 janv. 2020 20:48

Bonjour 6502man

OK, j'avais oublié qu'en modifiant l'extension en .txt, on pouvait lire les fichier .a09 et ..a09.lst
Tout va bien…

Merci encore
Michel

Avatar du membre
michel guyot
Messages : 139
Enregistré le : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot » 22 janv. 2020 23:10

Bonjour 6502man

J'ai repris le code sous l'éditeur du Tavernier, en partie du moins pour les datas à cause d'une limitation de la mémoire.
Je créerai un ou deux binaire séparés pour les datas.

Au passage, il y a dans ton code deux lignes qui me pose problème
adresse d'assemblage D019 pour moi il faut mettre LDX #$0018 au lieu de LDX #$0060
adresse d'assemblage D03A pour moi il faut mettre LDX #$0020 au lieu de LDX #$0080
Sinon le transfert TFR X,D dans la routine SETVDPADRESS: ne place pas les bits correctement pour l'instruction ADDB #$40 qui fixe le mode écriture
Dis moi si je fais erreur…

Je suis un peu surpris par la taille des datas qu'il faut installer pour faire tourner le VDP... Outre le fait qu'ils répondent à la structure du mode graphic 2, qu'elle image d'écran cela donne-t-il ?

Voilà pour l'instant, dès que j'aurai pu assembler l'ensemble, je ferais un essai sur la carte
Cordialement
Michel

Avatar du membre
6502man
Messages : 9778
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: TAVERNIER 6809

Message par 6502man » 23 janv. 2020 15:32

je rectifie ....
Modifié en dernier par 6502man le 24 janv. 2020 17:32, modifié 4 fois.
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
Papy.G
Modérateur
Messages : 2063
Enregistré le : 10 juin 2014 13:40
Localisation : Haute-Garonne/Gers

Re: TAVERNIER 6809

Message par Papy.G » 23 janv. 2020 15:58

Il n'a pas une instruction d'écriture séquentielle, comme le 9345?
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.

Avatar du membre
6502man
Messages : 9778
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: TAVERNIER 6809

Message par 6502man » 23 janv. 2020 19:22

Si on ne défini l'adresse que pour la première écriture ensuite il est auto incrémenté :wink:
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
michel guyot
Messages : 139
Enregistré le : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot » 23 janv. 2020 20:54

Bonjour 6502man

J'ai donc assemblé l'ensemble et implanté le tout sur mon Tavernier..
Hélas il ne se passe pas grand chose de plus…l'écran reste désespérément noir !

Tout n'est pas négatif, j'ai appris beaucoup de chose sur le VDP

Après ces essais fonctionnels infructueux , il me semble nécessaire d'investiguer au niveau des signaux qui parviennent au VDP.

Je vais dans un premier temps ré-examiner ma carte, re-vérifier les connexions et m'assurer qu'il n'existe aucun court-circuit ou coupure de piste...

Tant que je n'ai pas la conviction que je peux lire et écrire dans les registres, inutile d'aller plus loin.

La difficulté est que ces registres ne sont accessibles que dans un sens (écriture ou lecture). Une référence me serait bien utile.

Une solution serait par exemple, qu'un possesseur d'une machine MSX2 doté d'un VDP 9938 m'indique ce que l'on peut lire dans les registres de status derrière un simple reset...

Voilà pour l'instant, je vais devoir repartir au charbon !
Cordialement
Michel

Avatar du membre
michel guyot
Messages : 139
Enregistré le : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot » 23 janv. 2020 21:10

Rebonjour 6502man

Je reviens sur l'instruction TFR X,D
Les bits de poids forts de l'accumulateur X se retrouvent dans l'accumulateur A et non l'inverse

Cordialement

Avatar du membre
6502man
Messages : 9778
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: TAVERNIER 6809

Message par 6502man » 23 janv. 2020 22:04

ARFFF :oops: :cry:

le pire c'est que j'ai vérifié en émulation que le code tourne normalement et j'y ai apporté quelques petites modif que j'ai pas du bien controler :oops: :evil: :twisted:

Le code "SetVDPAddress" est correct.


michel guyot a écrit :
23 janv. 2020 20:54
Une solution serait par exemple, qu'un possesseur d'une machine MSX2 doté d'un VDP 9938 m'indique ce que l'on peut lire dans les registres de status derrière un simple reset...
C'est pas si simple car au reset le MSX2 initialise beaucoup de chose et notamment le VDP 9938, par contre ce que je peux faire si ca t'arrange c'est te donner les valeurs écrite dans les registres du VDP 9938 lors du boot et les valeurs écrites en VRAM après l'apparition du LOGO MSX2 ?

comme ca par exemple :
Tav_VDP9938.jpg
Tav_VDP9938.jpg (758.28 Kio) Vu 320 fois
Modifié en dernier par 6502man le 24 janv. 2020 17:33, modifié 1 fois.
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
6502man
Messages : 9778
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: TAVERNIER 6809

Message par 6502man » 23 janv. 2020 22:08

Ou au reset ça pourrait être ça :
Tav_VDP9938__b.jpg
Tav_VDP9938__b.jpg (702.96 Kio) Vu 320 fois
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
michel guyot
Messages : 139
Enregistré le : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot » 24 janv. 2020 00:16

Bonjour 6502man

Toujours à propos de la routine SetVDPAdress
Là, je ne te suis plus !

Si à l'appel de la routine X=$0018 on récupère bien B=$18 ==> 0 0 0 1 1 0 0 0
R/W A13 A12 A11 A10 A9 A8

C'est bien ADDB #$40 qu'il faut utiliser pour fixer à 1 le bit 6

L'émulateur MSX2 que tu possèdes devrait pouvoir être mis à profit bien mieux qu'une machine réelle
Par contre il faut trouver une manipulation simple que je puisse faire sur ma carte
Je vais creuser l'idée
A plus
Cordialement

Avatar du membre
6502man
Messages : 9778
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: TAVERNIER 6809

Message par 6502man » 24 janv. 2020 17:40

Salut, Michel,

Hier j'était en dep. et j'ai corrigé trop vite donc je reviens sur la routine SetVdpAdress:
la routine me parait correct il n'y avait pas d'erreur !
il y avait que les valeurs de X passées en entrée qui étaient erronées :?

Sur ta carte l'idéal serait du pas à pas et pouvoir interroger la VRAM :roll:

Si tu as besoin l'émulateur c'est Blue MSX il est libre au téléchargement.

EDIT: sinon pour faire un test plus simple c'est de définir le mode Graphic 2 et faire changer la couleur de bordure par une boucle, visuellement tu devrais voir quelque chose.
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
michel guyot
Messages : 139
Enregistré le : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot » 27 janv. 2020 18:44

Bonjour 6502man

Mes investigations des différents signaux d'interface avec le V9938 m'ont amenés à me pencher en détail sur certains timing
Il y a quelques temps, j'avais fait des essais pour implanter un co-processeur AM9511 sur mon tavernier.
L'implantation nécessitait de rajouter un latch sur le bus des datas pour permettre l'écriture des donnéees dans les registres du co-processeur....

J'ai effectué la même manip sur ma carte et je pense avoir mis le doigt sur une piste….
L'écriture dans les registres du V9938 semble encore aléatoire, mais il semble que cela améliore les choses...

A plus
Michel

Avatar du membre
6502man
Messages : 9778
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: TAVERNIER 6809

Message par 6502man » 29 janv. 2020 11:20

le temps de présence des données sur le bus est trop court ou trop long ?
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

hlide
Messages : 1247
Enregistré le : 29 nov. 2017 10:23

Re: TAVERNIER 6809

Message par hlide » 29 janv. 2020 13:25

les signaux E et Q sont bien pris en compte ou juste le signal E ? il me semble avoir lu plus haut que les deux sont utilisés.

J'avais laissé un post à ce sujet concernant l'utilisation de Q : viewtopic.php?f=5&t=10111&p=154810&hili ... +Q#p154810.

Je suis curieux de savoir si les deux signaux en question sont utilisés de façon identique ou différemment.

Répondre