PCSX2 dev.1.7.0-1040

Powrót do żywych po koronnej rekonwalescencji, rozpoczynam wpisem związanym z najpopularniejszym emulatorem PlayStation2.

Shadow of the Colossus @ PCSX2

Oznaczona ciągiem v1.7.0-dev-1040-gb6246a7ba rozwojowa wersja PCSX2 obejmuje w stosunku do opisanego poprzednio programu między innymi:

  • rozbudowano funkcje odpowiedzialne za komunikację międzyprocesową;
  • usunięto zbędne optymalizacje w funkcjach emulujących jednostki microVU;
  • rozbudowano emulację efektu pogłosu w funkcjach SPU2;
Czytaj dalej PCSX2 dev.1.7.0-1040

PCSX2 dev.1.7.0-927

Listę styczniowych aktualności, standardowo kończymy wpisem o topowym projekcie umożliwiającym uruchomienie gier z PlayStation2 na komputerach.

Oznaczona ciągiem v1.7.0-dev-927-g6445af6eb rozwojowa wersja PCSX2 obejmuje w stosunku do opisanego poprzednio programu między innymi:

  • usprawniono obsługę dźwięku CDDA oraz wyjścia SPDIF
  • poprawiono błędy powodujące nieprawidłowy dobór częstotliwości odświeżania występujące przy pauzowaniu procesu emulacji;
  • wdrożono emulację dysków ATA;
Czytaj dalej PCSX2 dev.1.7.0-927

PCSX2 dev-g2c7f54134

Grudniowy przegląd nowości jakie pojawiły się na scenie kontynuuje najpoważniejszy gracz wśród emulatorów systemu PlayStation2.

Shadow of the Colossus

Oznaczona ciągiem v1.7.0-dev-767-g2c7f54134 rozwojowa wersja PCSX2 obejmuje w stosunku do opisanego poprzednio programu między innymi:

  • usprawniono emulację microVU poprawiając przetwarzanie instrukcji VU1;
  • poprawiono błędy występujące przy kilkukrotnym włączeniu kamery EyeToy;
  • przepisano na nowo i zoptymalizowano kod odpowiedzialny za obsługę kontrolerów gier;
Czytaj dalej PCSX2 dev-g2c7f54134

PCSX2 dev-g626bf2788

Przegląd listopadowych nowości jakie pojawiły się na scenie kończę wpisem poświęconym rozwojowej wersji najpoważniejszego gracza wśród emulatorów systemu PlayStation2.

Final Fantasy 12

Oznaczona ciągiem v1.7.0-dev-619-g626bf2788 rozwojowa wersja PCSX2 obejmuje w stosunku do opisanego poprzednio programu, zmiany takie jak:

  • rozbudowano zintegrowaną bazę gier z poprawkami, i dedykowanymi ustawieniami dla poszczególnych tytułów, poprawiono literówki i inne błędy;
Czytaj dalej PCSX2 dev-g626bf2788

PCSX2 dev-g03ba36411

Kilkukrotnie pisałem o Play! nie wypada nie napisać o najnowszej rozwojowej wersji emulatora PCSX2.

ICO uruchomione na PCSX2

Oznaczona ciągiem 439-g03ba36411 rozwojowa wersja PCSX2 v1.7.0 obejmuje w stosunku do swej poprzedniczki zmiany takie jak:

  • naprawiono błędy interfejsu gsdx powodujące nieprawidłową pracę pod D3D DX11;
Czytaj dalej PCSX2 dev-g03ba36411

PCSX2 dev-g4d0650baa

Skoro w poprzednim niusie wspomniałem o PCSX2 to wypada wrzucić w sekcję Pliki najnowszą rozwojową wersję tegoż emulatora.

Kingdom Hearts uruchomione na PCSX2 w wysokiej rozdzielczości.

Oznaczona ciągiem 229-g4d0650baa rozwojowa wersja PCSX2 v1.7.0 obejmuje w stosunku do swej poprzedniczki zmiany takie jak:

  • usunięto nieużywane pliki interfejsu OpenCL
Czytaj dalej PCSX2 dev-g4d0650baa

PCSX2 SVN r5932

Od publikacji ostatniej stabilnej wersji emulatora minęły dwa miesiące, dlatego warto się przypatrzeć jakie modyfikacje, od tego czasu poczyniono w projekcie PCSX2.


Lista najistotniejszych zmian rozwojowej wersji emulatora przedstawia się następująco:
  • poprawiono obsługę najnowszej wersji bibliotek Mesa oraz OGL/GL4.1 pod linuxem,
  • znacząco rozbudowano narzędzia developerskie takie jak: zaawansowany podgląd deasemplera R5900 i R3000, podświetlana lista zmian w rejestrach, skanowanie funkcji i widok makr, przerwania warunkowe, widok pamięci z możliwością edycji, itp.,
  • usprawniono obsługę pamięci, poprawiając funkcje odpowiedzialne za emulację DMA,
  • skorygowano ustawienia synchronizacji pionowej dla obrazu wyświetlanego z przeplotem,
  • naprawiono błędy występujące przy emulacji VIF, GIF i SPR, kilka dzięciołów we wtyczce SPU2-X oraz zintegrowanej bazie gier,
  • z kolei w pluginie graficznym GSdx zaimplementowano obsługę funkcji DATE, wykorzystywanej do generowania cieni i innych efektów, oraz anizotropowe filtrowanie tekstur zwiększające jakość obserwowanego pod kątem obrazu,
  • zaimplementowano szereg funkcji mających w przyszłości umożliwiać uruchamianie na emulatorze gier z pierwszego PlayStation.
