PCSX-Redux

PCSX-Redux logo, image at PSEmu.pl - recent news, latest files and more PS1 Emulation, emulacja, wiadomości, emulatory, gry homebrew.

OPIS

PCSX-Redux to kolejny emulator bazujący na kodzie PCSX. W porównaniu do pozostałych programów korzystających z ww. źródła (PCSX-df, PCSX-Reloaded PCSX-ReARMed) opisywana aplikacja nie tylko chce wyeliminować błędy i udoskonalić kod pierwowzoru, ale również i przede wszystkim wprowadzić zmiany teleportujące 15.letni projekt w standardy drugiego dziesięciolecia XXI wieku.

Realizacja przytoczonego założenia ma obejmować:

  1. Poprawę kodu poprzez usunięcie błędów, reorganizację i dostosowanie struktury do aktualnych standardów;
  2. Rozbudowę funkcjonalności przez implementację bibliotek zapewniających przenośność oraz przygotowanie zaawansowanych narzędzi dla programistów;
  3. Wprowadzenie własnych modyfikacji w tym, silnika renderującego opartego na OpenGl3+, oryginalnego interfejsu graficznego (GUI) bazującej na bibliotece ImGui oraz monolitycznego bloku kompleksowo emulującego system w miejsce systemu wtyczek obsługującego poszczególne podzespoły;

Egzamin teoretyczny (z marketingu) zaliczony na mocne 4 z plusem. Przyjrzyjmy się praktycznej realizacji powyższych koncepcji. Przeglądając kod projektu, nie można negować starań autorów. Liczba wprowadzanych do źródła zmian jest spora, choć ocena ich wagi pozostaje dyskusyjna. Z jednej strony cieszy implementacja zaawansowanych rozwiązań zaczerpniętych choćby z PGXP. Z drugiej zaś, drażni liczba zatwierdzonych zmian ograniczających się do usunięcia literówek, nadmiarowych spacji czy zbędnych przeniesień do nowej linii. Punkt drugi założeń odnoszący się aktualizacja bibliotek to bezdyskusyjnie zmiana in plus, choć upierdliwie mógłbym napisać że w aktualnych projektach (np. Avocado czy Duckstation) to standard… to jednak skłaniam się ku zdaniu, że kolejny multiplatfrmowy emulator o otwartym kodzie jest bardziej niż mile widziany. Punkt trzeci założeń jest dla mnie problematyczny, bo teoretycznie brzmi on super, ale w praktyce wszystko to już gdzieś widziałem. Monolityczną budowę dostarcza większość publikowanych obecnie emulatorów PS1, a taka Xebra idzie krok dalej zostawiając furtkę do korzystania z zewnętrznej wtyczki graficznej. Interfejs oparty na ImGui potrafi zachwycić, acz wspomniany zachwyt kieruję w stronę korzystającego z tej biblioteki i w mej ocenie bardziej intuicyjnego Avocado. Wsparcie OpenGl3+ jest fajne, ale to nie jedyny interfejs multiplatformowy, nie pogardziłbym implementacją środowiska Vulcan, nie odstawiałbym w kąt hardkorowego generowania obrazu w trybie programowym. Na koniec rodzynek w postaci narzędzia dla programistów, bo choć aplikacje takie jak: Avocado, BizHawk, no$psx, czy pSX radzą sobie w temacie całkiem fajnie, to w przypadku opisywanego PCSX-Redux wygląda to po prostu świetnie. Podgląd zawartości VRAM, rejestrów, przerwań, zrzucanie zawartości GPU, edytor pamięci, debugger z obsługą pseudo-instrukcji i pomijaniem ISR, edytor LUA z konsolą to tylko część możliwości programu.

Mając na uwadze powyższe, trudno jest wydać jednoznaczny werdykt względem tytułowego PCSX-Redux. Z jednej strony emulator działa i nie wyróżnia się specjalnie spoza grona podobnych mu programów. Podobnie jak one ma swoje niedoskonałości, jak choćby brak kontrolek do konfiguracji sterowania. Jeżeli jednak, spojrzy się na temat szerzej niż z perspektywy szeregowego gracza to nie można nie dostrzec świetnego narzędzia dla programistów, które wnieść może bardzo wiele w rozwój emusceny i tworzenia kolejnych emulatorów pierwszego PlayStation.

edit@2021.07.13: W czerwcu 2021 r. program zdecydowanie zyskuje na funkcjonalności. Interfejs emulatora wzbogacono o możliwość zdefiniowania kontrolera, a rozwojowe publikacje projektu oficjalnie rozszerzono o pliki binarne dla systemów Linux oraz macOS.

GALERIA

INFO

Status projektu:aktywny
Licencja:open source, GPL-2.0
Systemy: Linux, macOS, Windows
Pierwsze wydanie:grudzień 2018 r.
Ostatnie wydanie:bieżący rok (wersja rozwojowa).
tabela: informacje dot. emulatora

POWIĄZANE TREŚCI

Niusy:

Pliki:

Linki: