Historique de compatibilité descendante PS1 sur Sony Playstation 2


Le 4 mars, nous avons célébré un jubilé - 20 ans se sont écoulés depuis la sortie de la PlayStation 2 au Japon, suivis de ventes en Europe et en Amérique du Nord la même année 2000. Sans aucun doute, toutes sortes de médias de jeu publieront des listes et des rétrospectives en mémoire de l'une des consoles les plus réussies et culturellement importantes. Très probablement, l'accent sera mis sur une variété de jeux uniques et divers qui ont contribué à faire de la console une force si puissante, mais n'oubliez pas l'un des piliers fondamentaux du système: la compatibilité descendante avec la grande majorité des jeux de la bibliothèque de la première PlayStation.

Cette fonctionnalité, qui ne se trouvait auparavant principalement que dans les consoles portables Nintendo et certains anciens systèmes Sega, a permis de créer un sentiment d'interconnexion entre des générations d'équipements qui n'étaient pas souvent apparus dans le monde des consoles auparavant. Elle a donné à la PS2 une longueur d'avance, que les concurrents ne pouvaient qu'envier. C'était un héritage qui a été préservé à des degrés divers dans tous les systèmes Sony ultérieurs jusqu'à la PlayStation 4, lorsque Jim Ryan a prononcé la célèbre phrase dans une interview avec Time : "Qui jouera cela?", Refusant de satisfaire la demande des consommateurs pour une telle technologie.

La rapidité avec laquelle la situation a changé à cet égard.

Inutile de dire que Microsoft offrant une compatibilité descendante avec la Xbox et la Xbox 360, ce qui était un argument important pour l'achat de la Xbox One, l'attitude de Sony envers ce besoin a changé: les deux sociétés s'efforcent désormais de mettre en œuvre la compatibilité descendante sous une forme ou une autre dans leurs prochaines consoles. Bien sûr, tous ces efforts devaient commencer quelque part, et pour Sony, le début a été posé par un ancien ingénieur de la société, dont vous n'avez probablement jamais entendu parler: Tetsua Iida.L'histoire d'Iida est curieuse: il s'est vu confier la responsabilité de développer la rétrocompatibilité de la PS2 quelques années seulement après avoir rejoint l'entreprise, et dans ce travail, il est presque un novice. En 2018, il a écrit une série de messages décrivant la manière douloureuse de mettre en œuvre cette fonctionnalité, qu'il a parcourue presque seul. À l'occasion du 20e anniversaire de la sortie japonaise de la PS2, j'ai le plaisir de soumettre ma traduction de ces articles. La plupart du contenu est resté inchangé, y compris les images utilisées, mais dans certaines sections, j'ai fourni des clarifications supplémentaires reçues directement de l'auteur. De plus, les messages ont été légèrement reformatés pour les rendre plus facilement perçus comme un seul message au lieu des cinq originaux.

Quoi qu'il en soit, je considère comme un honneur d'avoir eu l'occasion de partager avec vous cette histoire presque oubliée mais très importante, car aujourd'hui, la rétrocompatibilité et la préservation des jeux dans leur ensemble sont importantes pour nous, d'un point de vue culturel et scientifique. Bien que le concept fondamental n'ait pas été inventé par la PS2, le travail d'Iida est définitivement devenu un catalyseur important pour sa vulgarisation dans l'esprit de la plupart des joueurs. Elle a permis de conserver la pertinence et l'accessibilité de l'histoire des jeux, sans recourir à l'émulation sur PC. Sans sa participation directe, des milliers de jeux PS1 n'auraient pas de seconde chance à la vie dans le nouveau millénaire, et l'industrie du jeu devrait passer plus de temps à étudier son histoire, qui a trouvé sa place dans le présent et dans l'avenir.

Tom James , traducteur japonais-anglais



J'ai développé un émulateur rétrocompatible PS1 pour Sony Computer Entertainment



