Dragster… restauration du serveur Minitel pour Macintosh

Après la restauration de mon serveur Minitel qui tournait sur Apple II avec Cristel de 1984 à 1987, je me suis attaqué à celui qui l’a remplacé, le serveur d’hébergement de ma société qui tournait avec Dragster sur Macintosh.

Back to 1986 !

Publicité pour Apple Expo 1986

C’est l’année où ma société, JCA, expose pour la toute première fois à Apple Expo.

Ah, la grande halle de La Villette, quel magnifique lieu !

Apple nous avait sélectionné à l’époque pour beta-tester le fameux “Apple IIx” que beaucoup de monde attendait et qui s’appellera finalement Apple IIgs.

Nous exposions donc nos serveurs Minitel pour Apple II qui tournaient avec mon logiciel Cristel et commencions à travailler sur cette future machine (au nom de code “Cortland”) sur un projet basé sur des modems “intelligents” d’Hello Informatique afin de passer de mono à multi-voies.

Dragster… changement de direction et gros coup de turbo !

Un autre stand présentait un serveur Minitel multi-voies qui tournait sur Macintosh. Utilisant des modems conçus spécifiquement et doté de son propre langage de programmation BASIC, c’était un produit absolument GÉ-NIAL.

Il avait été conçu en binôme par la société Wit Concept (pour le hardware, la société était spécialisée dans la télégestion… et l’est toujours) et Philippe Boulanger (pour le software).

4 modems Dragster chainés

Les “Wit modem” se chaînaient les uns aux autres, jusqu’à en avoir 32 et géraient une partie de l’interaction avec le Minitel distant, en particulier les saisies.

Le logiciel comprenait “DragsterEdit” qui regroupait l’éditeur de code BASIC, l’interpréteur (pour le développement et debugging), le compilateur (pour le fonctionnement en multi-voies), ainsi qu’un outil de composition d’écrans vidéotex (basique, mais utile).

L’autre partie du logiciel était “DragsterBoot” qui faisait fonctionner le serveur une fois compilé. Il tournait en multi-tâche alors que le système du Macintosh à l’époque n’était pas du tout multi-tâche. En effet, Multifinder (multitâche coopératif) n’arrive qu’en Août 1987 soit plus d’un an plus tard et on était bien loin d’un multitâche préemptif qui n’arrivera qu’en 2001 avec MacOS X 1.0
De plus Dragster tournait en tâche de fond en ne monopolisant pas le Mac qui pouvait servir à autre chose et vu le prix d’un Mac à l’époque c’était un sacré atout commercial !

Le système serveur Dragster était GÉ-NIAL !
Publicité avec le premier modèle de boitier X25 pour Dragster

Ni une, ni deux, j’achète mon premier Mac et suspend tout développement sur l’Apple II, comprenant immédiatement que l’avenir était là, dans ce produit et plus sur l’Apple II.

Vinrent ensuite les boîtiers pour se raccorder au réseau Transpac, indispensables pour être présent sur le “kiosque Télétel”, c’est à dire les 3615 et autres.

En 1990, ma société (JCA) rachètera Dragster et continuera à le faire évoluer jusqu’en 1998.

MacARBO et ses modules

Avec le langage BASIC de Dragster, j’avais développé “MacARBO”, logiciel de gestion de services arborescents et plus généralement de services.

MacARBO était le cœur auquel venaient se greffer des modules pour apporter des services tels que qu’une messagerie (des “BAL”), des forums, des petites annonces, quizz, prises de commande (VPM pour “Vente Par Minitel”), etc.

La gestion du contenu et de l’organisation d’un service se faisait du coup à l’aide d’un Minitel, en local ou à distance. *

Nous réalisions aussi beaucoup de modules sur mesure pour nos clients.

Quelques exemples:

  • un calcul de prime d’assurance moto et de souscription avec effet immédiat
  • un calcul d’itinéraire pour les voyages sur autoroute
  • le téléchargement et la visualisation d’activité de montres Polar (des montres connectées… au Minitel)

Le plus gros serveur que nous avons installé a été le 3615 RDLF fin 1987 pour le jeu télévisé “La Roue de la Fortune”.

