dimanche 6 octobre 2024

Amstrad CPC: vers l'infini et au delà avec la carte ULIfAC !

ULIfAC ? Kézako ?

Sous cet acronyme étrange, se cache une carte-à-tout-faire pour Amstrad CPC et CPC+, et il signifie: ULtimate Interface for Amstrad CPC

Et si le superlatif "Ultimate" fait toujours sourire, je peux vous dire tout de suite qu'ici, il n'est pas usurpé.

Autant être clair: si vous possédez un Amstrad CPC ou CPC+, que vous soyez passionné d'ordinosaure ou simple nostalgique de cette époque, cette carte est faites pour vous !


Ok, mais ça sert à quoi une ULIfAC ?

Les possibilités de cette carte sont si nombreuses, que je ne sais pas par quoi commencer, mais je vais vous donner les grandes lignes.

Pour une utilisation classique, ou on va surtout chercher à jouer, elle va vous permettre de:

  • Stocker et lancer des jeux sur support USB, directement sous forme de fichiers Amstrad.
  • Monter jusqu'à 4 images disquettes *.dsk dans un lecteur de disquette virtuel, et pouvoir les changer à la volée.
  • Transformer un CPC 464 en 6128 !
  • 512Ko de RAM, y compris sur un CPC 464 !

Pour un passionné qui veut aller plus loin, la bestiole en a encore beaucoup sous le capot:

  • 16 à 32 roms chargeables à partir de fichiers (automatisable au boot)
  • Mode hybride 256Ko de RAM / 16 roms
  • Copie de fichiers à l'intérieur d'images *.dsk vers le support USB, et inversement
  • Dump de disquettes physiques en fichier image *.dsk et inversement !
  • Possibilité d'utiliser AmsDOS ou ParaDOS
  • De nombreux logiciels intégrés: Outil de diagnostic, File manager (on peut lancer les jeux/applications directement à partir de là), 3 jeux intégrés, et outils de configuration.
  • Connexion au PC via Bluetooth, liaison série, ou même WIFI - Accès aux stockage du PC, application Terminal sur CPC, application PC pour copier, lancer des commandes sur le CPC, etc.

Le tout se pilote avec de très nombreuses commandes RSX - les commandes qui commencent par un pipe '|' (ou un 'ù' pour les claviers Azerty...) - ou directement à l'aide de boutons présents sur la carte.

Rendons à César ce qui lui appartient

Cette carte a été conçue par un passionné d'Amstrad, citoyen de Grèce, qui répond au pseudo d'Ikonsgr sur le forum de cpcwiki.eu

Elle est l'évolution et la synthèse de deux autres cartes de sa conception, la USIfAC II et la 512K RAM Expansion/32x Rom board

A l'unité, avec un adaptateur au choix, bord de carte pour les CPC ou Centronic pour les CPC+, la carte revient à plus ou moins 44€, frais de ports compris ! Pour peu que vous soyez dans l'Union Européenne.

 

 

L'ULIfAC dans les détails

Pour tester l'ULIfAC, je n'ai pas choisi la machine la plus facile. J'ai utilisé mon CPC 464 Azerty de base, avec une petite modification de mon cru pour sortir les signaux manquants du connecteur d'origine (12V, son, ...) et avoir la commutation automatique et la bonne image avec le son.


Avant de démarrer, je tiens à dire une chose: Ne faites pas comme moi, à foncer tête baissée. Commencez par lire la documentation ! Oui, RTFM ! Ça évitera pas mal de problèmes et de déconvenues 😅

Ceux qui savent, savent, mais pour ceux qui ne savent pas, sur les Amstrad Français, le charset fut changé de manière aveugle par Amstrad, et le | (pipe) s'est transformé en ù, tout en gardant sa fonction principale. Ne vous étonnez donc pas de voir sur mes screenshots, un ù à la place d'un |.


C'est un peu roots là, existe-t-il un boitier ?

La réponse est oui. Un passionné a conçu un boitier qu'on trouve facilement sur Thingiverse pour une impression 3D. Lien disponible en fin d'article.

Il est composé de 2 parties et de 4 boutons qui viennent se placer sur les boutons physiques de la carte.

Je n'ai qu'une impression de test, sans les boutons, mais voilà ce que ça donne 👉




Les manipulations sur la carte elle même

De nombreuses opérations sont réalisables sur la carte elle même.

Bien que le connecteur USB ne soit pas un bouton, je l'ai entouré simplement pour faire remarquer que ce n'est pas une excroissance étrange, mais simplement une mini-clef USB Sandisk.

 

