Une histoire de l'informatique en Suisse

  Ordinateurs au LAMI-EPFL

Chapitre 4 - La famille des Smakys

Le nom Smaky a été inventé en 1974, dérivé de SMArt KeYboard. L'objectif était d'avoir une carte ordinateur de la taille d'un clavier, placée sous le clavier. La taille de la première carte processeur a donc été définie par la taille des claviers fournis par Digital Equipment : 160 x 280 cm. Avec l'écran et l'alimentation, il fallait pouvoir transporter l'ordinateur complet dans la mallette de JDN.

Le Smaky 1, archivé maintenant aux Archives de la Construction Moderne de l'EPFL, était construit dans une boîte processeur-clavier et une carte écran-alimentation. Le BusMu (voir Partie 3 - Les Logidules, les Microdules et le NovaSim) interconnectait les modules de la carte principlale, qui étaient câblés avec du fil thermo-soudable.

Smaky 1, 1975
Smaky 1, 1975
Construction modulaire des Smakys 1 à 4
Construction modulaire des Smakys 1 à 4

Les Smakys 1, 2 et 4 ont tous utilisé le processeur Intel 8080. L'évolution concernait essentiellement le contrôleur d'écran, plus compact et performant grâce à de nouvelles mémoires et générateurs de caractères, et par une amélioration des interfaces d'entrée-sortie (MubusIO and Simser).

Le Smaky 2 et son écran 5 pouces, 1975
Le Smaky 2 et son écran 5 pouces, 1975
Le Smaky 2 dans la mallette de JDN
Le Smaky 2 dans la mallette de JDN

Le Smaky 4 avait un écran de 7 pouces. Vingt unités ont été construites, pour Digital Equipment USA, pour le Professeur Nievergelt à l'ETH-Z qui les utilisait comme terminaux graphiques devant un PDP-11 (XS-0 educational system), et pour le LAMI. Le Smaky 4 avait un mode graphique avec une résolution de 256 x 160 pixels. Des prototypes au LAMI ont testé la première variante du réseau Cobus et un lecteur de cassette développé ultérieurement pour le Scrib.

Développement du Smaky 4
Développement du Smaky 4
Le Smaky 4 avec le Microleru et un coupleur acoustique
Le Smaky 4 avec le Microleru et un coupleur acoustique

Le problème à l'époque était le manque de mémoire de masse. Le Microleru était utilisé pour charger les programmes préparés sur un miniordinateur Nova. Il n'y avait pas de possibilités pour stocker les programmes localement : les lecteurs de cassettes audio (utilisés avec le Crocus) n'étaient pas fiables et les floppy IBM 9 pouces pesaient 10 kg. Nous avons donc développé notre propre lecteur utilisant des cassettes de dictaphone. Pour simplifier la construction, les stations de lecture, écriture et rembobinage étaient séparées.

Unité de cassette du Smaky 4
Unité de cassette du Smaky 4

Le Smaky 4 a permis de tester le réseau Cobus, développé par René Sommer. Cobus avait un mécanisme de détection de collision original et l'interface initiale à 160 Kbits/s ne nécessitait que 10 circuits intégrés, placés au coin du clavier.

Clavier Smaky 4 avec l'interface Cobus
Clavier Smaky 4 avec l'interface Cobus
Carte Smaky 4 et Microleru, 1975 (Photo Bramaz)
Carte Smaky 4 et Microleru, 1975 (Photo Bramaz)

Le logiciel du Smaky 4 était développé sur mini-ordinateur Nova. Le binaire était perforé sur bande papier et chargé sur le Smaky avec un Microleru, la bande papier étant tirée à la main. L'interface était asynchrone 5V similaire au RS232, mais l'horloge était fournie par le destinataire de l'information, ce qui était une solution élégante pour avoir une transmission indépendante de la vitesse avec synchronisation d'échange. Cette interface nommée Simser (SimpleSerial) évitait les complications du RS232 (tensions +/-12V, oscillateur précis des deux côtés, tampons de réception des caractères). Une variante de Simser a été proposée à l'"IEEE standard committee" en 1983 (P1011), mais n'a pas trouvé de fabricant pour l'appuyer.

Le Smaky 3 a été dessiné avec un processeur Motorola 6800, et devait utiliser le même écran et ensemble d'entrées/sorties que le Smaky 2. Il a été remplacé par le Crocus avant d'être construit.

Le Smaky 5 a été développé pour Bobst Graphic sous le nom de Scrib.

Smaky 6, 1978