Développé et installé en à peine quelques semaines, le nombre de connexions étant tellement important, nous alignerons 4 Macintosh Plus gérant chacun 64 accès simultanés soit un total de 256 voies dédiées uniquement à ce service Minitel. Le service permettait de passer la préselection pour accéder aux sélections finales des candidats participant ensuite à l’émission.

Ce que j’avais conservé…

Comme d’habitude… pas mal de choses !

Hardware : des modems Dragster, 5 en tout dont 4 absolument neufs fabriqués en 1997 et un cinquième que j’utilisait à l’époque au quotidien pour mes tests (fabriqué lui en 1991).

J’ai aussi quelques vieux Mac… SE, Classic, IIsi, LC475, Quadra650 pour les modèles 680x0… PowerWave 150, PowerBook G3, PowerMax G4 et G5 pour les PowerPC.

Logiciels : j’ai encore aujourd’hui tout le code source de Dragster sur mon dernier MacBook Pro… code source essentiellement écrit en Pascal avec quelques parties en assembleur 68000. L’environnement de développement utilisé était MPW (Macintosh Programmer’s Workshop).

J’ai aussi les sources de MacARBO et ses modules… toujours sur mes Mac depuis près de 20 ans, recopiés au fur et à mesure des changements de machine.

Données et contenu des services : j’ai les sauvegardes faites à l’arrêt de ma société (fin 1998) et en plusieurs exemplaires sur cassettes DDS/DAT et sur CDR, mais ça n’a pas été si simple de les restaurer…

Restauration des données

Pour relire les cassettes, j’ai trouvé un lecteur DDS-3 en SCSI sur ebay pour 15 euros (quand on pense au prix à l’époque !). Rebranché dans mon PowerWave, il fonctionne très bien et est reconnu sans problème par le logiciel de sauvegarde utilisé à l’époque (Retrospect 4) que j’avais toujours sur le disque dur du PowerWave.

Mauvaise nouvelle… les cassettes ont mal vieilli, une moisissure s’est développée sur bon nombre d’entre elles et les premières bandes que j’ai tenté de lire cassent. Certaines marques n’ont pas développé cette moisissure (merci Sony et Verbatim) mais malheureusement mes jeux de sauvegardes sont tous mélangés entre plusieurs marques et donc au final incomplets :(

Je retrouve ensuite un jeu de sauvegarde sur CDR et là je pense tout d’abord que ça ne devrait pas poser de problème, ils sont en bon état, mais malheureusement j’ai eu bien des soucis pour les relire !

Aucune des versions de Retrospect que j’ai n’arrive à lire ces CD. Le support de Retrospect m’aidera au mieux, en me fournissant une version intermédiaire non téléchargeable sur leur site et avec un numéro de série, mais rien n’y fait: “disque incompatible”

C’est le forum de MacBidouille qui m’apporte la solution… utiliser un graveur CD de l’époque, comme le Yamaha 4416S (je me souviens en avoir eu un). J’en trouve un sur ebay, caché dans une vieille tour Compaq Pentium 2, le tout pour… 25 euros (alors que le même graveur était vendu seul dans les 80 euros par plusieurs vendeurs). J’arrive finalement à relire ces CD, ouf !

On ne m’y reprendra plus à confier mes données à un logiciel propriétaire !

Malheureusement cette sauvegarde CD ne contient pas ce que je cherche, c’est uniquement le backup de mon Mac de travail et pas celles des différents serveurs (Minitel, web, etc).

Par chance, quelques semaines plus tard, je retombe sur d’autres cassettes et cette fois-ci les cassettes sont d’une seule marque (Sony) et ne semblent pas avoir de moisissure et la sauvegarde contient bien ce que je cherche :)

C’est parti pour une loooongue restauration des DAT…

La plaie des protections hardware

Matériel, logiciel et données sont là, mais un de mes soucis ce sont les protections de Dragster. Il y en a une dont je me souviens très bien “le modem maître”.

Les modems Dragster sont chaînables et chacun a un “numéro de voie” de 00 à 31. Un modem 00 (le fameux modem maître) est indispensable, sa présence est détectée au boot du serveur uniquement dans un but de protection, il n’a, si ma mémoire est bonne, aucun particularité matérielle ni logicielle. Il servait aussi à l’origine de protection pour DragsterEdit, remplacée plus tard par une disquette protégée.