Ok, czas na tradycyjne posłowie praktyczne. Jak każdy widzi, zmian mogłoby być więcej, co więcej fixy poprawiają kompatybilność programu jedynie względem kilku tytułów, tj.: Syphon Filter – Omega Strain, Final Fantasy XII, All Star Pro Wrestling, Legendz Gekitou! Saga Battle oraz seria Gromit. Niemniej, jeśli ktoś doświadczył problemów grając w jedną z wymienionych pozycji, ewentualnie posiada przyzwoity sprzęt z wypasioną grafiką i chciałby uzyskać jak najlepszy efekty wizualny emulując gry z PlayStation2… zdecydowanie powinien zainteresować się rozwojową wersją PCSX2, tym samym odwiedzić nasz Download w celu pobrania stosownego pliku, ewentualnie stronę domową projektu w poszukiwaniu szczegółowych informacji na temat najnowszego wydania.

PCSX2 SVN r5762

Zastanawiałem się czy zaglądając po dwóch miesiącach do listy zmian rozwojowej wersji PCSX2, po raz kolejny poczuje niedosyt, czy też może, tym razem całkiem pozytywnie się rozczaruje? Po przyswojeniu całkiem sporej dawki informacji z czystym sumieniem mogę napisać, ze rewolucji może nie ma, niemniej od rozczarowania jak najbardziej mi daleko


Po kolei jednak, przed własnym wywodem tradycyjna porcja teorii w postaci skondensowanej piguły najistotniejszych zmian:
  • w emulatorze, usprawniono obsługę pamięci, bufora SIO, mVU, Path3, ViF przy wykonywaniu rozkazów VU i obsłudze nierozpoznanych danych o zmiennym ułożeniu, obsługę warunkowych gałęzi w microVU oraz funkcji emulujących R5900, w tym rekompilację kodu COP2
  • we wtyczce dźwiękowej SPU2-X, zmodyfikowano funkcje tensora, zmniejszając tym samym opóźnienia do 30ms, umożliwiono wykorzystanie biblioteki SDL pod Linuksem i zoptymalizowano kod pluginu
  • wtyczka gsdx ogl wzbogaciła się możliwość odmapowania buforów, zwiększające płynność poprawki w funkcji GL_ARB_buffer_storage oraz zmodyfikowaną obsługę wystąpień EGL_BAD_MATCH mającą na celu rozwiązanie problemów biblioteki Mesa na układach graficznych Intel.
  • usprawniono sterowanie poprawiając funkcje odpowiedzialne za w wykrywania osi i obsługę myszy
  • dla wszystkich z opisanych powyżej zmian wprowadzono stosowne poprawki do bazy gier
OK, czas na posłowie, czyli zdań kilka na temat tego co mnie cieszy, a co mogłoby uwierać. Jeśli chodzi o drugie z zagadnień, z pewnością byłby to stanik, gdybym takowy nosił, ewentualnie brak wspomnianej rewolucji w temacie emulacji PS2. Nie ma jednak co płakać – brak uroczego biustu pod brodą rekompensuje psycho-fizyczny i spokój przez c-a-a-a-ły miesiąc, a rewolucji [nie oszukujmy się] nie ma co się spodziewać w przypadku tak rozbudowanego projektu jak PCSX2. Skupmy się więc na pozytywach – szczególnie, że powodów do suszenia zębów nie brakuje. Ulepszona emulacja dźwięku, sterowania, generowania obrazu na Intelowskim GPU pod Linuxem i sporo poprawek w jądrze programu, w tym obsłudze COP2. No właśnie, COP2, niby mała poprawka, a jednak, niezwykle istotna, bo za jej sprawą znacząco zwiększyła się kompatybilność programu, co zaobserwować można w przypadku tytułów takich jak choćby: Ace Combat 4, Ace Combat 5, Ace Combat – The Belkan War, Ace Combat: Squadron Leader, Crash Bandicoot Wrath of Cortex, Dawn of Mana, DT Racers, Forbidden Siren 2, Ghost in the Shell, Gunfighter 2, Run Like Hell, Shadow Hearts, Siren 2, The Mark of Kri i Warship Gunner 2. Innymi słowy – wypas, zapraszam do Downloadu… aaa… no i oczywiście do komentowania niusa.

PCSX2 SVN r5726

