Emulacja „małego” Atari

Atari 800XL, oraz jego odświeżona zliftingowana wersja 65XE to popularne komputery 8-bitowe, o których śmiało można powiedzieć że obok ZX Spectrum skomputeryzowały Polskę. Znacznie większe możliwości względem „spektrusia”, przy jednocześnie znacznie atrakcyjniejszej cenie w porównaniu do C64 to pierwszy i główny powód dużej popularności „atarynki” w naszym kraju. Drugim powodem dla którego Atari stało się w Polsce lat 80-tych komputerem numer 1 było zaangażowanie w jego dystrybucję kompetentnych ludzi, którzy zdążyli posmakować co to jest prowadzenie biznesu na zachodzie. Efekt był taki że każdy młody człowiek, który interesował się wówczas komputerami, prędzej czy później musiał mieć doświadczenia z maszynami z pod znaku góry Fuji. Nie inaczej było w moim przypadku, jeszcze w latach wczesnego dzieciństwa moje pierwsze spotkanie z tego typu sprzętem nastąpiło w czasie wakacji spędzanych u wujka który nabył konsolę będącą polskim klonem atarowskiego Ponga. Potem poznawałem kolejne stopnie wtajemniczenia, za sprawą rodziny i znajomych miałem przyjemność obcować z konsolą Atari 2600 oraz komputerami Atari 65XE. Wreszcie po kilku latach zdobyłem własne Atari 2600 by wkrótce potem zamienić je na wymarzonego Atari 800XL. Komputer ten, chociaż zepsuty, trzymam na pamiątkę do dziś, mam z nim bardzo miłe wspomnienia i zawsze darzyłem go sporym sentymentem.

Nic zatem dziwnego że już po przejściu na platformę Amigi szukałem dobrego emulatora 8-bitowego Atari. Wyboru wielkiego nie było, gdyż jedynym tego typu programem prezentującym jako taki poziom był Atari800. Ten niestety ze względu na niewielką moc obliczeniową procesorów z rodziny 68k nie mógł zapewnić emulacji jaką mógłbym uznać za zadowalającą. Sytuacja zmieniła się dopiero gdy wyposażyłem swoją A1200 w Blizzarda PPC. Procesor 603e 266MHz to była już jednostka która zapewniała moc wystarczającą na małe Atari. Niestety WOSowa wersja Atari800 mocno rozczarowała. Słaba stabilność i kompatybilność spowodowała że szybko pozbyłem się tego programu z mojego twardego dysku. Dopiero po kilkunastu latach od rozstania z realnym 800XL, komputer AmigaOne XE i wersja Atari800 dla AmigaOS 4, pozwoliła mi na bezstresowy powrót do oprogramowania które dawało mi tyle radości w latach wczesnej młodości. Emulator Atari800 przeznaczony dla najnowszego systemu Amigi jest naprawdę solidnym, przyjemnym zarówno w odbiorze jak i obsłudze kawałkiem softu, który z czystym sumieniem mogę polecić innym amigowcom. Skłamałbym jednak twierdząc że nie jest pozbawiony wad. Od jakiegoś czasu nie jesteśmy jednak skazani wyłącznie na to rozwiązanie, gdyż kilka lat temu pojawił się na naszej platformie długo wyczekiwany konkurent w postaci Atari++. Ostatnio port został zaktualizowany do wersji 1.60, co jest dobrą okazją aby przybliżyć to rozwiązanie czytelnikom, nie uciekając zarazem od porównań z emulatorem wcześniej dostępnym dla „przyjaciółki.

Konfiguracja – emulator Atari800