En 1996, j'ai obtenu un emploi chez Sony Computer Entertainment dans le cadre d'une deuxième vague d'embauche d'étudiants nouvellement diplômés. À cette époque, le département de recherche et développement de SCE comptait environ 50 personnes. Il était dirigé par Ken Kutaragi, et des gars comme moi étaient tout en bas de l'échelle hiérarchique. Si je ne me trompe pas, j'ai été embauché juste après que Square soit entré dans la liste des développeurs Sony tiers. Au moment de la sortie de Final Fantasy VII, j'ai eu l'occasion d'en voir des cinématiques. Comme beaucoup, je me souviens encore très bien du choc de voir la mort prématurée d'Iris ...

Pour autant que je m'en souvienne, ma première tâche après avoir rejoint SCE a été de créer un code de convertisseur vidéo qui a reçu un fichier vidéo à l'entrée et lui a appliqué des filtres. Cette application était mon premier programme écrit professionnellement. L'essentiel, c'est que lorsque je suis arrivé au ministère, j'étais son employé le plus inutile. Et je n'exagère pas. Je n'avais pas de réelles compétences dans la conception d'équipements électriques et je ne savais même pas comment exécuter Windows 3.1, sans parler de l'écriture de programmes. Aujourd'hui encore, je ne comprends pas ce que la direction de Sony a vu en moi et pourquoi elle a décidé de m'engager.

Heureusement, grâce au programme mené dans l'entreprise, j'ai eu l'occasion d'apprendre à programmer des ordinateurs. Il m'a été facile d'assimiler le matériel et après cette formation, j'ai eu le sentiment de pouvoir tout programmer. Après avoir terminé la formation, j'ai fait toutes sortes de choses, ils m'ont confié toutes sortes de travaux, de l'étude des émulateurs de CD à la modélisation des convertisseurs de données, de la libc et bien plus encore. Vers 1998, tout notre service a été invité à une brève réunion sur la prochaine génération du système PlayStation.

Après cela, le département de recherche et développement a été divisé en deux équipes. Une équipe a continué à travailler sur le matériel alors pertinent de la première PlayStation, tandis que l'autre a repris la génération suivante. J'ai toujours aimé essayer de nouvelles choses, alors j'ai réalisé que je voulais travailler dans la deuxième équipe. Il semble que j'ai été interviewé pour l'admission, car plus tard, quand j'ai été envoyé chez elle, j'étais ravi.


Dès que je suis passé dans l'équipe de développement PlayStation 2, j'ai été chargé de réaliser la possibilité de lancer des jeux sur le nouveau système pour PS1. À l'époque, la norme était qu'il était impossible de lancer d'anciens jeux sur de nouvelles consoles, mais SCE voulait inverser cette tendance, ce qui, à mon avis, était une décision clairvoyante de la part de la société. Étant donné qu'à cette époque, je ne travaillais dans l'entreprise que depuis quelques années, j'étais très flatté d'avoir été affecté à une tâche aussi importante.

Lorsqu'il a été décidé de mettre en œuvre la compatibilité descendante de la PS2 avec les jeux pour PS1, il était déjà prévu d'utiliser le processeur principal PS1 comme processeur d'entrée / sortie pour les nouveaux équipements PS2. Cependant, la subtilité était qu'aucun autre équipement PS1 n'était prévu d'être utilisé, et cela signifiait que tout le reste devrait être émulé par programme. Jusqu'à ce moment, je ne travaillais que sur le développement de logiciels, mais j'étais chargé d'écrire un émulateur pour le SPU de la console PSU, c'est-à-dire pour son système audio.

La puce sonore PS2 se compose de deux parties: le cœur et le processeur de signal numérique (DSP). Un membre expérimenté de l'équipe qui a travaillé à la création du système audio a commencé à émuler DSP, et j'ai été affecté à travailler avec le noyau. Pour ce faire, nous avons pris une chambre dans le bureau du sous-traitant, et nous nous sommes isolés du reste du monde pour écrire tout le code nécessaire. Il n'y avait pas de fenêtres dans la pièce, et je me souviens qu'au cours du processus, nous nous disputions souvent avec mon collègue. Cependant, ce n'était pas si mal, grâce au travail conjoint, nous sommes devenus des amis très proches.

Je ne me souviens pas exactement comment nous avons travaillé, mais une fois notre travail interrompu sans cérémonie. Il s'est avéré que la puce audio PS1 serait éventuellement ajoutée à la liste du matériel PS2, ce qui signifiait que tout notre travail pouvait être jeté à la poubelle.