Le problème c’est que le modem 00 que j’ai semble ne pas bien fonctionner, il n’est pas détecté et je n’ai qu’un seul “maître” et les 4 autres sont des “esclaves” sans possibilité de les modifier. A l’époque j’avais une EPROM spéciale qui permettait de passer d’esclave à maître et inversement mais je n’ai pas pu remettre la main dessus.

Qu’à cela ne tienne, comme j’ai les sources de Dragster, je modifie le code pour ne plus vérifier la présence de ce modem “maître”. Pour cela je restaure aussi l’environnement de développement MPW (Macintosh Programmer’s Workshop) qui est heureusement aussi sur le jeu de cassettes DAT que j’arrive à lire sans problème.

Et hop, c’est parti pour une plongée dans du code écrit il y a plus de 30 ans et que je n’ai pas ouvert depuis 20 ans !

Le code c’est comme le vélo… ça ne s’oublie pas !

J’ai passé tellement d’heures sur cette base de code pendant plus d’une décennie que je m’y retrouve bien plus vite que j’imaginais. Je redécouvre quand même à quel point des fonctionnalités avaient été ajoutées et que j’avais oublié : support de différents type de multiplexeurs X25 pour la connexion sur Transpac, des modems “Hayes”, de Minitel au modem retourné sans oublier la connexion à l’aide d’un émulateur par le réseau local (via ADSP). Il manque juste une connexion par TCP/IP pour être d’actualité, mais ça peut se rajouter avec l’aide de MacTCP ;)

Il faut que je retrouve aussi mes marques sur MPW, l’environnement de développement. Comment sélectionnait-on un projet ? Comment se faisait la compilation ? C’est un peu loin, mais ça revient aussi assez vite. Il me faut aussi corriger quelques chemins d’accès en durs qui ne sont plus valides.

C’est bon après quelques compilations de “DragsterBoot”, le problème du modem maître est résolu. Je supprime aussi au passage la protection de l’outil d’édition “DragsterEdit” qui ne me demandera plus sa disquette (celle qui me reste n’est plus reconnue, peut être à cause de mon vieux lecteur de disquettes)… j’aurai pu aussi m’en refaire une, mais bon, autant libérer tout ça une bonne fois pour toute.

Les protections c’est pas bon pour la préservation du patrimoine numérique !

On démarre ?

Là j’ai un peu plus oublié le fonctionnement de MacARBO, l’organisation des fichiers sur disque, mais le backup complet du Quadra 840AV qui nous servait de serveur Minitel fin 1998 me permet de retrouver tout ça dans l’’état où il fonctionnait.

Il va falloir que je relise quand même un de ces jours mes propres docs… une fois converties elles aussi dans un format lisible et non propriétaire (je crois que j’utilisais RagTime).

Page d’accueil du serveur JCA, lorsqu’on ne passait pas par le kiosque Télétel

Je branche un modem, lance “DragsterBoot”, et le serveur démarre.

Les modems Dragster permettent de se connecter en local, sans passer par une ligne téléphonique et oh merveille… la page d’accueil s’affiche !

Il ne reste plus qu’à retrouver le nom des services qui étaient disponibles… et bien sûr je commence par “JCA”.

Il y quelques autres services, mais qui font planter le serveur… celui-ci n’est en effet pas de la même génération que le serveur de l’époque. Je fait tout d’abord tourner ce serveur sur mon PowerWave 150 de Power Computing… un clone officiel datant de l’époque où Apple avait concédé des licences. Son processeur est un PowerPC 604 à 150MHz… bien différent donc du 68040 du Quadra 840AV ainsi que le système 8.6 au lieu du 7.1 d’où les petits problèmes de stabilité.

Restaurer le bon Macintosh… un Quadra 650

Je transfère tout ce contenu sur un LC475 via LocalTalk (à 230kbps), donc avec beaucoup de patience, mais les mêmes services plantent avec une erreur plus explicite liée au coprocesseur arithmétique.

Avant et après nettoyage du Macintosh Quadra 650

Tiens donc… le LC475 possède un microprocesseur 68LC040, c’est un 68040 sans processeur arithmétique (FPU) et c’est donc sûrement ça qui pose problème, l’absence de FPU.

