VICE - charakterystyka emulatora

Mariusz 'Flooder' Młynek

Co to jest V.I.C.E.?

V.I.C.E. (VersatIle Commodore Emulator - czyli Wszechstronny Emulator Commodore) jest najpopularniejszym pakietem emulatorów maszyn firmy Commodore Business Machines. W jego skład wchodzą emulatory 'udające' komputery PET, VIC-20, CBM-II, C128 (aka C610) oraz oczywiście C64. Dostępne one są na różne platformy sprzętowe, poczynając od najzwyklejszego PC pracującego na Windows'ie, a kończąc na produkcie firmy Apple - Macintosh'u. VICE jest programem zupełnie darmowym, a jego dystrybucja oparta jest na licencji GNU wydanej przez Free Software Foundation. Autorzy nie ponoszą żadnej odpowiedzialności za szkody wynikłe z używania go :-).

Historia projektu

Pomysł stworzenia zbioru emulatorów sprzętu firmy Commodore powstał w okolicach jesieni 1993 roku. Właściwie na samym początku autorzy chcieli stworzyć tylko jeden emulator i w ogóle nie przypuszczali, że dają początek projektowi, w którego skład będą wchodzić emulatory maszyn ze stajni Commodore. Wtedy to w głowie trójki młodych-gniewnych Finów narodziła się myśl stworzenia emulatora VIC-20. Jarkko Sonninen, Jouko Valta oraz Teemu Rantanen - bo tak brzmiały imiona pierwszych prekursorów projektu - nie zwlekali długo i natychmiast wzięli się do pracy, kończąc go pisać jeszcze w tym samym roku. Wersja, później oznaczona numerami 0.10.0 przy tytule, miała jednak tysiące małych błędów, które należało jak najszybciej poprawić. Co ciekawe, był to pierwszy emulator, który został wydany na komputery pracujące z systemem operacyjnym Linux. Rok 1993 upłynął dla trójki Finów pod znakiem poprawiania tych małych błędów. W kolejnej wersji (VICE 0.11.0) pojawił się interesujący nas - fanów C64 - emulator x64. Początkowo wyposażony on był tylko w emulację mikroprocesora 6502, Petcat'a, Xdebugger, c1541 oraz prosty programik emulujący SID. Był on dostępny tylko dla komputerów pracujących z systemem UNIX. Dość szybko, bo już w 1994, z projektu wycofało się dwóch jego założycieli: Jarkko Sonninen i Teemu Rantanen. Jednak dzięki rozwojowi sieci, VICE w powolnym tempie ewoluował, Jouko Valta nadzorował wszystkie zmiany zachodzące w kodzie programów. W latach 1994-1995 nic znaczącego się nie wydarzyło, aż w końcu nadszedł rok 1996. Wtedy to do zespołu dołączyło kilka nowych osób wnosząc powiew świeżości w projekt. Wspomnę tutaj tylko o Ettore Perazzoli, dzięki któremu została wydana wersja dostępna dla komputerów z MS-Dos'em. W kolejnych latach powstawały liczne udoskonalenia - coraz to lepsza grafika, emulacja SID'a i REU.

Niektórzy z nich do dziś pracują nad udoskonaleniami emulatora i to im zawdzięczamy pojawianie się nowych wersji. Nowe wersje ukazują się średnio co pół roku i sprawiają, że na x64 można się bawić prawie jak na rzeczywistym C64. Obecnie w projekt jest zaangażowanych 10 osób. Są to:

Daniel Sladic - napisał nową wersję monitora; obecnie niczym nowym się nie zajmuje,
Andreas Boose - człowiek bardzo związany z projektem i mający w nim bogatą przeszłość, napisał m.in. nową wersję emulatora C128 oraz dodał w wersji dla Windows graficzny interfejs, obecnie głównie raportuje bugi,
Tibor Biczo - ulepszył wersję dla Windows; obecnie niczym nowym się nie zajmuje,
Dag Lem - zajmuje się udoskonalaniem reSID'a,
Andreas Dehmel - zajmuje się konwersją dla platform Acorn RISC,
Thomas Bretz - jest odpowiedzialny za wersję dla OS/2,
Andreas Matthies - ulepszył obsługę magnetofonu, emulację VIC-20; zajmuję się konwersją dla platform BeOS,
Martin Pottendorfer - zaimplementował wersję dostępną na Gnome bazującą na wersji, dodał obsługę języków,
Markus Brenner - dodał emulację VDC dla x128 oraz obsługę wielu nowych kartridży; obecnie niczym nowym się nie zajmuje,
Spiro Trikaliotis - napisał wersję na konsolę Windows'a, aby można było uzyskać wbudowany monitor i wyposażyć go w patche; obecnie niczym nowym się nie zajmuje,

Dodatkowo pomaga wiele innych osób, które tropią i usuwają błędy, czy też lokalizują program na swój ojczysty język. Mam nadzieję, że autorzy VICE, pomimo tego, że mają bardzo mało czasu, będą znajdować wolny czas na zajmowanie się projektem.

Charakterystyka

Nim jednak zacznę ten emulator opisywać, należy się Wam z mojej strony małe słówko prostujące pewną rzecz. Po pierwsze: będę opisywał tylko x64, czyli to, co nas interesuje - emulator Commodore 64, który jest jednym z pięciu programów 'udających' inny komputery wchodzący w skład VICE. Po drugie - pisząc ten artykuł używałem wersji VICE dla Windows'a. Wersje dla innych systemów operacyjnych i platform (Linux, BeOS...) nie różnią się znacząco od tej spod znaku Bill'a, oprócz oczywiście wyglądu zewnętrznego. Teraz nie pozostaje mi nic innego jak przejść do sedna rzeczy, czyli opisu emulatora... Minimalne wymagania emulatora to: Procesor Pentium lub inny kompatybilny, 8 MB pamięci, karta graficzna VGA, Sound Blaster 8 oraz Windows 95/98/ME/XP. Na słabszych maszynach może się wlec jak ślimak, jednak z poradą może przyjść wyłączenie dźwięku.

Emulator x64 dla Windows wygląda jak normalna aplikacja, tzn. posiada okienkowy interfejs. Aby go uruchomić niezbędne jest posiadanie sterowników firmy Microsoft - DirectX. Dzięki masie ustawień mamy duże pole do manewru. W zasadzie i tak połowa osób nie będzie ich wszystkich używać, jednak właśnie pod tym względem emulator ten jest prawdziwym kombajnem. Najważniejszą opcją dla większości osób jest poprawne skonfigurowanie joystick'a. Reszta jest już dla bardziej wymagających użytkowników, zmiany w ustawieniach ekranu, stacji dysków, czy magnetofonu mogą się nie przydać zwykłym wyjadaczom gier. Dodatkowo, do innych użytecznych bajerów może należeć możliwość zapisania momentu gry, zrobienie screenshot'u, czy wyciągnięcie z gry muzyki i zapisanie jej do postaci pliku .wav. Mimo tej masy opcji, jego obsługa jest bardzo prosta i intuicyjna.

Autorzy położyli bardzo duży nacisk na realistyczną pracę, aby jego użytkownik mógł poczuć się jak na prawdziwym C64. Używa on klawiatury z mapowaniem rzeczywistego Commodore 64. Oznacza to zgodność klawiatury PC z klawiaturą C64 i np. cudzysłów ( " ) znajduje się na przycisku 2. W porównaniu z innymi emulatorami bardzo dobrze radzi sobie z obrazami zapisanymi jako *.tap, czyli taśmami dla Datassette. Największym minusem może być niska kompatybilność, co powoduje czasem problemy.

Przejdę teraz do opisu grafiki. Bezproblemowo radzi sobie z wyświetlaniem sprite'ów, problemów także nie powinno przysporzyć przełączanie trybów z PAL na NTSC. Dźwięk, podobnie jak grafika, nie ma żadnej znaczącej wady. Emulacja SID'a jest bardzo dobra - jego ton oddaje dosyć wiernie brzmienie rzeczywistego. Sądzę, że jeśli autorzy dalej ulepszać będą emulację SID'a, to w kolejnych wersjach będzie on mógł śmiało konkurować z najlepszym odtwarzaczem muzyki sidowej, jakim jest SIDPlay2.

x64 jest prawdziwą gratką dla programistów. Doskonale nadaje się on do zabaw z Basic'iem. Nie gorzej przedstawia się on dla cracker'ów kochających assembler. Emulator posiada wbudowany bardzo dobry monitor, potocznie zwanym Debugger'em.

Gracze oraz miłośnicy demek mogą poczuć mały zawód, gdyż emulator niezbyt dobrze spisuje się emulując gry - potrafi czasami się zawiesić lub spowolnić akcję. Kompletnie nie nadaje się do oglądania demek, bo nie dość, że nie radzi sobie z nimi, to niektóre mogą nawet nie ruszyć.

x64 potrafi obsłużyć sześć przeróżnych formatów nośników danych. Poczynając od .d64, .t64, .tap, .crt, .g41, .g64, .d71, .d81, a kończąc na mało z c64 związanym .bin. Dodatkowo obrazy te mogą być spakowane Zip'em. Myślę, że każdy spodziewał się porównania do konkurencyjnego emulatora - CCS64. Ja jednak nie będę rozstrzygać sporu, który z nich jest lepszy. Na samo zakończenie dodam więc, że jeśli kładziesz nacisk przede wszystkim na bardzo realistyczną pracę z Commodore 64, to ten emulator jest w sam raz dla Ciebie. Zapraszam także do odwiedzenia strony domowej projektu: http://viceteam.bei.t-online.de/.

Opis emulatora V.I.C.E.

Łukasz 'Luc' Sanecki

Niektórzy wyżej plasują CCS64, innym natomiast bardziej przypadł do gustu 'okienkowy' interfejs VICE'a. Tak czy siak, niezależnie od wyboru - warto mieć te obydwa emulatory u siebie w zbiorach. VICE to nie tylko emulator Commodore 64, ale są także wersje tegoż emulatora 'udawające' komputer Commodore 128 czy Pet. Opiszę tu ten emulator pod kątem najważniejszych opcji; co go różni od CCS64, w czym jest lepszy itd.

Co zrobić, by grało i działało...

Po uruchomieniu po raz pierwszy emulatora VICE radzę najpierw pozmieniać szereg opcji, dzięki czemu całość będzie skonfigurowana w miarę optymalnie i nie będzie trzeba wprowadzać co chwilę różnych zmian. Po pierwsze otwieramy z górnego paska narzędzi menu Options, a tam zaznaczamy opcję Video Cache, Sound Playback, True Drive Emulation i Virtual Device Traps (jeśli nie są zaznaczone). Reszta opcji nie musi być zaznaczona. Ja osobiście preferuję włączyć jeszcze Double Screen i Double Scan razem z Fullscreen, przez co ekran C64 będzie wyświetlany w 100% wielkości. Jeśli dodatkowo uaktywnimy Fullscreen, niestety znikną wszystkie paski zadań itp.

Przed próbą załadowania gry czy programu, powinniśmy jeszcze ustawić kilka rzeczy. W pasku Settings mamy m.in. opcje Device Settings (możemy ew. ustawić podłączoną drukarkę z C64 czy kilka stacji dysków), Drive Settings - m.in. wybór stacji dysków (1541, 1541 II, ...), Datasette Settings - ustawienie opcji dla trybu magnetofonu, VIC Settings - wybór barw graficznych (można wybrać z dostępnych palet kilku najpopularniejszych emulatorów), w Joystick Settings ustawimy dość prosto klawiaturę dla C64, bądź sterowanie przez joystick. Naprawdę wyjaśnień nie trzeba dawać :). Sound i Fullscreen Settings raczej nie wymagają także komentarza.

Gdy już wszystko gotowe...

Tak, mamy już poprawnie skonfigurowany emulator. Możemy spokojnie usiąść i przejrzeć pierwszy pasek: File. Na screenie obok są dostępne między innymi takie opcje:

Autostart disk/tape image. Dzięki tej opcji włączymy każdy program bez problemu. Zatem wybieramy tę opcję, pojawi się typowe dla Windowsa okno wyszukiwania plików (mały eksplorer). Szukamy zatem naszego dysku z rozszerzeniem .d64 lub .t64 (mogą być również wszelkie inne takie jak p00, prg itd.). Gdy raz klikniemy na jakąś dyskietkę, w oknie niżej pojawi się katalog dysku / taśmy. Z tego katalogu musimy teraz wybrać plik główny gry (lub program, którego szukamy). Klikamy na pliku dwa razy, emulator resetuje C64 i ładuje automatycznie program.

Attach disk image. Czasami gry/programy zajmują więcej niż jedną dyskietkę. Co zrobić, gdy w pewnym momencie komputer poprosi nas o włożenie dysku #2? Do tego służy właśnie ta opcja. Znajdźmy jakiś program, który wymaga włożenia kilku dysków (np. Test Drive 2). Komputer poprosi o włożeniu nowego dysku. Wybieramy opcję Attach disk image (drive 8 - domyślny napęd) i szukamy dyskietki z numerem 2 (np. TestDrive_side2.d64). Raz na nią klikamy (zaznaczamy ją, pojawi się katalog) i wybieramy opcję Attach. Dysk jest włożony, można potwierdzić komputerowi.
Ta opcja służy także do samego wkładania dyskietek. Czasami nie chcemy przecież od razu ładować programu. Wtedy wybieramy tę opcję i możemy później np. wywołać katalog dyskietki (LOAD"$",8), a później wybrać jedną z pozycji.
Dodatkowo opcja Detach disk image służy do wyjmowania dyskietki z wirtualnej stacji dysków.

Czy w VICE także można instalować cartridge dla C64?

Jak najbardziej. Spójrzcie jeszcze raz na powyższy screen. Jest tam opcja Attach cartridge image. Wybierzmy ją, a z rozwiniętej listy wybierzmy CRT image - dzięki temu zainstalujemy takie cacka jak Final, Black Box czy Action Replay. Po wybraniu musimy znaleźć plik z rozszerzeniem .crt, np. action73.crt (kilka cartridge'y jest dostępnych w serwisie w dziale download/emulatory). Po wybraniu kartridża wybieramy z menu File opcję Reset (hard) i po restarcie nasz C64 będzie 'zaczynał' od menu kartridża. Kartridż zainstalowany!

Inne gadżety

Warto wiedzieć, że emulator VICE oprócz wyżej opisanych opcji, posiada także parę 'bajerów', o których funkcji wypadałoby chociaż troszkę wiedzieć. I tak:
Reset - dwa różne resety komputera. Hard wykonuje za nas wyłączenie i włączenie komputera, czyli cała pamięć zostaje skasowana. Soft reset to tylko ten 'mały przycisk' na kartridżu, którym restartuje się C64. W tym przypadku cała pamięć nie zostaje skasowana.
Monitor - VICE posiada wbudowany monitor (jak CCS64 zresztą).
Snapshot - możemy zapisać ekran C64 do pliku w formacie BMP lub PNG. Wystarczy podczas np. gry wcisnąć ALT+C. Ciekawostką jest fakt, że można zapisać swoją ulubioną muzyczkę z gry (opcja Save Soundshot) - kombinacją klawiszy ALT+U.
Maximum Speed - w menu Options wybierzmy to, a później dowolną wartość - do 200% lub no limit. Przyspiesza to pracę C64 o daną wartość, przy czym wyłączany jest dźwięk. Pokrewna funkcja to WARP MODE - ALT+W. Warto to stosować przy starszych grach, których ładowanie trwa, trwa i trwa... ;)
SID Model - możemy wybrać wersję układu muzycznego SID - nowy lub stary SID.
Save/Load Settings - ustawione przez nas opcje możemy zapisać do pliku. Dzięki tej opcji nie będziemy zmuszeni poprawiać przy każdym uruchomieniu emulatora każdego ustawienia.

Nie działa?!

Pamiętajmy, że emulator to emulator. Nigdy (a może?) nie będzie naśladował w 100% idealnie danego komputera. Zdarzyć się więc może, że nasza ulubiona gra będzie się zawieszać czy też w ogóle się nie uruchomi. W tym przypadku chyba jedynym rozwiązaniem jest wypróbowanie gry na innym emulatorze. Warto mieć oprócz VICE'a, także drugi znakomity emulator - CCS64. W ostateczności zawsze... można zagrać na oryginalnym Commodore 64! :)

Zwycięzca?

VICE cały czas 'depcze po piętach' innemu emulatorowi - CCS64. Według mojej opinii, VICE ma lepiej rozbudowane funkcje, które są także o wiele łatwiej dostępne. Na korzyść VICE'a przemawia także fakt działania w 'gołym' Windowsie. CCS64 działa tylko na całym ekranie, nie dając możliwości mieszania kilku aplikacji w windowsie. Osobiście (choć pewnie większość się ze mną zgodzi) uważam, że VICE troszkę gorzej radzi sobie z odgrywaniem dźwięku C64. Grafika niestety prezentuje się jeszcze gorzej. O ile trybom podstawowym nie można nic zarzucić, to przy IFLI, Interlace emulator zupełnie się gubi i obrazki nie są wyświetlane w prawidłowy sposób. Z tymi trybami dość dobrze radzi sobie CCS64. Zwyciezcy nie da się wyłonić, bo CCS64 i VICE posiadają mniej więcej tyle samo cech pozytywnych. Decyzja należy tylko i wyłącznie do użytkowników. Macie jakiekolwiek pytania, wąptlikości - piszcie śmiało.

 © 1999-2019 Wszystkie prawa zastrzeżone
 Webmaster: Mariusz "Flooder" Młynek