|
||||||||||||||||||||||||||||||||||||||||||||
|
Le Turbo Chameleon 64 est une cartouche d'extension pour le Commodore 64 à utilisations multiples. Ce projet a été initialisé en 2006 par Jens Schönfeld (de la société, désormais très connue dans le monde Amiga, Individual Computers) et Peter Wendrich. Initialement, il s'agissait d'une simple cartouche avec un connecteur VGA permettant de dupliquer la sortie de la puce VIC-II sur un moniteur VGA. Mais, comme le coeur de la cartouche est un FPGA (circuit logique programmable), de nouvelles possibilités et extensions ont été pensées puis réalisées. Le Turbo Chameleon 64, en plus d'une cartouche d'extension, est devenu un remplaçant de l'ancienne cartouche MMC64, un concurrent de la cartouche 1541 Ultimate II et du C64 HDD, un lecteur de fichier musicaux SID et bien d'autres choses encore ! C'est surtout devenu, à l'instar du C-One aussi édité par Individual Computers, un véritable ordinateur reconfigurable. Ainsi, des implémentations de machines différentes comme le Minimig (Amiga 500/600) ou le Speccy (Spectrum 48/128k) ont vu le jour. Enfin, pour les électroniciens en herbe, le Turbo Chameleon 64 peut aussi être utilisé comme plate-forme de test et d'apprentissage de la programmation en environnement FPGA. Le déballage La cartouche (disponible et commandable chez Vesalia) est livrée dans la boîte classique des produits Individual Computers. Comme pour les autres produits, le coffret contient un guide de démarrage rapide sur une feuille au format A4 (sachant qu'une documentation très complète est disponible au téléchargement). Il contient aussi le Turbo Chameleon 64 au format cartouche, un câble à fonctions multiples qui permet de relier des périphériques à la cartouche (clavier PS2, souris PS2, lecteur de disquette 1541) et l'alimentation par connecteur USB quand la cartouche est utilisée en mode indépendant. Un câble mini-USB supplémentaire est aussi fourni, il permet le branchement du Turbo Chameleon 64 à un ordinateur (PC ou Mac) pour gérer les transferts de données vers la mémoire Flash de la carte. Dans notre cas, un adaptateur USB-secteur a été rajouté à la commande, il facilite l'alimentation de la cartouche en mode indépendant et possède aussi certaines caractéristiques que nous verrons par la suite. Les caractéristiques techniques du Chameleon 64 sont les suivantes :
Utilisation du Turbo Chameleon 64 Démarrage et utilisation nominale Avant toute chose, il est conseillé de télécharger (sur le site d'Individual Computers ou le forum) le paquetage contenant la dernière version du micrologiciel ("firmware"), la réimplémentation du C64 chargés dans le FPGA et ChaCo (Chameleon Control Software), le logiciel permettant de gérer les mises à jour de la cartouche et de déboguer les différents programmes créés. Le paquetage contient aussi les manuels d'utilisation et de programmation de la cartouche écrits par Peter Wendrich. Un manuel additionnel traitant directement de la programmation du FPGA est aussi disponible sur son site. Cette documentation est très complète et témoigne d'un réel effort pour rendre le produit accessible. Le Turbo Chameleon 64 est livré avec la version 7b du micrologiciel. La version de développement actuelle est la 8c. Il est d'ailleurs intéressant de noter qu'il n'en existe pas de version stable : le Chameleon 64 est donc toujours officiellement en version bêta depuis sa création ! Il s'agit du programme de base, son installation est obligatoire car c'est à partir de celui-ci qu'il sera possible de lancer des implémentations alternatives (à moins que vous ne développiez votre propre chargeur. ;-)) La mise à jour peut être effectuée de plusieurs manières :
![]() Après cette mise à jour, nous disposons d'une machine "de base" qui peut démarrer sans carte SD. Elle peut être utilisée de deux manières : 1. Comme une cartouche pour le C64 : dans ce cas, le Turbo Chameleon 64 rajoute les fonctionnalités suivantes à votre Commodore 64 :
2. De manière indépendante (ou mode "Stand Alone"), dans ce cas, le C64 qui s'exécute provient de la réimplémentation faite par le projet FPGA64 et ajoute l'émulation stéréo de la puce sonore SID. Celui-ci doit être alimenté par la fiche USB provenant du câble multifonction. Le Chameleon 64 ne possédant pas de prise DB9 pour les manettes de jeu, il faudra utiliser un contrôleur infrarouge compatible (comme celui du CDTV par exemple) ou lui adjoindre une station d'accueil proposant des interfaces supplémentaires : quatre prises manette DB9 et deux connecteurs clavier (C64 et Amiga 500). La compatibilité est plutôt bonne et est équivalente à celle du FPGA64 (sur le C-One par exemple). Installation et utilisation des autres implémentations Le Turbo Chameleon 64 voit son intérêt augmenter fortement en rajoutant d'autres implémentations de machines. Depuis sa création, les machines suivantes se sont ajoutées : les Spectrum 48k et 128k, le jeu Pong de base et bien sûr le Minimig dont il va être question maintenant. Le code source du micrologiciel du Minimig est sous licence GPL et a été modifié pour pouvoir être intégré dans le Chameleon 64. Les modifications apportées ont été profondes car les cartes électroniques sont assez différentes et la compatibilité s'en ressent un peu. Une implémentation du processeur Motorola MC68000 (TG68 réalisée par Tobias Gubener) a été rajoutée étant donné que le Chameleon 64 n'est pas pourvu d'un MC68000 réel. De plus, un menu ("OSD") translucide a été réimplémenté par Christian Vogelgsang. En plus des fonctionnalités déjà implémentées, les capacités du Chameleon 64 ont permis les rajouts suivants :
Le fichier OSD_CA01.sys devra être placé à la racine de la carte SD avec le système d'exploitation (fichier KICK.ROM) et les éventuels fichiers disque dur. Il est aussi possible de rajouter un fichier de configuration MINIMIG.CFG. Le fichier fampiga_top.rbf sera chargé comme ci-dessous avec le programme ChaCo. L'emplacement 0 (port 0) étant réservé au programme de base, il sera placé à l'emplacement 1. Il suffit de le sélectionner, de cliquer sur le bouton "Flash .rbf/ROM" et indiquer le fichier. Dans certains cas, pour le micrologiciel Spectrum notamment, il est possible de rajouter le système d'exploitation directement dans la mémoire Flash du FPGA en cochant "Flash Additional ROM". ![]() ![]() Le micrologiciel est encore en phase de développement et est périodiquement mis à jour. La compatibilité est assez bonne mais moindre que celle du Minimig initial. L'émulation du processeur MC68020 est encore en phase alpha et ne semble pas complètement détectée. Les performances sont assez proches sous environnement Workbench et des jeux WHDLoad se lancent correctement. Ci-dessous une installation réalisée fraîchement avec Classic Workbench (version 68k). L'outil SysInfo nous indique des performances identiques à celle du Minimig initial : Pour aller plus loin Comme indiqué au début, le Turbo Chameleon 64 peut être une très bonne machine d'apprentissage pour du développement sur FPGA (comme la carte Arduino) ou tout simplement un très bon outil de loisir pour les "bidouilleurs" en tout genre. Pour débuter dans ce domaine, il est possible de télécharger la version gratuite (ou édition Web) du logiciel d'Altera : Quartus II disponible en environnement Windows ou un logiciel libre (écrit en Python) qui ne cesse de s'étoffer : Boot. Ces logiciels permettent la conception, la simulation et le transfert de circuits logiques (ou IP cores) dans la mémoire Flash du FPGA (uniquement Quartus II). Ensuite, une documentation concernant la programmation du FPGA du Chameleon 64 présente sur le site de Peter Wendrich, ainsi que les projets "chameleon_hwtest" et "chameleon_life" sont une très bonne base de départ pour se mettre au langage VHDL et commencer à comprendre les fonctionnalités de base du Chameleon. L'équipe réalisant Boot propose aussi un livre sur le langage VHDL gratuit au format PDF sur son site. Enfin, pour les plus motivés, de nombreuses implémentations libres en tout genre sont disponibles sur le site : opencores.org. Conclusion Le Turbo Chameleon 64 mérite amplement son nom tant son champ d'applications est vaste. Ce n'est ni plus ni moins que le "couteau suisse" logiciel et matériel des touche-à-tout : tantôt appareil de "jeux vidéo rétro" multiple (Minimig, C64, Spectrum et d'autres s'ajouteront sans doute à cette liste, pourquoi pas une réimplémentation de la carte Replay si le matériel le permet ?), tantôt outil de test, d'apprentissage logiciel et électronique. Il est de plus complété par une documentation sérieuse et très complète. Enfin, ses différents créateurs, surtout Peter Wendrich semblent être très accessibles et peu avares de conseils et d'aides sur le forum. Il n'est pas exempt de défauts non plus, en premier lieu son prix qui est assez élevé (200 euros environ). Ceci dit, cela est surtout dû au faible nombre d'unités produites qui ne permet pas de faire grandement baisser les prix. Certains choix techniques amènent des interrogations : choix du standard PS/2 pour le clavier et la souris alors qu'une implémentation USB est présente, prises DB9 absentes conduisant celui qui veut exploiter pleinement son Chameleon 64 à devoir rallonger la facture avec la Station d'accueil (25 euros) et/ou la télécommande CDTV (15 euros). Nous serons un peu indulgents avec ce dernier point car il semblait assez difficile de rajouter ces deux entrées sans sacrifier la taille mini du Chameleon 64. A l'instar d'autres produits réalisés par Individual Computers, le Turbo Chameleon 64 semble être en version bêta permanente mais il est pour l'instant mis à jour régulièrement avec des modifications importantes. Enfin, pour les développeurs, il est dommage que les différents programmes fournis n'aient pas leur code source ouvert. Sources
|