PCSX-Redux est passe de emulateur a outil de debogage pour le PS1
Résumé
PCSX-Redux est une branche libre de PCSX qui abandonne le systeme de modules pour un bloc unique, puis ajoute un service GDB, un raccord a Ghidra, une interface de script et une vue de la memoire video. Pas de numero de version : les paquets sont des instantanes courants.
Recommander- Nom
- PCSX-Redux
- Version
- 20261021
- Tarif
- Gratuit
- Open source
- Open source
- Système
- WindowsLinuxmacOS
- Mis à jour
- 2026-10-21 15:58
Les emulateurs PS1 ne manquent pas. Ce qui manque, est un outil qui laisse voir le dedans. PCSX-Redux etale le plan de travail : desassemblage, memoire, memoire video, points de arret et scripts, pour qui veut comprendre ce que fait vraiment une PlayStation.
Il ne a pas de numero de version
Commencons par une chose rare dans une presentation de logiciel : ce projet ne a pas de numero de version a mettre dans un titre. Le depot ne porte ni publication ni etiquette de version, et les paquets pour Windows, Linux et macOS sont des instantanes courants du developpement. La page officielle en cite cinq : Windows 64 bits, une version ligne de commande sous Windows 64 bits, deux paquets Linux pour 64 bits et arm64, et une version Apple Silicon sous macOS.
Le prix de la distribution courante est de ne avoir aucun etat stable ou se tenir ; le gain est de recevoir toujours du code recent. Le rythme de un tel projet ne se lit que dans le registre des envois, et la branche principale bouge presque chaque jour.
C est une branche de PCSX
La description du depot est nette : une collection batie autour du developpement et de la retro ingenierie pour PS1, avec outils, matiere de recherche, conceptions de materiel et bibliotheques, dont le produit central, PCSX-Redux lui-meme, est une autre branche du classique emulateur PS1 PCSX.
Le projet sort sous la version 2 de la licence publique generale GNU, est ecrit surtout en C++, porte environ mille marques et cent cinquante embranchements, et est entretenu depuis la fin de 2018. C est modeste pour ce coin du monde, mais cela achete un ensemble assez complet de moyens de debogage.
Cinq buts, tous tournes vers la lisibilite
Le fichier de presentation liste cinq buts, et la lecture montre que ce sont des faces de une meme chose : porter le code vers des normes plus recentes ; abandonner le systeme de modules pour que toute la simulation vive dans un bloc unique ; poser le tout sur OpenGL3+ et ImGui pour la portabilite et la lisibilite ; ameliorer le confort de debogage ; et ameliorer le confort de rendu.
Une architecture de modules etait la reponse courante a une epoque. Les pieces se changeaient seules, au prix de etats qui ne concorderent jamais au passage de la frontiere : un module graphique ne voit pas le detail de minutage du cote processeur, et un outil de debogage qui veut les deux lignes a la fois doit batir son propre pont. En bloc unique, outil et coeur partagent une seule vue de la memoire, et un point de arret arrete les deux lignes ensemble. Voila ce que veut dire lisibilite ici.
Avoir pousse interface et rendu sur OpenGL3+ et ImGui explique pourquoi cela ressemble moins a une console de jeu et plus a un outil de developpement : les fenetres se fixent partout, plusieurs panneaux restent ouverts en meme temps, et le information circule entre eux.

