Commodore 64 ------------ POWRÓT DO ÚRÓDEî... Nie kaûdy zapewne pamiëta poczâtki firmy Commodore i pierwsze produkowane przez niâ modele, jak Vic-20, C116, C16 czy Plus/4. To juû historia. Kaûdy amigowiec wie jednak, ûe poczâtkowe sukcesy firma ta zawdziëczaîa komputerowi o oznaczeniu C64, który przez dîugie lata byî niekwestionowanym liderem wôród komputerów domowych. Czasem warto wiëc wróciê do tych dawnych piëknych czasów. Jarosîaw Horodecki Na poczâtku chciaîbym stwierdziê, ûe Amidze udawanie Commodore 64 jakoô nie bardzo wychodzi. Dla usprawiedliwienia moûna jednak dodaê, ûe takûe inne komputery, jak choêby pecety, nie mogâ pochwaliê sië naprawdë w peîni dziaîajâcym emulatorem tej doskonaîej maszyny. Wynika to ze specyfiki tego komputera i zastosowanych w nim specjalistycznych ukîadów, odpowiedzialnych za dúwiëk oraz grafikë. Po kilku dniach poszukiwaï udaîo mi sië dotrzeê do trzech emulatorów Commodore 64 napisanych dla Amigi. Pierwszy z nich, nazwany ---------------?(...)?-------------- wart jest wspomnienia tylko z jednego wzglëdu. To wîaônie dziëki niemu udaîo mi sië przerzuciê doôê pokaúnâ liczbë programów z dysków w formacie C64 na Amigë. Zdobyîem przewód, który chciaî wspóîpracowaê tylko i wyîâcznie z tym wîaônie programem. Pozostaîe jego cechy, jak szybkoôê dziaîania czy jakoôê emulacji, pozostawiajâ jednak duûo do ûyczenia. Na domiar zîego emulator ten potrafi dziaîaê tylko na komputerach z systemem 1.3 i procesorem MC68000. Sâdzë wiëc, iû raczej nie warto sië nim zajmowaê. Kilkakrotnie lepszym produktem jest z pewnoôciâ program A64. Jest to emulator juû doôê stary, gdyû pochodzâcy z 1990 roku, a mimo to do pewnych zastosowaï zwiâzanych z programowaniem C64 nadaje sië wrëcz dokonale. Do pewnego momentu byî zresztâ stale poprawiany. Najnowsza wersja ma numer 3.0 i wydana zostaîa w poîowie 1993 roku. Chyba najwaûniejszâ zaletâ tego programu jest prëdkoôê jego dziaîania. Na zwykîej Amidze 500 wyniki nie sâ moûe rewelacyjne, jednak po dodaniu karty turbo (MC68030/40MHz) byîa juû zupeînie niezîa, z pewnoôciâ porównywalna z prawdziwym C64. Druga istotna cecha programu to moûliwoôê zmiany konfiguracji. Opcji jest tu naprawdë wiele. Wiëkszoôê z nich ma teû zasadnicze znacznie dla szybkoôci i sprawnoôci dziaîania niektórych programów. Jednakûe osoba nie znajâca C64 nie bëdzie najprawdopodobniej w stanie dokonaê optymalnego ustawienia wszystkich parametrów pracy emulatora. Warto jednak poeksperymentowaê. Ustawiê moûna takie parametry, jak sposób oraz czëstotliwoôê odôwieûania ekranu, dokîadnoôê w wyôwietlaniu sprite'ów (tzw. duszków), a takûe dokîadnoôê odwzorowania rastra. Wszystkie wymienione parametry mogâ byê ustawione na wiele sposobów, choê w wielu programach ich zmiany nie powodujâ îatwo zauwaûalnej poprawy lub pogorszenia w generowaniu obrazu. Warto jednak znaleúê ustawienia optymalne. Jest teû kilka dodatkowych opcji graficznych, umoûliwiajâcych wîâczenie lub wyîâczenie emulacji ramki oraz sprzëtowego przesuwania ekranu. Moûna teû dowolnie modyfikowaê paletë kolorów stosowanâ przez emulator. Grafika to jednak jeszcze nie wszystko. C64 miaî teû zupeînie niezîy generator dúwiëku. Oczywiôcie A64 potrafi za pomocâ amigowych przetworników odtwarzaê wîaôciwie wszystkie melodyjki z maîego Commodore. Moûliwe jest to dziëki bibliotece 6582sid.library, która emuluje commodore'owski ukîad SID, stosowany w C64. Oczywiôcie takûe w wypadku muzyki ustawiê moûna kilka parametrów, jak jakoôê odtwarzania, dokîadnoôê odwzorowania obwiedni oraz modulacji koîowej, moûna teû wîâczyê lub wyîâczyê amigowski filtr. Na koniec opisu moûliwoôci programu trzeba oczywiôcie wspomnieê jeszcze o korzystaniu z urzâdzeï zewnëtrznych. Otóû A64 potrafi za pomocâ portów Amigi emulowaê moûliwe do zamontowania w C64 porty szeregowy i równolegîy, moûna takûe podîâczyê do Amigi standardowâ stacjë przeznaczonâ dla C64 i C128, oczywiôcie tylko za pomocâ specjalnego przewodu. Podîâczone w ten sposób stacje mogâ byê cztery, jednak jeûeli korzystamy takûe z dysku amigowskiego (moûe to byê teû twardy dysk), naleûy przyporzâdkowaê go numerowi jednego z napëdów. Oczywiôcie emulowane sâ takûe porty joysticków, klawiatura i drukarka (urzâdzenia 4 i 5 w C64). Moûna takûe zmieniaê prëdkoôê zegara CIA (50, 100 oraz 200 procent), a takûe doîâczyê rozszerzenie pamiëci o 128, 256 i 512 KB oraz 1 lub 2 MB. Oczywiôcie tak podîâczona pamiëê moûe tylko sîuûyê jako rodzaj ramdysku, procesor 6510 potrafiî adresowaê najwyûej 64 KB caîkowitej pamiëci. Bardzo pozytywnâ cechâ A64 jest teû zainstalowanie w nim caîkiem dobrego monitora kodu maszynowego. Wystarczy nacisnâê [F9] i wykonywany program jest przerywany i moûna w nim dokonywaê dowolnych zmian, przeglâdaê go i w koïcu ponownie uruchomiê. Z poziomu monitora moûna takûe przejôê do edycji wszelkich opcji, moûna teû nagrywaê na dysk dowolny fragment pamiëci oraz wgrywaê dane z dysku. Jak widaê, jest to bardzo cenne narzëdzie. Trzeba przyznaê, ûe program ten jest emulatorem bardzo dobrym. Sama obsîuga jest doôê prosta, programy moûna wczytywaê korzystajâc ze standardowych komend C64, przy czym îadowanie z amigowych dyskietek jest doôê szybkie, z twardego dysku natomiast zupeînie nieodczuwalne. Szkoda tylko, ûe podczas emulacji nie moûna zmieniaê ekranów. Dopiero przejôcie do monitora lub do ekranu konfiguracji pozwala zajrzeê na inne ekrany, aby ewentualnie przypomnieê sobie nazwy programów. Wczytywanie katalogu na C64 jest doôê niewygodne, îatwiej wiëc korzystaê z katalogu pod AmigaDOS-em. Przetestowaîem co najmniej kilkanaôcie róûnych znanych gier. Wyniki testu sâ jednak, delikatnie mówiâc, negatywne. Jedyne gry, które dziaîaîy, to Moontorc oraz Cybernoid 2. Jednak równieû w ich wypadku miaîy miejsce pewne bîëdy. Pozostaîe programy albo generowaîy obraz caîkowicie bîëdny, albo w ogóle nic nie byîo widaê na ekranie. Krótko mówiâc, A64 zupeînie nie radzi sobie z przerwaniami rastra. Widaê to zresztâ we wszyskich testowanych programach demonstracyjnych oraz czoîówkach róûnych grup (tzw. intrach). Ûadne demo ani intro nie chciaîo dziaîaê. Naleûy jednak równieû dodaê, ûe muzyka w wiëkszoôci programów odtwarzana jest zupeînie dobrze. Niestety, muzyka to nie wszystko. Zapewne nie wszyscy wiedzâ, dlaczego ten jeden drobiazg, którym jest chyba niezbyt dobra emulacja przerwaï rastra, uniemoûliwia poprawne dziaîanie wiëkszoôci programów. Odpowiedú tutaj równieû jest prosta, o ile oczywiôcie nie bëdziemy wnikaê w szczegóîy techniczne. Mianowicie niemalûe kaûdy sensowny program, napisany dla C64, korzysta z moûliwoôci dzielenia ekranu, zmieniajâc jego parametry podczas jego wyôwietlania. Poprzez odpowiednio wykonywane zmiany moûna teû zwiëkszaê liczbë wyôwietlanych sprite'ów, przesuwaê pîynnie ekran we wszystkie strony, zwiëkszaê liczbë wyôwietlanych kolorów. Wszystko to wymaga jednak dobrze dziaîajâcych przerwaï rastra. Bez tego najczëôciej otrzymamy ekran zapeîniony pozornie bezsensownymi znaczkami lub teû po prostu zupeînie pusty. Tak teû dzieje sië w wypadku A64. Jak wiëc widaê, A64 jest programem doskonale nadajâcym sië dla osób zainteresowanych prostym wykorzystaniem C64, a wiëc programowaniem w jëzyku BASIC, czy teû tworzeniem prostych procedur obliczeniowych w kodzie maszynowym. Nie sâdzë jednak, aby duûa grupa osób byîa zainteresowana tego typu wykorzystaniem emulatora. Ja na przykîad najchëtniej pograîbym sobie w niektóre nieosiâgalne na Amidze gierki oraz pooglâdaî demka. Niestety, A64 tego nie umoûliwia. O wiele lepiej z emulacjâ C64 radzi sobie natomiast program Frodo. Na poczâtku trzeba jednak powiedzieê, iû program ten dziaîa przeraúliwie wolno. Jak zapewnia autor, na Amidze 4000 z procesorem MC68040/25 bëdzie on dziaîaî ciâgle jeszcze dwa razy wolniej niû prawdziwe C64. Na mojej Amidze z procesorem MC68030/40 pracowaî strasznie wolno. W zamian jednak za tak ogromne zmniejszenie prëdkoôci otrzymujemy program o naprawdë nieprzeciëtnych moûliwoôciach. Jeûeli weúmie sië pod uwagë zîoûonoôê konstrukcji ukîadów graficznych wykorzystanych w C64, to Frog radzi sobie z emulacjâ naprawdë perfekcyjnie. W menu konfiguracji nie ma zbyt wielu opcji. Jedyne, co moûna ustawiê, to liczbë cykli przypisanâ poszczególnym liniom rastra (wtajemniczeni wiedzâ, ûe w C64 pewne linie miaîy dîugoôê 63 cykle, inne 23 cykle). Moûna teû zdefiniowaê napëdy od numeru 8 do 11, przy czym mogâ to byê oryginalne stacje od C64/C128 albo po prostu katalog na jednym z amigowskich urzâdzeï. Moûna takûe wîâczyê lewy i prawy port joysticka oraz zamieniê porty. Moûna teû skorzystaê z emulacji dúwiëku, ale tylko za pomocâ specjalnej karty z ukîadem SID. Ostatnia z opcji pozwala na wîâczenie amerykaïskiej klawiatury. Pewnâ ciekawostkâ jest teû moûliwoôê wyboru trybu graficznego, w jakim bëdzie dziaîaî C64, a nawet moûliwoôê wîâczenia karty graficznej Spectrum lub Picasso, dziëki którym emulacja bëdzie nieco szybsza. To tyle opisu technicznego. Warto przyjrzeê sië teraz jakoôci emulacji. Jeûeli nie zwracaê uwagi na szybkoôê dziaîania, to Frog jest programem niemalûe doskonaîym. Wspaniale radzi sobie z emulacjâ przerwaï rastra, ma teû zaimplementowanych kilka popularnych efektów z C64. Radzi sobie z otwieraniem górnej i dolnej ramki, FLD, wszelkimi scrollami, efektem zwanym tech-tech oraz kilkoma innymi drobiazgami. Teoretycznie wiëc moûna pokusiê sië nawet o oglâdanie prostych demek, jeûeli oczywiôcie dysponujemy odpowiednim sprzëtem: najlepiej Amigâ 4000 z kartâ turbo MC68040/40. Choê z drugiej strony przyznaê trzeba, ûe emulator jest zrobiony tak, aby choê programy dziaîajâ bardzo wolno, na ekranie byî porzâdek i aby przerwania rasta dziaîaîy poprawnie. Z pewnoôciâ wiëc przerwania te obsîugiwane sâ przez niezaleûne szybkie procedury. Spoôród testowanych przeze mnie kilkudziesiëciu programów (gîównie gier) dziaîaîy wszystkie, nie byîo ûadnych kîopotów z ich uruchomieniem oraz póúniejszâ grâ. Natomiast niezupeînie poprawnie pracowaîy, takie programy jak FLI-Designer, sîuûâcy do tworzenia wielokolorowych obrazków. Dziaîo sië tak jednak tylko i wyîâcznie dlatego, ûe zaawansowane efekty zwiâzane z bîëdami rejestru D011 ukîadu VIC, nie dziaîajâ jeszcze jak naleûy. Emulator Frog jest z pewnoôciâ emulatorem bardzo dobrym. Jego wady to na pewno powolnoôê dziaîania oraz brak dúwiëku. Pozostaje mieê na dziejë na rozwiâzanie tego drugiego problemu. Trudno jest natomiast powiedzieê coô optymistycznego na temat przewidywanego zwiëkszenia prëdkoôci jego dziaîania. Jego obecna wersja jest juû napisana w jëzyku maszynowym. Jedynym rozwiâzaniem moûe wiëc tutaj byê juû nie optymalizacja, ale raczej caîkowite ponowne napisanie niektórych procedur, o ile autor programu wpadnie na pomysî ich ulepszenia. Jak widaê wiëc, emulatory C64 napisane dla Amigi nie sâ, niestety, najlepsze. Na pocieszenie moûna jednak dodaê, iû analogiczny program, napisany dla komputerów PC, jest wprawdzie o wiele lepszy od A64, jednak znacznie ustëpuje Frogowi, a przy tym dziaîa z podobnâ szybkoôciâ jak ten ostatni. Tytuî: A64 Wersja: 3.0 Autor: Cliff Dugan Rodzaj: .......................?............................. Îatwoôê obsîugi: 8/10 Jakoôê emulacji: 4/10 Szybkoôê dziaîania: 9/10 Ogólnie: 7/10 Tytuî: Frodo Wersja: 1.0 Autor:......................?......................... Rodzaj: ............................?...................... Îatwoôê obsîugi: 8/10 Jakoôê emulacji: 9/10 Szybkoôê dziaîania: 3/10 Ogólnie: 8/10 Od autora: Chciaîbym podziëkowaê Rafaîowi Piaskowi za uûyczenie mi potrzebnego przewodu, stacji dysków oraz oprogramowania dla C64.