TripleX : Universal Interface Vintage Computer (UIVC) for EXELVISION French Vintage Computer

Publié le par IRIOS

D'une idée folle émise lors d'une visu entre GEEK : possible d'avoir de l'USB sur de l'exelvision les gars ? Car il n'est pas simple de trouver de lecteurs de disquettes et encore moins fonctionnels pour ces merdouilles non ??  J'ai relevé le challenge et en rentrant chez moi, j'ai pris ma belle plume pour pas dire mon vieux crayon en bois et j'ai commencé à penser le système. Le 08 décembre 2010, l'aventure commença avec l'aide de 6502man pour la partie soft.

 

Je tiens à préciser que ce projet est totalement libre et de fait , peut-être repris pour amélioration, adaptation, modification, que sais-je mais il faudra me le faire savoir et faire partager vos travaux.

Toutes reproductions, quelque soient ses formes (documents, logiciels, matériels, vidéos, sons, ...), à des fins mercantiles sont prohibées !!!!

L'idée de départ était d'avoir un port USB sur la machine EXELVISION EXL100 mais j'ai orienté mon développement sur de l'universalité afin que les autres machines puissent en bénéficier.

La TripleX a été conçue afin d’être utilisée sur un maximum de machines tel que EXL100, MO5, MO6, TO7, TO7-70, TO8, TO8D, TO9, TO9+, ORIC 1, ORIC ATMOS, ORIC STRATOS, ALICE 32, ALICE 90, VG5000, HECTOR, CPC464, CPC6128, CPC464+, CPC6128+, MSX, MSX2, MSX2+, YENO SC3000, AQUARIUS, SANYO PHC-25, ATARI, MEGADRIVE, … Bref, tous types de machines pouvant avoir un bus d’extension ou/et port cartouche. Cette carte permet d'avoir principalement une mémoire de masse de remplacement à notre problématique de lecteur de disquette et du support associé.

L'interface permet ainsi aux machines d'avoir 256Ko de mémoires vives, 256Ko de mémoires mortes, un générateur de son 8.5 octaves sur 3 canaux, un horodateur et surtout, c'était l'idée de base, un port USB et un port SD.

Ce système n'est pas fermé car il est tout a fait possible de réaliser des extensions supplémentaires en se pluggant sur les eeprom de décodages tout en restant dans le mapping de la machine cible.

Qui dit hardware, dit un minimum de soft pour que la carte puisse fonctionner et celui-ci sera injecté dans les eeproms : c'est le BIOS !!

D'ailleurs à ce sujet, je lance appel à tous les fous furieux coders pour réaliser les BIOS pour les autres machines !!!!

Enfin, une adaptation sera à réaliser afin de permettre l'interfaçage de la TripleX avec la machine cible. Par exemple, concernant l'EXL 100, j'utiliserai le prolongateur de carte d'origine ou pour ceux qui maitrise le fer à souder, l'exelmémoire modifiée en prolongateur.

Passons à la description détaillée de cette interface !!

TripleX : Universal Interface Vintage Computer (UIVC) for EXELVISION French Vintage ComputerTripleX : Universal Interface Vintage Computer (UIVC) for EXELVISION French Vintage Computer
ORGANISATION TECHNIQUE
Elle est organisée autour de 8 fonctions principales :
1. TAMPONS DE BUS
2. LOGIQUE DE DECODAGE D’ADRESSES
3. REGISTRES Bx & Cx
4. EEPROM
5. SRAM
6. HORODATEUR
7. SON
8. SD & USB

DESCRIPTION DES FONCTIONS PRINCIPALES
1. TAMPONS DE BUS
Elle est basée sur quatre boitiers qui permettent de protéger l’interface et la machine ainsi que de remettre en forme les signaux provenant du bus d’adresses, de données et de commande. Ces boitiers sont deux 74HCT541 pour le bus d’adresses, un 74LS245 pour le bus de données et un 74ALS00 pour le signal de lecture/écriture. La connexion entre la carte et le bus se fait via un adaptateur propre à chaque machine.

2. LOGIQUE DE DECODAGE D’ADRESSES
Elle est basée sur quatre boitiers qui permettent la sélection des fonctions 3 à 8. Ces boitiers sont des EEPROMS W27E512-70 dont les dumps font la relation entre le bus d’adresses, les signaux de commandes ainsi que la validation des informations sur le bus de données en relation avec une des fonctions citées. Le contenu de ces boitiers est différent pour chaque machine.