L'émulateur SPU que nous avons écrit s'est avéré inutile, c'est pourquoi notre travail est resté en suspens, car utiliser la puce audio PS1 ne signifiait pas abandonner notre propre nouveau processeur de son PS2. Nous avons réfléchi à ce que nous devions faire ensuite, par exemple, pour écrire des vecteurs de test pour un nouveau processeur de son. Cependant, ma nouvelle mission a été une énorme surprise.

On m'a confié la tâche d'émuler le GPU PS1, et cela m'a beaucoup dérouté. Quelqu'un d'autre a déjà dû gérer cela, et quand j'ai demandé ce qui se passait, ils m'ont dit que cette personne quittait l'entreprise et que je devais continuer son travail sans excuses. Il est clair que la transition du travail avec le son au graphisme est devenue un test sérieux pour moi. Mais au final, cela n'avait pas d'importance, car personne ne me l'avait demandé. Peu importe comment je m'identifie à cela, je devais obéir à l'ordre.

Je ne veux pas dire que j'ai perçu cette tâche comme impossible. J'ai vu les émulateurs comme une sorte de convertisseurs qui reçoivent des instructions conçues pour les processeurs plus anciens et les traduisent en code que le nouveau processeur peut comprendre et exécuter. En ce sens, même si les équipements sonores et graphiques sont différents, ils ne traitent en général que du transfert de commandes. L'émulateur ne fait que changer l'apparence et le flux de ces commandes. Si l'émulateur est entièrement testé, il devrait finalement fonctionner, bien qu'en pratique il soit difficile à mettre en œuvre.

Au moment où le travail sur l'émulation GPU m'a été remis, le développeur précédent, heureusement, avait déjà jeté les bases, donc je n'ai pas eu à commencer dès le début. Par conséquent, tout d'abord, j'avais besoin de comprendre les spécifications du GPU et de la PS1 et de la PS2. Après cela, j'ai commencé à implémenter les instructions manquantes, car au départ, j'ai essayé de me concentrer sur la reprogrammation des commandes GPU de la console PS1.

Le premier jeu PS1 à être lancé sur l'émulateur PS2 a été Ridge Racer. Il était sorti simultanément avec la sortie de la PS1, il semblait donc très important qu'il soit lancé la première de toute la bibliothèque de jeux du système. Lorsque j'ai allumé l'appareil, j'ai réalisé l'importance d'en faire le premier jeu PS2 à être émulé.

Les premiers résultats étaient, pour dire les choses modestes, loin d'être idéaux. Par exemple, la fille qui a commencé la course a été rendue sous la forme d'une mosaïque, pas d'un sprite. De plus, à la fin du cercle, l'écran est devenu rose. Néanmoins, j'étais heureux que le jeu ait même commencé. Malgré le fait que seul le GPU ait été réellement émulé, je me suis rendu compte que nous pouvons atteindre une compatibilité descendante sur PS2 avec PS1 à ce niveau d'émulation logicielle.


Aux petites heures du matin du 2 mars 1999, je me tenais dans les coulisses de la scène du Tokyo International Forum, où plus tard dans la journée au PlayStation Meeting 1999, ils étaient censés annoncer officiellement le développement de PlayStation 2. Ma tâche consistait à démontrer la rétrocompatibilité de la console avec la PS1 après avoir annoncé cette fonctionnalité dans temps de présentation.

J'étais prêt dès la nuit avant de préparer l'événement. Plusieurs mois se sont déjà écoulés depuis le premier lancement de Ridge Racer, et de grands progrès ont été réalisés dans le développement de l'émulateur GPU. Il était désormais possible d'exécuter de nombreux jeux pour PS1 dessus, et le meilleur d'entre eux était Crash Bandicoot: Warped. Pour cette raison, il a été choisi pour démontrer les fonctionnalités de compatibilité descendante de la PS2. Il n'y avait qu'un seul problème: parfois, il se bloquait lors de l'émulation.

