La console de jeu Sega Saturn a piraté la protection DRM après 20 ans

Les jeux se chargent désormais en contournant le lecteur de CD-ROM




Les joueurs expérimentés se souviendront sûrement de Sega Saturn - une console de jeu 32 bits de Sega. Il a commencé à être vendu le 22 novembre 1994, deux semaines plus tôt que son principal concurrent, le premier modèle Sony Playstation. C'était une vraie bombe. Le premier jour, les fans ont acheté 170 000 exemplaires de la nouvelle Sega. En 1995, le préfixe est apparu en vente en Europe et aux États-Unis, où il attendait également le succès: Quake, C&C, Tomb Raider, Duke Nukem 3D et d'autres jeux portés sur lui.

Au moment de la sortie, l'architecture Sega Saturn était beaucoup plus avancée que n'importe quelle autre console de jeu. Saturne était un système très puissant pour l'époque: deux processeurs RISC centraux (Hitachi SuperH-2 7604), deux processeurs vidéo (de sa propre conception), un son 32 bits (processeur DSP son Yamaha FH1) et un lecteur de CD à deux vitesses.

Cependant, Sega Saturn a rapidement cédé la place à Sony Playstation.

C'est drôle que l'architecture de Saturne soit à bien des égards plus avancée que son concurrent. Contrairement à la Playstation, qui fonctionne avec des triangles comme primitives géométriques de base, Saturne a rendu les quadrangles. Lorsqu'il est utilisé correctement, ce rendu donne moins de distorsion de texture que dans les jeux Playstation. Le matériel quadri-orienté et 50% de mémoire vidéo supplémentaire ont également donné à Saturn un avantage dans les jeux 2D. Mais au final, l'architecture la plus «avancée» de Saturne est devenue un obstacle au portage de nombreux jeux, car les principaux outils de développement étaient basés sur des triangles, ainsi que sur des jeux multi-plateformes. A donc remporté la Playstation.


Carte mère Sega Saturn

À ce jour, ces deux consoles - et Sega Saturn, et la première Sony Playstation - ne peuvent être trouvées que sur les étagères des collectionneurs. Mais le plus intéressant est que la protection DRM des jeux pour Saturne n'a pas réussi à pirater. Le problème est qu'il était difficile de créer un environnement normal pour la rétro-ingénierie. Par exemple, les anciennes consoles de jeu utilisaient des cartouches flash et les consoles ultérieures ont la possibilité de flasher la mémoire flash directement sur la carte. Dans le cas de Sega Saturn, le problème est qu'il est presque impossible de trouver un ancien décodeur avec un lecteur de CD fonctionnel. Le système d'exploitation est cousu dans le circuit mondial du contrôleur de lecteur de CD sur la carte mère, et la protection contre la copie est réalisée sous la forme de marques physiques sur le bord du CD - il était très difficile de faire des copies de disques avec une telle protection.


Protection contre la copie de CD

Comment faire de l'ingénierie inverse et casser les disques dans un tel système super fermé?

Il y avait une issue. Un passionné de jhl (Dr Abrasive) de la communauté des hackers d' Assembler Games a fait une chose presque incroyable: l'émulateur de lecteur optique Sega Saturn ! Il lui a fallu environ deux ans pour faire ce travail.


Dr Abrasive dans son laboratoire, où il a réussi en deux ans à développer un émulateur de lecteur optique Sega Saturn. Il y a une console démontée sur la table.

Selon JHL , la console de jeu japonaise est très complexe. Il l'appelle "suringénierie", en parlant d'un tel nombre de processeurs, dont deux centraux, deux graphiques, un son, etc.

Le lecteur de CD est contrôlé par un contrôleur distinct: le processeur RISC 32 bits SH-1. Le pirate a dû travailler dur pour comprendre la puce de ce contrôleur.



Microcircuit dans le contrôleur du lecteur de CD

La console de jeu possède un port d'extension interne où la carte de décodage MPEG est insérée pour visionner les CD vidéo.




Port d'extension interne Saturn

Ce port d'extension se connecte au contrôleur de CD et transmet les données à l'aide de cryptage.

Pour commencer, le pirate a trouvé un moyen d'accéder au firmware du contrôleur. Il a retiré la carte contrôleur de la console de jeu et l'a connectée à la cartouche Game Boy reflashée. Dans cette cartouche, la ROM a été reflasher de manière à lire la ROM du contrôleur via NVRAM puis via USB. Ainsi, jhl a réussi à vider la ROM du contrôleur.



La carte avec le contrôleur de la console Saturn est connectée à la cartouche Game Boy re-flashée.64

kilo-octets de mémoire de ce processeur sont étroitement emballés avec des instructions qui ont pris beaucoup de temps à comprendre. Le Dr Abrasive dit que l'étude de ce code révèle beaucoup d'informations sur l'histoire du développement de Sega Saturn, mais dans l'ensemble, il a été très impressionné par l'image qui s'est ouverte.



Après avoir examiné le contenu de la ROM, il a été possible de comprendre comment le code pour SH-1 est chargé à partir de la carte décodeur MPEG. Le Dr Abrasive dit avoir trouvé une sorte de «porte dérobée» dans le système d'exploitation intégré, qui vous permet de charger des disques sans protection contre la copie.



Il est donc arrivé de créer une interface USB pour charger le contenu de la puce YGR022 (via l'emplacement pour carte MPEG). Ce fut la première et la plus importante étape vers la création d'un émulateur de lecteur optique Saturn à part entière.

À la suite de ce travail, le Dr Abrasive a réussi à créer un adaptateur via lequel les données sont chargées dans la console en contournant le lecteur de CD standard, c'est-à-dire via le port d'extension interne ! Autrement dit, les jeux dans la console peuvent maintenant être téléchargés même à partir d'une clé USB standard, les CD d'origine ne sont pas nécessaires.

La quantité titanesque de travail que le Dr a fait Abrasif depuis deux ans, ne peut que provoquer le respect. L'auteur parle en détail de l'ensemble du processus de rétro-ingénierie dans un documentaire amateur. C'est vraiment un super film.



Le code pour pirater Saturne et le lecteur d'émulateur dans un avenir proche, l'auteur le publiera dans le domaine public.

Premièrement, l'émulateur est nécessaire aux passionnés qui sont engagés dans la copie de disques pour Saturne et le portage de jeux sur cette console. Deuxièmement, les propriétaires de consoles de jeux peuvent désormais les réutiliser même si le lecteur de CD standard est hors service, et c'est l'échec de Saturne le plus courant. De plus, la présence d'un émulateur permettra de faire des copies de nombreux disques pour Saturne et de les sauvegarder pour l'historique.

Source: https://habr.com/ru/post/fr395891/


All Articles