Ce que l’hôte doit fournir — et ce que les docs ne promettent pas

Les cibles d’exécution officielles sont Windows et Linux x86-64. La sélection graphique a besoin de Vulkan 1.1 plus des files graphiques et calcul et une présentation swapchain. Un numéro de version Vulkan ne signifie pas qu’un titre s’exécute. Il n’existe pas de minimum universel documenté de RAM ou de GPU pour chaque jeu. Cette page cite USAGE.md, BUILD.md et README de boykopovar/AnyPS5. Elle n’affirme pas qu’un titre est jouable.

v0.1.3 · Contenu assemblé le 22 oct. 2026 à partir du USAGE.md main actuel (Input and conversion, disposition d’exécution, GPU selection), BUILD.md (Relinker only, Requirements) et README, plus les mêmes fichiers à l’étiquette v0.1.3. Pas un playtest hôte.

Système d’exploitation hôte

README et BUILD.md décrivent un outil qui porte des exécutables vers Linux et Windows. Les titres convertis ont besoin de bibliothèques système construites pour l’OS cible et d’un hôte x86-64 compatible. Le mode relinker-only ne construit pas ces bibliothèques.

Les GitHub Releases officiels livrent des bibliothèques hôte pour Linux et Windows seulement. Faites correspondre le relinker et les bibliothèques à une étiquette et un OS. Un relinker Windows avec des bibliothèques Linux est une disposition ratée, pas un test de spécifications hôte.

Graphismes : Vulkan 1.1 est un filtre de périphérique

USAGE.md : le jeu s’exécute sur le premier périphérique Vulkan 1.1 avec files graphiques et calcul et présentation swapchain, en préférant un GPU discret à un intégré. C’est la règle de sélection documentée. Satisfaire Vulkan 1.1 n’établit pas que les shaders, les chemins mémoire ou le gameplay d’un titre fonctionnent.

Définissez ANYPS5_GPU à une partie d’un nom de périphérique, sans tenir compte de la casse. Les noms s’impriment au démarrage dans les lignes Physical device candidate. Quand aucun périphérique utilisable ne contient le texte, le démarrage échoue et l’erreur liste les noms.

Un périphérique Vulkan listé peut encore échouer plus tard. USAGE note que le Pack de compatibilité OpenCL, OpenGL et Vulkan de Windows peut installer Mesa Dozen, qui expose des périphériques D3D12 via Vulkan ; certains pilotes D3D12 peuvent planter pendant que le chargeur Vulkan énumère les adaptateurs. README : le recompilateur de shaders produit du SPIR-V. Un numéro de version, ou une ligne candidate, n’est pas un rapport Playable.

Extensions CPU

USAGE.md : les titres s’exécutent nativement, donc le CPU hôte a besoin des extensions du CPU Zen 2 de la PS5 que le code compilé utilise sans vérifier, parmi elles AVX2, FMA, F16C, BMI1, BMI2, LZCNT et MOVBE.

Sous Linux et Windows un titre converti consigne les extensions du CPU hôte au démarrage et s’arrête avant d’exécuter tout code du titre, en nommant le CPU et les extensions manquantes, si l’une est absente. Cet arrêt est une limite du CPU hôte, pas un fichier de jeu manquant.

Hôtes Intel et --to-intel

USAGE.md : ajoutez --to-intel pour les hôtes Intel, ou --to-rosetta pour Rosetta. Un titre qui s’exécute sous Rosetta sur Apple silicon est religué avec --macos --to-rosetta.

L’option --to-intel convertit les instructions AMD prises en charge dans l’exécutable et les modules groupés. Des instructions non prises en charge ou des stubs de conversion inaccessibles provoquent une erreur (sortie 2 du relinker).

relinker --windows --to-intel source/input.elf app.exe

--to-intel réécrit les instructions spécifiques AMD trouvées dans ces fichiers. Il ne peut pas traduire les instructions AMD générées par un titre à l’exécution, donc ces titres exigent un hôte AMD. La conversion n’est pas un chemin AMD généré à l’exécution. Enregistrez le CPU et les options de conversion avec le rapport ; ne supposez pas que chaque machine x86-64 peut exécuter la même sortie.

Mémoire : limite de commit, pas un plancher RAM universel

USAGE.md ne publie pas un chiffre minimal de RAM ou de VRAM que chaque titre doit atteindre. L’usage mémoire dépend du titre et de ce qu’il mappe. Un échec d’allocation n’est pas automatiquement « pas assez de RAM physique ».

Sous Windows, la mémoire directe (sceKernelAllocateDirectMemory, jusqu’à 13824 MiB par titre) est committed quand le titre la mappe, pas quand il l’alloue ou utilise ses pages pour la première fois. La limite de commit système — mémoire installée plus taille du fichier d’échange, la seconde valeur de Committed dans le Gestionnaire des tâches — doit couvrir la mémoire directe mappée avec toute l’autre mémoire committed. Sinon sceKernelMapDirectMemory lève. Agrandissez le fichier d’échange ou fermez d’autres applications. Ce chiffre 13824 MiB est un plafond documenté par titre, pas une spec PC recommandée.

Sous Linux, quand le pilote Vulkan importe de la mémoire dma-buf (pas le pilote propriétaire NVIDIA), la mémoire directe partagée est importée via /dev/udmabuf, et l’utilisateur qui lance le jeu a besoin d’un accès lecture-écriture. Sans accès, le démarrage peut imprimer [gpu] open /dev/udmabuf: Permission denied et ces plages sont copiées au lieu d’être importées. C’est une permission de nœud de périphérique, pas un plancher RAM.

N’inventez pas un seul minimum « 8 Go / 16 Go / RTX … » pour chaque titre. Citez l’erreur de map, la limite de commit ou la ligne /dev/udmabuf, le nom du GPU et l’étiquette de version.

Outils de compilation source (seulement si vous compilez)

La plupart des gens devraient rester sur la paire zip officielle GitHub. Compiler est optionnel. Quand vous compilez, utilisez le BUILD.md fourni avec cet arbre — les versions ci-dessous sont ce que le main actuel et v0.1.3 documentent aujourd’hui, et elles peuvent changer.

Relinker-only : CMake, un compilateur C++20 et un outil de build. Python 3.9 ou plus récent active les tests Python. Ce mode construit sur Linux, Windows et macOS, y compris Apple silicon. Il ne construit pas les bibliothèques hôte dont un titre converti a encore besoin.

Exigences de compilation complète nommées sur le main actuel et à v0.1.3 : x86-64, Git, CMake 3.22.1 ou plus récent, Ninja, C++20. Ouvrez BUILD.md pour les paquets Linux (GCC/G++, en-têtes SDL X11/Wayland/audio, etc.). Avec BUILD_TESTING=OFF par défaut, cmake --build ne produit pas les bibliothèques patchées ; l’étape explicite --target libs est requise.

Compilation complète Windows sur le main actuel : MinGW-w64 GCC x86-64 avec threads POSIX. Le compilateur doit fournir des exceptions DWARF avec -fno-asynchronous-unwind-tables, ou des exceptions SEH pour les fonctions System V ABI. BUILD.md nomme WinLibs GCC 15.2.0 (x86_64-ucrt-posix-seh, version 15.2.0posix-14.0.0-ucrt-r7) et MSYS2 UCRT64 GCC 16.2.0-6. Après --target libs, copiez libgcc_s_seh-1.dll, libstdc++-6.dll et libwinpthread-1.dll à côté des bibliothèques patchées. Les zips de version les contiennent déjà.

BUILD.md à l’étiquette v0.1.3 nomme seulement MinGW-w64 GCC 15.2.0 (WinLibs x86_64-ucrt-posix-seh, version 15.2.0posix-14.0.0-ucrt-r7) comme actuellement pris en charge pour la compilation complète Windows. Si vous compilez cette étiquette, suivez ce fichier, pas la liste d’outils plus récente du main.

Les versions de chaîne d’outils peuvent changer. Cette page ne fige pas un pin GCC Windows éternel. Le convertisseur web du navigateur est un outil de conversion (les fichiers restent sur l’appareil) ; il ne remplace pas les règles GPU et CPU de l’hôte Windows ou Linux ci-dessus.

Compiler depuis les sources : relinker vs runtime complet

Faire correspondre le rapport au zip de version

Une note de compatibilité n’est aussi bonne que l’environnement qu’elle nomme. Enregistrez l’étiquette officielle (ou le commit compilé), l’OS, les noms GPU et pilote des lignes Physical device candidate, et les options de conversion (--windows, --to-intel, --macos et le reste).

README et BUILD.md : la compilation relinker-only s’exécute sur macOS, y compris Apple silicon. USAGE.md : --macos écrit du Mach-O x86-64, qui s’exécute sous Rosetta sur Apple silicon ; --to-rosetta abaisse les instructions que Rosetta n’a pas. Les versions officielles livrent toujours les bibliothèques hôte pour Linux et Windows seulement. Une compilation relinker-only qui passe, ou une conversion Mach-O, est une expérience de conversion — pas une exigence de runtime de jeu Mac et pas Playable. Les forks communautaires de runtime macOS sont des expériences séparées, pas des actifs de version officiels.

Les en-têtes Vulkan utilisés pour compiler un self-build ne sont pas le même fait qu’un pilote hôte testé. Citez l’étiquette du zip ou le commit. N’améliorez pas l’étape d’un titre à partir d’une liste de contrôle hôte.

Après cette page

Si l’hôte correspond à l’OS, aux extensions CPU et au filtre de périphérique Vulkan documentés, convertissez toujours un ELF propre et disposez app / libs / app0. Une fenêtre n’est pas du gameplay. L’erreur Windows 126 ou 193, une levée de limite de commit, ou un périphérique Vulkan manquant restent sur le guide de dépannage.

Téléchargement : paire zip officielle · Installation : deux fichiers et disposition des dossiers · Compiler depuis les sources : relinker vs runtime complet · Dépannage : 193, 126, limites de l’hôte

Ne pas affirmer

  • Un minimum universel de RAM, VRAM ou modèle de GPU que chaque titre doit atteindre.
  • Que Vulkan 1.1, ou une ligne Physical device candidate, signifie qu’un titre s’exécute ou est Playable.
  • Que --to-intel traduit les instructions AMD qu’un titre génère à l’exécution.
  • Que les versions officielles exigent ou prennent en charge un runtime de jeu Mac.
  • Que l’audio Linux est corrigé sur v0.1.3.
  • Que l’étape de compatibilité d’un titre a changé parce que la liste de contrôle hôte a été cochée.

Sources d’origine

Ouvrir les GitHub Releases officielsQuels deux fichiers