PCSX2

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
PCSX2
Capture d'écran de PCSX2 version 1.2.1
Capture d'écran de PCSX2 version 1.2.1

Développeurs Linuzappz, Zerofrog, Refraction, Saqib, Gabest
Dernière version 1.2.1 () [+/-]
Environnements Multiplate-forme
Type Émulateur
Licence GNU GPL
Site web www.pcsx2.net

PCSX2 est un émulateur libre de la console PlayStation 2 de Sony destiné aux systèmes d'exploitation Windows, Linux et Mac OS X, publié sous licence GNU GPL. Il est considéré comme l'émulateur le plus abouti de la console (étant le seul encore développé). Il est développé par la même équipe que l'émulateur PlayStation PCSX.

Fonctionnement[modifier | modifier le code]

PCSX2, comme son prédécesseur PCSX (émulateur PS1), est basé sur une architecture de plug-ins issue de PSEmu Pro qui permet de séparer plusieurs fonctions du cœur de l'émulateur. Ces plug-ins servent à simuler les fonctions graphique et audio, la manette, le lecteur CD/DVD, les ports USB ou Firewire (i.LINK). Il existe plusieurs plug-in pour une même fonction, pouvant conduire à des résultats différents en termes de compatibilité ou de performances. De plus PCSX2 requiert une copie du BIOS de la PS2, non fourni par les développeurs au téléchargement pour des raisons de copyright et des problèmes juridiques associés. Actuellement PCSX2 n'est pas compatible avec les jeux PS1, bien que le plug-in graphique GSdx puisse être utilisé avec les émulateurs PS1 comme PCSX et ePSXe.

La principale difficulté est d'émuler l'architecture multi-processeurs de la PS2 sur l'architecture x86 des PC. Bien que chaque processeur puisse être émulé correctement, les synchroniser avec précision est très difficile.

Développement[modifier | modifier le code]

Le développement de PCSX2 débute en 2001 à l'initiative de Linuzappz et Shadow, aussi programmeurs de l'émulateur PCSX-Reloaded. D'autres rejoignent l'équipe par la suite et leur première réussite fut de parvenir à faire fonctionner de simples applications "maison" (homebrew). Par la suite, ils tentèrent de faire fonctionner les logiciels commerciaux de la PS2. Plusieurs versions et beaucoup de travail sur les plug-in furent nécessaires pour parvenir à afficher les écrans de chargement de certains jeux, voire de commencer à jouer. Suite à quoi l'équipe commença à travailler sur l'émulation du BIOS de la PlayStation 2, ce qui se révéla extrêmement compliqué à accomplir. L'équipe parvint à faire fonctionner le BIOS, bien que très lentement et avec de gros problèmes d'affichage.

A partir de là, l'équipe se concentra sur l'implémentation des parties manquantes de l'émulateur et le remplacement des raccourcis de programmation par une émulation correcte, grâce à une meilleure compréhension du fonctionnement de la console. L’intégration du premier recompileur a été faite par Goldfinger ce qui a grandement accru la vitesse en comparaison de l'ancien interpreteur. Toutes ces améliorations ont contribué à augmenter petit à petit la vitesse et la compatibilité de PCSX2. Zerofrog rejoignit l'équipe par la suite et développa les plug-in ZeroGS (graphique) et ZeroSPU2 (audio). Il a également réécrit les recompileurs VU et EE, ce qui a conduit à une énorme amélioration de la vitesse d'émulation de la version 0.9.1 sortie en Juillet 2006.

Durant l'été 2007, GiGaHeRz parvient à faire fonctionner NetPlay. En 2008 Zerofrog quitte l'équipe, et des changement mineurs continuent à être apportés à l'émulateur par les deux programmeurs restants, Refraction et Saquib, afin de garder le projet en vie. Après la version 0.9.4 en Novembre 2007, Gabest met à jour GSdx de manière significative et accroit sa vitesse. En février 2009, de nouveaux programmeurs se joignent à l'équipe. La version 0.9.8 sort en Mai 2011 et présente une nouvelle interface, écrite avec wxWidgets, qui améliore la compatibilité avec Linux et les systèmes d'exploitation Windows récents, ainsi que l'ajout d'un nouveau recompileur VU qui améliore la compatibilité avec les jeux, un éditeur de carte mémoire, une révision du plug-in audio SPU2-X et de nombreuses autres améliorations et correctifs. Le plug-in SPU2-X est mis à jour en Juin 2011 pour améliorer l'émulation de la fonction audio de la PS2.

Configuration requise[modifier | modifier le code]

Système d'exploitation :

Minimum : Windows XP (DirectX 9.0)

Recommandé : Windows Vista / 7 / 8 (DirectX 10 et plus)

Mémoire vive (RAM) :

Minimum : 1 Go

Recommandé : 2 Go

Processeur (CPU) :