Il me reste mon Quadra 650 qui lui a un 68040 (avec FPU), mais mes derniers essais pour le faire tourner n’avaient pas été bien concluants.

C’est le moment de le restaurer lui aussi en commençant pas un bon nettoyage car il a servi de serveur web, mail et mailing-list pendant plus de 10 ans 24h/24.

Ce Quadra possède aussi une carte de mise à jour PowerPC (un 601 à 66MHz), mais on peut la désactiver ou tout simplement la retirer.

Aspirateur, bombe à air, bombe “contact”, et il est prêt à reprendre du service pour les 25 ans à venir !

Le lecteur de CD interne pose quelques problème (il est reconnu 6 fois sur le bus SCSI), je le déconnecte donc car il ne me sert à rien.

Je restaure depuis la sauvegarde le système 7.5 utilisé à l’époque sur le Quadra 840AV ce qui me redonne accès du coup à l’Ethernet.

Du réseau à 10Mbps c’est lent pour aujourd’hui mais quand même bien mieux que les 230kbps du LocalTalk et simplifie le transfert du contenu du serveur.

Tout semble stable maintenant, les services en cause qui utilisaient une base de données fonctionnant en RAM (QuickBase) ne plantent plus. Le serveur est bon pour être remis en ligne !

Les connexions via VOIP

Petit réglage du niveau d’entrée…

Les connexions en local ne posent pas de problème, mais en passant par une ligne VOIP le signal des modems n’est pas toujours bien toléré.

Merci à Jelora pour son aide pour les réglages de niveau du modem et les nombreux tests nocturnes !

Une vingtaine de services Minitel restaurés

Ces services sont accessibles avec un Minitel (ou un modem+émulateur) en appelant le 01 8421 8115, il suffit de taper leur nom sur la page d’accueil ci-dessus.

Ils étaient pour la plupart en 3614, 3615 et 3616. J’ai modifié le paramétrage du serveur pour autoriser l’accès “gratuit” ;)

  • JCA : présentation de la société
  • DRAGSTER : présentation du système serveur, matériel et logiciel
  • HEBERGEMENT : nos services d’hébergement Minitel ET Internet… nous réalisions des sites/services hybrides dès 1996.
  • PROMAIL : un autre logiciel lié au Minitel pour récupérer des données sur l’Annuaire Électronique et d’autres services pour constituer des fichiers de mailing
  • HFS : un service de téléchargement de fichiers par Minitel qui fonctionnait avec un logiciel maison “NewCOM”
  • EMAIL (non fonctionnel pour l’instant) : une passerelle email/Minitel ainsi qu’un”webmail” (le terme n’existait pas encore). Ceci avait été réalisé comme POC pour une filiale de France Télécom qui deviendra… Wanadoo.

A cela s’ajoutait les services que nous avions développé pour des clients et que nous hébergions.

  • ALLIBERT : agence de voyage, avec consultation des voyages disponibles et commande de documentation
  • CNP : un hébergement hybride Minitel/web pour la Caisse Nationale de Prévoyance qui permettait de calculer une simulation de retraite
  • EUROAS : service d’un courtier en assurances qui permettait de souscrire directement et immédiatement par Minitel une assurance moto.
  • NIC : le service Minitel du NIC France, ancêtre de l’AFNIC qui gère les domaines en “.fr”
  • OREC : service de téléchargement pour les montres POLAR… qui étaient donc des montres “connectées” par Minitel bien avant l’heure !
  • PHONEBACK : système de marquage antivol… avec une base de données en ligne pour déclarer les vols et vérifier qu’un objet marqué n’a pas été volé.
  • QUERCY : service d’infos touristiques du département du Lot

mais aussi… AMEDIA , IESA, INFOPME, LOTOPRONO, PHONEBACK, PROFILS, SOLAR, VOF, ITM…

Challenge: fouiller mes sauvegardes et remettre en ligne le 3615 RDLF de la Roue de la Fortune !

* si vous voulez héberger un service et l’administrer à distance, c’est tout à fait possible, n’hésitez pas à me contacter !

Christian Quest / @cq94 sur Twitter / @cquest@amicale.net sur Mastodon