Czy to tylko ja, czy Wy również macie wrażenie, że w bieżącym roku PCSX2 trzyma się ciut z boku. Rozumiem, że publikacja programu oznaczonego magicznym znacznikiem 1.0 była wielkim wydarzeniem, a co najmniej dobra kompatybilność względem 90% dostępnych tytułów to nie małe osiągnięcie. Całkiem miło jest również patrzeć, na postępy poczynione przez projekty udające pozostałe systemy z rodziny PlayStation, którym to tytułowy PCSX2 udostępnił pola do popisu…


… niemniej nie o nich dziś piszę, toteż powstaje pytanie czy dwadzieścia-kilka poprawek poczynionych w przeciągu ostatnich czterdziestu-paru dni daje powód do zadowolenia? Zastanówmy się nad tą kwestią, przyglądając się najistotniejszym zmianom poczynionym w projekcie:
  • we wtyczce gsdx ogl wprowadzono możliwość przełączania trybu generowania obrazu klawiszem F9,
  • zrezygnowano z MSAA na rzecz FXAA oraz wewnętrznego podbicia rozdzielczości,
  • rozbudowano funkcje odpowiedzialne za obsługę tekstur i shaderów,
  • usprawniono wyświetlanie w trybie widescreen,
  • zwiększono kompatybilność pluginu względem kart ATI/AMD,
  • eksperymentalnie zaimplementowano obsługę OGL4,
  • wykryto błąd przy generowaniu pliku NVM przez emulator i naprawiono go, co rozwiązało problem nieoczekiwanego kończenia programu w przypadku kilku tytułów,
  • poprawiono obsługę multitap,
  • usprawniono obsługę kart pamięci oraz zaimplementowano wsparcie czystych danych (RAW) pochodzących z kart pamięci pierwszego PlayStation.
Biorąc po uwagę powyższe, z jednej strony (jak zwykle) cieszy fakt, że prace posunęły się do przodu, podobnie jak kompatybilność emulatora względem gier takich jak: Timesplitters, Persona 3 i 4, Metal Gear Solid 3 oraz Age of Empires 2. Zdecydowanie in plus należy zaliczyć ukłon w stronę osób pracujących na sprzęcie ATI/AMD oraz pod kontrolą systemów Linux, polegający na zwiększeniu osiągów programu dla ww. sprzętu/systemu. Niebywale istotnym, wydaje mi się również próba zaciągnięcia do pracy OpenGL4 – biorąc pod uwagę fakt, że implementacja (dosłownie) kilku rozwiązań z wspomnianego API poskutkowała wzrostem wydajności rzędu 5-8%. Wszystko to jest jak najbardziej pozytywne i sprawia, że z wypiekami na twarzy czekam na kolejne wydania emulatora. Z drugiej zaś strony nie potrafię pozbyć się uczucia niedosytu, ubolewam nad zasięgiem wprowadzanych zmian i z utęsknieniem czekam na krzykliwą innowacje. Zanim to jednak nastąpi, standardowo odsyłam Was do naszego Downloadu po najnowszą wersję rozwojową tytułowego emulatora oraz na stronę domową PCSX2.

PCSX2 SVN r5702

Biorąc pod uwagę listę zmian, poczynionych ostatnio w rozwojowej wersji PCSX2, nie liczyłbym na rychłe pojawienie się stabilnej wersji emulatora. Czyszczenie kodu, drobne poprawki i spory nakład pracy w rozwój wtyczki graficznej. Tak oto streściłbym co działo się z projektem w przeciągu minionego miesiąca. Czy oznacza to jednak, że można odpocząć, odwracając chwilowo wzrok od tytułowego projektu? Absolutnie nie!


Zanim jednak podam ku temu przyczynę przyjrzyjmy się zmiano poczynionym w najnowszych wersjach SVN:
  • opublikowano wtyczkę graficzną GSdx w wersji wykorzystującej instrukcje avx2
  • wyczyszczono kod pluginu GSdx pod kątem kompilacji na VS2010
  • rozbudowano i poprawiono obsługę shaderów we wtyczce GSdx ogl
  • zwiększono kompatybilność opisanej powyżej wtyczki względem sterowników nvidia
  • wyczyszczono i zoptymalizowano kod emulatora w wersjach dla systemu Windows i Linux
  • zoptymalizowano kod emulatora pod kątem kompilacji na VS2012 Express
  • we wtyczce GSdx ogl zaimplementowano wsparcie dla gles
Jak każdy widzi, zmiany istotne, ale raczej niewielkie. Ale czy na pewno? Mnie osobiście mocno intryguje ostatni punkt z powyższej listy, rodzący następujące pytanie. Mając do wykorzystania dobrodziejstwa OpenGL 4.2 i dedykowanych rozszerzeń API, w jakim celu implementowano GLes? Przecież to środowisko pisane z myślą o przeglądarkach i urządzeniach mobilnych! Czyżbyśmy mieli doświadczyć migracji kolejnego projektu na urządzenia przenośne? Czy istnieje cień szansy, że układy takie jak Exynos 5, Snapdragon 800, czy Tegra 4 będą w stanie sprostać emulacji PlayStation2? Cóż, czas pokaże. Tymczasem, zapraszam do downloadu po najnowszy PCSX2 SVN r5702.