|
|||||||||||||||||||||||||||||||||||||||||||
|
Le Commodore 64 s'est vendu entre 12,5 et 30 millions d'exemplaires selon les chiffres des uns ou des autres et le Livre Guiness des Records le reconnaît comme le micro-ordinateur le plus vendu dans le monde. Une des raisons de son succès est son excellente puce sonore, le SID (Sound Interface Device), 6581 dans le C64 dit "breadbin", ou 8580 dans les machines ultérieures C64C ou C128. Il existe des différences notables entre ces deux puces, qui sont largement discutées par les aficionados sur Internet et il n'est pas utile de revenir dessus dans cet article, hormis pour rappeler que le 6581 s'alimente en 12 V, tandis que le 8580 demande 9 V, et que les puces sont interchangeables à condition de s'assurer du bon voltage pour un fonctionnement sans danger pour la puce. Le son du SID En ce qui me concerne, je n'ai pas particulièrement connu le C64 à son époque et l'ordinateur n'est pas mon favori de nos jours. En revanche, j'ai développé une fascination pour le son du SID, que je décrirais sans détail technique comme puissant, brutal et profond. Il donne aux jeux une autre envergure et je préfère ainsi R-Type, Last Ninja ou Cybernoid 2 sur le Commodore 64 plutôt que sur l'Amiga, malgré la supériorité graphique de ce dernier et la qualité de la musique chip de sa puce sonore Paula. En effet, Paula n'est pas un générateur de son programmable comme le SID, mais une sorte de DAC quatre canaux qui ne synthétise pas de son par elle-même mais joue des échantillons depuis la mémoire (en sus d'être également un contrôleur pour le lecteur de disquette, le port série, et quelques autres choses). Il en résulte la musique chip ("chipstune") qui a fait la réputation de l'Amiga. Le SID en est une puce qui effectue de la synthèse en temps réel et dispose pour cela de trois voies indépendantes avec des générateurs d'ondes (triangle, dent de scie, impulsion, bruit) et des filtres analogiques. C'est donc tout naturellement que je me suis intéressé au fait d'utiliser un vrai SID dans mes Amiga dès que j'ai compris que cela était possible. Des émulateurs C64 ont été développés sur Amiga de très longue date avec principalement A-64 réalisé par QuesTronix (test de 1994 disponible sur Obligement), puis Frodo (gratuiciel de Christian Bauer disponible sur Aminet) et Magic64 (partagiciel de Michael Kramersur disponible sur Aminet). Des bibliothèques ont été développées pour émuler également le SID avec la 6581sid.library fournie avec A-64, puis la playsid.library, meilleure que la précédente mais demandant plus de ressources processeur mais qui reste une émulation relativement lointaine de la vraie puce. La playsid.library a été mise à jour régulièrement dans les années 1990 jusqu'à une version 3 disponible sur Aminet. Je l'ai ensuite redécouverte, bien plus récemment en 2022, lorsqu'elle a inclus une meilleure et plus récente émulation du SID, le ReSID (également intégré dans l'émulateur VICE pour d'autres machines que l'Amiga Classic). La nouvelle version de la playsid.library présente l'avantage de pouvoir fonctionner dans l'ancien mode classique de la version 3, ou utiliser le mode reSID qui se module en 6581 ou 8580 avec diverses options d'activation de filtres ou de suréchantillonnage qui deviennent rapidement une grosse charge pour le processeur. Un 68060 à 50 MHz ne parvient pas à utiliser le maximum de qualité de l'émulation. Elle est en revanche parfaite avec une Vampire V2 ou une PiStorm et, à mon oreille, peu discernable d'un vrai SID. Peut-on connecter un SID physique à l'Amiga ? Mais j'arrive au vrai sujet de cet article avec la version de novembre 2022 de la playsid.library qui a fait apparaitre la gestion du SIDBlaster, puis dans les années suivantes du USBSID-Pico et du ZorroSID (dernière version à ma connaissance : v1.10 de mai 2025). Ces trois matériels permettent de connecter un SID physique à l'Amiga et d'utiliser une vraie puce, ou la récréation d'un SID comme il en existe plusieurs pour jouer les musiques via des lecteurs de l'Amiga tels que HippoPlayer (la playsid.library est depuis lors distribuée avec les mises à jour de HippoPlayer dont la dernière à ce jour en juin 2025) ou tout autre capable de s'adresser à cette bibliothèque (PlaySID3 ou Sid4Amiga, voir Deliplayer), ainsi que les émulateurs qui utilisent la playsid.library (Magic64 ou Frodo). Le célèbre IMP3, ce logiciel inclassable qui est un mélange de réseau social Amiga, de lecteur de musique en ligne et plus encore, peut jouer des SID et utilise la playsid.library également. J'ai pu essayer tout cela en long et en large sur mes principales machines qui sont un A4000 (avec CyberStorm MK2 68060 et carte USB Deneb) et un A1200 (avec Vampire V2 et carte USB Freeway) pour les équipements USB, avec la contribution de mon A500 Plus (avec 68010 et mémoire Fast) uniquement pour le Zorro via adaptateur. SIDBlaster Le SIDBlaster est, quant à lui, un adaptateur USB permettant de placer sur un support un 6581 ou un 8580. Il a été réalisé sous licence GNU et existe en différentes itérations. J'ai personnellement le SIDBlaster-USB Nano que j'ai obtenu chez CBMRetro et qui est encore disponible en 2025. Le SIDBlaster est directement reconnu sur Amiga par la pile Poseidon V4.3+. Il fonctionne parfaitement avec le matériel USB installé dans mes Amiga (Deneb, Subway, FreewayCP). HippoPlayer en fait un usage direct après un passage par les préférences, et la playsid.library peut diriger sa sortie sur lui après un "Setenv PlaySIDmode Sidb". Dès lors, il est utilisé par tout logiciel qui s'adresse à la playsid.library, dont les lecteurs audio listés plus haut et les émulateurs C64 Frodo ou Magic64. Le processeur va désormais être libéré de son travail pour l'émulation sonore et le temps processeur qui sera consacré au son se limite au transfert USB vers le SIDBlaster. Avec un processeur 68060 à 50 MHz et le SIDBlaster, j'obtiens avec mon émulateur favori Magic64 un résultat de 100% de taux de rafraîchissement avec son impeccable sur les jeux comme R-Type. Je considère donc le résultat global comme quasi parfait. A noter que le SIDBlaster distribue la sortie mono du SID sur les canaux "L" et "R" de sa sortie, permettant donc d'entendre sur deux haut-parleurs. ![]() Ma joyeuse bande de SIDBlaster-USB Nano en boitiers imprimés en 3D avec respectivement ARM-SID, KungFu SID, X-SID et MOS 6581 Grâce aux mises à jour de la playsid.library, je me suis également intéressé à l'USBSID-Pico. Celui-ci est développé sous licence GNU v2 par Loud et correspond à un circuit imprimé qui embarque un RaspberryPi Pico ou Pico2 et deux supports pour un ou deux SID. Il est possible d'utiliser un 6581 ou un 8580, ou deux de chaque, ou un de chaque, et d'obtenir alors un son stéréo. Par le miracle de Poseidon, l'Amiga reconnaît directement l'USBSID-Pico également et celui-ci double le plaisir déjà obtenu avec le SIDBlaster lorsqu'il est équipé de deux puces. Il fonctionne dans les mêmes conditions avec les différents lecteurs de musique (choix direct dans HippoPlayer ou "Setenv PlaySIDmode Usbp" pour les autres) et les émulateurs. Tout au plus, sur mon A4000 et sa Deneb, j'ai un problème de redémarrage au lancement de Magic64 avec l'USBSID-Pico. Je pense qu'il y a alors un pic de consommation qui pose problème à ma Deneb et à mon A4000 très chargé qui épuise son alimentation. Ce problème ne se reproduit pas sur mon A1200 avec Subway.
<
ZorroSID![]() Mon USBSID-Pico en boitier imprimé en 3D avec couvercle en résine transparente pour profiter des LED de la carte, avec deux SID MOS 6581 Finalement, j'en viens au plus ancien de ces matériels, qui est la carte ZorroSID dont les schémas étaient fournis de longue date avec l'émulateur Frodo, et qui est une carte Zorro II simple sans AutoConfig et qui permettait alors de rendre le SID accessible par une adresse mémoire à Frodo ou à un greffon Delitracker. La carte a été reproduite et modifiée ces dernières années et peut se trouver grâce à la communauté Amiga en "do it yourself" ou déjà construite sous le nom d'AmigaSID. Je possède deux de ces cartes, mais le manque de place dans les boitiers de mes gros Amiga fait qu'elles n'y sont pas utilisées et que je privilégie l'USB. Je ne les ai essayées que sur mon bon vieil Amiga 500 Plus avec un adaptateur Zorro pour son port d'extension. L'une embarque un MOS 6581, l'autre un SIDKick-pico. Cela fonctionne avec HippoPlayer ou via un ""Setenv PlaySIDMode Zorr" mais j'obtiens un résultat mitigé. La carte avec le 6581 fonctionne bien sans charge processeur pour jouer un bon nombre de musiques SID mais certaines autres se jouent à un niveau sonore quasi inaudible. La carte avec le SIDKick-pico joue avec beaucoup de bruits et de parasite. Jusqu'à ce que j'aie de la place dans un de mes gros Amiga pour tester plus avant, je ne suis pas certain de la nature du problème ici : cela pourrait provenir de l'ordinateur, de la carte ou des puces elles-mêmes. ![]() Une ZorroSID, alias AmigaSID avec le SIDKick-pico et une autre avec un MOS 6581 (une autre ZorroSID/AmigaSID) Rappelons également la solution logicielle, évoquée plus haut, avec l'option ReSID (préférence de Hippoplayer ou différentes variables avec Setenv détaillées dans le fichier "readme" de la bibliothèque) qui brille avec un processeur puissant de la Vampire V2 à la PiStorm et qui permet d'obtenir au maximum des options un son que je ne distingue pas d'un vrai SID, dans le même temps qu'une émulation parfaite avec Magic64 ou Frodo. Le 68060 à 50 MHz est trop juste pour profiter pleinement de ReSID. Puces SID à placer Concernant les puces SID à placer dans les supports du SIDBlaster, du ZorroSID ou de l'USBSID-Pico, actuellement, il devient difficile de trouver un vrai SID en bon état de fonctionnement à un bon prix. Les SID sont fragiles, peuvent ne fonctionner que partiellement, peuvent cesser de fonctionner à tout moment au vu de leur âge canonique. Certains répugnent également à dépouiller de sa puce un C64/C128 qui fonctionne. Heureusement, plusieurs solutions de remplacement existent, utilisant des microcontrôleurs ARM ou un FPGA, plus ou moins fidèles à l'original, en tous les cas plus abordables pour la plupart. J'utilise en ce qui me concerne dans mes différents SIDBlasters :
La qualité du SID et de ses reproductions La question de quel SID ou reproduction de SID sonne le mieux n'a pas de réponse parfaitement consensuelle et dépend des goûts de chacun. On peut penser que le MOS 6581 est l'original et le meilleur, et j'aime sa sonorité très rugueuse, mais comme savent les habitués, aucun 6581 ne rend exactement comme un autre 6581 du fait des conditions de production de la puce, et de surcroît, ces puces anciennes peuvent désormais présenter des défauts qui touchent une voie ou un filtre en modifiant encore le résultat final. Le MOS 8580 est une version qui corrige des bogues du 6581 et qui offre un son un peu plus net, mais certains compositeurs profitaient des bogues connus du 6581 pour créer des sons que l'on ne peut plus retrouver à l'identique sur le 6581. Parmi les différentes reproductions, à mon humble avis, l'ARMSID est le meilleur et je ne le discerne pas du 6581. Le X-SID est agréable à mes oreilles mais suffisamment différent pour que je m'en rende compte. Je le comparerai à la différence qui existe entre les puces Yamaha OPL2/OPL3 des anciennes cartes SoundBlaster des PC et à la puce CQM des Vibra16 et SB 64 AWE de Creative qui émulaient l'OPL : je fais partie des rares qui aime le son du CQM mais il est différent de l'OPL. Les autres puces que j'ai testées se répartissent entre ces deux-là selon moi, hormis le SIDKick-pico sur lequel je ne peux me prononcer étant donné que je n'ai pu l'entendre correctement pendant mes tests. Pour ceux qui aiment tester les choses en profondeur, on peut noter que la playsid.library et les adaptateurs décrits plus haut sont tellement compatibles qu'ils permettent au logiciel SID Tester pour Commodore 64, réalisé par Andrew Challis, lancé dans Magic64, de tester le SID comme si on était dans un vrai C64 et de vérifier le fonctionnement de chaque voie, chaque onde et chaque filtre. Ceci s'avère très utile pour tester un MOS SID 6581 ou 8580 acheté d'occasion auprès d'une source non fiable car beaucoup sur le marché présentent des défauts. ![]() Capture d'écran de SID Tester d'Andrew Challis : excellent logiciel pour tester complètement un SID et qui fonctionne parfaitement avec l'émulateur Magic64 sur Amiga et tous les matériels décrits dans cet article Conclusion Telles sont donc les choses qu'un amigaïste peut passer ses journées ou ses soirées à faire pour la joie simple d'utiliser le mythique SID sur son Amiga favori, grâce au travail de nombreux membres de la communauté Amiga, des auteurs initiaux de la 6581.library et des premiers émulateurs C64 jusqu'aux auteurs de la playsid.library (Per Sundell et Ron Birk à l'origine, K-P Koljonen pour le portage de l'émulation ReSID, eriQue pour l'utilisation du SID-Blaster et de l'USBSID-Pico), sans oublier les personnes non amigaïstes mais dans le même état d'esprit qui ont développé ReSID, le matériel SIDBlaster ou l'USBSID-Pico. Qu'ils en soient tous chaudement remerciés !
|