AnyPS5, el proyecto de código abierto que busca ejecutar juegos de PlayStation 5 de forma nativa en Windows y Linux, ha alcanzado un nuevo hito en su desarrollo. Sus responsables han conseguido cubrir el 100% de las 1.166 instrucciones de shaders de GPU incluidas en su lista de referencia, basada en las arquitecturas gráficas AMD RDNA 1 y RDNA 2.
El avance supone un paso importante para trasladar los juegos de PS5 a ordenadores convencionales sin recurrir a la emulación tradicional de CPU. Sin embargo, la cobertura completa de instrucciones no garantiza todavía su correcta ejecución, ya que el proyecto continúa desarrollando las bibliotecas del sistema, el comportamiento gráfico y otros componentes necesarios para conseguir una compatibilidad amplia.
AnyPS5 completa las 1.166 instrucciones de shaders de la GPU de PS5
El proyecto ha alcanzado una cobertura del 100% en su decodificador de instrucciones gráficas, según los datos publicados en su registro oficial de progreso. Esto significa que las 1.166 instrucciones de AMD RDNA 1 y RDNA 2 incluidas en la lista de referencia ya son reconocidas, eliminando una de las limitaciones que condicionaban el desarrollo de su sistema de conversión.
La importancia de este avance reside en la arquitectura gráfica de PlayStation 5, basada en una GPU AMD personalizada conocida como Oberon. Esta solución comparte características con las GPU Radeon para PC, aunque utiliza interfaces gráficas y componentes específicos de la consola, que deben adaptarse para funcionar correctamente fuera del entorno de Sony.
El decodificador de AnyPS5 contempla diferentes familias de operaciones, incluyendo instrucciones vectoriales VOP, accesos a memoria GLOBAL y operaciones de memoria compartida DS. Completar su reconocimiento facilita el procesamiento de los shaders utilizados por los juegos, pero todavía resulta necesario comprobar que cada instrucción reproduce correctamente su comportamiento original durante la ejecución.
De hecho, los desarrolladores establecen una distinción importante: una instrucción se considera implementada cuando el decodificador consigue reconocerla, no cuando se ha demostrado que funciona perfectamente en cualquier situación. Por tanto, alcanzar el 100% no significa haber completado toda la traducción gráfica de PS5, aunque representa un avance relevante para continuar las pruebas de compatibilidad.
Conversión de ejecutables y shaders a SPIR-V mediante Vulkan
A diferencia de los emuladores convencionales, AnyPS5 utiliza un sistema denominado relinker, encargado de transformar los ejecutables de PlayStation 5 en formatos compatibles con Windows y Linux. La herramienta también proporciona implementaciones alternativas de las bibliotecas del sistema de la consola, permitiendo enlazar dinámicamente las funciones que necesitan los videojuegos.
Este planteamiento aprovecha que PlayStation 5 utiliza una CPU AMD Zen 2 basada en la arquitectura x86-64, presente también en numerosos ordenadores. Al compartir el mismo conjunto fundamental de instrucciones, no necesita reproducir mediante software una arquitectura de procesador completamente diferente, aunque sí debe resolver las diferencias entre los sistemas operativos y sus interfaces.
En el apartado gráfico, AnyPS5 incorpora un recompilador que transforma shaders de la consola en código SPIR-V, utilizado posteriormente mediante Vulkan. El proyecto ya consigue generar código SPIR-V validable mediante las herramientas correspondientes, aunque la representación correcta de todos los efectos gráficos, los accesos a memoria y la sincronización todavía requiere trabajo adicional.
El funcionamiento recuerda parcialmente a herramientas de compatibilidad como Wine y Proton, que permiten ejecutar determinadas aplicaciones de Windows en otros sistemas operativos. Sin embargo, AnyPS5 está diseñado específicamente para adaptar ejecutables y bibliotecas de PS5, por lo que sus necesidades de implementación y sus problemas de compatibilidad son diferentes.
Las funciones del sistema alcanzan el 84,69% de implementación
Además del progreso gráfico, los desarrolladores continúan trabajando en las funciones de las bibliotecas del sistema de PlayStation 5. El registro oficial consultado muestra 2.578 funciones implementadas de un total de 3.044 identificadas, lo que representa una cobertura del 84,69%, con 466 funciones todavía pendientes dentro de ese conjunto.
Estas cifras requieren una interpretación cuidadosa porque el porcentaje no representa la totalidad de las funciones existentes en el firmware de PS5, sino únicamente aquellas que el proyecto ha identificado y registrado. A medida que los responsables incorporen nuevas funciones, el total puede aumentar y modificar el porcentaje de cobertura, incluso aunque el desarrollo continúe avanzando.
También es importante señalar que completar todas las funciones registradas no garantiza automáticamente que los videojuegos funcionen correctamente. Además del enlace de bibliotecas, todavía deben resolverse aspectos relacionados con la gestión de memoria, la sincronización, los servicios del sistema y las particularidades gráficas, que pueden variar considerablemente entre títulos.
Dreaming Sarah ya funciona a 60 FPS, pero la compatibilidad sigue siendo limitada
El proyecto ya dispone de una primera demostración funcional con Dreaming Sarah, un videojuego de plataformas en dos dimensiones que figura en su lista oficial de compatibilidad. Según los desarrolladores, el título consigue funcionar en Windows a 60 FPS utilizando una GeForce GTX 1050 Ti y un Intel Core i5-7500 a 3,4 GHz.
Las pruebas también recogen 36 FPS con los gráficos integrados Intel HD Graphics 620 de un Core i5-7200, demostrando que el sistema puede ejecutar determinados juegos en hardware relativamente modesto. No obstante, Dreaming Sarah es un título técnicamente mucho menos exigente que las grandes producciones de PS5, por lo que estos resultados no permiten anticipar el rendimiento de otros videojuegos.
Por ahora, AnyPS5 continúa siendo una herramienta experimental orientada al desarrollo y la investigación, sin una compatibilidad generalizada con el catálogo de la consola. El siguiente desafío será transformar la cobertura actual de instrucciones y funciones en una ejecución gráfica estable, precisa y compatible con juegos más complejos, tanto en Windows como en Linux.
Vía: TechPowerUp











