Obligement - L'Amiga au maximum

Lundi 20 novembre 2017 - 01:08  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

 · Accueil
 · A Propos
 · Articles
 · Galeries
 · Glossaire
 · Hit Parade
 · Liens
 · Liste jeux Amiga
 · Quizz
 · Téléchargements
 · Trucs et astuces


Articles

 · Actualité (récente)
 · Actualité (archive)
 · Comparatifs
 · Dossiers
 · Entrevues
 · Matériel (tests)
 · Matériel (bidouilles)
 · Points de vue
 · En pratique
 · Programmation
 · Reportages
 · Tests de jeux
 · Tests de logiciels
 · Tests de compilations
 · Articles divers

 · Articles in english
 · Articles in other languages


Twitter

Suivez-nous sur Twitter




Liens

 · Sites de téléchargements
 · Associations
 · Pages Personnelles
 · Moteurs de recherche
 · Pages de liens
 · Constructeurs matériels
 · Matériel
 · Autres sites de matériel
 · Réparateurs
 · Revendeurs
 · Presse et médias
 · Programmation
 · Développeurs logiciels
 · Logiciels
 · Développeurs de jeux
 · Jeux
 · Autres sites de jeux
 · Scène démo
 · Divers
 · Informatique générale


Jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Partenaires

Annuaire Amiga

Amedia Computer

Relec

Hit Parade


Contact

David Brunet

Courriel

 


Matériel : Turbo Chameleon 64
(Article écrit par David Massot - décembre 2012)


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.

Turbo Chameleon 64 Turbo Chameleon 64

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.

Turbo Chameleon 64 Turbo Chameleon 64

Turbo Chameleon 64 Turbo Chameleon 64

Les caractéristiques techniques du Chameleon 64 sont les suivantes :
  • FPGA Altera Cyclone III EP3C25.
  • Micro-contrôleur pour la gestion USB.
  • 16 Mo de mémoire Flash pour les mises à jour du micrologiciel et l'ajout de logiciels supplémentaires, 32 Mo de mémoire vive (SDRAM).
  • Connecteur VGA.
  • Emplacement carte MMC/SD.
  • Connecteurs PS/2 pour clavier et souris (souris GEOS 1351 émulée) et bus IEC via le câble multifonction.
  • Connecteur horloge temps réel.
  • Récepteur infrarouge (compatible avec le contrôleur CDTV).
  • Connecteur interne pour RR-NET.
  • Connexion mini-USB pour le débogage et le transfert de données.
Les caractéristiques précédentes sont très bonnes et permettent normalement la réimplémentation et l'exécution de toute machine 16/32 bits. Elles sont meilleures que le Minimig au niveau de la mémoire et l'espace de programmation du FPGA. Par contre, au niveau processeur par exemple, le Minimig possède réellement un Motorola MC68000 alors que le Chameleon 64 devra intégrer une réimplémentation de ce dernier (avec les problèmes de compatibilité qui s'ajouteront).

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 :
  • En utilisant un exécutable simple qui prend tout en charge (disponible sous Windows, Linux et Mac OS X).
  • Avec l'outil ChaCo (en version graphique ou ligne de commande).
  • En utilisant directement l'interface JTAG.
Les outils de mise à jour sont assez robustes et il est normalement impossible de "planter" le Chameleon 64. Si une mise à jour se passe mal, il suffit de la réappliquer après un arrêt-relance.

Turbo Chameleon 64

Il est important que le Chameleon 64 soit bien alimenté dans cette phase. Si un adaptateur USB-secteur est utilisé, il faut s'assurer qu'il puisse délivrer 5 V/1000 mA. Bien que la cartouche puisse se contenter de 400 mA, les adaptateurs de 500 mA sont proches de la limite. Il ne faut par contre jamais alimenter au-dessus de 5,2 V. Pendant que nous sommes au chapitre des avertissements, il ne faut jamais insérer le Turbo Chameleon 64 dans un Commodore 128 sous peine de destruction des deux appareils. Il doit aussi être branché directement au port cartouche et pas sur une extension.

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 :
  • Duplication du signal vidéo de la puce graphique VIC-II, le C64 peut être branché à un écran LCD plus moderne par exemple et même en double sur un écran cathodique muni d'une prise Péritel (ou par la prise d'antenne). Il est recommandé d'utiliser la sortie VGA du Chameleon 64 qui est une sortie de très bonne qualité (mais en 800x600 seulement pour l'instant).
  • Extension de mémoire et émulation de mémoire dédiée à l'utilisation de GEOS.
  • Émulateur de cartouches avec gestion du bouton "Freeze", il est possible d'indiquer le chargement de cartouches au démarrage ou durant l'utilisation du Chameleon 64. Les images des cartouches sont compatibles avec le format CRT apparu avec l'émulateur CCS64.
  • Émulation complète du lecteur de disquette VIC-1541 (compatible avec les "FastLoader" présents sur diverses cartouches émulées et l'ancienne cartouche MMC64) : fichier D64, T64, CRT...
  • Utilisation d'un clavier/souris externe pour des C64 montés en tour.
Cette configuration permet donc de ressortir son C64 du placard et de l'exploiter très facilement car le Chameleon 64 ne nécessite pas l'ouverture de la machine, le chargement de programmes se faisant en sélectionnant ceux mis sur la carte SD. Le problème de compatibilité ne se pose pas dans cette configuration, sauf peut être pour certaines cartouches.

Turbo Chameleon 64 Turbo Chameleon 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).

Turbo Chameleon 64 Turbo Chameleon 64

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 :
  • Gestion de l'émulation des manettes de jeu infrarouge (comme la télécommande CDTV).
  • Jusqu'à 11,5 Mo de mémoire Amiga émulée (mémoire Fast rapide), ce qui permettra l'utilisation de WHDLoad alors que cela n'est pas possible sur un Minimig de base (sans mémoire ajoutée).
  • Émulation du processeur MC68020.
  • Gestion des systèmes d'exploitation (Kickstart) incluant des pilotes IDE.
  • Gestion de la station d'accueil.
  • Émulation des disques durs à partir d'un répertoire en plus de la gestion Hardfile initiale.
Comme pour la partie Commodore 64, plusieurs moyens sont possibles pour charger le micrologiciel Minimig. Ce dernier est composé de deux fichiers : fampiga_top.rbf qui est le binaire du FPGA et OSD_CA01.sys qui est le binaire du menu translucide.

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".

Turbo Chameleon 64

Turbo Chameleon 64

Une fois le micrologiciel chargé, l'implémentation du Minimig peut être lancée depuis le menu en choisissant "Launch Core" (en appuyant sur F8) et en sélectionnant l'emplacement 1.

Turbo Chameleon 64

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).

Turbo Chameleon 64

L'outil SysInfo nous indique des performances identiques à celle du Minimig initial :

Turbo Chameleon 64

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 ne soient pas Open Source.

Sources
Nom : Turbo Chameleon 64.
Constructeur : Individual Computers.
Genre : ordinateur reprogrammable.
Date : 2006 (toujours mis à jour en 2012).
Prix : 200 euros (25 euros pour la station d'accueil et 15 euros pour la télécommande CDTV).


[Retour en haut] / [Retour aux articles]