Inutile de dire que de graves problèmes surgiraient si le jeu se tenait au milieu de la démo devant un public aussi large. Malheureusement, je n'ai pas pu trouver les raisons de ces échecs. Tout ce qui a pu être découvert, c'est que si Crash continue de bouger, le jeu reste stable pour une raison quelconque. Sachant cela, je n'ai pas dormi toute la nuit en jouant à l'infini sur le kit de développement PS2. Heureusement, je n'étais pas seul, il y avait une autre personne à côté de moi qui m'a aidé tout au long du match. La transmission vidéo vers notre moniteur a été configurée de sorte que lors de la conférence, nous puissions passer au grand écran sur la scène en cliquant sur un bouton. Comme vous l'avez peut-être deviné, j'ai joué avec cet interrupteur, et c'était très intéressant. Nous ne pouvions pas simplement commencer le jeu le matin, car il y avait une chance que l'émulateur lui-même ne se charge pas et nous n'avions pas assez de temps pour le réparer.Par conséquent, peu importe à quel point cela peut paraître surprenant, après le démarrage, il s'est avéré plus sûr de ne pas éteindre le système toute la nuit.

Heureusement, cette nuit s'est passée sans incident. L'événement approchait et le système continuait de fonctionner. L'importance de cette conférence ne saurait être surestimée. Le PDG de Sony, Nobuyuki Ideas, lui a rendu visite pour nous soutenir. Des démonstrations technologiques montrant la puissance du moteur d'émotion et du synthétiseur graphique du système PS2 ont été présentées. Derrière les rideaux, je ne pouvais pas vraiment voir ce qui se passait. mais j'ai vu que les gens du public ont réagi positivement à la présentation. Tout s'est déroulé comme prévu. Enfin, il est temps pour la console d'annoncer la rétrocompatibilité.

Honnêtement, je ne me souviens presque pas de ce qui s'est passé dans ces moments. Il était prévu que pendant la démo de Crash Bandicoot, je joue de la manière habituelle, saute par-dessus les obstacles et passe le niveau. Mais quand est venu le temps de la démonstration, j'ai eu de gros problèmes avec le passage, et je suis constamment tombé sur le même obstacle au niveau. Après cela, mes souvenirs sont complètement vides. Je ne peux même pas dire si j'ai réussi à aller plus loin.

Cependant, au final, tout s'est bien passé car, malgré ma pauvre démonstration, l'annonce a été saluée par des applaudissements. Tout le monde a dit que l'événement a été un grand succès.


La PlayStation 2 est sortie au Japon le 4 mars 2000. Le travail sur l'émulateur PS1 était généralement terminé vers le Nouvel An, si je ne me trompe pas. Au final, plusieurs jeux ne pouvaient pas fonctionner correctement, c'est pourquoi la société a publié une "liste noire" publique de jeux pour PS1, que les joueurs ne peuvent pas jouer sur la nouvelle console.

Après la sortie du système au Japon, il est venu en Amérique du Nord et en Europe; Naturellement, les jeux de ces régions pour PS1 étaient également pris en charge par l'émulateur. Peu avant la sortie des versions régionales, je suis venu dans les bureaux américains et européens de Sony pour aider au débogage, et c'était ma première expérience de voyage à l'étranger. En conséquence, la PS2 n'était pas 100% compatible avec le catalogue PS1, mais elle supportait presque tous les jeux. En me souvenant de mon travail aujourd'hui, je pense que c'était l'une des tâches les plus importantes de toute ma carrière.

Ken Kutaragi a établi une norme élevée pour son équipe, il nous a dit de toujours mesurer la qualité de notre travail par rapport au meilleur niveau de notre classe. Quand je pense à ce qui a rencontré cette barre dans ma vie, la première chose qui me vient à l'esprit est mon travail sur la rétrocompatibilité avec PS1. Voilà à quel point je suis fier d'elle.

Franchement, je ne serais peut-être pas en mesure de gérer cela seul, et pendant le travail, beaucoup de gens m'ont aidé. Si je ne pouvais pas faire face à cela, quelqu'un d'autre l'aurait fait. Néanmoins, l'opportunité d'observer un projet d'une telle ampleur avant son achèvement me remplit de fierté. Je ne peux qu'espérer que dans ma vie j'aurai une autre telle opportunité.

All Articles