Le projet étant en cours de développement, cette page est en constante construction.
Version actuelle: 3.0


 

 Déçu par la décision de Texas Instruments d'abandonner la commercialisation  des micro-ordinateurs professionnels TI-99/7 et Scientific Computer, un employé lança: "Ils ont jeté les deux pièces d'or et ont gardé le gros morceau de charbon. ". Ce qu'il juge tout juste bon pour l'incinération et pourtant retenu au catalogue du Texan n'est autre que le TI-99/4. Une critique très sévère et pourtant, ce micro-ordinateur disposait de nombreux atouts. Son successeur, le TI-99/4A, rencontrera d'ailleurs un énorme succès auprès du grand public.
Cependant le TI-99/4A avait quelques faiblesses. A travers ce projet personnel, je me suis amusé à réaliser la version étendue du 99/4A dont je rêvais en 1983.

Le TIny-99/4A, version 2:
Je ne pouvais résister. A peine la version 1 terminée en 2017, j'ai entrepris l'étude d'une version plus aboutie, plus extensible, plus compacte, une version que je vous laisse découvrir.
 

Photographie de la carte mère portant le numéro de production: #002
Le PCB en quatre chiffres: 4 couches, 459 composants, 2282 soudures et près de 50 mètres de pistes.

 

Un peu d'histoire

 

Début janvier 2018:  J'entreprends la réalisation d'une version évoluée du TIny-99/4A V1: Elle comprend les améliorations suivantes: Une ROM étendue de 32Ko contenant le programme "Editeur/Assembleur II" (ou tout autre programme/utilitaire logeant dans cet espace de 32Ko), une Horloge Temprs Réel,  trois slots d'extensions pour cartes type PeBOX/PEB,  un bouton RESET, un bouton de LOAD et un emplacement libre sur le PCB laissant libre court à d'éventuelles modifications ou améliorations. La taille de la carte mère a été réduite à  21.4cm x 24.2cm .

21/01/2018 : Le PCB est finalisé. J'ai apporté quelques modifications sur l'organisation des composants afin de mieux répondre aux contraintes électriques liées à la présence de 4 couches.

14/07/2018: Le doute.
Avec l'arrivée récente de l'excellente cartouche FinalGROM il est désormais possible de stocker une très grande quantité d'images de cartouches sur une carte mémoire SDCARD, Ces cartouches virtuelles s'exécutent par le biais d'un menu de chargement. L'utilisateur peut disposer, dans cette seule SDCARD, de la quasi intégralité de la logithèque du TI-99/4A . Une logithèque qui d'ailleurs continue de s'agrandir avec le développement de nouveaux logiciels, encore en 2018. Ces dernières années ont d'ailleurs été le témoin de la sortie d'excellents titres, sans cesse plus élaborés que certains ont bien du mal à entrer dans l'extension mémoire de 32Ko. Je suis alors pris d'un doute concernant l'intérêt de deux fonctionnalités intégrées au TIny-99/4A v2.0 :
- L’extension ROM de 32 Ko conçue pour contenir des programmes utilisateur
- L'extension mémoire RAM 32 Kb.
La première offre moins d'intérêt que la cartouche FinalGROM, cartouche qui s'est de plus imposée comme standard. Et la seconde, bien que très utile, risque de devenir rapidement insuffisante pour certains développeurs.

Aussi, j'ai pris la décision de supprimer la ROM étendue et d'intégrer une autre extension à l'ordinateur , et non des moindres, SuperAMS (dite SAMS) en configuration 1 ou 4 Mo. L'opération a été particulièrement délicate car j'ai fait le choix de ne pas toucher aux dimensions de la carte mère. La densité importante des composants, confinés dans un espace aussi réduit, a fortement compliqué le routage. Aucun logiciel d'autoroutage me donnant satisfaction, ce routage a été réalisé à la main. Un travail particulièrement chronophage.

09/09/2018: La première carte mère de série (version 2.3) est assemblée.

 

