[Amstrad CPC] Cartes utilitaires "fond de panier", extension mémoire 512 Ko et synthétiseur vocal

Placez ici vos trucs et astuces, étalez sans retenue votre savoir-faire et votre science qui va nous permettre de redonner une apparence neuve et fonctionnelle à nos bouzes.

Modérateurs : Papy.G, fneck, Carl

Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par Fred_72 »

Oui, je l'ai changé pour avoir le modèle 3D (je n'avais pas celui du 324). Comme ça c'est plus joli :wink:
Brochiman
Messages : 3405
Inscription : 02 juin 2019 11:26
Localisation : Angers

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par Brochiman »

Ah ok je comprends :D :D
Zebulon
Messages : 2787
Inscription : 02 nov. 2020 14:03

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par Zebulon »

Merci pour le crédit Fred mais ce n'est pas bien mérité.

J'ai une question qui me chiffonne, si je comprends bien dans le design MX4 les connecteurs sont employés à l'envers et du coup leur pins 1 et 2 correspondent aux pins 49 et 50 du connecteur d'expansion bord de carte du CPC ?

J'ai d'autant plus du mal que dans le design de la carte TMPI originale le connecteur bord de carte est monté face soudures et pas face composants...

Bref je pense que je me serais pris les pieds dans le tapis. :?
Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par Fred_72 »

Oui tout à fait, les connecteurs sont retournés. J'ai eu du mal à trouver l'affectation des broches car ce n'est pas très documenté. Finalement, c'est raccordé en "ligne droite".
Je me suis fait avoir au début. C'est avec les photos que j'ai compris mon erreur.
Zebulon
Messages : 2787
Inscription : 02 nov. 2020 14:03

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par Zebulon »

Merci pour ta confirmation. Effectivement j'aurais sans doute foncé tête baissée. Sinon mis à part le fait que tu as beaucoup d'expérience à force de concevoir ce type de cartes, comment poses tu le problème pour le décodage d'adresse et savoir quel type de portes logiques enchaîner ?

J'ai vu que tu avais fait un échange dans la partie qui décode IORQ, RD et WR en utilisant deux portes du 74LS00 au lieu de celles du 74LS02 que tu as réutilisé dans la nouvelle partie qui décode A10 notamment.

En effet dans la table de vérité comme le même signal est envoyé sur les deux entrées de la porte pour 0/0 ou 1/1 les 74LS00 et 02 donnent la même réponse... Mais il fallait y penser... :D
Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par Fred_72 »

J'y vais un peu au feeling.

Oui NOR (NON OU) ou NAND (NON ET) donnent un inverseur lorsque les 2 entrées sont réunies.

Le décodage se fait essentiellement avec des ET et des OU ou leurs inverses NON ET et NON OU.
La règle d'or ici c'est :
- pour le NON ET il faut les 2 entrées à 1 pour avoir la sortie à 0 donc si une seule des entrées est à 0 la sortie est à 1.
- pour le NON OU il faut les 2 entrées à 0 pour avoir la sortie à 1 donc si une seule des entrées est à 1 la sortie est à 0.

Après tu écris sur papier la configuration binaire recherchée et tu formes des combinaisons.
Ici la configuration est unique 'xB' donc ça se fait assez bien.
Après il faut trouver le moyen de l'intégrer au décodage existant et par chance, il restait une entrée libre sur le 7430.

Avec un peu d'habitude ça se fait bien.
Avatar de l’utilisateur
hlide
Messages : 3469
Inscription : 29 nov. 2017 10:23

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par hlide »

Durant le Cycle de demande/accusé de réception d'interruption (réponse à un /INT), la sortie /IORQ est activée. Donc je m'attend à ce que la broche 22 (~R/W) du MEA8000 soit également activée. Mais je suppose que l'adresse présentée fera que la broche 12 (~CE) ne sera pas activée. Il y a juste un point non éclairé : quelle est la valeur de l'adresse présentée ? dans le cas du mode IM 2, j'imagine que c'est l'adresse où se trouve l'octet qu'il faut mixer à I pour obtenir l'adresse finale de saut vectoriel. Pour le mode IM 0, il doit se contenter de lire l'octet présenté par le périphérique qui répond à la double activation du /M1 et /IORQ. Pour le mode IM 1, je n'ai aucune idée de l'adresse qui sera présentée.
Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par Fred_72 »

J'avais fabriqué il y a quelques années la version TMPI (donc sans la modif du décodage) et ça fonctionnait très bien. Alors je suppose que le cycle d'interruption ne doit pas poser de problème de redirection.
Je fabriquerai cette carte début janvier et je vous dirai si vous pouvez lancer "la production de masse" :lol: :lol:
Avatar de l’utilisateur
hlide
Messages : 3469
Inscription : 29 nov. 2017 10:23

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par hlide »

