• ZX Spectrum - emulacja

22.10.2011 22:28, autor artykułu: Piotr "PopoCop" Szymański
odsłon: 4404, powiększ obrazki, wersja do wydruku,

EMULATORY ZX SPECTRUM

ZX Spectrum to komputer, od którego wiele osób zaczynało swoją komputerową przygodę. Dziś, kiedy do dyspozycji mamy maszyny wyprzedzające o lata świetlne możliwości ZX Spectrum, może się pojawić tęsknota za okresem świetności ośmiobitowego sprzętu z firmy Sinclair Research Ltd. Warto wtedy sięgnąć po emulator i ożywić wspomnienia. Emulator można odpalić nie tylko z powodów sentymentalno-historycznych. Jeśli lubisz grać w nowości, to na ZX Spectrum wychodzi ich wielokrotnie więcej niż na Amigę. Dla Amigi powstało wiele emulatorów ZX Spectrum. W tym tekście przedstawiam tylko te, z którymi się zetknąłem.

ZXAM SPECTRUM EMULATOR 2.0b (autor: Antonio J. Pomar Roselló)

Był to pierwszy emulator Spectrum, z którym się zetknąłem. Używałem go najpierw na gołej A1200, a potem na A1200 z pamięcią Fast. Na tej drugiej konfiguracji można już było osiągnąć 100% prędkości prawdziwego Spectrum. Emulator można uruchomić w trybie pełnoekranowym lub w okienku. Emulowany jest model 48 oraz układ AY. Nie uruchomimy zatem programów wymagających modelu 128, ale można uruchomić programy, które korzystają z układu dźwiękowego AY i nie wymagają 128 kB pamięci (a jest ich całkiem sporo). ZXAM ma dwie wersje: Generic dla dowolnej Amigi z Kickstartem 2.04 i procesorem 68020 oraz AGA dla A1200/A4000. Każda wersja posiada dwa warianty: FULL (dokładna emulacja, ale mniejsza prędkość działania) oraz FAST (emulacja mniej dokładna, ale za to szybsza). Emulator obsługuje pliki w formacie .z80, .sna oraz .tap. Te ostatnie wczytuje się korzystając z ARexxa. Dla zapaleńców autor ZXAM-a przygotował schemat interfejsu, za pomocą którego można wczytywać programy z magnetofonu. Na potrzeby tego tekstu odpaliłem ZXAM na konfiguracji A1200+040+AGA+OS 3.1. Zdecydowanie lepiej sprawowała się wersja AGA (te same gry uruchomione w wersji Generic miały czasem nieprawidłowo emulowany dźwięk). Niezależnie od wersji emulatora niektóre gry nie działały poprawnie (błędy w wyświetlaniu). Większość testowanych gier działała jednak prawidłowo. Ostatnia wersja ZXAM pochodzi z 1995 roku i nie należy się spodziewać, że pojawi się kolejna. Mimo swego wieku i wspomnianych wyżej kłopotów z wiernością emulacji ZXAM jest wciąż niezłym emulatorem. Docenią go zwłaszcza posiadacze słabszych konfiguracji sprzętowych. Emulator można pobrać z Aminetu. Jest to program typu shareware, ale wersja niezarejestrowana nie posiada żadnych ograniczeń.

ASP 0.89b (autor: Ian Greenway)