Minimum : simple cœur avec support SSE2 type Intel Pentium 4, AMD Athlon 64. Les jeux fonctionneront au ralenti avec ce type de matériel ancien.

Moyen : double cœur à 3 Ghz type Intel Core 2 Duo ou équivalent AMD. Certains jeux seront parfaitement jouables, d'autres fonctionneront au ralenti.

Recommandé : 4 cœurs type Intel i5-2400 ou AMD FX 8350. La plupart des jeux fonctionneront à la vitesse PS2.

Carte graphique (GPU) :

Minimum : compatible DirectX 9.0 (prise en charge des Pixel Shader 2)

  • ATI Radeon série 9500-9800 ou série X300-X600,
  • nvidia GeForce série FX 5000,
  • Intel GMA 900/950/3000/3100.

Moyen : compatible DirectX 9.0c (prise en charge des Pixel Shader 3) :

  • ATI Radeon série X1300-X1950,
  • nVidia GeForce série 6 et 7,
  • Intel GMA X3000.

Recommandé : compatible DirectX 10 (prise en charge des Pixel Shader 4) ou plus

  • ATI Radeon série X2400-X2900,
  • nVidia GeForce série 8, 9, GT 200,
  • Intel GMA X3100, X3500, X4500.

Il est important de noter qu'il n'est pas toujours nécessaire de posséder la configuration recommandée. Certains jeux qui demandent beaucoup de puissance CPU mais moins de puissance GPU pourront fonctionner avec un processeur recommandé et une carte graphique moyenne. A l'inverse d'autres jeux peuvent demander moins de puissance CPU et plus de puissance GPU, ceux-ci pourront donc fonctionner avec un processeur moyen et une carte graphique recommandée. Certains fonctionneront même avec un processeur moyen et une carte graphique moyenne. D'autre part, certains speedhacks (raccourcis de programmation spécifiques à certains jeux) intégrés à PCSX2 peuvent permettre d'atteindre la vitesse PS2 sur une configuration moyenne

Compatibilité[modifier | modifier le code]

La compatibilité est un des points forts de PCSX2[1] (version 1.3.1) :

  • Plus de 2400 jeux sont entièrement jouables (sans tenir compte de la fluidité mais seulement de la possibilité de jouer entièrement au jeu) dont Final Fantasy X, Final Fantasy X-2, Final Fantasy XII, Devil May Cry 3 ou encore Dragon Quest VIII ;
  • Seuls six jeux sont totalement incompatibles (mais seront sans doute compatibles dans les prochaines mises à jour), 81 peuvent être démarrés mais sans pouvoir y jouer à cause de divers bugs d'émulation et 53 peuvent être démarrés mais quelques bugs empêcheront de les terminer entièrement.

La liste de compatibilité complète est disponible sur le site officiel (en anglais) : liste de compatibilité.

Si les plug-ins sont biens configurés (guide de configuration), on peut atteindre avec la configuration énoncée ci-dessus 50 images par seconde (PAL) ou 60 images par seconde (NTSC), soit une fluidité identique à celle de la PS2, mais uniquement avec certains jeux (Final Fantasy X par exemple), la plupart des autres jeux étant plus lents (Gran Turismo 4, Shadow of the Colossus). Ce problème tend à s’atténuer au fur et à mesure des mises à jours de l'émulateur et grâce à la commercialisation de processeurs grand public de plus en plus rapides.

Statut légal[modifier | modifier le code]

Comme pour tout émulateur, la possession de ce logiciel est légale. Toutefois sans l'autorisation de l'ayant droit, il est illégal de copier, vendre ou distribuer des ROM copyrightées, qui sont indispensables à l'utilisation de ce logiciel.

Il en va de même concernant l'utilisation du BIOS de la PS2. Celui-ci doit être extrait directement de la console et n'est pas fourni avec l'émulateur.

Plug-ins[modifier | modifier le code]

PCSX2 est un "émulateur à plug-ins", c'est-à-dire qu'il nécessite des modules externes pour fonctionner :

les plug-ins graphiques : ils émulent le processeur graphique de la PS2, vous devez les configurer. Plusieurs plug-ins existent, tels que :

  • GSdx (DirectX 9 (Windows XP / Vista / 7 / 8), DirectX 10 et 11 (Windows Vista / 7 / 8) et OpenGL (multiplateformes)). Ce plug-in présente plusieurs avantages par rapport aux autres :
    • Utilisation d'instructions spécifiques au processeur (SSE2, SSSE3, SSE4 ou AVX) si celui-ci le permet, afin d'accélérer l'émulation.
    • Affichage à une résolution supérieure à celle de la PS2 comme le full HD (1920x1080) ou plus (4K, Ultra HD).
    • Utilisation de l'antialiasing, qui permet de réduire l'effet d'escalier,
    • Utilisation du filtrage anisotrope, qui permet de réduire le fourmillement des textures vues à un angle oblique et d'améliorer leur netteté.
  • ZeroGS (OpenGL),
  • ZZogl (OpenGL, basé sur ZeroGS).