Les caractéristiques finales du TIny-99/4A v2 sont:
TMS-9900 cadencé à 3 MHz ou 3.58 MHz / ScratchPad RAM de 256 octets / Mémoire SAMS  de 1Mo extensible à 4 Mo (incluant l'extension RAM de 32 Ko de TI) / GROM interne: TI-Basic / ROM système (c)1981 / VDP TMS-9929A (ou TMS-9918A) + 16 Ko de VRAM / Sortie vidéo RVB (avec potentiomètres de réglage) ou Composite (NTSC) / Horloge Temps Réel / Audio 3 voies sur 4 octaves SN94624 / Port cartouche / 3 slots d'extensions pour cartes type PeBOX */ Synthétiseur de parole CD2501/TMS-5220 + Speech ROM / Clavier étendu à 78 touches / Ports joysticks compatibles Atari / Connecteur Joystick interne compatible TI / LEDs d'activités système + bus / Micro-switches Reset & Load / un emplacement libre sur le PCB dédié à d'éventuelles modifications ou améliorations / Taille 21.4cm x 24.2cm / Facteur de forme et fixations de type ATX.

(*)Nécessite le retrait des régulateurs de tension sur chaque carte.

Rendu 3D du clavier étendu imaginé:
Pour bien montrer les touches ajoutées au clavier du TI-99/4A original, celles-ci ont été colorées en gris clair.  Le clavier totalise ainsi  79 switches Cherry MX black. Les composants nécessaires à leur décodage sont  soudés sur la face inférieure du PCB. Le clavier dispose d'un port Joystick à la norme Atari et d'un interrupteur M/A.

...Et voici le clavier assemblé:

Le marquage des touches SHIFT, CTRL et FCTN ne me satisfait pas, la police étant bien trop grande à mon goût. Mais ce sont les seules lettres blanches découpées que j'ai trouvé sur le moment.

Zoom sur la logique de codage du clavier étendu.
Les touches ajoutées remplacent les fastidieuses et pourtant très utilisées combinaisons de touches DEL, INS, ERASE, CLEAR, ... jusqu'à la fonction BACK mais également celles permettant le déplacement du curseur. A cela s'ajoute un indispensable pavé numérique.

Aucun contrôleur ici: Le codage est réalisé en dur, tout se fait à travers des portes inverseuses et de portes NAND.

 

Notez les empreintes de CI optionnels, réservés à l'ajout de 5 nouvelles touches de fonctions étendues personnalisables par l'utilisateur. (les deux touches situées à droite de la touche de fonction "QUIT", les deux autres touches situées juste en dessous de ces dernières, et à gauche de la touche "Q").

 

 

 

 

 

Les cartes additionnelles:

La carte Simulateur de GROM.
Les images des GROM 0,1 et 2 sont stockées sur une simple EPROM,  une série de composants logiques assurent la simulation des composants GROM originaux. Cette carte évite d'avoir à utiliser les composants GROM de Texas Instruments pour faire fonctionner l'ordinateur, elle permet aussi d'apporter des corrections au code du système.

 

<-- La carte Support de mémoires SAMSRAM-A001:

La carte s'enfiche sur le connecteur SAMS de la carte mère. Les boîtiers mémoires SRAM de 512 Ko et 2048 Ko sont acceptés pour offrir 512 Ko, 1 Mo ou 4 Mo de mémoire selon le nombre de composant mémoire installé. SRAM validées:
- KM684000BLP-7L, BS62LV4006-70
 


Toute l'électronique en charge de la  gestion SAMS est intégrée à la carte mère, elle est basée sur le mappeur mémoire 74LS612. Le décodage d'adresses est assuré par un  74LS138 et le CRU par les 74LS688 et 74LS259. L'extension mémoire fonctionne exactement comme la carte SAMS originale, elle peut opérer en mode PASS est être vue par le système comme l'extension mémoire de 32Ko de Texas Instruments, ou opérer en mode MAP où la totalité de la mémoire SAMS peut être exploitée.

Pour cette raison, l'extension mémoire 32 Ko PHP1260 de TI ne doit pas être installée sur le TIny99/4A

   

<-- Le connecteur GROMPORT-A001 s'enfiche sur le port cartouche. Associé à la carte GROMPORT-B001 il  permet de déporter le connecteur cartouche. La liaison entre les deux cartes est assurée par une nappe souple à 36 fils (28 AWG, pas de 1.27mm)

 

 
   

 

 

<-- La carte GROMPORT-B001, aisément adaptable dans un logement pour lecteur de disquette 3"1/2.

 

 

 

 

Informations générales


Logiciel: L'ordinateur est compatible avec toute la logithèque du TI-99/4A. Il accepte toutes les cartouches SSC produites pour cet ordinateur, directement, et sans adaptation aucune.
Les cartouches s'enfichent directement dans le connecteur "Cartouches" de la carte mère; L'adaptateur en "L" nécessaire au TI-99/4A original n'est pas utilisé par le TIny-99/4A, il est d'ailleurs incompatible avec ce dernier. En fait, le port cartouche du Tiny-99/4A se comporte comme celui des TI-99/5 et TI-99/8.

Matériel: Le Tiny-99/4A v2 accepte les cartes d'extensions conçues pour s'insérer dans le boîtier d'extension de Texas Instruments (PEB/PES/Pebox).
Elles doivent êtres modifiées au préalable. La modification consiste à supprimer les régulateurs de tensions (de type LM780xx, LM79xx) et à les remplacer par un simple strap qui reliera les trous métallisés initialement réservés aux broches Entrée et Sortie de chaque régulateur.

    LM78xx       LM79xx

   1  2  3      1  2  3
   O  O  O      O  O  O
   !     !         !  !
   '-----'         '--'

Car les trois slots du TIny-99/4A v2 envoient directement les tensions électriques nécessaires aux extensions.
Dans la Pebox originale, les slots fournissent les tensions +8V, +16V et -16V, des tensions qui sont ensuite abaissées à +5V, +12V et -12V grâce aux régulateurs de tensions embarqués sur chaque carte. J'ai fait le choix de supprimer ce procédé pour plusieurs raisons : Nos alimentations modernes sont bien plus stables que celles de l'époque, Il est donc devenu inutile de passer par ce type de régulation, ce choix permet également de faire fonctionner le micro ordinateur  avec une alimentation électrique facile à se procurer. Sans régulateur, pas de surchauffe inutile de l'électronique (un problème bien connu sur les cartes pour Pebox). Et sans surchauffe, les énormes carénages métalliques des cartes d'extensions, servant principalement de dissipateur thermique, sont devenus inutiles.
Toutes les cartes d'extensions à ma disposition, telles que des cartes contrôleur de disquettes (TI et autres), SCSI, RS232/PIO, UCSD Pascal, ont été testées fonctionnelles sur le TIny-99/4A v2.
Cas particulier des extensions de type Side-Car. Le micro ordinateur Tiny-99/4A v2 ne proposant pas de connecteur de bus comme sur le 99/4A, ces extensions ne peuvent donc pas fonctionner directement. C'était une volonté dès le début du projet. Ce choix pourra être perçu comme une contrainte. Il faut cependant noter:
- Que la présence de trois slots d'extensions de type Pebox est nettement plus avantageuse.
- Que les principales extensions Side-Car utilisées (à savoir le Speech Synthesizer et l'extension mémoire RAM 32Ko) sont devenues inutiles puisque ces fonctionnalités sont directement intégrées à la carte mère du Tiny-99/4A v2.
Il est toutefois possible de concevoir un adaptateur pour utiliser une extension Side-Card car les signaux nécessaires à son fonctionnement peuvent être directement extraits des slots d'extensions et les quelques signaux uniquement présents sur le connecteur d'extension du 99/4A sont accessibles via le connecteur "EXT BUS CONN" présent sur la carte mère du Tiny-99/4A v2.

Fonctionnalités: La carte mère dispose de 1Mo de mémoire Super AMS (2 x SRAM 512Ko), une mémoire qui peut être étendue à 4Mo (2 x SRAM 2048Ko).
L'horloge Temps Réel est compatible MBP.
La synthèse vocale est assurée par un TMS5200. Ce composant étant de plus en plus difficile à obtenir, j'ai prévu son remplacement par un TMS5220. Cette opération implique le remplacement de deux résistances  (une opération facilitée par la présence de supports de résistances, aucune soudure est nécessaire). A noter qu'en configuration TMS5220, les PHROM originales ne peuvent pas être utilisées.

Le boîtier: Choisir un boitier de type ATX standard est assurément la solution la plus simple et rapide pour installer la carte mère. Cependant, sauf besoins spécifiques, il est dommage que cette carte mère aux dimensions réduites soit logée dans un boîtier aussi grand. L'idéal : Opter pour un boîtier de type Micro ATX ou Flex ATX. Se pose alors un problème qu'il faudra résoudre : Les cartes d'extensions du TI-99/4A sont bien plus hautes que les cartes d'extensions PC et il sera nécessaire de bien choisir son boîtier, et sûrement même de procéder à des modifications internes de ce dernier. C'est dans cette voie que je me suis lancé. Je vous présenterai très prochainement le boitier que j'ai personnalisé.

Afin de préserver la stabilité des signaux du port GROM, le déport du connecteur doit être au plus près de la carte mère. Aussi, la longueur de la nappe ne doit pas excéder 30 cm.

Brochage des connecteurs d'entrée/sortie

Brochage de la prise Audio   /Vidéo     Brochage des prises Joystick   Atari A & B

 

  
   
   

1 SYNC       6 AUDIO 
2 ROUGE      7 COMPOSITE
3 VERT       8 MASSE
4 BLEU       9 MASSE
5 +12V 

     1 HAUT        6 TIR   
   2 BAS         7 NC        
   3 GAUCHE      8 MASSE      
   4 DROITE      9 NC
   5 NC

 

Brochage du connecteur interne pour manettes de TI  
 
            Brochage du connecteur interne du contrôleur de K7 (en option)
 

  1 NC         2 DROITE
  3 BAS        4 MANETTE 1
  5 BROCHE #6  6 GAUCHE
  7 TIR        8 HAUT
  9 MANETTE 2 10 BROCHE #1
 11 +5V       12 MASSE

 

 

 

Les broches 5 & 6 sont respectivement reliées aux broches
6 & 1 des joysticks de Texas Instruments mais ne sont pas
exploitées par ces derniers.

 

  1 +5V      2 P11
  3 P9       4 P6
  5 P8       6 -5V
  7 P7       8 AUDIO
  9 NC      10 MASSE

 

 


P6 à P9 ainsi que P11 correspondent aux interfaces du PSI TMS9901.

     

Brochage du connecteur clavier étendu

Le connecteur reprend les 15 broches du connecteur clavier du TI-99/4A et ajoute une broche d'alimentation en +5V, une broche réservée à un joystick de type Atari (câblée à la broche #7 du port joystick TI), et une broche permettant de commander l'alimentation électrique de l'ordinateur.

 

  1 +5V             2 MASSE
  3 COMMANDE M/A    4 MASSE
  5 TI KBD #1       6 JOYSTICK A
  7 TI KBD #2       8 TI KBD #9
  9 TI KBD #3      10 TI KBD #10
 11 TI KBD #4      12 TI KBD #11
 13  TI KBD #5     14 TI KBD #12
 15  TI KBD #6     16 TI KBD #13
 17  TI KBD #7     18 TI KBD #14
 19  TI KBD #8     20 TI KBD #15

Le boîtier

Pour répondre à mes besoins, deux boîtiers seront finalement réalisés pour recevoir la carte mère: Un modèle très compact et au autre un peu plus volumineux destiné à recevoir deux lecteurs de disquettes 3.5"  et deux disques durs SCSI. C'est ce second boîtier que je vous présente ici,  basé sur le Carbide Air 240 de Corsair. De nombreuses modifications ont été réalisées, les principales sont:
- Un rabaissement du fond à son maximum  car les cartes d'extensions TI sont plus hautes que les cartes d'extensions pour PC.
- Création d'une baie pour fixer une alimentation de type FLEX ATX.
- Création de cages et perçage de la face avant du boitier pour l'installation de deux lecteurs de disquettes 3"1/2 et du port cartouche.
- Réalisation d'une plaque arrière pour permettre l'accès aux connecteurs vidéo, clavier et Joysticks.
- Découpage de fente à l'arrière du châssis pour permettre l'insertion de cartes d'extensions.
- Installation d'un afficheur LED à segments.

 

J'aurais adoré avoir un tel TI-99/4A à l'époque :-)

 

 

Présentation du boîtier modifié en vidéo

 

 

 

Liste des composants embarqués:

PCB:
TINY-99/4Av2.4           1
SAMSRAM-A001             1
GROMPORT-A0001           1
GROMPORT-B0001           1
GROMCard                 1

Circuits Intégrés:
TMS9900 3MHz             1
TMS-9929A/28A/18A        1
TMS9901                  1
SN94624                  1
TMS5220                  1
TMS6110                  2
MM58167                  1

Mémoires:
TMS4116-150              8
MC6810                   2
KN684000BLP-7L           2

99/4A GROM 0,1 et 2      1
ou
EPROM 27C256(GROMcard)   1

99/4A ROM ADR.PAIR       1
99/4A ROM ADR.IMPAIR     1

Circuits TTL:
74LS00                   3
74LS03                   1
74LS04                   3
74HCT04                  1
74LS08                   2
74LS32                   3
74LS74                   1
74LS138                  5
74HCT138                 1
74LS156                  1
74LS194                  1
74LS244                  5
74LS245                  3
74LS259                  1
TIM9904A                 1
74LS367                  2
74LS373                  2
74LS612                  1
74LS688                  1

Quartz:
32.768KHz                1
10.7386MHz               1
12.0000MHz               1
14.0000MHz               1

Connecteurs Bord de carte:
EDGE CONN 36p 2.54       2
EDGE CONN 56p 2.54       3

 

Résistances:
10                         4
22                         4
47                         1
62                         4
75                         1
100                        9
150                        1
220                        1
270                        3
330                        1
360                        1
470                        11
1K                         29
1K5                        2
1K8                        1
2K2                        3
3K3                        1
4K7                        5
5K6                        1
10K                        13
12K                        1
47K                        4
100K                       3
150K                       1
220K                       1
270K                       1
470K                       1
1M                         1
1M5                        1
3M3                        1

Réseau de résistances:
101-102 8 broches          2
470-102 12 broches         3
152-101 10 broches         1
470-101 8 broches          1

Résistances variables:
5K (502)                  3

Leds:
RED 8MM 20mA               1    
GREEN 8MM 20mA             1 

Diodes et Transistors:
1N914/1N4148               17
2N2222                     1
2N3904                     5
BC547B                     10

Inductances:
0.33uH                     1
5.8uH                      1
6.8uH                      14

Ferrites:
NOYAU CYL. 65Ohms           1

Condensateurs:
12pF (120)                  1
22pF (220)                  2
30pF (300)                  1
56pF (560)                  1
0.001uF (102)               22
0.01uF (103)                2
0.1uF (104)                 83
1.0uF (105)                 2
10uF 25v                    5
22uF 25v                    5
100uF 16v                   3
100uF 25v                   3

Connecteur Fil-à-Carte:
PIN HDR 1X2 MALE 2.54       7
PIN HDR 1X3 MALE 2.54       4
PIN HDR 1X6 MALE 2.54       1
PIN HDR 2X3 MALE 2.54       1
PIN HDR 2X5 MALE 2.54       1
PIN HDR 2X6 MALE 2.54       2
PIN HDR 2X20 FEM 2.54       1    
BOX HDR 2X10 MALE 2.54      1

Switches:
MICRO-SWITCH 6X6            2

Connecteurs:
MOLEX 4 broches HORIZ.      1
MOLEX 4 broches VERT.       1
RIGHT ANGLE D-SUB9  FEM     1
RIGHT ANGLE D-SUB9  MALE    2

Supports DIL Tulipe:
14 broches 2.54/7.62        14
16 broches 2.54/7.62        23
20 broches 2.54/7.62        12
24 broches 2.54/15.24       5
28 broches 2.54/15.24       2
36 broches 2.54/15.24       2
40 broches 2.54/15.24       3
64 broches 2.54/22.86       1

Divers:
SUPPORT CR2032 VERT.        1
NAPPE 36w AWG28 Max:20CM    1

JUMPERS                     9

 

     

 

Schéma d'implantation des composants

Référence

Désignation

Référence

Désignation

Référence

Désignation

Référence

Désignation

U100

TMS9918A/29A

U506

74LS03

U610

ROM (-26)

U812

74LS612

U102

TMS4116

U507

74LS32

U611

ROM (-27)

U816

74LS373

U104

TMS4116

U508

74HCT04

U612

74LS00

U817

74LS08

U105

TMS4116

U509

74LS367

U613

74LS194

U900

TMS5220

U106

TMS4116

U510

74LS244

U614

74LS245

U901

74LS244

U107

TMS4116

U511

TMS9919

U615

74LS373

U902

74LS244

U108

TMS4116

U600

SN76489/94624

U616

74LS244

U903

74LS244

U109

TMS4116

U601

74LS362

U710

MM58167

U904

74LS245

U300

TMS9901

U602

74LS04

U711

74LS138

U905

74LS245

U302

74LS156

U603

74LS00

U712

74LS138

U906

TMS6110

U500

GROM0

U604

74LS04

U806

74LS138

U907

TMS6110

U501

GROM1

U605

74LS32

U807

74LS688

Y1

12MHz

U502

GROM2

U606

74LS00

U808

74LS259

Y2

14.318MHz

U503

74LS367

U607

74LS74

U809

74LS08

Y3

10.738Hz

U504

74LS138

U608

6810

U810

74LS04

Y4

32 KHz

U505

74HCT138

U609

6810

U811

74LS32

 

 

 

 

 

Le manuel utilisateur, rédigé en français.

 

 

Photographie de la carte mère portant le numéro de production: #001

Pour une vue agrandie de la version v2.3 cliquez ici.

 

Développement en cours au 23 février 2020: Une carte simulant les GROM Système et TI-Basic. Les GROMS... ces satanées puces propriétaires de Texas Instruments avec leur adressage mémoire auto-incrémenté et données multiplexées, incluant du code GPL (langage tout aussi propriétaire). Incopiables. Une seule solution, reproduire leur circuiterie interne. C'est ce que fait la carte fille horizontale, elle embarque une EPROM 27c256 incluant la GROM 0 (routines de démarrage du 99/4A, routines mathématique et le pilote du lecteur de K7), la GROM 1 et la GROM 2 (Vecteurs, tokens, Interpréteur Basic). J'ai modifié le contenu des GROM pour offrir de vrais caractères minuscules, la police gagne 1 pixel de haut pour une meilleure lisibilité. Les couleurs ont été également changées, toujours dans le même but. Le passage à l'EPROM permet également de corriger des bugs dans le code initial, chose impossible sans un tel dispositif.

 

17 janvier 2021: Nouvelle mise à jour de l'ordinateur: Version 2.9
Le micro-ordinateur TIny-99/4A  embarque un nouveau processeur vidéo, le Yamaha V9958, et une mémoire VRAM de 128Ko. Désormais la carte fille Mémoire SAMS n'est plus nécessaire, j'ai intégré la RAM sur la carte mère.

Cliquez sur l'image pour l'agrandir.

15 avril 2021: Nouvelle (et dernière) mise à jour de l'ordinateur: Version 3.0
Je procède à une dernière retouche avec le retrait de reseaux de résistances au niveau du bus d'extension, devenus inutiles. Finalisé, le micro-ordinateur est enfin assemblé puis vérifié. Voila ainsi clos le développement du TIny-99/4A.

Cliquez sur l'image pour l'agrandir.

 

Courte vidéo présentant la carte prototype du V9958 en action, enfichée sur le support réservé au TMS-9929A.

 

 

Le micro-ordinateur TIny-99/4A est un projet personnel, sans but commercial. Quatre cartes mères ont été conçues et je ne prévois pas d'en construire plus à ce stade, ces dernières répondant à mes besoins. Cependant, si vous êtes interessés par ce projet, vous pouvez me contacter (binaryside@yahoo.fr)

 

 



Contenu de ce site ©1999-2019 Fabrice Montupet