La barre de menus est un tableau de bord
Le chapitre des menus dans la documentation officielle merite le detour, parce que il ne laisse aucun doute sur le public de cet emulateur. La barre montre en permanence quatre etats : le mode du processeur, le identifiant du jeu, le compteur de images de ImGui et le compteur de images de le invite, plus la taille du tampon audio en millisecondes et en images. La documentation precise que le chiffre de ImGui ne est pas la cadence a le interieur de la PlayStation, seulement la vitesse de rafraichissement de interface elle-meme.
Le plus interessant est la definition de la cadence du invite : elle compte combien de fois par seconde le logiciel simule deplace le point de depart de affichage, ce qui est la facon dont un jeu retourne ses tampons. Mesuree sur la synchronisation verticale simulee, elle lit 50 ou 60 selon le reglage video, et elle lit zero quand un tampon reste a le ecran, ce qui arrive avec le balayage entrelace, les jeux a tampon unique et certaines images en pause. Un zero ne est pas un blocage, et la documentation le dit.
Les deux compteurs et le tampon audio ne apparaissent que pendant que la simulation tourne ; sinon la barre affiche repos. Une interface qui separe repos et marche avec autant de soin ne est clairement pas destinee a qui insere un disque et joue.
La ligne du debogage est largement tracee
Le site de documentation coupe le debogage en morceaux : un service GDB qui travaille avec PCSX-Redux, un moyen de raccorder Ghidra, des points de arret, de la assembleur en ligne, et la lecture et le ecriture de la memoire et des registres. Les outils de retro ingenierie murs peuvent donc se raccorder directement et traiter le tout comme une PlayStation a laquelle un debogueur se attache.
Un niveau plus bas se trouve le script. Le projet embarque une interface Lua a laquelle la documentation consacre un chapitre entier : charger des bibliotheques, la interface de base de Redux, le rendu, la lecture et le ecriture de fichiers, la construction de images de disque, le application de pieces PPF, la memoire et les registres, les cartes de extension, les evenements, les points de arret, la assembleur en ligne et le traitement des binaires PSX. Que les images de disque et les pieces atteignent la couche de script signifie que changer un disque peut devenir un script repetable au lieu de clics manuels.
Deux autres pieces sont visuelles : une vue de la memoire video et un journal de la carte graphique. La premiere montre ce que contient vraiment ce megaoctet de memoire video, le second enregistre les ordres de dessin. Pour qui cherche pourquoi une image ressemble a ce que elle est, ces deux la font souvent gagner plus de temps que les points de arret.
OpenBIOS et le dossier du materiel
Deux autres choses du depot meritent une phrase a part. La premiere est OpenBIOS, une mise en oeuvre du BIOS pour le MIPS R3000A qui peut demarrer un logiciel PS1 sans BIOS vendu en magasin, tournee vers le fait maison et le developpement. La seconde est un dossier de materiel avec plusieurs conceptions utilisables avec une PlayStation, a cote de un dossier wiki qui rassemble de la matiere de recherche sans lien direct avec le emulateur.
Ensemble, elles situent le projet plus large que emulateur : il est aussi une archive et un etabli pour la PlayStation. Pour qui ecrit du fait maison, passer du materiel reel a un environnement simule et debogable est un confort tres concret.

A qui cela convient
Utilise comme emulateur ordinaire, il offre une pile de panneaux dont on ne se sert jamais. A inverse, pour savoir ce que fait un bout de code PS1, comment une texture a ete assemblee ou pourquoi une image tremble, il est presque un environnement pret a emploi. Gratuit, libre et sur trois systemes, ce qui en fait une entree a bas seuil pour etude et la recherche.
Une mise en garde accompagne le reste : le emulateur ne fournit que le environnement de execution. Se procurer des images de jeu et un BIOS vendu en magasin doit suivre la loi locale et le droit de auteur. Le projet vise le developpement et la retro ingenierie, et les entrees officielles vers la communaute se coupent en deux, une pour le emulateur seul et une pour le developpement PS1 et la retro ingenierie.
La valeur de PCSX-Redux ne tient pas a la longueur de une liste de compatibilite mais a sa volonte de ouvrir le interieur : des quelques lignes de etat dans la barre de menus aux interfaces GDB et script, puis a la memoire video et au journal de dessin, chaque partie suppose un usager qui veut voir clair plutot que seulement jouer. Ces outils restent discrets, et quand vient le moment de chercher, le temps gagne se compte en jours.