Od dnia premiery rewolucyjnej konsoli PlayStation minęło już niemal 25 lat. Szmat czasu! W technologiach, które stale się pojawiają i przemijają to jak kilka lat świetlnych w kosmicznej skali odległości. Nie inaczej dzieje się z materią archiwizacji gier.MezozoikCofnijmy się na chwilę w czasie. Równolegle z komercyjnym startem PSX, zaczęto kopiować pierwsze gry, dostępnymi wówczas na rynku nagrywarkami, które nie obsługiwały wtedy jeszcze mode2 (czyli odczytu bloków w 2352 bajtach wraz z EDC i ECC), ani nowego trybu RAW-DAO. Pierwsze obrazy płyt były zlepkiem *.iso, *.wav (lub co gorsza *.mp3), spiętych na sznurek plikiem tekstowym *.cue i wymagały specjalnej crackerskiej opieki by zadziałać na „przerobionej konsoli”. Rewolucję przyniosły dopiero nowsze nagrywarki ze wsparciem RAW-DAO96 i nowsze wsady do mikrokontrolerów (umownie: protoplastów modchipów w kolejnej generacji konsol), tak by możliwe było wykonanie obrazu płyty niemal 1:1, wypalenie jej na CD-R i późniejsze oddawanie się rozkoszom naszej ulubionej pikselozy na ekranie.Najpopularniejszymi programami i ich formatami obrazów były i w zasadzie nadal są:Alcohol 120%*.mdf + *.mdsBlindwrite*.bwt + *.bwi + *.bwsCDRWin*.bin + *.cueCloneCD*.img + *.ccd +*.subDiscJuggler*.cdiW dalszym ciągu część z nich można spotkać na pirackich „warezowniach”, a część do dziś się poniewiera to tu to tam na dyskach twardych podstarzałych właścicieli PSone. Zakładając, że owe obrazy zostały wykonane poprawnie1, na sprzęcie który to umożliwia – to co w nich było złego? Absolutnie nic. Cały czas nadają się do konsumpcji przez emulatory i „wypalarki”, a taka grupa jak Redump do dziś zbiera sumy kontrolne tylko z *.bin. Mało tego, nadają się nawet *.iso jeśli gra nie była zabezpieczana i nie posiadała ścieżek CD-Audio (np. niedokończone „Wrota Baldura” czy legendarna beta „Rezydencji Zła 2” ochrzczona przez fanów „Resident Evil 1.5”).BIN może występować w dwóch wariantach: jako jeden obraz lub jako obraz rozbity na kolejne ścieżki. Z tych „wielo-track-owych” można samemu zbudować pojedynczy po prostu łącząc kolejne po sobie pliki w jedną całość – co nie wymaga jak niektórzy sądzą montowania obrazu w wirtualnym napędzie i ponownego tworzenia obrazu z wirtualnej płyty… Wystarczy prosty skrypt w Windows2 i rzecz jasna poprawa CUE by nie prowadził do plików, które już nie istnieją, a ścieżek audio na płycie.Zabezpieczenia przed kopiowaniemOryginalne gry na PlayStation były zabezpieczane na cztery sposoby, z czego tylko dwa przed kopiowaniem. Pierwszy z nich opierał się na niepoprawnym EDC (Error Detection Code) na sektorach 12 i 15, które to zawierały same zera (a przecież suma kontrolna nawet z zera nie może być równa zero). Wiele ówczesnych programów nagrywających od razu w locie poprawiała EDC, a więc i te używane jako marker. Kiedy napęd zwracał poprawną sumę, był to jasny sygnał że użytkownik włożył piracką grę na CD-R, a nie wytłoczony oryginał na PSX CD-ROM.Drugi to niesławny Libcrypt, obecny tylko w grach wydanych w PAL. Opierał się na sprawdzaniu sumy kontrolnej CRC16 z danych subkanałowych. Jeśli dane te są nieobecne lub niepoprawne to wyliczona suma również będzie niepoprawna co jest sygnałem dla programu, że został skopiowany. Zależnie od dewelopera, gra może się intencjonalnie zawieszać lub nawet złośliwie bug-ować (jak np. Spyro 3).Formatami, które przechowują takie dane są *.sub, *.sbi i *.lsd3. Większość emulatorów patchuje w locie oba zabezpieczenia, więc są istotne tylko dla tych, którzy chcą wypalić obraz na nośniku optycznym i uruchomić na prawdziwej konsoli, ewentualnie dla emulatorów których autorzy chcieli być świętsi od Papieża. 😉TeraźniejszośćObrazy PSARPlayStation Portable mniej więcej w połowie swojej rynkowej egzystencji, dostało emulator PSX’a. A skoro oficjalny emulator to i gry w sklepie. Sony zdecydowało się sprzedawać tytuły ze swojej pierwszej konsoli w PlayStation Store, obudowane w paczki *.pbp, meta dane, obrazki i instrukcję obsługi4. Bardzo szybko scena podłapała pomysł i w zhakowanym POPSie (czyli wspomnianym emulatorze) dodała obsługę „lewych PBP”.Czym się różnią „lewe” od oficjalnych?5 Stopniem kompresji (na korzyść oficjalnych), formatem audio (Sony niestety stosuje stratny *.ac3, podczas gdy scena z tego co kojarzę wybrała bezstratny *.flac) i brakiem poprawnej obsługi wielo-płytowych gier powyżej 2GiB. Ponadto „oryginalne PBP” wymagają pliku KEYS.BIN, którym deszyfruje zawartość – z tego też powodu, zapewne ze strachu przed pozwem, żaden z autorów któregokolwiek emulatora do tej pory nie zdecydował się na dodanie obsługi tego formatu. Wszystkie emulatory jeśli wspierają *.pbp to tylko ten nieoficjalny6. Na dodatek PSAR nie obsługuje danych sub-kanałowych.Jak widać, PBP choć nowoczesny i możliwy do użycia na PSP, PSV, PSTV, PS3, PSC i wielu emulatorach na innych platformach, to ma kilka poważnych wad, które dyskwalifikują go jako format archiwizacyjny.Obrazy VCDNiewielu wie, że w Japonii przez krótki okres działały tzw. kanały promocyjne czyli specjalne strony internetowe, na które można było wejść mając PlayStation 2 z oficjalnym zestawem HDD, na którym zainstalowany był „Browser 2.0”. Można było stamtąd ściągnąć między innymi kilka gier na PSX, wraz z emulatorem – i to właśnie ten emulator został dawno po latach świetności konsoli, wydłubany i zhakowany.Obrazy płyt, które rozumie POPStarter (loader który patchuje w locie oryginalny POPS), to enigmatyczne *.vcd. Wbrew pozorom to nie jest Video-CD, a Virtual CD7. 😉 Od zwyczajnych obrazów w *.bin odróżnia się tylko specjalnym 1MiB nagłówkiem, który imituje TOC.Obrazy ECMNie znam genezy i możliwości tego formatu, nie miałem z nim zbyt wiele styczności, a także nie znalazłem w sieci satysfakcjonującej dokumentacji. Nie najgorzej kompresuje, ale nie wiem jak jest z „przenośnością” zabezpieczeń, a jedynym emulatorem jaki znam wspierający *.ecm to ePSXe.Obrazy CHDNajlepszym formatem skompresowanych obrazów płyt jest na dzień dzisiejszy CHD8. Charakteryzuje się najmniejszym ze wszystkich wyżej wymienionych plikiem wynikowym, a do tego bardzo szybką dekompresją co czyni go idealnym do streamowania (tak samo jak PSAR). W razie potrzeby łatwo go z powrotem przerobić na *.bin+*.cue. Niestety format ten nie obsługuje danych sub-kanałowych, więc w przypadku zabezpieczonych gier, warto zaopatrzyć się dodatkowo w *.sbi do konkretnej skompresowanej gry. Emulatorem, który nie pogardzi *.chd jest Mednafen Beetle.PodsumowanieA więc jak żyć? Dalej można żonglować płytami jeśli używasz prawdziwej konsoli. Wszak CD-ROM (a więc również te czarne jak smoła PSX CD-ROM) przeżyją ciebie i mnie9. Dalej można też używać tradycyjnych obrazów, spakowanych np. 7-Zipem. Mnie akurat szczególnie nie zależy na tym aby jeden plik = jedna gra, ale za to zależy na jak najmniejszej zajętości. I co prawda mam już bibliotekę wyssaną z PlayStation Store, ale gdybym miał budować ją od nowa to wybrałbym CHD. Przynajmniej w 2019 roku.Zatem do przeczytania za kolejne 25 lat! Być może ktoś zaprojektuje kontener z jeszcze lepszą kompresją, a przy tym bez strat na jakości muzyki, jedno-plikowy i przechowujący także wszystkie zabezpieczenia? Oby tylko czas okazał się dla nas łaskawy.* * *1 Jedna zamknięta sesja, mode2, RAW-DAO96, nienaprawianie danych sub-kanałowych, odczyt danych sub-kanałowych.2 Uruchom CMD i wklep według wzoru: „copy /b track1.bin+track2.bin frankenstein.bin”. Rzecz jasna pod track* podstawiasz prawdziwe nazwy plików i oczywiście można łączyć ze sobą więcej niż tylko dwie części. Istotne aby wpisywać je zgodnie z kolejnością.3 Programem, który odtworzy *.sub z *.sbi lub *.lsd jest SBITools.4 W przypadku PS3 i PSV/PSTV są to ich natywne paczki *.pkg, w których to znajdują się dodatkowe grafiki i obrazy kart pamięci dla PS3 do XMB i te same do bąbla dla PSV. Na PSP to samowystarczalna paczka *.pbp, która również zawierała obrazki, karty, opisy, mini instrukcję obsługi i rzecz jasna obraz/obrazy płyt/płyty w formacie PSAR.5 Nieoficjalne PBP można zbudować za pomocą np. programu PSX2PSP, oficjalnych zbudować nie ma czym, ale można je wypakować za pomocą psxtract. Do paczek *.pkg można się dobrać np. programem PSN PKG Decryptor & Extractor.6 Taka ciekawostka. Adrenaline na PSV/PSTV używa oficjalnego wirtualizatora PSP, a więc i oficjalnego emulatora PSX, który jest częścią fw PSP. Dlatego też również „oficjalne PBP” są przezeń obsługiwane.7 Aplikacją do konwersji na *.vcd jest PSX2VCD.8 Program CHD Manager jest częścią emulatora MAME i tam też należy go szukać (chdman.exe). Aplikacja analizuje parę *.bin/*.cue i rozpoczyna kompresję algorytmem adekwatnym do znalezionych danych (LZMA lub Deflate dla zwykłych danych i/lub FLAC dla CD-DA).Zamiast mordować się wklepywaniem Pana Tadeusza w CMD, polecam poniższy znaleziony w sieci skrypt (wystarczy zapisać jako *.bat, wrzucić wraz z programem w miejsce z grami do kompresji i po plebejsku weń dwu-kliknąć). Zadziała również rekurencyjnie (i bonusowo także z dumpami gier na Dreamcasta rozbitymi na tracki, podane w pliku *.gdi).for /r %%i in (*.cue, *.gdi) do chdman.exe createcd -i „%%i” -o „%%~ni.chd9 W dzisiejszych czasach kiedy płyty mało kto wypala, a jeszcze mniej osób się na nich zna, ludzie przypisują nośnikom nieorganicznym żywotność organicznych. Tłoczone płyty optyczne czyli CD-ROM i wszystkie ich wariacje, o ile wyprodukowane poprawnie, powinny przetrwać dobre sto lat, podczas gdy organiczne CD-R przy dobrych wiatrach 20 lat (te najniższe jakościowo bywało, że zaledwie kilka miesięcy).Materiał opracował dla was Berion.