Les plug-ins audio : ils émulent le son de la PS2, ils ne nécessitent pas ou peu de réglages. Ces plug-ins sont :

  • SPU2-X (plug-in le plus au point à l'heure actuelle). Celui-ci comprend également une option (expérimentale) autorisant l'audio quadraphonique, 5.1 ou 7.1).
  • SPU2PeopsSound (obsolète),
  • ZEROSPU2 (obsolète).

Les plug-ins de périphériques d'entrée : ils émulent le pad PS2 (DualShock 2) avec le clavier ou une manette PC, aucune configuration n'est nécessaire (mise à part l'assignation des touches/boutons). Ils permettent aussi l'utilisation du MultiTap. Il y a 6 plug-ins :

  • Xpad, qui permet l'utilisation d'une manette Xbox 360
  • PadSSSPSX,
  • ZEROPAD (obsolète),
  • TwinPad, permet d'utiliser un clavier et une souris,
  • LilyPad, permet l'utilisation d'une manette, d'un clavier et d'une souris. C'est le plug-in le plus abouti actuellement,
  • Nuvee, qui permet d'utiliser le pistolet.

Les plug-ins de lecteur optique : ils émulent le lecteur CD/DVD de la PS2. Il en existe plusieurs :

  • CDVD, un plug-in simple de lecture d'un jeu PS2,
  • Linuz ISO CDVD, qui permet en plus de compresser un jeu PS2 en image ISO pour l'utiliser avec un lecteur virtuel, de manière à réduire les temps de chargement.

Les plug-ins de disque dur : il servent pour la programmation. Il en existe 2 :

  • DEV9, dont le but est de prendre en charge le disque dur de la PS2 ainsi que son contrôleur Ethernet,
  • MegaDEV9, une version plus avancée qui permet d'émuler partiellement le disque dur de la PS2.

les plug-ins USB : ils émulent les ports USB de la PS2.

Le plug-in firewire : il émule le port Firewire.

Le plug-in NetPlay : il permet de jouer en multijoueur pour les jeux compatibles.

Le BIOS de la PS2 est aussi nécessaire pour pouvoir jouer. La seule manière légale de l'obtenir est de l'extraire directement de la console.

Historique des versions[modifier | modifier le code]

Version 0.9.6[modifier | modifier le code]

La version 0.9.6 est marquée par un grand changement dans le code source qui permet une compatibilité et une vitesse accrues par rapport aux versions précédentes. De très nombreux bugs ont également été corrigés, et des optimisations de vitesse font que la plupart des jeux notés comme jouable le sont de façon fluide et d'une manière similaire à la PS2. Sur des configurations plus puissantes, les jeux restent même fluides à haute résolution ou avec un filtre anti-aliasing et peuvent donc offrir un meilleur rendu qu'une console. Les versions précédentes de PCSX2 ne sont plus prises en charge par les développeurs.

Version 0.9.8[modifier | modifier le code]

Des améliorations ont été faites sur l'interface de configuration, beaucoup plus simple et graphique que précédemment. Optimisation de vitesse, correction de bugs et compatibilité à la hausse.

Version 0.9.9 (version bêta)[modifier | modifier le code]

Le 11 août 2011 avec la version beta (0.9.9 r4865) PCSX2 commence à exploiter les processeurs à plus de deux cœurs ce qui résulte en une hausse des performances drastique.

Version 1.0.0[modifier | modifier le code]

Le 3 août 2012 sort enfin la version stable 1.0 de PCSX2. D'énormes améliorations ont été effectués avec un accent particulier sur la compatibilité et la stabilité ainsi que la possibilité de faire tourner le module SPU (sonore) sur un core séparé des autres ce qui a pour conséquence de rendre plus fluide certains jeux qui peuvent alors s'exécuter librement sur les autres core du processeur. L'optimisation MTGS (Multi thread / multi core) devient encore plus aboutie.

Version 1.2.1[modifier | modifier le code]

Le 2 février 2014 sort la version 1.2.0. Beaucoup d'améliorations, de nouvelles fonctionnalités et des corrections de bugs sont de la partie. Un des grand changement dans cette version est l'intégration des correctifs pour la gestion des grands écrans avec près de 1200 jeux patchés pour soutenir le bon ratio au format 16:9. Le 4 février sort une bugfix de la précédente release.

Voir aussi[modifier | modifier le code]

Article connexe[modifier | modifier le code]

Liens externes[modifier | modifier le code]

Notes et références[modifier | modifier le code]

  1. (en) « Liste de compatibilité », sur http://pcsx2.net (consulté le 23 février 2015)