Amigowy Atari800 początkowo był rozwijany przez Sebastiana Bauera, jednak jego najnowszą odsłonę opublikował Ventzislav „drHirudo” Tzvetkov, człowiek ten jest również odpowiedzialny za Atari++.
Atrari++ podobnie jak Atari800 jest programem mającym za zadanie emulować maszyny Atari 400, 800, XL, XE oraz konsolę Atari 5200. Na tym w zasadzie jednak podobieństwa się kończą. Oba emulatory różnią się wyglądem, obsługą, mają różne zalety i wady. Główny konfigurator Atari800 pracuje w środowisku jako żywo przypominającym niebieski ekran Atari, natomiast zmiany podręczne jakie możemy wprowadzać podczas włączonej emulacji dostępne są z poziomu typowo amigowego systemowego menu. Niestety Atari++ jest zdecydowanie mniej zintegrowany z AmigaOS. Zasadniczy konfigurator to typowe SDLowskie „rękodzieło” niepodobne ani do Atari ani tym bardziej do Amigi. Środowisko to stwarza pewne problemy wpływające na wygodę obsługi pod AmigaOS, np. dostępne requestery do plików nie działają do końca dobrze i przynajmniej początek ścieżki dostępu należy wpisać z ręki, aby naprowadzić okno wyboru na właściwy cel. Menu dostępne w czasie pracy, nie jest niestety menu amigowym, a jedynie straszącą szarzyzną alternatywą. Konfigurację obu programów powinniśmy zacząć od podania modelu komputera jaki chcemy udawać oraz przypisania ścieżek do obrazów ROMu. Tutaj niewielka przewaga jest po stronie Atari++, który zadziała nawet bez wirtualnych kostek romu, gdyż stosowny odpowiednik jest „wszyty” w emulator. W przypadku Atari800, również obrazów romów nie musimy szukać, gdyż link do stosownego archiwum, ot tak po prostu znajdziemy w dokumentacji, co pozwala przypuszczać, że jest to jakaś forma legalu i nikt nas za proceder jego pobrania nie będzie ścigał.

Konfiguracja – emulator Atari++

Po wykonaniu czynności związanych z wyborem wirtualnego hardware, czas rozejrzeć się za softem. Tutaj bez dwóch zdań sporą przewagę ma Atari800. Emulator ten szczyci się obsługą 42 typów kartridży, jak również obsługą obrazów dysków we wszystkich popularnych formatach. Bezproblemowo akceptuje też pliki exe i pochodne (np. .com), warto przy tym dodać by nie sugerować się filtrami na pliki, jakie domyślnie są nałożone na requestery. Tak naprawdę program ten wspiera więcej rozszerzeń, więc w oknie wyboru pliku, zalecam owe filtry usunąć.

Wybór modelu komputera – emulator Atari800

W oficjalnej dokumentacji dla Atari++ znajdziemy informację że natywnym formatem plików dla tego emulatora jest XFD, jednak program obsługuje również najbardziej popularny format obrazów dyskietek ATR a od najnowszej wersji również DCM . Dodatkowo możemy liczyć na wsparcie dla plików exe, oraz kilku rodzajów kartridży. Niestety jest to mniej niż oferuje konkurent. Pierwszą rzeczą jaką zalecam wykonać to poeksperymentowanie z opcjami stacji dysków, gdyż pozostając na ustawieniach domyślnych ATR, DCM i EXE nie zadziałają i zabootujemy wirtualne Atari jedynie ze średnio popularnych obrazów dysków XFD.