Pour les boutons en eux même:

  • Le bouton "Mode RAM/ROM" permet de changer de mode de fonctionnement général entre le mode extension RAM (512ko), et le mode multi ROMs. Le mode ROM fonctionne lui même selon 2 sous-modes différents: 32 ROMs ou 16 ROMs + 256Ko de RAM.
    Ces sous-modes se configurent logiciellement via la commande
    |ROM. D'autres commandes RSX peuvent également basculer le fonctionnement en mode hybride automatiquement (comme la commande |6128)
    L'utilitaire de configuration des ROMs et leur chargement ne fonctionnent également qu'en mode RAM (on ne scie pas la branche sur laquelle on est assis), d’où l'utilité de pouvoir changer rapidement d'un mode a l'autre.
    Notez aussi, que la commande
    |SW fait la même chose qu'une pression sur ce bouton.
    Le changement de mode entraine automatiquement un RESET de la machine.

  • Le bouton RESET n'a pas vraiment besoin d'une longue description, je pense que tout le monde a compris à quoi il sert, Amstrad n'ayant pas jugé utile d'en mettre un sur leurs machines...
    Utiliser le RESET est très nettement préférable à l'utilisation du ON/OFF. Rien n'est plus néfaste pour l’électronique que les allumages à répétition !

  • Le bouton de changement de disquette permet de changer la disquette courante, lorsqu'on a chargé plusieurs images disque et activé l'émulation lecteur disquette (qui remplace le vrai lecteur sur un 6128).
    Chargez les 3 disquettes d'un jeu, puis lancez-le, et lorsqu'il vous demandera la disquette suivante, cliquez simplement sur ce bouton.
    A chaque clic, la carte mettra la disquette suivante, ou la première s'il n'y en a plus derrière.

  • Enfin, le bouton PAUSE est un bouton différent des autres. Ce n'est pas un bouton poussoir, mais un interrupteur à deux états: ON/OFF.
    Quand on active la pause, le CPU de l'Amstrad s'arrête. Il ne plante pas, il se fige et n’exécute plus rien jusqu'à ce qu'on repasse la pause à OFF.
    Il faut faire attention: si la machine démarre en mode pause, vous n'aurez aucune image. Sur le moment, ça peut surprendre, mais une simple pression redonnera vie à votre machine préférée 😉
    Si vous ne savez pas à quoi ce bouton peut bien servir, imaginez vous 40 ans en arrière, quand en plein jeu, incapable de sauver votre partie, vous entendiez: "A TAAAAABLE !" 😂


Configuration de la Carte

En réalité, la carte n'a pas besoin de grand chose. On branche, on allume l'ordinateur, et hop ça fonctionne.

Voilà ce que vous aurez à l'écran au premier démarrage. Si vous avez un 464 bien sur.

Si vous avez un 6128 ou plus rare, un 664, vous n'avez besoin de rien d'autre, la carte est déjà configurée dans ce mode par défaut.

Sur les précédentes versions, il y avait un petit interrupteur sur la carte pour choisir entre les modes 464 et 664/6128, mais c'est désormais géré logiciellement :
La commande
|SM  va vous permettre de voir ou de changer le mode de fonctionnement.
|SM,2 basculera la carte en mode 464. Inutile de le faire à chaque démarrage, votre dernier choix reste enregistré entre les démarrages. A l'inverse, si vous rebranchez la carte sur un 6128, il faudra faire un |SM,1 pour la replacer dans le bon mode.

Enfin, un petit appui sur le bouton RESET, et la machine redémarrera dans le mode choisi.

Me voilà dans le mode qui correspond à ma machine physique.
Cette première configuration est importante. Manipuler la carte dans la mauvaise configuration entrainera divers bugs et plantages. Expérience Inside...

 

C'est solide ce machin ? Mon Amstrad ne risque rien ?

Je dois dire que malgré toutes les misères que j'ai pu lui faire, la carte est virtuellement implantable, et elle est toujours retombée sur ses pattes.

La partie "Troubleshooting" de la documentation adresse tous les problèmes que j'ai pu rencontrer et bien plus.
Lorsque ma carte n'était plus détectée, un simple 
OUT &FBD2,5 , un RESET, et elle réapparaissait.
Quand les commandes RSX n'étaient plus reconnues, un petit 
OUT &FBD1,4  et tout rentrait dans l'ordre.
Attention: ce genre de chose n'apparait que lorsqu'on ne lit pas la doc et qu'on veut tout tester, et trop vite. 

La carte ne date pas d'hier, c'est déjà la version 5, elle a fait l'objet de nombreuses améliorations en fonction des retours utilisateurs.

On peut donc lui faire pleinement confiance.
Et bien sûr, déconnecter la carte remettra votre Amstrad dans sa configuration d'origine, comme s'il n'avait jamais vu d'ULIfAC.


La RAM étendue

Probablement la feature la moins impressionnante, du moins dans cette configuration.

Evidemment il est toujours utile d'avoir de la RAM en réserve sous le coude, mais nous savons bien que les logiciels de l'époque ont été conçus pour 64 ou 128ko de RAM, rarement plus.

Quelques applications vont cependant tirer partie de cette mémoire disponible, surtout les applications récentes
La version mass-storage de SymbOS par exemple, qui pourra se lancer directement sur la clef USB, tirera pleinement partie de ces précieux octets supplémentaire !

Dans la configuration 16 ROMs + 256ko de RAM, certains logiciels en ROM vont eux aussi tirer partie de cette RAM.

