Les amateurs de programmation adorent les défis. Faire fonctionner Linux, eh bien, rien est un défi que beaucoup trouvent irrésistible. Le dernier exemple consiste à le faire fonctionner sur le légendaire Commodore 64. Le faire fonctionner sur un Mac est une chose, mais faire la même chose sur un ordinateur de 40 ans avec 64 Ko de mémoire en est une autre.
Le développeur Onno Kortmann (via Slashdot) a utilisé Semu, un émulateur RISCV32 léger, et l’a compilé de manière croisée avec llvm-mos, permettant au code de s’exécuter sur le processeur MOS Technologies 6502 du C64. Il convient de souligner que cela a été réalisé via un émulateur et non sur du matériel réel, même si ce n’est qu’une question de temps avant que cela ne se produise.
À l’aide de l’émulateur VICE Commodore, Kortmann a activé le « mode warp » qui affichait les premiers messages de démarrage en quelques minutes, bien que cela prenne beaucoup plus de temps sur une vraie machine. La capture d’écran ci-dessous a pris quelques heures avec le mode Warp, ce qui signifie qu’un vrai C64 prendra une semaine ou plus pour démarrer complètement Linux.
Le Commodore 64 d’origine était livré avec seulement 64 Ko de mémoire et exécuter un système d’exploitation léger n’est tout simplement pas possible sans l’utilisation d’une unité d’extension RAM. Kortmann ne précise pas quel REU il a utilisé, mais les REU C64 étaient disponibles avec jusqu’à 512 Ko, soit 0,5 Mo de mémoire. Le processeur de technologie MOS du C64 fonctionnant à environ 1 MHz n’est pas non plus ce que vous appelleriez un démon de vitesse.
Kortmann estime qu’il y a beaucoup de place à l’amélioration, affirmant qu’une accélération de 10 fois pourrait être possible. Néanmoins, étant donné les limitations du matériel C64, même avec une accélération 10x, ne vous attendez pas à exécuter beaucoup de logiciels une fois que vous avez terminé la séquence de démarrage. C’est le genre de chose qui ne sert à rien, à part prouver que cela peut être fait. Cela ne le rend pas moins cool pour autant.
Si vous le souhaitez, le code et les instructions peuvent être trouvés sur la page Github de Kortmann. Je n’en suis pas sûr, mais les programmeurs les plus masochistes ou les plus ennuyés relèveraient le défi, mais à ceux qui le font : Respect !
Linux sur un C64 est-il pratique ? Pas du tout. Mais c’est certainement un exploit impressionnant que les fans de l’un des plus grands ordinateurs de tous les temps apprécieront.