Nie ma co ukrywać że emulatory, w szczególności te które odtwarzają starsze maszyny, uruchamiamy, głównie po to aby przypomnieć sobie gry. W czasach gdy realne Atari święciło czasy świetności było czymś nie do pomyślenia aby można było grać w gry komputerowe za pomocą klawiatury (pewnym wyjątkiem był tu ZX Spectrum). W sumie można się zastanowić jak pokręcona bywa czasami ewolucja. Zapewne 30 lat temu nikt by nawet nie pomyślał że stworzone do zupełnie innych zadań, tak nieergonomiczne urządzenie jak klawiatura zdominuje branżę elektronicznej rozrywki na komputerach, do tego stopnia że większość grających będzie przyzwyczajona wyłącznie do klawiszy i wręcz źle się będzie czuła z padem w dłoniach, a idealne rozwiązanie dla gracza jakim był joystick w zasadzie stanie się reliktem historii. Wróćmy jednak do tematu. Obsługa joysticka czy pada w przypadku Atari800 nie nastręcza najmniejszych problemów, program dobrze korzysta z rozwiązań systemowych, w tym z lowlevel.library. Akurat ja jestem tutaj wyjątkiem, gdyż na moim betatesterskim systemie działającym pod kontrolą X1000, problemy z wyżej wymienioną biblioteką nie pozwalają mi uruchomić tego emulatora w ogóle, lecz na Amidze One G4 XE, tego typu kłopotów nigdy nie miałem. Wy drodzy czytelnicy też nie powinniście się ich spodziewać.
Niestety w przypadku Atari++ znowu sytuacja wygląda gorzej. Co prawda cytując jeden z polskich portali informacyjnych przeczytamy że wszystko jest ok – „Atari++ wspiera AmigaInput, dzięki czemu podczas emulacji możemy korzystać z wszelakich padów i joysticków USB.” – moje doświadczenia wskazują że tak różowo nie jest. Oczywiście sprawę można znowu zrzucić na karb betasystemu, jednak praktyka podpowiada mi że to po prostu kolejne niedociągnięcie amigowego portu. Atari++ wykrywa co prawda pady, jednak nie udało mi się prawidłowo obłożyć przycisków kierunkowych i fire.Obłożenie domyślne jest niekompletne i bezsensowne np. za poruszanie się w stosownym kierunku wcale nie odpowiada krzyżak czy gałka na padzie, a przyciski akcji. Alternatywą jest opcja sterowania przy pomocy klawiatury, jednak nie odbywa się ona w sposób najbardziej ulubiony przez graczy, czyli z wykorzystaniem klawiszy kierunkowych, a klawiatury numerycznej. Jedynym sensownym kompromisem wydaje się pozostawienie sterowania z klawiatury oraz skorzystanie z zewnętrznej pchełki AmigaInputAnywhere. Z poziomu tego programu możemy podpiąć odpowiednie klawisze pod przyciski pada, co w przypadku Atari++ sprawdza się więcej niż dobrze.

Atari++ w akcji

Analizując wszystko to co napisałem powyżej można dojść do wniosku że Atari800 jest emulatorem lepszym w każdym aspekcie i jego młodszy konkurent, to na Amidze zwykła ciekawostka. Jest jednak jeszcze jedna zasadnicza sprawa, której dotąd nie poruszałem, a która z pewnością podnosi ocenę Atari++, mianowicie wierność emulacji. Tutaj Atari800 wypada słabiej. Emulator ten bowiem w swojej głównej gałęzi jest dość mocno zapóźniony względem odrębnie rozwijanej wersji dla Windows, podobnie jak np. rzecz ma się w przypadku UAE i WinUAE. Tymczasem jak głoszą plotki Atari++ zawiera w sobie trochę kodu w mało elegancki sposób „pożyczonego” od Atarii800Win. Nie mnie oceniać ile w tym prawdy, fakt jest jednak taki że w produkcjach w których występuje digitalizowany dźwięk Atari++ radzi sobie równie dobrze jak Atari800Win. Jak więc wygląda różnica w dokładności emulacji ze szczególnym uwzględnieniem układu dźwiękowego Pokey? Proponuję każdemu z Was zrobić krótki test w postaci załadowania gry Ghostbusters a następnie wciśnięcie spacji, z amigowego Atari800 wydobędzie się wówczas nieartykułowane burczenie, podczas gdy na Atari++ usłyszymy klimatyczny metalizowany okrzyk „Ghoustbasters wha wha wha wha wha!!!”.

Odpowiedź, który emulator wybrać nie jest więc jednoznaczna. Osobiście mimo wszystko palmę pierwszeństwa przyznałbym Atari800, ze względu na wygodniejszą obsługę, lepsze wkomponowanie w system i ogólnie większą bezproblemowość. Natomiast Atari++ to na chwilę obecną silne uzupełnienie dla starszego konkurenta, które często może się okazać jedynym kołem ratunkowym wobec trudniejszych wyzwań jakie stawi pewien procent opornych na emulację tytułów. Cieszy niewątpliwie fakt że po latach niedosytu, mamy do dyspozycji aż dwa porządne emulatory kultowego 8-bitowca, dzieki czemu River Raid, Robbo, Miner2049’er i inne nieśmiertelne tytuły mogą bawić również amigowców. Myślę że to zdanie jest najlepszym podsumowaniem tekstu, którego wlaśnie skończyłem pisać.

O Mufa