Techniquement on devrait avoir /IRQ = 0 *ET* /M1 = 1 pour reconnaître un cycle I/O READ/WRITE et /IORQ = 0 *ET* /M1 = 0 pour reconnaitre un cycle de réponse /INT. La seule chose qui m'ennuie ici, c'est que l'on risque de lire une adresse de type mémoire pour une adresse I/O donc ça me paraît un poil aléatoire. Je ne sais pas trop ce que donne $FBFE-$FBFF en mémoire mais je présume que ça ne devrait pas arriver souvent.
Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par Fred_72 »

J'ai modifié le schéma pour assurer la condition /M1=1 lors des I/Os. En fait la modif est simple et ne nécessite pas d'ajouter de composant.
modif.png
modif.png (8.7 Kio) Consulté 1546 fois
Je testerai cette version.
En FBFx ça doit être les ROM supérieures donc ça tourne quand même pas mal dans cette zone.
Avatar de l’utilisateur
hlide
Messages : 3469
Inscription : 29 nov. 2017 10:23

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par hlide »

Ah oui, les deux portes NAND initialement utilisées comme inverseurs sont très pratiques pour intégrer le signal /M1 = 1 du coup.
Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par Fred_72 »

A croire qu'elles étaient là pour ça. :)
Avatar de l’utilisateur
hlide
Messages : 3469
Inscription : 29 nov. 2017 10:23

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par hlide »

Je reviens sur cette histoire de couple /M1 et /IORQ, voici l'extrait que j'ai retrouvé (traduit de l'anglais) :
Cycle de demande/accusé de réception d'interruption
La figure 9 illustre le timing associé à un cycle d'interruption. Le CPU échantillonne le signal d'interruption (INT) avec le front montant de la dernière horloge à la fin de toute instruction. Le signal n'est pas accepté si la bascule d'activation d'interruption contrôlée par le logiciel interne du CPU n'est pas activée ou si le signal BUSREQ est actif. Lorsque le signal est accepté, un cycle spécial M1 est généré. Pendant ce cycle M1 spécial, le signal IORQ devient actif (au lieu du MREQ normal) pour indiquer que le dispositif d'interruption peut placer un vecteur de 8 bits sur le bus de données. Deux états d'attente sont automatiquement ajoutés à ce cycle. Ces états sont ajoutés pour qu'un schéma d'interruption à priorité d'ondulation puisse être facilement mis en œuvre. Les deux états d'attente laissent suffisamment de temps aux signaux d'ondulation pour se stabiliser et identifier le périphérique d'E/S qui doit insérer le vecteur de réponse. Reportez-vous au chapitre 6 pour plus de détails sur la façon dont le vecteur de réponse d'interruption est utilisé par l'UC.
Et le schéma :
M1+IORQ.png
M1+IORQ.png (78.56 Kio) Consulté 1453 fois
J'en déduis donc que c'est valable seulement dans le cas du mode IM 2. Pour l'Amstrad CPC, je laisse aux spécialistes de me dire si c'est un mode par défaut ou éventuellement utilisé et donc à ne pas négliger pour une compatibilité complète. Personnellement, ça ne couterait pas d'ajouter le /M1 = 1 pour couvrir tous les cas.
Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par Fred_72 »

Bon j'ai fabriqué la carte et j'ai fait le test.
Pour la modif /M1 c'est bon mais comme on s'y attendait avec ou sans c'est pareil donc dans le doute on garde :wink:
(La doc du Z80 n'est en effet pas très claire sur ce point).
Par contre j'ai remarqué une erreur sur le schéma de la carte tmpi du wiki: la capa C1 de 10nF est en parallèle avec la résistance R2. Or d'après la datasheet elle devrait être branchée entre la broche 19 et la masse. J'ai regardé sur d'autres schémas et c'est bien la masse donc j'ai essayé pour voir. Avec la capa en // cela donne un bruit de fond plus important donc je vais modifier le circuit pour rétablir la bonne connexion.
Zebulon
Messages : 2787
Inscription : 02 nov. 2020 14:03

Re: [Amstrad CPC] Cartes utilitaires "fond de panier" et extension mémoire 512 Ko

Message par Zebulon »

Merci beaucoup Fred pour ton retour et les améliorations. Si j'ai bien suivi la sortie son sur la carte mixe le son du CPC en mono avec la synthèse vocale ?
Répondre