N'oublions pas non plus que ces 512ko s'ajoutent aux 64ko d'origine dans le cas de mon 464, ce qui portent la RAM à un total de 576ko ! J'ai cru voir des étoiles dans sa LED tellement il n'en avait jamais vu autant 😂


Les stockages

Là, on rentre dans le vif du sujet. Avec l'ULIfAC, vous allez avoir accès à 3 stockages différents:

  • Le lecteur de disquette physique, intégré ou externe. Inexistant sur CPC 464 sans lecteur DDI-1 bien entendu.
  • Le stockage externe (USB par defaut), qu'on peut considérer comme un "gros disque dur". Il doit être formaté en FAT (déconseillé), ou FAT32. L'exFAT ou tout autre format n'est pas supporté.
  • Une image disquette .dsk montée dans l'émulateur de contrôleur disquette.

Par défaut, au démarrage, la carte est en "mode direct" et adresse la clef USB comme stockage, s'il y en a une.
De ce fait, les commandes 
CAT, RUN, LOAD, SAVE vont cibler le stockage externe. Les commande RSX |CAT, |CD et |CDR permettent de se déplacer dans l'arborescence du stockage externe.

Pour revenir d'un autre stockage vers le stockage externe, on utilisera la commande |EN (enable).
Pour passer sur une image en *.dsk montée, on utilisera 
|FDC (floppy disc controller).
Et pour revenir sur le lecteur physique, on lancera un
|DIS (disable) qui déconnectera le mode direct ainsi que l'émulation FDC.

Comme vous pouvez le voir, c'est très simple. Mais comment, puis-je copier de l'un à l'autre si un seul stockage est actif à la fois ?

Pour ces opérations, vous avez accès à un jeu de commandes RSX, permettant de copier, de et vers chaque support. Ainsi que des commandes pour dumper une disquette physique vers un fichier image et inversement. Il serait trop long de les détailler ici 😅

Parmi les commandes RSX, vous avez un file manager tout simple et un second qui vous donnera la taille des fichiers, `|FM` et `|FSM`. FSM est un peu plus lent, mais dans le cas d'un stockage USB ce n'est pas vraiment sensible. Nous verrons plus loin les autres cas de stockage externe.

Ces manager vous permettront de vous promener dans votre stockage externe et de lancer les exécutables Amstrad, jeux, applications et tout ce que vous voulez.

Copiez le contenu de vos disquettes dans divers répertoires de votre stockage USB et vous pourrez les lancer presque aussi simplement qu'en cliquant une icone sous Windows !

Un exemple avec le jeu 1943, dont les deux fichiers 1943. et 1943.BIN ont été copiés de la disquette avec la commande |EXT, puis lancé à partir du file manager |FSM :

Son frère ainé, 1942, dont l'image .dsk, présente à la racine de la clef USB, est monté dans l'émulateur de contrôleur disque, avant d'être lancé de façon traditionnelle :


Petite précision: pour mes tests, j'ai utilisé une vieille clef USB de 128Go, formatée en Fat32. Elle fonctionne parfaitement, elle est suffisamment rapide pour ce type d'utilisation, et elle a assez d'espace pour stocker 50 fois toute la logithèque Amstrad !

 

Les ROMs 

Les Amstrad, comme toutes les machines, démarrent sur un BIOS. L'OS est situé dans ce qu'on appelle la ROM basse, et le BASIC dans la ROM haute.

Mais ce que peu de gens savent, c'est qu'on peut ajouter plusieurs ROM hautes. Ces ROMs vont fournir des commandes RSX, permettant d'étendre les fonctionnalité de la machine !

L'OS du 464 peut utiliser directement 8 slots de ROM (0 à 7, incluant les 2 ROMs d'origine dans les 2 premiers slots). A partir du 6128 c'est 16 ROMs (slots 0/1 utilisés par l'OS et le BASIC, le 7 par le DOS).

La carte ULIfAC a elle même une ROM, installée dans le slot 5. On peut la déplacer en cas de conflit avec d'autres roms utilisant exclusivement le slot 5.

Mais chacune de ces roms est libre d'utiliser d'autres roms, au delà de ces limites. L'ULIfAC vous permettra donc d'en charger 32, ou 16 en mode hybride.

Un jeu en ROM

Pour mes tests, je me suis procuré le jeu Relentless sous forme de ROM (on le trouve également au format disquette et cartouche).

Pour tester rapidement, je l'ai chargé dans le slot 6, avant de redémarrer en mode hybride. La ROM me présente alors une nouvelle commande RSX: |RELENT que je m'empresse de taper pour lancer le jeu !


Un OS complet en ROM

Pour mon second test, j'ai téléchargé SymbOS en version ROM. C'est un OS multitâche complet, qui existe sous plusieurs formes. Et c'est la version 4 roms que je vais utiliser ici, renommées A, B, C et D pour faciliter les chargements 😅
La documentation indique que seule la première rom doit être dans la partie "visible" de l'OS, les 3 autres peuvent être au dessus de la limite.

