Parallel-Breakout: avancée sur la carte Parallel-Bus

Bonjour,

Le projet en retro-développement sur port parallèle et Python (voir autre projet BionicPuppy) poursuit son petit bonhomme de chemin.

Erratum: après réflexion et vérification, les machines rétro utilisent des résistances pull-up de 10K sur tous les bus pour ne jamais avoir de lignes flottantes. C'est pour cela qu'une RAM retourne toujours 0xFF (tous les bits à 1) si elle est morte.
Je vais donc ajouter les résistances Pull-Up sur les bus de la carte.

La carte Parallel-bus vient de recevoir une mise-à-jour majeure, de la documentation et une publication sur le dépôt kicad-public-project/PARALLEL-BREAKOUT

Source: Parallel-bus

Quoi de neuf doc?

  1. Introduction d'un signal Reset pour réinitialiser la carte.
  2. Les sorties de tous les bus sont reportées sur des LEDs... cela permet d'identifier les valeurs au premier coup d'oeil.
  3. Le signal d'horloge --aussi disponible en breakout en bas de la carte-- est accompagné d'une LED.
  4. Les principaux signaux de contrôles --a gauche du connecteur parallel-- est accompagné de LEDs pour identifier les états du bus de contrôle.
  5. Documentation technique

Pourquoi un tel projet?

Déjà parce que c'est intéressant!  Je m'intéresse beaucoup à l'informatique rétro (C64, C128, TRS80, machines Z80) ou le bus 8bits est roi. 

Ensuite, si un tel projet peut être mené à terme alors il n'y a plus de limites aux possibilités d'automatisations offertes par un vieille ordinateur.

Pour la suite, disposer d'un bus 8 bits (et bus adresse 16bits) contrôlable depuis un PC pourrait être très intéressant pour utiliser/tester des composants d'époque... ou développer des solutions pour de tels machines.

Enfin, la carte parallel-bus peut être très facilement adapté à l'USB en utilisant un simple microcontrôleur comme le Raspberry-Pi Pico.

Schéma

Le schéma de la carte est également disponible sur le dépôt du projet.

Schéma de la carte Parallel-bus

Manipulation des bus

L'initialisation du bus d'adresse et du bus de données réclame la manipulation des différents circuits présents sur la carte.

Ces manipulations sont décrites en détail sur la page d'accueil de la carte pour les cas suivants:

  • Reset de la carte
  • Ecriture sur le bus de données (8bits)
  • Lecture sur le bus de données
  • Ecriture sur le bus d'adresse (16bits)

Documentation des opérations de la carte Parallel-bus

Remarque: les signaux encore libres sur le bus de contrôle peuvent être utilisés par les programmes utilisateurs. La documentation des opérations ci-dessus permet de comprendre comment contrôler ces "dit" signaux.

La suite

Le composants sont déjà commandés.

  • Il reste à commander la carte, l'assembler
  • Ensuite écrire le code Python pour tester et exploiter la carte... cela va bientôt être le tour de BionicPuppy de bosser :-)

N'hésitez  à partager vos commentaires.

Ressources

Aucun commentaire