3. REGISTRES Bx & Cx
Elle est basée sur deux boitiers qui permettent la sélection de pages de 16Ko parmi 512Ko pour les fonctions 3 et 4. Ces boitiers sont des registres 74LS273 8bits à écriture uniquement.

4. EEPROM
Elle est basée sur deux boitiers qui contiennent le système d’exploitation, les programmes, les jeux, en pages de 16Ko pour un maximum de 256Ko. Ces boitiers sont des EEPROM W29EE011-15 de 128Ko soit un total de 256Ko. Le contenu de ces boitiers est différent pour chaque machine.

5. SRAM
Elle est basée sur deux boitiers qui contiennent les données en pages de 16Ko pour un maximum de 256Ko. Ces boitiers sont des SRAM 681000-7 de 128Ko soit un total de 256Ko.

6. HORODATEUR
Elle est basée sur un boitier MC146818 qui permet la gestion de l’heure, la date, l’alarme ainsi que des octets réservés pour le système d’exploitation. Ces informations sont sauvegardées par pile.

7. SON
Elle est basée sur trois boitiers, un boitier AY-3-8912 qui permet la gestion du son sur 3 canaux (8,5 octaves par canal), de deux ports 8 bits totalement programmable en entrée et/ou en sortie, un boitier CD74HC4024E qui génère la fréquence de fonctionnement du générateur de son à 1.5MHz et un boitier LM358 qui adapte le signal son pour la connexion à une chaine HI-FI ou un amplificateur stéréo.

8. SD & USB
Elle est basée sur un module CHS370 qui gère l’USB et la SD en natif avec toutes les fonctions embarquées pour l’utilisation de la FAT.

CARACTERISTIQUES TECHNIQUE
- Mémoires de masse : carte SD et USB
- 2 x 128 Kilo octets d’ EEPRROM (mémoire morte)
- 2 x 128 Kilo octets de SRAM (mémoire vive)
- Horodateur sauvegardé par pile
- Générateur de son 8,5 Octaves sur 3 canaux
- Prise son stéréo
- Possibilité d’utiliser à sa convenance, les deux ports 8 bits du générateur de son (joystick, lecteur carte flash, extension mémoires, …)
 
TripleX : Universal Interface Vintage Computer (UIVC) for EXELVISION French Vintage ComputerTripleX : Universal Interface Vintage Computer (UIVC) for EXELVISION French Vintage ComputerTripleX : Universal Interface Vintage Computer (UIVC) for EXELVISION French Vintage Computer

Voici ci-dessous les fichiers Eagle nécessaires pour créer le pcb. Attention, c'est le PCB buggé !! Je ferai les corrections ultérieurement.

J'ai fait faire mes PCB par http://www.pcbcart.com. et après une semaine d'attente, je commence à voir le résultat. Nous sommes le 12/08/2011.

Maintenant, il faut peupler cette merveille et passer au mapping mémoire pour l'EXL100 avant le débuggage !

TripleX : Universal Interface Vintage Computer (UIVC) for EXELVISION French Vintage ComputerTripleX : Universal Interface Vintage Computer (UIVC) for EXELVISION French Vintage Computer

Après le montage des composants, il faut traduire le mapping en 1 et 0 dans les eeprom de décodage.

MAPPING EXL 100

Ci-dessous le fichier exel où se trouve la traduction du mapping.

Le débugage ne fût pas simple car 6502man étant dans le Var et moi dans le Gard, dès qu'il y avait un problème, on jouait du téléphone et du courriel pour avancer. Bref, après plusieurs corrections, nous arrivons à un résultat honorable.

 

Debugage Mai 2013

Débugage mai 2013

Debugage juin 2013

Vous avez du remarquer qu'il y avait le contrôleur SL811 d'embarqué mais finalement nous avons préféré utiliser le module CH376DS1 pour l'API intégrée. De fait, en février 2016, 6502man a réalisé un mini BIOS qui a permis pour la première fois à  l' EXL100 d'avoir un support SD en lieu et place du lecteur de disquette exelvision !!!

Fonctionnement total Février 2016

6502man a pratiquement finalisé le BIOS pour la machine et a réalisé une petite vidéo directement gérée par la machine avec la gestion USB: regardez par vous-même le résultat !!!

Test août 2016

6502man a réalisé aussi des tests de PCM 8KHz avec la TripleX.

Test PCM 8KHz

Il reste aujourd'hui à finaliser le BIOS pour l'EXL100.

Les adaptations en cours sont pour :

- THOMSON MO/TO

- ORIC ATMOS

- VG 5000

 

A suivre !!!!!

Publié dans TripleX

Pour être informé des derniers articles, inscrivez vous :

Commenter cet article