Je vais donc placer la rom A dans le slot 2, puis les roms B, C et D respectivement dans les slots 8, 9 et 10.

Au reboot, SymbOS affiche de jolies couleurs ! Et indique qu'on peut lancer l'OS avec les nouvelles commandes RSX |SYM ou |SYMBOS. Et ça fonctionne ! Classe !


Et toutes en même temps ?

Pour le fun, je me suis amusé à remplir tous les slots de la zone visible de mon 464, j'ai donc mis:

  • Le jeu Relentless en slot 2
  • SymbOS en slot 6, 8, 9 et 10
  • ParaText (un traitement de texte de l’époque) en slot 4
  • La rom Toolkit en slot 3

Voilà, ce que ça donne au reboot en mode ROM hybride 👉


Un petit appel à |PROTEXT et on peut vérifier que tout fonctionne.


Des roms, il en existe beaucoup. Des jeux, des OS - SymbOS n'est pas le seul -, des applications, etc. Si certaines étaient à l'époque associées à un hardware spécifique, beaucoup peuvent être lancées et utilisées aujourd'hui.

 

Vous imaginez les possibilités ?

Un lien vers une impressionnante liste de ROMs est disponible à la fin de ce billet.



Surclasser un CPC 464 !

Même si personnellement j'aime bien utiliser mon CPC 464 survitaminé en tant que tel, vous pouvez le transformer en 6128 en une seule commande !

Tapez |6128 (original non?) et la carte basculera automatiquement en mode ROM hybride, après avoir installé les 2 roms du CPC 6128 et la ROM DOS (AmsDOS ou ParaDOS), et rebooté.

Votre petit CPC 464 affichera alors fièrement ses 128ko de RAM et son nouveau BASIC.

Bien sûr, un basculement en mode RAM lui retirera instantanément son déguisement de 6128. Et un second basculement le transformera à nouveau en 6128.
Pratique pour lancer des logiciels qui ne fonctionnent que sur le 6128.

Tel force bleue: Transformation !


Petit détail pour ceux qui comme moi, on un clavier français: le passage en 6128 installe un OS en anglais, non modifiable. Votre clavier passera donc en QWERTY.


Logiciel intégrés

Nous avons déjà vu les file managers |FM et |FSM, et également l'outil de diagnostic |DIA et l'outil de configuration de ROMs |ROM.

Vous avez aussi accès à deux applications de terminaux |TER et |COM, que nous allons voir dans la section suivante.

Et pour compléter tout ça, 3 jeux sont aussi disponibles immédiatement, par simple commande: |GALA, |PACMAN et |KGOR

Au cas ou vous auriez un doute, elles vont lancer respectivement des clones de Galaga, Pacman et Donkey Kong 😎