Le Smaky 6 développé en 1978, juste après le Scrib, a bénéficié du nouveau Z80 de Zilog, avec une mémoire augmentée à 32 Ko et un écran graphique de 256 par 120 pixels, superposé à un écran alphanumérique de 20 lignes de 64 charactères. Le Smaky 6 a enfin pu avoir une mémoire de masse utilisable en 1979 avec les nouveaux floppys 5 pouces (160 Ko), puis en 1981 les disques durs 5 pouces (10 Mo). Alain Capt et René Sommer ont alors développé un système d'exploitation efficace pour les disques et le réseau Cobus. Le réseau Cobus avait une vitesse augmentée grâce à une carte additionnelle Mubus (format Europe), et un mini-ordinateur Eclipse avec un gros disque (100 kgs) de 60 Mo servait les 20 Smaky 6 en réseau. Un ensemble d'outils (programation assembleur, Basic, Forth, éditeur de texte, fichier d'adresse, etc.) a été développé, initialement par le LAMI, puis par Epsitec System. Epsitec a fabriqué quelque 450 Smaky 6, vendus essentiellement à des écoles de 1979 à 1983.

Les Smaky d'Epsitec avaient un floppy et parfois un disque dur. Au LAMI-EPFL, les 20 Smaky 6 étaient connectés en réseau, le connecteur latéral MubusIO permettant l'adjonction d'interfaces particulières (programmateurs de mémoire, synthétiseur, etc), et l'enseignement des techniques d'interfaçages avec les Logidules.

Développement d'interfaces
Développement d'interfaces
Concept "Clean Desk"
Concept "Clean Desk"

Un Smaky 6 portable a pu être développé dès que les floppy 5 pouces minces sont apparus en 1981. Ce Smaky a voyagé aux USA avec un coupleur acoustique, effectuant régulièrement du courrier électronique avec le labo pendant l'été 1982, via les services très coûteux de Datamail.

Smaky 6 portable
Smaky 6 portable
Construction intérieure
Construction intérieure

Smaky 8, 1981

Les tests du processeur Motorola 68000 ont commencé en 1980, mais la maîtrise de ce processeur a mis du temps puisque l'assembleur CALM devait être ré-écrit et tout le logiciel fait pour le 8080 et Z80 refait. Le Smaky 8A a été dessiné avec trois processeurs sur le même bus 16 bits (un seul pouvait fonctionner à un instant donné) : un Z80, un 68000 et un 6909 qui en fait n'a jamais été testé. L'écran était à la fois alphanumérique et graphique. Au début, le Z80 gérait le floppy et le 68000 l'écran, mais le répertoire d'instructions du 68000 était si fascinant que tout le logiciel existant a été assez rapidement ré-écrit. La carte définitive du Smaky 8 ne contenait plus de Z80, ni d'écran alphanumérique.

Smaky 8A
Smaky 8A
Autre vue du Smaky 8A, 1981
Autre vue du Smaky 8A, 1981

L'expérience acquise avec le système d'exploitation du Smaky 6 a été valorisée par Béat Brunner, qui, à 18 ans, prenant conseil auprès du professeur Petitpierre à l'EPFL, a écrit le système temps réel Psos, utilisé sur toutes les machines basées sur le 680xx. Psos était efficace et multi-tâche dès le début. Il a donné à la famille Smaky une compatibilité que les autres familles de micro-ordinateurs n'ont jamais atteinte.

Le Smaky 8 était l'équivalent de l'Apple Lisa : une machine coûteuse avec un logiciel incomplet.

Test du 68000, 1980
Test du 68000, 1980
Epsitec Smaky 8, 1982
Epsitec Smaky 8, 1982

Aldo Bussien a développé pour le Smaky 8 une carte graphique couleur optionnelle basée sur le processeur graphique NEC 7220, qui a été utilisée pour écrire du logiciel CAO qui utilisait la souris, standard sur tous les Smaky 8.

Smaky 100, 1984

Le Smaky 100 est apparu en même temps que le Macintosh. Son écran graphique par DMA avait un schéma très simple, et la collaboration avec Gespac à Genève a conduit à une carte très compacte. Le réseau local utilisait les circuits STI de Burroughs, mais leur fabrication en série ne s'est pas faite. René Beuchat a alors développé un module en "piggy-back" avec un circuit SIO de Zilog. Ce réseau succédant à Cobus a été appelé Z-Net. Epsitec a fabriqué 1 500 Smaky 100 en 1984-90, utilisés essentiellement dans les écoles de Suisse romande.

Smaky 100 Epsitec
Smaky 100 Epsitec

Smaky 324, 1988

Le 68020 avec son coprocesseur en virgule flottante 68081 était un réel progrès en 1987, qui a conduit au très performant Smaky 324 (pour bus 32 bit et 4 Mo de mémoire principale). Avec en plus 2 Mo de "vidéoram" pour commander un écran graphique à 80 MHz (deux écrans de 1020 x 800 pouvaient être connectés en parallèle). Un microcontroleur 8 bits, vu par le 68020 comme un port parallèle 8 bits, interfaçait le clavier et la souris. Une interface permettait la connexion directe d'une imprimante laser (Ricoh 4020) et un logiciel très complet pour imprimer des documents typographiques a été écrit par Roger Hersch, Patrick Faeh, Denis Dumoulin et Daniel Roux. Il y avait naturellement les interfaces pour disques SCSI et floppy. Plusieurs connecteurs d'extension existaient, en particulier un pour une extension mémoire et deux pour un bus VME 16/32 bits.

Les performances du 324 étaient à peu près 7 fois celles du Smaky 100, grâce à un processeur plus rapide avec un cache d'instructions et au bus 32-bits.

Le Smaky 324 a été produit par Epsitec de 1989 à 1994 (300 unités) pour un prix de 12 000 francs suisses en 1990.

Smaky 324 connecté à deux écrans
Smaky 324 connecté à deux écrans

Smaky 300, 1990

Le Smaky 300 a été développé comme un système bon marché pour les écoles. Le Smaky 300 a été le seul Smaky avec un écran couleur (16 or 256 couleurs) et un générateur de sons. C'était aussi le seul vrai Smaky (smart keyboard) puisque la carte processeur-écran était assez étroite pour tenir dans le clavier Preh des Smaky 100 et 324. Le processeur était un 68030, entouré de 4 Mo de DRAM et 1 Mo de VRAM, un circuit couleur IMSG171 et les interfaces usuels SCSI, Z-Net, série et parallèle.

Smaky 196, 1991

Le Smaky 196 a été développé à l'EPFL spécialement pour les besoins du LAMI. 50 unités ont été construites pour remplacer les Smaky 100, et ont été installées dans les nouveaux locaux du LAMI sur le campus d'Ecublens. Le Smaky 196 avait une architecture assez simple avec un processeur M68030, 4 Mo de DRAM (rapidement augmentés à 8 Mo), un écran graphique "memory-mapped" et les périphériques usuels. Son boitier était un clavier de 10 mm plus épais, à cause de l'alimentation, prenant une place minimale sur la table des étudiants. Ils ont été remplacés par des PC encombrants avec une carte Smaky 400 en 1999.

Laboratoire des étudiants
Laboratoire des étudiants

Smaky 130, 1992

Le Smaky 130 a été développé pour Epsitec immédiatement après le Smaky 196 avec une architecture très similaire : M68030, 4/8 Mo de DRAM, 1 Mo d'EPROM et les interfaces réseau, disque et floppy usuels. Une carte d'extension permettait d'avoir de la couleur avec un circuit Cirrus Logic CL-GD5446 et de la mémoire supplémentaire. Le Smaky 130 a été construit pour être mécaniquement compatible avec le Smaky 100, ce qui a permis aux écoles équipées de Smaky 100 de remplacer la carte processeur seulement pour avoir une machine 10 fois plus puissante. Quelques 2000 Smaky 130 ont été vendus par Epsitec, et 500 de ces machines étaient encore en service en 2002.

Smaky 400 et Smaky Infini

En 1995, il était évident qu'avec la chute des prix des PCs et l'augmentation de travail pour supporter tous les logiciels devenus nécessaires, en particulier autour d'Internet, qu'il n'était plus possible de développer des nouveaux Smakys. De plus, l'architecture des 680xx était dépassée, et passer sur des PowerPC ou des processeurs x86 hors de nos possibilités et motivations. Mais les utilisateurs de Smaky avaient des applications bien maîtrisées et désiraient garder un accès facile à leurs données. La question était donc de savoir s'il fallait mettre un PC dans un Smaky, ou l'inverse. Plusieurs étudiants ont planché sur ce problème.

Un premier étudiant a mis dans un Smaky 130 une carte utilisant un chipset compatible PC, mais ces circuits étaient mal documentés, changeaient sans cesse et la machine de base, le Smaky, était trop chère à fabriquer. Ce n'était pas la solution. Michel Pahud avait, quant à lui, développé une première version d'un Smaky dans un PC, réalisé sous la forme d'une carte ISA avec processeur M68040, très richement peuplée, mais qui fut abandonnée. Pierre Arnaud développa d'abord un prototype de Smaky basé sur le processeur M68060 et un chipset Intel donnant accès aux bus EISA et PCI, dans l'idée de pouvoir profiter des nombreuses cartes disponibles pour les PCs. Voyant que ce n'était pas non plus la bonne solution, il développa en 1996 une carte avec un M68040, un M68360 et de la mémoire, carte qui prenait place dans n'importe quel PC récent ayant le bus PCI. Appelées Smaky 400, 200 de ces cartes ont été fabriquées par Epsitec. La carte comprenait un connecteur ZNet et l'interface MubusIO, ce qui permettait au Smaky 400 d'être relié en réseau à d'autres Smakys, et les exercices sur les interfaces d'entrée-sortie pouvaient toujours se faire au labo.

L'étape suivante a été réalisée par Pierre Arnaud, qui en 1999-2000 a pu remplacer la carte Smaky 400 par une émulation logicielle adaptée de UAE (émulateur Amiga). Un Pentium à 300 Mhz pouvait en effet émuler un processeur M68040 tournant à 40 MHz ; entre 6 et 10 instructions x86 sont nécessaires pour émuler une instruction du 680xx. Les interfaces Z-Net et MubusIO étaient perdues, mais tout le logiciel Smaky tournera aussi longtemps que des machines compatibles avec Windows NT, 2000 ou XP existeront. D'où le nom de Smaky-infini, et une belle fin pour l'histoire des Smakys.