Connexion Premium

Voici LinuxMD, un Linux pour… la Mega Drive

Ce n’est pas une plaisanterie : le développeur Daniel Palmer propose sur GitHub une distribution visant la Mega Drive, la vénérable console que Sega avait lancé dans nos contrées en 1990 (aussi commercialisée sous le nom Genesis aux États-Unis). Elle avait alors provoqué un séisme vidéoludique, l’entreprise ayant coupé l’herbe sous le pied de Nintendo avec sa propre console 16 bits, la SNES.

L’information peut tellement surprendre que sur le dépôt, son auteur répond « non » à la question « Est-ce une blague ? ». Il précise que pour utiliser ce système, il est nécessaire d’avoir une Mega Drive (on s’en serait douté), la cartouche EverDrive qui permet de charger d’autres contenus sur la console, un câble USB pour relier l’EverDrive au PC et… « du temps à perdre », ajoute l’auteur.

Au sujet de l’émulation, c’est plus compliqué. L’auteur estime que LinuxMD ne fonctionnera « probablement pas » sur un émulateur classique, car plusieurs composants de l’EverDrive y seraient absents. En revanche, il fournit un fork de QEMU qui peut « émuler suffisamment » la Mega Drive et l’EverDrive pour fonctionner. En revanche, la sensation ne sera pas la même, prévient-il, car « QEMU émule le CPU beaucoup trop rapidement ».

De nombreuses instructions sont données, le concept étant clairement destiné à un public très niche d’enthousiastes ayant encore ce genre de matériel à disposition.

Commentaires (15)

votre avatar
La Mega Drive... Que de temps passé dessus gamin, avec la Master System II juste avant 🥹

Jusqu'au jour de la déception où, en fin de primaire, je découvre en rentrant de l'école que ma mère les a refourgué au "Père Noël Vert" sans même m'en parler 😭 (spoiler : je lui en veux toujours)
votre avatar
oh punaise la trahison... j'espère au moins qu'elle finance ta thérapie :fume:
votre avatar
Comme quoi, le meme sur la différence entre les prérequis Windows et Linux est loin d'être un simple troll :D

Windows : liste de prérequis longue comme un bras

Linux : Électricité (et encore)
votre avatar
votre avatar
0 stars et 63k forks. Comment c'est possible ça !?
votre avatar
En fait, ça a l’air d’être le nombre de forks du noyau linux, c’est indiqué 63k également :
github.com GitHub
votre avatar
ou un bogue temporaire : j'ai 0/0 pour ma part
votre avatar
En fait, c'est plus un µCLinux puisque le 68000 de Motorola est bugué et ne peut pas utiliser de mémoire virtuelle.

Il est effectivement compilé avec l'option -nommu .

Ça reste un beau travail!
votre avatar
Peux tu étayer sur le côté bogué du 68000 s'il te plait? Ayant pu programmer en assembleur 68000, je ne vois pas où pourrait se cacher le bogue dont tu parles.

Le premier processeur bogué, de mémoire, c'est le Z80 mais j'ai cru comprendre que le 6502 n'était pas parfait non plus.

Je rappellle que le 68000 est le contenporain du 8086 qui ne comporte pas plus de MMU vu que c'est arrivé respectivement avec le 80386 et le 68030
votre avatar
Il suffit de suivre le lien vers Wikipedia que j'ai mis :
il n'est pas possible de relancer une instruction qui a causé une erreur d'accès à la mémoire, ce qui empêche la reprise d'un programme après avoir chargé les données manquantes.
Il y a en plus une instruction qui empêche la virtualisation.

C'est pour corriger cela que le 68010 est sorti. C'était un point très connu à l'époque, l'impossibilité de faire des machines tournant sous Unix avec 68000.
votre avatar
Ce que tu évoque n'est pas un bug selon moi mais un défaut d'architecture. Le comportement réalisé était en effet bien le comportement attendu.

Dans la conception initiale, l'exception « BUS ERROR » n'est pas récupérable car le but est de détecter les accès dans les parties non décodées du plan mémoire. Le contexte n'est donc pas sauvegardé. La prise en charge de la mémoire virtuelle nécessitant de tolérer ces exceptions est donc venue après

De même, je ne pense pas que la virtualisation faisait partie du cahier des charges du 68000.

Pour moi, le problème architectural le plus important a été corrigé avec le 68020: c'est l'ajout d'un registre qui permet de faire fonctionner le code utilisateur sans avoir à faire de relocation. Le code utilisateur est logé en 0 relativement à la valeur du registre de décalage.

Sur les Atari et certainement sur toutes les autres machines basées sur le 68000, le loader faisait de la relocation à la volée, ce qui est vite pénalisant.
votre avatar
ça semble aussi pertinent qu'un kit conversion camion frigorifique pour Citroën Ami...
votre avatar
A proposer à Sylvain Lyve (ex. VILBREQUIN), en plus il fait pas mal de sujet avec Citroen Ami.
En comme elle n'a pas la clim de base, pourquoi pas :francais::francais::francais:
votre avatar
Le moins vil des deux brequins je dirais même. ... je me rappellerai toujours la première fois que j'ai vu une Ami, c'était à la fnac, ça a été comme un choc esthétique, mais je ne suis pas sûr que c'était dans le bon sens du terme...