ASp to emulator o większych możliwościach, ale też i o większych wymaganiach sprzętowych. Jako absolutne minimum do uruchomienia emulatora autor podaje Amigę z 3 MB RAM, procesorem 68020 i systemem 3.0. W praktyce wygląda to tak, że bez co najmniej 68030/50 MHz nie warto do ASp zasiadać. Prędkość emulacji osiąga wtedy co prawda 100% prawdziwego Spectrum, ale dotyczy to prawie wyłącznie gier, które nie korzystają z układu AY. Emulacja tego układu wyraźnie spowalnia pracę ASp - żeby ją przyspieszyć zalecany jest procesor 68040. Emulator jest bardzo przyjazny dla systemu. Można go uruchomić w okienku lub w trybie pełnoekranowym. Dźwięk odtwarzany jest przez AHI, więc wykorzystać można karty dźwiękowe. Autor podaje w dokumentacji, że emulator działa pod AmigaOS 4 (nie miałem okazji tego sprawdzić). ASp obsługuje pliki w formacie .z80, .sna, .tap i .tzx (ten ostatni tylko do odczytu). Emulowane są Spectrum 48, 128 i +2. Wierność emulacji jest bardzo dobra, choć niektóre gry nie działały prawidłowo. ASp ma mnóstwo możliwości konfiguracyjnych, można np. przypisać dodatkowym przyciskom joypada od CD32 funkcje klawiszy ZX Spectrum. Ostatnia wersja emulatora pochodzi z 2007 roku i jego rozwój można uznać za zakończony. Według informacji uzyskanej od autora nowej wersji ASp nie będzie ze względu na brak czasu i nikłe zainteresowanie jego dziełem. Jedyne na co można liczyć, to poprawa zgłoszonych błędów lub drobne usprawnienia. No cóż, szkoda. Jednak nawet w obecnej formie jest to bardzo dobry emulator, choć pełne możliwości pokazuje dopiero na procesorach 68040. ASp to program freeware i można go pobrać stąd lub z Aminetu.

ZX-LIVE 0.45 (autor: Dmitriy Vladimirovich Zhivilov)

ZX-Live to chyba jedyny emulator, który jest wciąż rozwijany - ostatnia wersja została wydana w 2010 roku, a kolejna ma ukazać się w 2012 (wg informacji uzyskanej od autora). Prace nad emulatorem trwają od ponad 10 lat, więc wersji 1.0 możemy spodziewać się około 2022 roku. :) Minimalna konfiguracja sprzętowa do uruchomienia ZX-Live to wg autora procesor 68020, 8 MB Fast i AmigaOS 3.x. Konfiguracja zalecana to 68060+16 MB Fast i nie ma w tym, niestety, przesady, bo na procesorze 68040/40 MHz emulator działa nieco ociężale i pozwala osiągnąć mniej więcej 80-90% prędkości prawdziwego Spectrum. ZX-Live emuluje Spectrum 48, 128 oraz Pentagona. Ten ostatni model to rosyjski klon Spectrum o nieco większych możliwościach. Emulacja Pentagona umożliwia nam uruchamianie programów w formacie .trd (gry i produkcje scenowe zza naszej wschodniej granicy). Oprócz tego ZX-Live obsługuje pliki w formatach .sna, .z80, .tap i częściowo .tzx (nie każdy plik .tzx da się wczytać). Wierność emulacji jest dość dobra, ale nie idealna. Zdarzają się programy, które nie działają, a te działające mają często trochę zniekształcony dźwięk w trybie 48 (być może problem z dźwiękiem znika na 68060, gdy emulator osiąga 100% prędkości Spectrum). Jeśli zaś chodzi o dźwięk z układu AY, to nie ma go wcale. Jest to spora wada i mam nadzieję, że w kolejnych wersjach zostanie usunięta. Pod względem przyjazności dla systemu ZX-Live wypada słabo - pracuje tylko w trybie pełnoekranowym i nie korzysta z AHI. Przed autorem ZX-Live jeszcze sporo pracy. Przede wszystkim dodanie emulacji układu AY i poprawienie prędkości działania. ZX-Live jest programem freeware i można go pobrać z Aminetu.

X128 0.9b (autor amigowego portu: Paul Hill)