3 classiques sympathiques et agréables à jouer (joystick obligatoire pour au moins 2 d'entre eux 😉)

Et tout le reste...

Dans ce chapitre, il y aurait encore bien des choses à décrire, mais il ne s'agirait pas d'écrire 3 tomes d'un trait !

Il reste cependant encore quelques points importants à voir.

La puissance des commandes RSX

Sachez qu'il existe encore de nombreuses commandes RSX qui n'ont pas été vues dans les chapitres précédents, et qui vous aideront à utiliser votre ULIfAC, à manipuler les fichiers, ou comme nous allons le voir, à accéder a un PC à distance.

La commande |HELP vous aidera à vous les remémorer si vous n'avez pas la documentation PDF à portée de main.

Les commandes RSX sont utilisables dans les programmes BASIC. Ce qui pourra vous permettre de faire de petits programmes pour, par exemple charger les 4 disquettes d'un jeu et le lancer, ou charger des ROMs et les configurer, etc. de la même façon qu'on utilise des scripts shell sous Linux ou Windows.

 

Le Bundle ULIfAC

Avec l'ULIfAC, Ikonsgr fourni également un set d'utilitaire qui tournent sous Windows.

On y trouvera par exemple une application qui créera pour vous de petits programmes BASIC pour vous simplifier les taches décrites juste au dessus.

Un autre petit utilitaire vous permettra d'extraire les fichiers d'images .dsk. Vous pourrez alors les copier sur votre clef USB, et lancer les jeux avec le file manager. Un peu plus pratique que la commande  |EXT 


Et vous y trouverez aussi tout ce qu'il faut pour connecter votre PC et votre Amstrad !

Communication avec un PC

Ce n'est sans doute pas la fonctionnalité la plus utilisée, mais elle reste cependant impressionnante.

La carte ULIfAC dispose de deux connecteurs 4 broches, pouvant recevoir au choix:

  • Une liaison série classique
  • Un module série/USB
  • Un module Bluetooth
  • Un module WIFI ESP

Ces modules ne sont pas fournis avec la carte (seul le module USB est fourni et soudé sur la carte), mais se trouvent chez AliExpress pour quelques euros. Tous est clairement indiqué dans la documentation: modèles exacts, prix, configuration.

La connexion se configure par commande RSX coté Amstrad et dans un logiciel, coté Windows.

Une fois connectés, vous allez pouvoir, au choix dans l'application:

  • Vous connecter en mode Terminal, en utilisant |TER coté Amstrad.
  • Copier des fichiers vers le CPC, avec |2CPC
  • Copier des fichiers à partir de l'Amstrad, avec |2PC
  • Envoyer une image .dsk vers l'Amstrad, avec |DSK coté CPC
  • Utiliser un répertoire du PC comme disque dur distant coté Amstrad


Si le coté pratique des 4 premiers choix peut être critiquable, la possibilité d'utiliser un PC comme disque dur distant est en revanche très sympathique !
Pour peu que la liaison soit rapide, il remplacera avantageusement la clef USB et vous permettra de manipuler les fichiers facilement coté PC.

Nous avons fini le tour rapide des possibilités de cette carte et des outils qui sont fourni avec.
En relisant la documentation au fur et à mesure que j'écrivais ces lignes, je me suis rendu compte que je passais à coté d’énormément de détails, mais ce blog doit rester concis !

Alors place à la...


Conclusion, s'il en faut ?

L'ULIfAC propulse n'importe quel Amstrad dans le 21ème siècle.

Aux rétrogamers, elle offre des solutions simples et ergonomique pour sélectionner et lancer les jeux. Qui aurait imaginé qu'on puisse avoir tout un tas de jeux sur l'équivalent d'un disque dur ? Qu'on puisse les lancer en navigant facilement dans l’arborescence ?
Et quel plaisir nostalgique, de pouvoir "flasher" une disquette à partir d'une image .dsk et d'y rejouer comme avant ! Ou encore de monter les images d'un jeu multi-disques et de changer les disquettes d'une simple pression sur un bouton.

Aux passionnés, elle permet de découvrir un patrimoine de l'Amstrad méconnu, parfois oublié, ou inaccessible à l'époque !
Enfin, elle fait voyager la machine dans un futur qu'elle n'aurait jamais du connaitre, en lui permettant de lancer des OS multitâches et d'autres applications récentes, devant lesquelles même le croco semble se dire:

"Bon sang... si on avait eu ça à l'époque..."


Il existe d'autres cartes multi-fonction pour Amstrad, mais soyons honnête, elles sont soit moins complêtes, soit moins pratiques, soit elles ne se font plus et sont devenues rares et chères.

Nous avons ici une carte très complète avec un prix contenu, faisant d'elle le meilleur rapport qualité/prix actuel.

Si vous avez des amis fan d'Amstrad, partagez leur cet article. Si vous souhaitez commander à plusieurs, n’hésitez pas à contacter Ikonsgr, afin de mutualiser les frais de ports au minimum.

En un seul mot: Foncez !

PS: Je ne touche aucune commission sur les ULIfAC. Ce billet de blog n'est pas sponsorisé. Mais j'ai trouvé cette carte vraiment incroyable.


Références:

Ancêtres de l'ULIfAC :

ULIfAC :

Boitier :

Documentation (pour les curieux) :

 Répertoire de logiciels en ROM pour Amstrad :

dimanche 7 avril 2024

La BBC Master 128, Rolls Royce du 8bit ! Partie #2


C'est partit pour l'aventure !


Je ne connaissais absolument pas la machine. Je n'en avais jamais approché, et même si j'ai fait le portage de l'émulateur BBC Micro pour Recalbox, j'étais très loin de maitriser tous les arcanes des BBC Micro.

Mais ce passage par l'émulateur m'a appris une chose. Ces machines sont très riches et complexes. Alors, je vais suivre la consigne pour une fois, et RTFM !

La machine est pourvue d'une extension "DataCentre" de RetroClinic, un passionné de ces machines qui a conçu beaucoup de cartes pour améliorer les BBC ou émuler d'anciennes extensions introuvables aujourd'hui (comme les TUBEs)

Avec la machine, j'ai reçu le manuel d'utilisation, ainsi que celui du DataCentre. Les deux sont en parfait état !

La documentation de la machine regorge d'informations. Mais vous vous doutez bien que, heureux comme un gosse qui vient d'ouvrir un cadeau de Noël, je me suis empressé d'aller m'amuser sur le clavier plutôt que de tout lire d'un coup !


Outre les instructions BASIC et les commandes de l'OS, on y trouve aussi des informations sur les connecteurs de l'appareil, ce qui m'a permis de refaire un câble RGB qui embarque le son.
J'y reviendrai plus tard 😉




Les commandes rom-agnostic


En dehors du BASIC lui-même, ou de tout autre langage installé, les BBC ont un système de commande indépendant de la ROM qu'on a lancée. Je suppose, que c'est l'OS qui en gère la majorité.

Quel que soit l'interpréteur dans lequel on se trouve, on peut utiliser les commandes système en les précédents d'un astérisque :   *CONFIGURE*RAM*TAPE…
Et il y en a beaucoup... vraiment beaucoup !

Mon plus gros souci, a été de comprendre comment on manipule les différents périphériques.

En lisant le manuel de RetroClinic, j'ai appris rapidement à lire le contenu de ma clef USB et à monter les images disques dans des lecteurs virtuels. 

Mais je ne savais toujours comment accéder au disque dur (sur Compact Flash) IDE.

Il m'a fallu un moment, et pas mal d'expérimentations pour comprendre les différents resets et les "filing systems"

Les Filing Systems


C'est en réalité la clef de voute des BBC. En français, on peut le traduire par "Systèmes d'archivages". Ramené à un ordinateur, ça signifie simplement, les différents supports de stockage.

À la différence qu'ici, tout est filing system ! Même les cartouches. Le BBC Master dispose de 2 ports cartouches, et y accéder, requiert l'utilisation du filing system ROM.

On bascule d'un FS à un autre avec les commandes :
  • *TAPE : Lecteur K7
  • *DFS : Lecteur disquette
  • *ADFS : Disque dur, c'est lui qui me permet d'accéder à la Compact Flash en IDE.
  • *ROM : Cartouche (curious isn't it? 😅)
  • *NET : EcoNet, le nano-reseau made in Acorn
  • *RAM : Celui-là c'est le DataCentre. 1Mo de RAM, permettant d'émuler 4 lecteurs de disquettes virtuels, et même un cinquième, résident.
Chaque FS peut être configuré en auto-boot ou pas. Je n'ai pas de lecteur de K7 pour l'instant, mais ce sera amusant à tester avec 😁

Tous ces FS sont gérés par différentes ROMS, dont je peux avoir la liste avec la commande *ROMS.

Je dois dire que pour une conception de 1980/81, je suis réellement impressionné...
Milles et une façon de faire reset...

J'ai mis un moment également à comprendre les différents RESET.
Sur cette machine, la touche break fait un soft-reset. Mais combinée avec d'autres touches, ça change tout :
  • BREAK : Soft reset. Si le dernier FS était configuré en Auto-boot, il démarre. Idem à l'allumage à froid d'ailleurs.
  • CTRL+BREAK: Hard reset.
  • SHIFT+BREAK: Soft+reset + auto-boot du dernier FS sélectionné.
Une fois qu'on maitrise, on peut commencer à faire des choses amusantes

Donc, un petit coup *ADFS suivit d'un *CONFIGURE BOOT et la touche BREAK fera booter mon disque dur. Je peux aussi me passer du *CONFIGURE et faire un SHIFT+BREAK. Mais le *CONFIGURE m'assurera que le disque bootera au prochain allumage !

Un disque dur IDE, sur un 8bit... Rendez-vous compte !

J'ai appris aussi que la touche R pendant un BREAK ou un SHIFT-BREAK, permet de basculer sur le FS RAM du DataCentre. Pratique pour booter un jeu monté dans un lecteur virtuel, d'ou qu'on soit.

Mais j'ai aussi appris à mes dépens que la touche R à l'allumage de la machine fait un reset CMOS ! Comme un BIOS de PC 😅

En voyant ça à la place du BASIC, vous imaginez bien ce que j'ai pu me dire: "Oooooh shit !"

Heureusement, dans le manuel on trouve tout ce qu'il faut pour tout reconfigurer avec la commande *CONFIGURE

On peut aussi passer par l'application de configuration, disponible d'ailleurs dans le menu qui se charge lorsqu'on boote le disque dur.

Bien sûr, tout est détaillé dans le manuel, parce que certains pictos sont loin d'être évidents !


Et les jeux ?!


Les jeux, il y en a eu beaucoup sur cette machine. Même si c'est une machine Britano-britannique, la ludothèque est riche.

On peut monter un GOTEK bien entendu, ce qui devrait assurer une compatibilité à toute épreuve des jeux.


Mais avec DataCentre, je peux quand même monter une image disque dans un lecteur virtuel facilement.
Un coup de *RAM et de *CAT 5 pour lister ce que j'ai sur la clef USB, puis un *IMPORT PRINCE~1.SSD pour monter Prince of Persia dans le drive virtuel #0.

Il me restera à faire un SHIFT+BREAK pour lancer le jeu 😁

Mais en fait... ça ne fonctionne pas. Certains jeux accèdent aux DFS directement et ne fonctionnent pas en drive virtuel.
Mais pas de panique, RetroClinic avait tout prévu ! Un petit coup de commande *DTRAP, et les commandes DFS sont déroutées vers DataCentre ! Et hop, la magie opère une nouvelle fois !



Je pense avoir fait un petit tour rapide de cette machine vraiment impressionnante.
Il me reste encore tant à découvrir, qu'il est possible que je fasse une partie 3 plus tard.

Si vous avez l'occasion d'en trouver un, ou même un BBC micro, foncez !

Pour ma part, il est possible que je me procure d'autres joujoux de chez RetroClinic, comme leur émulateur TUBE à base de Raspberry Pi, capable d'émuler tous les processeurs TUBEs des années 80, ou même d'utiliser l'ARM du Pi nativement !

Mais... y a-t-il au moins des défauts sur ces machines ?


Oui, il y en a, comme partout.

Le premier m'a amené à refaire un câble RGB, que je n'ai pas encore testé au moment où j'écris ces lignes 😅 Il s'agit du SON !


Non non, il n'est nullement question de la qualité du son de la machine, qui pour une conception de 80 est plus qu'honorable avec ces 4 canaux.

Il s'agit d'un problème physique, qui agace nombre de possesseurs de la machine. Le son sort par un haut-parleur intégré à la machine, sans aucune solution pour régler le volume sonore ! Il est au maximum tout le temps.


On peut modifier le boitier en ajoutant un potentiomètre qu'on ira connecter au pied du HP, mais il existe une solution plus efficace :
Refaire un câble RGB en piquant le son sur la sortie arrière de la machine et débrancher le HP interne. Hop, je peux maintenant régler le volume sur la TV 😁


Le second est plus problématique. Il s'agit de la palette fixe de 8 couleurs du chip graphique choisi par Acorn.

C'est très limité. En réalité, il y a 16 couleurs. 8 couleurs primaires, et 8 couleurs clignotantes. Mais ça ne change rien au fait que c'est très limité.

Acorn n'a pas vraiment mis l'accent sur les jeux. Le chip graphique est capable de monter haut en résolution pour l'époque, mais dispose d'un jeu de couleur faible et ne permet aucune accélération matérielle pour les sprites, scrollings, etc.

La puissance brute de la machine compense un peu ces absences, mais les couleurs restent le principal défaut "visible" des Acorn.

Malgré tout, les graphistes ont redoublé d'astuce pour produire des jeux de qualité, comme le montre les screenshots ci-dessous :



Et Acorn dans le reste du monde ?



Malheureusement pour nous, les Acorn se sont très peu exporté en dehors du Royaume Britannique.

Il y a plusieurs raisons à ça.

Tout d'abord, le manque de stratégie commerciale/marketing. Acorn est une boite ultra-pointue en terme technique, mais on a beau avoir le meilleur produit du monde, si on ne sait pas le vendre, on ira moins loin que d'autres qui ont des produits plus médiocres, mais qui savent les vendre !
La BBC a permis à Acorn de se faire une place de choix en Angleterre. Sans eux, nul doute que l'aventure se serait arrêtée plus tôt.

Ensuite, il y a le prix. Car proposer des machines aussi pointues, aussi extensibles, et avec des RAM qu'un seul constructeur est capable de produire, va faire grimper sérieusement la facture !
On est entre 300£ et 400£ à l'époque. Ramenés en Euros actuels, ça donne une machine à 2000€. Pas à portée de toutes les bourses...

Enfin, et c'est pour nous, joueurs retros, le point le plus négatif des machines Acorn: Les 8 couleurs fixes !
Hors du marché Britannique, la machine se retrouve en concurrence frontale avec les Atari, les Commodore et beaucoup d'autres, qui affichent fièrement des jeux aux couleurs bien plus riches ! 

 Hermann Hauser et Chris Curry, fondateurs d'Acorn, à Cambridge

Voilà pourquoi, ces machines aux capacités formidables, sont restées cloisonnées au seul marché Anglais.



La BBC Master 128, Rolls Royce du 8bit ! Partie #1

Pour une fois il ne s'agit pas de restauration, mais plutôt de découvrir une machine peu connue et difficile à trouver dans nos contrées : Le BBC Master 128 d'Acorn.

Et si je peux vous la présenter aujourd'hui, c'est grâce à un très généreux donateur que je remercie encore chaleureusement.


Un peu d'histoire...


Le nom "Acorn" ne vous dit peut-être rien, mais vous utilisez pourtant leurs produits tous les jours. Du moins, les descendants en ligne directe.

Acorn est une entreprise britannique fondée en 1978.

En 1979, elle lance son premier micro-ordinateur : l'Atom, à base de 6502, le CPU qui équipe également les Commodores 8bits, les Ataris 8bits et les Apple II.

Avec ses 2ko de RAM et ses résolutions allant jusqu'à 256 pixels en largeur, la machine ne dénote pas pour l'époque, et rencontrera un certain succès.


Le BBC Micro


Mais c'est en 1981 qu'Acorn montera sur la première marche du Podium. En effet, la société a remporté un appel d'offre émis par la BBC, qui cherche un ordinateur pour son émission Computer Literacy, une émission destinée à l'apprentissage de l'informatique.

Naitra alors, le BBC Micro, une machine hors norme sur bien des points.

Rappelez-vous, nous sommes en 1981. À ce moment-là, le parc informatique classique se compose d'Apple II, d'Atari 800, de Sinclair ZX-81, de TI99/4A ou encore de Commodore Vic-20. Toutes ces machines sans exception, même l'Apple II, font office de hochet pour enfants à côté du BBC Micro !





Et pour cause :

  • Les BBC Micro sont équipés d'un 6502 cadencé à 2 MHz, son maximum. Acorn a choisi le même design qu'Apple ou Commodore pour permettre les accès concomitant à la RAM à partir du CPU et du Chip graphique. Il lui faudra des RAM à 4 MHz, une gageure pour l'époque ! Seul Hitachi sera capable d'en fournir.
  • la machine affiche déjà 16 ko de RAM pour le modèle le plus bas, 32 pour le modèle B. Plus tard, ils monteront à 64 puis 128 ko.
  • 16 slots de ROM sont prévus : 4 sur la carte mère, les autres par extensions. Ce qui permet à l'ordinateur de proposer plusieurs langages, logiciels ou [D]OS. En 1981, c'est juste incroyable.
  • D'origine, il propose une sortie vidéo RF, du composite et du RGB. Il y en a pour tous les gouts et tous les téléviseurs ! 
  • Du côté des périphériques, c'est l'euphorie, avec un lecteur K7, des lecteurs disquettes, des disques durs, des extensions ROMS, des extensions RAM, des joysticks, et bien d'autres choses encore... Jugez vous-même avec les photos juste en dessous !



Cette machine a 4 ans d'avance au bas mot. Et ce n'est pas tout...

Vous avez dit TUBE ?


Le BBC Micro peut recevoir une extension TUBE, qui n'est rien d'autre qu'un second CPU capable de prendre en charge la gestion des périphériques et de décharger complètement le CPU principal de cette tâche !
Prévu à la base pour recevoir un Z80, de multiples extensions TUBE verront le jour avec des Z80, des 6502, des 32016 (6 MHz) ainsi que... des ARM !

Oui oui... des ARM.





Acorn, papa des ARM


Et oui, l'ARM a été mis au point par Acorn, dans la même période. D'ailleurs, les versions 2 et 3 équiperont plus tard les Archimèdes, concurrents malheureux des Atari ST et Amiga.

ARM signifie à la base Acorn RISC Machine.

En 1990, la division processeur d'Acorn se détache de la maison mère et deviendra ARM Ltd. et ARM se renommera Advanced RISC Machine.

Les processeurs et micro-contrôleurs qui équipent vos Téléphones, vos TV, vos Box et même les programmateurs de vos machines à laver sont tous des descendants des ARM d'Acorn.




Mais revenons à nos moutons...

Le BBC Master


Le BBC micro évoluera au fil des ans. Des modèles B, B+, 64 et 128 ko verront le jour.

Jusqu'en 1986 ou nait le BBC Master 128, évolution ultime de la série des BBC Micro.
Lui-même sera dérivé en plusieurs modèles, certains avec jusqu'à 512ko de RAM, d'autres avec la carte EcoNet intégrée (équivalent survitaminé du nanoréseau de Thomson), ou encore une version Turbo avec un CPU à 4 MHz !

De base, il est équipé d'un BASIC, des roms pour gérer disquettes et disques dur, et surtout, bien moins courant, d'un Éditeur de Texte, d'un Traitement de texte et d'un Tableur !
Seul le TO9 de Thomson propose à peu près la même chose.


Voilà pour la petite page d'histoire et de présentation de cette série de machines uniques au monde.
Revenons maintenant à la petite merveille qui m'a été généreusement offerte 😃

A la découverte du BBC Master 128



Quand je l'ai reçu, il était tellement bien protégé, que j'ai du mettre pas loin de 10 mn à sortir la machine de son cocon de polystyrène, de scotch et de mousse ! 😂

Le vendeur est un connaisseur, et on voit tout le soin qu'il a apporté à s'assurer que sa machine arrive en bon état.

Pourtant, à sa mise en route, quelle ne fut pas ma déception de ne rien voir apparaitre à l'écran, la machine s'obstinant à cracher un *BEEEEEEUP* fort et continu 😨

Je me suis dit que peut-être, avec les vibrations du transport et malgré l'emballage, quelque chose avait peut-être bougé à l'intérieur.

Ni une ni deux, j'ai ouvert la machine.

On dit souvent "Deutsche Qualität" pour désigner la qualité, en référence à une célèbre publicité, mais je peux vous garantir que les anglais ne rigolaient pas à cette époque, quand on voit la taille des vis qui ferment le boitier !

Comme je m'en doutais, la petite carte avec les ROMs de l'OS sur support PLCC à droite, étaient à moitié sorties de leur logement...



Après avoir enfiché fermement la petite carte, je remets le capot supérieur sur la machine et je tente un rallumage.

*BEUP*, suivit d'un court silence, suivit d'un *BIP* plus enjoué, et la magie opère ! 😍

Me voilà donc avec un BBC Master 128 fonctionnel !

La suite, au prochain épisode !


Amstrad CPC: vers l'infini et au delà avec la carte ULIfAC !

ULIfAC ? Kézako ? Sous cet acronyme étrange, se cache une carte-à-tout-faire pour Amstrad CPC et CPC+, et il signifie: UL timate I nterface...