PCSX2 dev.1.7.2652

Wypada jasno napisać, że z uwagi na liczbę zmian wprowadzanych w rozwojowych wydaniach tytułowego PCSX2, nie zawsze chce mi się szykować materiały poświęcone temu projektowi… Niby można by przejrzeć i opisać zmiany pobieżnie, ale zawsze kończy się to na szczegółowym prześledzeniu każdej z nich. Niestety, zakres czynności jakie wykonuję w bieżącym miesiącu nie pozwala mi na taką rozpustę, dlatego musicie wybaczyć mi okrojoną wersję niusa o przedmiotowym projekcie.

PSEmu.pl img - PCSX2 emulator running Kingdom Hearts high quality 4K hires

Oznaczona ciągiem v1.7.0-dev-2652 wersja z 25 kwietnia br., w stosunku do opisanych poprzednio wydań zawiera zmiany obejmujące między innymi:

  • zaprzestano rozwoju i kompilacji kodu przeznaczonego dla 32.bitowych wydań emulatora;
  • wprowadzono obsługę interfejsu Direct3D 12;
  • dodano możliwość wyświetlania obrazu z wykorzystaniem interfejsu Metal;
  • zaimplementowano obsługę FXAA w interfejsie Vulkan;
  • dodano opcję umożliwiającą prawidłowe wyświetlanie obrazu 480p w proporcach 3:2;
  • dodano możliwość tworzenia makr dla kontrolerów sterowania;
  • wdrożono obsługę funkcji GL_EXT_shader_framebuffer_fetch oraz VK_ARM_rasterization_order_attachment_access, zwiększających wydajność generowania obrazu na wybranym sprzęcie. Najciekawsze wyniki uzyskano na układach Intela wyświetlających obraz przez OpenGL w systemach Linux, jak ktoś posiada, warto przetestować;
  • wprowadzono możliwość zmiany regionu przypisanego do posiadanego BIOSu;
  • zaimplementowano obsługę biblioteki libzip, co przy wykorzystaniu kompresji zstd umożliwiło m.in. 40% wzrost wydajności przy generowanie plików szybkiego zapisu oraz eliminację znacznej ilości kodu wykorzystującego wx;
  • wprowadzono autonomiczne definiowanie ustawień DNS i DHCP oraz funkcje pozwalające na przetwarzanie pakietów ARP, TCP i ICMP;
  • dodano wsparcie dla obrazów gier w formacie gzip;
  • zaimplementowano bibliotekę xinput1.4 wraz z rozszerzeniem SCP, zapewniającymi obsługę wykrywania siły nacisku na guziczki kontrolera DualShock3;
  • usprawniono działanie funkcji odpowiedzialnych za odczyt płyt z grami na pierwsze PlayStation;
  • dodano możliwość kompilacji kodu z wyłączonym wsparciem OpenGL, co wydaje się przydatne dla użytkowników systemów macOS oraz przy ewentualnym portowaniu programu na platformę UWP;
  • usprawniono działanie algorytmów usuwania przeplotu;
  • wdrożono funkcje RunOnCPUThread() oraz RunOnUIThread() w interfejsie bazującym na bibliotekach QT, jednocześnie zmieniając dotychczasowo wykorzystaną fagę iopBreakpoint na nowe algorytmy obsługi przerwań IOP zapewniające większą funkcjonalność i stabilność emulatora;
  • usprawniono emulację działania kart pamięci;
  • naprawiono błędy występujące przy generowaniu 24.bitowego obrazu, usuwając liczne artefakty powstałe przy niewłaściwym przetwarzaniu danych w buforze ramki;
  • poprawiono działanie algorytmu odpowiedzialnego za detekcję 16.bitowych tekstur;
  • zoptymalizowano operacje związane z kalkulacją adresów MTBA i obsługę mipmap;
  • zaimplementowano mechanizm zwiększający zakres danych przetwarzanych przez funkcje emulując VU(0), gdy jednostka ta otrzymuje na wejściu jedynie niewielkie pakiety;
  • usprawniono emulację efektu przezroczystości dla przypadku gdy wartości ALPHA.A i B są sobie równe, lub gdy na wyjściu pojawi się Cd;
  • usunięto błedy występujące przy przetwarzaniu skompresowanych tekstur pod interfejsem DX11;
  • usprawniono proces ładowania plików ELF;
  • usprawniono emulację instrukcji LDL i LDR;
  • usunięto błędy uniemożliwiające prawidłowe działanie breakpointów JIT;
  • poprawiono obsługę skompresowanych tekstur;
  • zaktualizowano bazę kontrolerów, usprawniając dotychczasowe wsparcie dla urządzeń przeznaczonych dla konsol takich jak: ROG Chakram, EasySMX, Dual Box Wii Classic;
  • poprawiono błędy i zaktualizowano tłumaczenie programu na język: Xxxxx;
  • zaktualizowano biblioteki programu oraz te użytkowane w serwisie GH: rapid-Qt do wersji 6.3.0, fmt do wersji 8.1.1, yaml do wersji 0.4.1, actions/cache do wersji 3 oraz peter-evans/create-pull-request do wersji 4;
  • zwiększono kompatybilność programu, usprawniając emulację tytułów takich jak… Burnout, Cars, God of War, God of War2, Hitman – Contracts, Jikkyou Powerful Pro Yakyuu, Metal Arms – Glitch in the System, Metal Gear Solid 2 – Sons of Liberty, Metal Gear Solid 3, Need for Speed Undercover, Onimusha 3, PowerDrome, Radiata Stories, Reel Fishing 3, Rockman X8, Rogue Galaxy, Shining Wind, Silent Hill Origins, Snoopy Vs Red Baron, Tekken 5, Tiger Woods PGA Tour 2002, Transformers Armada: Prelude to Energon, Wild Arms Alter Code F, Wipeout Fusion, Wrestle Kingdom;

No i wyszło jak zawsze. Zapraszam do pobieralni gdzie znajdziecie jeszcze cieplutkie wydanie rozwojowe emulatora dla systemów Linux oraz Windows oraz kod źródłowy przedmiotowego programu.