Ostatni opisywany przeze mnie emulator to amigowy port pecetowego X128. Pierwowzór to bardzo dobry emulator, który utracił swoją pozycję pod koniec lat dziewięćdziesiątych, a to z tej przyczyny, że jest przeznaczony dla DOS. W 1999 roku powstał amigowy port X128, który nie jest chyba szeroko rozpowszechniony, a warto o nim wspomnieć, bo ma naprawdę duże możliwości. X128 emuluje Spectrum 48, 128 oraz Pentagona i Scorpiona. Obsługuje pliki .sna, .z80, .tap, .tzx i .trd. Prędkość działania jest niestety niska i bez procesora 060 nie ma co marzyć o komfortowym używaniu emulatora. X128 może pracować trybie pełnoekranowym lub w okienku i nie obsługuje AHI. Z niewiadomej przyczyny nie działał u mnie joystick, chociaż w preferencjach ustawiałem, że ma być on aktywny. Do emulatora dołączona jest dokumentacja od wersji dla DOS, ale brakuje dokumentacji dla wersji amigowej, przez co nie wiadomo nic o wymaganiach programu, jego ewentualnych brakach itp. Trzeba zatem pobawić się w detektywa i na własną rękę odkryć, że np. aby uruchomił się program do ustawiania preferencji trzeba posiadać biblioteki cybergraphics.library i gtlayout.library. Czas, który upłynął od wydania X128 pozwala stwierdzić, że na kolejne wersje nie mamy co czekać. W swojej obecnej - i jedynej - wersji X128 mogę polecić jedynie posiadaczom Amig z procesorem 68060. Emulator można pobrać stąd.

Czas na małe podsumowanie. Możliwość emulowania ZX Spectrum na Amidze wygląda całkiem nieźle. Przy pomocy opisanych przeze mnie emulatorów można uruchomić programy przeznaczone dla Spectrum 48, 128, Pentagona i Scorpiona. Oprócz plików .sna i .z80 amigowe emulatory obsługują też pliki .tap i .tzx co jest o tyle istotne, że te ostatnie dwa formaty zaczynają dominować w sieci. Jak na razie nie ma dla Amigi jednego emulatora, który zdecydowanie góruje nad pozostałymi. Warto zatem mieć ich kilka i tam gdzie jeden się nie sprawdza korzystać z innego (taka sama sytuacja jest z emulatorami dla PC). Trochę smutne jest to, że większość emulatorów to programy już nierozwijane. Jedyny, o którym wiadomo, że pojawi się w nowszej wersji to ZX Live, jednak praca nad nim trwa bardzo powoli, więc nie spodziewam się tu żadnych rewelacji. Czy jest coś czego w amigowych emulatorach mi brakuje? Owszem, jest to obsługa plików .rzx. Ale może kiedyś...

SŁOWNICZEK

Układ AY-3-8910/12 - układ dźwiękowy montowany w ZX Spectrum 128, +2 i +3; powstały też liczne interfejsy z tym układem, które można było podłączyć do ZX Spectrum 48/+

Pliki .z80, .sna - pliki z programami dla emulatorów, zawierające zrzut pamięci ZX Spectrum (tzw. snapshot); pliki .z80 są skompresowane i krótsze od .sna

Pliki .tap, .tzx - pliki z programami dla emulatorów, które można nazwać wirtualną kasetą, bo zawierają dokładną strukturę oryginalnego programu (najczęściej jest to loader, obrazek i program główny); są to obecnie najpopularniejsze pliki dla emulatorów ZX Spectrum

Pliki .trd - pliki zawierające obraz dyskietki w formacie TR-DOS (format będący standardem dla komputerów Scorpion i Pentagon)

Pliki .rzx - pliki zawierające zrzut pamięci ZX Spectrum oraz zapis wszystkich wciśnięć klawiszy lub ruchów joysticka; pliki te pozwalają zobaczyć jak gra przechodzi się sama; ich niewątpliwą zaletą jest mały rozmiar (zazwyczaj jest to od kilkudziesięciu do kilkuset kB) w porównaniu np. do plików wideo z zapisem przejścia gry

 głosów: 3   
komentarzy: 2ostatni: 23.10.2011 20:07
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem