Wykonaj konfigurację wydania
Postępuj według instrukcji v0.1.2 dla Windows lub Linuksa.
Zaznaczenia pozostają do opuszczenia tej strony.
Krok 1: Pobierz pasujące pliki wydania
Zacznij od plików v0.1.2 dla Windows. Relinker i biblioteki systemu docelowego powinny pochodzić z tego samego wydania.
Inną drogę opisuje Poradnik konwertera AnyPS5 w przeglądarce lub Instrukcja kompilacji AnyPS5 ze źródeł.
Konfigurację AnyPS5 zacznij od konwersji pliku wykonywalnego i modułów gry, a następnie ułóż biblioteki i zasoby, które program będzie ładował. Rozdzielenie tych elementów ułatwia zbadanie nieudanego startu.
Ta instrukcja konfiguracji AnyPS5 używa oficjalnych plików v0.1.2 i dokumentacji użycia do przygotowania wyniku dla Windows lub Linuksa.
Zanim zaczniesz
Przygotuj:
- Czysty, odszyfrowany ELF, towarzyszące moduły i zasoby, z prawami i uprawnieniami potrzebnymi do ich użycia. Zaszyfrowany pakiet ani kontener SELF/fSELF nie jest gotowym wejściem konwersji.
- Pasujący relinker i pakiet bibliotek docelowego systemu z AnyPS5 GitHub.
- Sprawdzone warunki ze strony Wymagania AnyPS5, w tym urządzenie Vulkan i odpowiednie instrukcje CPU.
- Title ID, wersję zawartości i kompilację z Gier AnyPS5, jeśli odtwarzasz raport. Zachowaj obok instrukcji wszystkie specjalne argumenty i warunki poprawek.
Krok 1: pobierz pliki tego samego wydania
Otwórz oficjalne wydanie v0.1.2 i dobierz relinker oraz archiwum bibliotek do systemu docelowego:
| System | Relinker | Pakiet bibliotek |
|---|---|---|
| Windows | relinker-v0.1.2.exe |
prx-windows-v0.1.2.zip |
| Linux | relinker-v0.1.2 |
prx-linux-v0.1.2.tar.gz |
Pakiety są również w drugim formacie archiwum. Rozpakuj biblioteki i zachowaj zawartość do kroku 4. Pakiet Windows zawiera libgcc_s_seh-1.dll, libstdc++-6.dll i libwinpthread-1.dll obok bibliotek zastępczych.
Krok 2: ułóż pliki wejściowe
Prosty katalog roboczy wygląda tak:
source/
input.elf
sce_module/
bundled-module.prx
ELF może mieć inną nazwę, np. eboot.bin; o przydatności pliku decyduje zawartość. Użyj katalogu modułów dostarczonego z Twoimi plikami, zamiast przemianowywać każdą grę według przykładu.
Relinker rozpoznaje sce_module/, sce_modules/ i prx/. prx/ może występować razem z jedną z pozostałych nazw. Jednoczesne sce_module/ i sce_modules/ albo brak wszystkich trzech to błąd. Skanowane są tylko pliki bezpośrednio wewnątrz tych katalogów.
Dla modułów w innym miejscu --sce-module-path <path> wskazuje ich katalog nadrzędny, ścieżką bezwzględną albo względem katalogu roboczego. Dodatkowe foldery mogą wymagać powtarzalnych argumentów --module-dir; stosuj polecenie opisane dla tytułu, zamiast zakładać, że standardowe foldery wystarczą każdej grze.
Krok 3: uruchom relinker
Otwórz terminal w katalogu relinkera. Przykłady korzystają z powyższego układu i zapisują wynik obok narzędzia.
Windows PowerShell
.\relinker-v0.1.2.exe --windows source\input.elf app.exe
Zachowaj --windows: sama nazwa app.exe nadal daje domyślny format Linux ELF.
Linux
chmod +x relinker-v0.1.2
./relinker-v0.1.2 source/input.elf app.elf
Konwersja dla komputera Intel
Dodaj --to-intel, jeśli korzystasz z udokumentowanej drogi dla Intela:
.\relinker-v0.1.2.exe --windows --to-intel source\input.elf app.exe
Flaga przepisuje obsługiwane instrukcje charakterystyczne dla AMD znalezione w pliku wykonywalnym i dołączonych modułach. Nie obsłuży takich instrukcji generowanych przez grę w trakcie wykonania. Jeśli konwersja się zatrzyma, zachowaj pierwszy błąd, zanim przeniesiesz pliki lub zmienisz kompilację.
Krok 4: przygotuj katalog uruchomieniowy
Przekonwertowany program, biblioteki zastępcze systemu docelowego i zasoby gry umieść w oddzielnych miejscach:
game_directory/
app.exe # app.elf for Linux
libs/
libkernel.prx
libScePad.prx
... # Matching AnyPS5 system libraries
libgcc_s_seh-1.dll # Windows package only
libstdc++-6.dll
libwinpthread-1.dll
app0/
sce_module/
bundled-module.prx # Converted module, not the original console file
... # The game's resources
Relinker wypisuje dokładną ścieżkę każdego przekonwertowanego modułu jako Guest module:. Użyj wygenerowanych plików i zachowaj nazwy katalogów: wejściowe sce_modules/ lub prx/ zachowuje nazwę wewnątrz app0/. Zasoby gry skopiuj osobno, utrzymując ścieżki względne.
libs/ służy bibliotekom AnyPS5 zbudowanym dla systemu wyjściowego. Oryginalne konsolowe moduły .prx nie należą do tego folderu. W Windows trzy DLL MinGW także muszą być w libs/; zmiana niepowiązanego wpisu PATH nie zastąpi brakującego tam pliku.
Uruchom z gotowego folderu:
.\app.exe
W Linuksie:
chmod +x app.elf
./app.elf
Jeśli tytuł otwiera zestawy czcionek systemowych konsoli, może potrzebować anyps5-fonts/ obok programu albo katalogu wskazanego przez ANYPS5_SYSTEM_FONTS. Instrukcja podaje oryginalne nazwy fontów i obsługiwane otwarte zamienniki Noto. Zwykłe zasoby gry w app0/ nie zastępują tych zestawów.
Krok 5: sprawdź sterowanie
Instrukcja sterowania v0.1.2 opisuje kontrolery mapowane przez SDL oraz wbudowane przypisania klawiatury i myszy. Używany jest pierwszy rozpoznany kontroler. Xbox A/B/X/Y odpowiada Cross/Circle/Square/Triangle; gałki i spusty są przekazywane dalej. Kliknięcie touchpada PlayStation jest przekazywane, ale współrzędne dotyku palca nie są zaimplementowane.
Aby zmienić klawiaturę lub mysz, utwórz anyps5-input.ini obok wygenerowanego programu, np.:
Cross = KEY:Space
Options = KEY:Return
Dla pliku w innym miejscu ustaw ANYPS5_INPUT_CONFIG. Pominięte akcje zachowują wartości domyślne, a te nadpisania nie zmieniają przypisań kontrolera. Niepoprawny wiersz wypisuje nazwę pliku i numer linii, po czym przerywa inicjalizację sterowania — sprawdź ten błąd przed diagnozowaniem samego kontrolera.
Opcjonalnie: zbuduj pełny projekt ze źródeł
Wybierz tę drogę, gdy potrzebujesz konkretnego commitu lub chcesz pracować nad środowiskiem uruchomieniowym. Zainstaluj obsługiwany kompilator i zależności ze strony Wymagania AnyPS5, a następnie wykonaj instrukcję danej wersji:
git clone https://github.com/boykopovar/AnyPS5.git
cd AnyPS5
git checkout v0.1.2
git submodule update --init --recursive
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++
cmake --build build --parallel
cmake --build build --target libs --parallel
Dla innego wyniku pobierz zapisaną w nim rewizję zamiast v0.1.2, wraz z osobno opisanymi poprawkami. Skopiuj biblioteki docelowe z build/core/libs/libs/. Zbudowanie samego relinkera ich nie tworzy; przebudowanie tylko programu po zmianie biblioteki pozostawia stare środowisko.
Wykorzystaj pierwszą próbę
Zanotuj, czy próba zatrzymuje się podczas konwersji, ładowania bibliotek, na logotypach, w menu czy w grze. Zapisz pierwszy błąd i specjalny sposób wejścia na poziom.
W razie zatrzymania przejdź przez Rozwiązywanie problemów z AnyPS5. Opcję konwersji w przeglądarce oraz jej oddzielne limity wejścia i zapisu opisuje Konwerter AnyPS5 w przeglądarce.