S o f t v e r
PC home - osnovna strana
PC #40 - Novembar 1998

Emulatori

Sudeći po broju Web sajtova koji se njima bave, emulatori su jedna od najpopularnijih kategorija softvera. Zahvaljujući emulatorima, neki od starih računara nastavili su da žive, pa ćete tako na Internetu pronaći čak i neku novu igru za Spectrum... 

Vlada Ćalić


  

 

 

1

 

 

2

C64

 

 

3

Mac OS

 

 

4

ZX Spectrum

 

 

Korisni URL-ovi:
Spectrum: www.nvg.ntnu.no/Sinclair/
C64: www.c64.org
Atari: lgd.fatal-design.com
Amiga: prim1.aqcom.com/lazarus/

   

Emulatori se dele u dve osnovne kategorije: prvu grupu čine emulatori računara, dok drugu, masovniju i popularniju, čine emulatori igračkih mašina i konzola. Nas su pre svega zanimali programi koji emuliraju popularne računare - nema komercijalnog računar koji nije na neki način emuliran, od prvih kućnih računara poput Commodore PET-a, ili Apple II, pa do savremenih Pentium PC-a i Power Mac računara. Neki od očitih razloga za popularnost emulatora su nostalgija, igranje starih igara, potreba za softverom koji ne postoji na savremenim mašinama, pa i edukacija.
Neki od starih računara su, zahvaljujući emulatorima, nastavili da žive, a zahvaljujući emulatorima je čak i demo scena za Atari ST vrlo vitalna, iako je proizvodnja tog računara prestala pre više godina. Popularnost emulatora je uticala i na programe pisane za još uvek "žive" računare: neki novijih programi za Amigu i Mekintoš čak detektuju da se izvršavaju u emulatoru, pa se sami prilagode okruženju.
Predstavićemo vam nekoliko programa koji emuliraju najpopularnije računare: Spectrum, Commodore 64, Atari ST, Amiga i Macintosh. Poslednja dva računara su još uvek "živa", mada Amiga jedva diše, a emulirani Mekovi su uglavnom iz stare serije, sa Motorola 680x0 procesorima. Što se tiče drugih računara (npr. Apple II, BBC, ili Amstrad), pogledajte indekse na Yahoo-u ili nekom drugom portal sajtu i lako ćete doći do prezentacija koje se bave njihovim emulatorima.

   

ZX Spectrum

Obzirom da je Spectrum relativno jednostavan računar, logično je što su se prvi popularni emulatori bavili upravo njim. Jedan od prvih javno dostupnih Spectrum emulatora je došao iz Slovenije i zvao se Roman ZX. Mesto njegove svetske premijere je bio upravo Sezam, početkom leta 1991. godine. Program se brzo raširio van granica (tada još uvek postojeće) SFRJ i, iako skroman po karakteristima, izazvao je veliko interesovanje bivših spektrumovaca širom Evrope. Takvo interesovanje je nateralo neke autore da javno objave svoje diplomske radove koji su se bavili emulacijom Spectrum-a. Među njima je bio i Holanđanin Gerton Lunter, čiji je Spectrum emulator pod imenom Z80 vrlo brzo postao nedostižan uzor za sve ostale programe ovog tipa.
Aktuelna verzija programa Z80 je stara dve godine i nudi potpunu emulaciju svih varijnati Spectrum-a (48, 48+, 128, +2, +3), kao i razne dodataka poput Kempston džojstika, interfejsa 1 i 2, legendarnog mikrodrajva, do raznih flopi disk uređaja. Kompatibilnost sa Spectrum-ovih softverom je praktično stoprocentna. Program ima dobar korisnički interfejs baziran na menijima i vrlo dobru dokumentaciju. Z80 je shareware program, a uz registrovani paket se dobija source kod, kao i programi za konverziju raznih snapshot i tape image formata fajlova.
Z80 je, naime, prvobitno koristio Z80 snapshot fajlove (ekstenzija .Z80). Taj format fajla sadrži preciznu sliku trenutnog sadržaja Spectrum-ove memorije, registara Z80 procesora i slično. Ovi fajlovi su kreirani tako što se na paralelni port PC-ja priključi jednostavan uređaj koji omogućava vezu sa kasetofonom. Zatim se u okviru emulatora igra učitava kao na pravom Spectrum-u. Kada je učitavanje završenom, snima se snapshot korišćenjem posebne opcije programa. Vremenom su mnogi BBS-ovi i kasnije FTP sajtovi postali prava skladišta Spectrum-ovih igara i programa u snapshot formatu. Ipak, snapshot fajlovi ne mogu potpuno da zamene traku: postoje igre koje se učitavaju iz više nivoa, a tu je i problem snimanja pozicija.
Mnogi su, osim toga, želeli da igre preuzete sa Interneta igraju na pravom Spectrum-u, a u takvim situacijama su snapshot fajlovi potpuno neupotrebljivi. Zbog toga su Z80 i drugi emulatori počeli da uvode razne tape image formate, koji predstavljaju virtuelnu kasetu. Svaki emulator je uvodio svoj tape image format, ali se standardom smatra format TAP, koji je uveo upravo Z80. Pošto TAP ima nedostataka (npr. ne može pouzdano da sačuva sve turbo-load i Speedlock zvučne zapise), u poslednje vreme je najozbiljniji kandidat za standard TZX, koji omogućava potpunu simulaciju audio kasete i ima neke druge pogodnosti kao što je automatsko pronalaženje sledećeg nivoa igre.
Postoji paket programa za podršku TZX formatu, koji pored ostalog omogućava i "sviranje" TZX fajla, koji se tako može snimiti na kasetu, ili se čak njegov sadržaj može direktno učitati u Spectrum korišćenjem izlaza zvučne karte. Osim posebnog uređaja (šema se dobija uz Z80), kasetofon se može priključiti i na line-in ulaz zvučne kartice. Postoje programi poput Spectrum Tape Loader-a, koji direktno sempluju Spectrum-ove kasete, a umesto toga možete celu kasetu snimiti u WAV ili VOC fajl i zatim pustiti neki od programa da analiziraju sempl i iz njega izvuku korisne informacije i snime ih u TAP ili TZX formatu.

   

Warajevo

Program Z80 dugo nije imao ozbiljnu konkurenciju, a onda se pojavio emulator pod imenom Warajevo. Nastao je u Sarajevu za vreme rata, a autori su Željko Jurić i Samir Ribić, čijih se imena čitaoci računarske štampe prethodne Jugoslavije svakako sećaju. U kakvim je uslovima program pisan možda najbolje govori ispovest autora po kojoj je deo programa razvijan bez hard diska, jer je isti platio danak nestabilnom naponu na agregatu. Ipak, ovaj program je jedan od najboljih Spectrum emulatora za DOS i predstavlja ozbiljnog konkurenta programu Z80.
Pre svega, program je potpuno besplatan. Pored potpune emulacije svih varijanti Spectrum-a i njihovih dodataka, Warajevo podržava i neke ekstenzije koje se retko sreću u drugim emulatorima, emulaciju MIDI porta Spectrum-a 128 i Sinclair network. Pored toga, program ima shell koji, uz podešavanje parametara emulatora, omogućava i konverziju raznih tipova tape-image (uključujući i VOC sempl format) i snapshot formata. Shell omogućava i razmenu podataka između ASCII formata i i podataka raznih Spectrum-ovih programa kao što su Tasword, Hisoft Pascal pa čak i sam Spectrum-ov bejzik. Warajevo shell omogućava i učitavanje sa Spectrum-ovih kaseta putem posebnog uređaja ili zvučne kartice, a specifičnost ovog programa je mogućnost da se od Z80 snapshot-a napravi samostalan EXE fajl. Zanimljivo da ovo ne radi tako što smesti čitav emulator, zajedno sa snapshot fajlovima, u EXE fajl, već se sadržaj snapshot interpretira kao neka vrsta p-koda.
Pomenućemo i emulator koji radi pod Windows-om: ZX32. Ovaj program ima daleko veće zahteve od Z80 i Warajevo kojima je i 386 dovoljan za 100% brzine originalnog Spectrum-a. ZX32 zahteva računar Pentium klase (bar 75 MHz), kao i instaliran DirectX i odgovarajuće drajvere. Zauzvrat, program je odlično koncpiran: ima profesionalan izgled, dobro napisan help, install i uninstall rutine... I ovaj program emulira sve varijante Spectrum-a (48K/48K+/128K/+2/+3/+2A), i sve Spektrum-ove džojstike i učitava praktično svaki postojeći snapshot i tape-image format. Može da snima u svim važnim formatima i da pravi SCR zapise sadržaja ekrana. Od ostalih program vredi pomenuti multiplatformski x128 koji postoji i u Unix i OS/2 verzijama, a posebnu zanimljivost predstavlja emulator pisan u Javi koji je, s obzirom na programski jezik, začuđujuće brz. Postoji još oko 60 drugih Spectrum emulatora.

   

Commodore 64

Iako je zbog specifičnog hardvera Commodore 64 nešto teže imitirati, ovaj računar je dobio nekoliko odličnih emulatora. Prvi su ozbiljno krenuli Slovenci: C64s, čiji je autor Miha Peternel, je prvi zaista upotrebljiv C64 emulator za PC, a i danas se smatra jednim od najboljih. U međuvremenu je iza ovog programa stala poznata američka kompanija Seattle Labs (www.seattlelabs.com), koja je dugo bila i glavni distributer. Osim što je prvi ponudio kompletnu emulaciju Commodore-a 64, što pored emulacije 6510 procesora uključuje i emulaciju čuvenog zvučnog SID čipa, 1541 flopi drajva, štampača i džojstika, program omogućava i pravljenje shapshot-ova, ali za razliku od Spectrum emulatora ova funkcija nije potpuno pouzdana.
C64s je dugo slovio za najbolji emulator Commodore-a, ali je prilično visoka cena registracije (150 DEM za Evropu) mnoge naterala da potraže drugo rešenje. Kao alternativa se nametnuo nemački program PC64, koji je takođe bio prilično skup, ali je postao besplatan kada je autor prekinuo dalji razvoj. Source programa je stavljen pod GPL (GNU Public Licence) licencu, pa se može očekivati da će neko nastaviti sa razvojem. Ovaj program ima daleko bolji korisnički interfejs nego C64s, koristi interni multitasking (više istovremenih emulatorskih sesija), veoma brzu i emulaciju 1541 drajva i dobro emulira sve aspekte Commodore-a 64. Autor je započeo i razvoj DirectX Win32 verzije, koji je prekinut u vrlo ranoj fazi. PC64 for Windows koji se može naći na Internetu je više demonstracija onoga što je program mogao da bude nego nešto upotrebljivo.
Novi švedski program CCS64 (ccs64.fatal-design.com) se pobrinuo da priča o emulaciji C64 ne dobije tužan kraj. Ovaj program se smatra trenutno najkomplentnijim emulatorom Commodore-a, na kome rade praktično svi Commodore programi. Postoje DOS i Win32 DirectX verzija i obe omogućavaju opcije poput snimanje ekrana i zvuka u fajl. Korisnički interfejs programa je dizajniran u C64 stilu, a meniji su ispisani belim C64 slovima na poznatoj plavoj podlozi.
Pošto emulatori uglavnom ne dozvoljava direktno povezivanje Commodore-ovog kasetofona i flopi diska, za prebacivanje postojećeg materijala trebaće vam i interfejs i program Star Commander, klon Norton Commander-a koji, pored ostalog, omogućava i razmenu fajlova između PC-ja i Commodore-ovih disketa i disk-image fajlova. Postoji još nekoliko C64 emulatora, ovde ćemo pomenuti VICE (prvenstveno za Unix) i Frodo (Amiga, Windows i Unix)...

   

Atari ST

Atari ST je 16-bitna mašina sa procesorom koji je interno 32-bitni, pa je emulacija daleko teža. Ipak, nekoliko autora je započelo razvoj ST emulatora, od kojih su neki postigli zavidne rezultate. Pre svih tu je program Pacifist (Pacifist.fatal-design.com), koji ne garantuje punu kompatibilnost, ali predstavlja trenutno najkompletniji Atari emulator. Paficist je DOS program (pisan u asembleru) koji za sada uspešno emulira MC68000 procesor, Atari-jev grafički čip i zvučni YM-2149 čip. Simulacija čipa koji kontroliše ulazne periferije i disk interfejsa je još uvek u razvoju.
Pošto PC flopiji ne mogu da čitaju Atari-jeve diskete zbog razlike u kontrolerima, sa Atari-jevim diskovima se radi putem disk-image fajlova koji se prave na samom Atari-ju a zatim prebacuju na PC. Emulacija hard diska se postiže direktnim mapiranjem u DOS/Windows fajl sistem. Pacifist-ovi hardverski zahtevi su relativno skromni: ootreban je jači 486 računar, miš i opciono džojstik (ako ga nemate, Pacifist ga emulira korišćenjem tastature). Program je prvenstveno pisan radi igranja Atari-jevih igara, pa na njemu mnoge igre rade savršeno. One igre koje dosta koriste flopi (recimo za snimanje pozicija) će verovatno imati problema. Nažalost, veliki broj GEM i TOS programa ne radi kako treba.
Jedna od specifičnosti Pacifist-a je mogućnost "hvatanja" pristupa zvučnom čipu (YM-2149) i snimanje u fajl. Posebnim programom STSound ovi fajlovi se mogu reprodukovati i nezavisno od emulatora. Tako možete "izvući" muziku iz svojih omiljenih igara, a uz malo veštine i konvertovati u MOD ili MIDI format. Pacifist je još uvek u prilično ranoj fazi razvoja (trenutno je aktuelna verzija 0.48), a u budućnosti treba očekivati emulaciju 68030 procesora, poboljšanje zvučne podrške (ali ne i MIDI), poboljšavanje freeze opcija (koje i sada postoje, ali nisu pouzdane) i poboljšanje emulacije flopija.
I drugi ST emulatori zaslužuju da budu pomenuti, pre svih WinSton (WinSton.Atari.org), novi Win32 ST emulator koji je u vrlo ranoj fazi razvoja (verzija 0.1), ali prilično upotrebljiv. Za razliku od Pacifist-a, program ima odličnu emulaciju flopija, pa na njemu rade i igre koje intenzivno čitaju i pišu po disketama. Sa druge strane, podrška za zvuk je nekompletna, tako da je ovaj program za sada pre komplement Pacifist-u, nego zamena na njega.
Još jedan komplementaran program je TosBox, koji uglavnom pokušava da postigne što bolju kompatbilnost sa TOS-om i GEM-om, pa pod njim rade mnogi GEM programi koji na Pacifist-u proizvode neobične efekte. Svim ovim programima je potreban TOS ROM image (dump Atari-jevog ROM-a). Obzirom da je kompanija Atari (ne mešati sa Atari Games) definitivno propala 1996. godine, copyright ne nosi niko, pa je ove ROM-ove prilično jednostavno naći na Internetu. Naravno, ako imate ST-a uvek možete koristiti njegov ROM.

   

Amiga

Videli smo da je Atari ST vrlo težak za emulaciju, a obzirom na gomilu specifičnog hardvera, emulacija Amige je još teža. Ipak, postoje bar dva prilično upotrebljiva Amiga emulatora: UAE i Fellow. UAE (www.uae.de) je skraćenica od U* Amiga Emulator, pri čemu se slovu U pripisuju razna značenja. Prvo je U dolazilo od Unusable, jer je prva verzija programa bila potpuno neupotrebljiva. U međuvremenu je UAE napredovao, pa je jedno vreme U označavalo Unix (UAE je nastao na Linux-u). Zatim je program preveden dobio i DOS i Win32 verzije, ali je slovo U u nazivu ostalo. UAE je klasičan primer Open Source programa i postoji u verzijama za razne sisteme: Mac, Beos, OS/2, pa čak i samu Amigu.
UAE emulira Amigu 500, dakle MC68000 i MC68020 procesore (sa FPU-om), razne grafičke podsisteme (npr. Picasso 96), 64M Zorro III Fast RAM i četiri flopi diska. Emulacija hard diska se obavlja kroz tzv. volume files (fajl na disku u koji se smešta Amigin fajl sistem) ili, kao kod Pacifist-a, kroz lokalni fajl sistem. Podržani su i miš, džojstik i štampači, kao i emulacija zvučnog čipa, a podrška za serijske portove i mrežu je trenutno u beta fazi. U trenutnoj verziji (0.8.6), programu nedostaje MMU emulacija, pa emulirana Amiga može da radi samo sa standardnim Amiga OS, ali ne i sa alternativnim operativnim sistemima poput Linux-a. Za rad programa potreban je još i Amigin ROM (Kick ROM), kao i osnovni sistemski softver Workbench.
Obzirom na složenost zadatka, UAE ima ozbiljne hardverske zahteve - ako uključite podršku za zvuk, emulacija neće biti potpuna čak ni na PII-300! Bez zvuka, emulacija je prilično komforna već na Pentium-u na 166 Mhz. Program je težak za konfiguraciju (potrebno je određeno poznavanje Amige), mada poslednje verzije sadrže GUI koji donekle pomaže u tom poslu. Kada program dostigne željeni stepen kompatibilnosti, ostaće više vremena za razvoj korisničkog interfejsa.
UAE obezbeđuje solidnu kompatibilnost, mada postoji dosta programa i igara koji pod njim ne rade. Testirajući UAE, nasumično smo pokretali razne programe i igre skinute sa Interneta - većina njih je uspevala da se startuje, što naravno ne znači da će njihov dalji rad biti ispravan. U svakom slučaju, na ovom programu radi veliki broj ljudi (ima najaktivniji razvoj od svih programa koje smo u ovom tekstu pominjali), pa će verovatno u veoma bliskoj budućnosti, stepen kompatibilinosti biti viši.
Za ljubitelje Amige sa nešto slabijim PC konfiguracijama na raspolaganju je Fellow, DOS program donekle baziran na source-u UAE-a, ali napisan u asembleru. Zbog toga je program značajno brži od UAE - ako se isključi emulacija zvuka, vrlo pristojno radi i na slabijim Pentium-im računarima (teorijski bi mogao da radi i na 486-icama, ali to ne bismo nikom poželeli). Fellow se lakše konfiguriše, ali je obzirom da je u prilično ranoj fazi razvoja, manje kompatibilan od UAE-a.

   

Mekintoš

Prvi Mac emulator sa kojim smo se sreli i nije bio emulator u pravom smislu te reči. U pitanju je program Executor (www.ardi.com) čiji je glavni cilj da omogući izvršavanje Mekovih programa bez korišćenja Apple-ovog sistemskog softvera. Executor radi tako što sve pozive MacOS-a mapira u odgovarajuće rutine operativnog sistema na kome se sam Executor izvršava (DOS, Linux, NextStep). Ovo je omogućilo brz rad, ali je danak plaćen kroz smanjenu kompatibilnost. Executor je kompatibilan tek sa System 6 verzijom operativnog sistema i na njemu se ne može pokrenuti čak ni Finder, pa Executor sadrži svoj sopstveni OS shell.
Ipak, program je prilično popularan, pre svega zbog toga što je omogućio jednostavan pristup Mac HFS CD-ovima i najlakši način za prebacivanje podataka iz data/resource forkova Mekintoš fajl sistema. Obzirom na popularnost programa, postoje neki Mac programi koji detektuju Executor (odnosno činjenicu da rade u emulatoru) pa se sami prilagode orkuženju. Program postoji u DOS i Linux verziji, a tu je i eksperimentalna Win32 verzija.
Za one koji žele da osete "pravu stvar", bolji izbor je vMac (www.vMac.org). To je pravi emulator koji zahteva Mekintoš ROM BIOS kao i operativni sistem. Program emulira Mac II+, pa je poslednja verzija MacOS-a koju emulator može da izvršava System 7.5.5. vMac je Open Source program, nastao na osnovu UAE source-a (deo koji se odnosi na emulaciju MC68000 procesora). U pitanju je prilično nov program (aktuelna verzija je 0.1.95) pa mnogi delovi Mekintoša još uvek nisu obuhvaćeni emulacijom. Za sada, vMac podržava rezoluciju ekrana 512*342 kao i maksimalnu memoriju od 4 MB. Pošto ciljna mašina (Mac+) nije podržavala hard diskove, vMac emulira hard disk samo kao (jako veliki) flopi. Zvuk je tek delimično podržan, a emulacija mreže i portova je u razvoju.
Kao i većina OpenSource programa, vMac je multiplatformski: postoje DOS, Win32, Linux i OS/2 verzije. Win32 verzija ima zanimljivu mogućnost razmene između Windows clipboard-a i clipboard-a emuliranog Mekintoša. Program sam po sebi ne može direktno da čita HFS CD-ROM-ove, ali se to može rešiti korišćenjem dodatnog programa HFV Explorer. Win32 verzija vMac-a može da radi u prozoru ili na čitavom ekranu (DirectX). Kompatibilnost nije na naročito visokom nivou, mada bi po nekim testovima većina programa koji rade na modelu Mac+ mogla manje ili više uspešno da radi i u okviru emulatora. Obzirom da radi pod pravim MacOS-om, kompatibilnost je veća nego kod Executor-a.
Priča o emulaciji Mac-a mora da obuhvati i program Fusion (www.microcode-solutions.com), koji je pre nekog vremena prebačen sa Amige na DOS i za sada predstavlja najbolji Mac emulator za PC. Fusion emulira MC68040 procesor i pretenduje da ostvari 100% kompatibilnost sa svim Quadra modelima, dakle potpunu kompatibilinost sa Mekintošima iz perioda pre prelaska na PowerPC platformu.
Ovaj program podržava do 764 MB RAM-a, rezolucije ekrana do 1600*1200, pseudo-Mac flopije (prave Meintoš diskete se, zbog ograničenja MFM kontrolera, ne mogu čitati na PC-ju), HFS i ISO CD-ove, zvuk, SCSI, mrežnu podršku kao i podršku za modeme, štampače, skenere i slične uređaje. Pošto smo pri ruci imali samo demo verziju koja je prilično ograničena, mogli smo da probamo samo deo svega toga. Uspeli smo da pokrenemo razne javno dostupne programe kao što su Internet Explorer 3.0, Acrobat Reader, da pristupamo HFS delovima CD-ROM-ova i Zip disketa, pa čak i da instaliramo sistemske dodatke kao što je QuickTime. Pristup Internetu nije uspeo, jer demo verzija ne dozvoljava umrežavanje i pristup modemu.
Fusion omogućava izvršavanje najnovijih verzija MacOS-a (uključujući i 8.1); njega nismo imali na raspolaganju, ali sa System-om 7.5.5 Fusion je radio savršeno. Ovaj program je relativno skup ($120, Executor je još skuplji) ali, po onome što je pokazala demo verzija, predstavlja ozbiljnu alternativu kupovini neke polovne Quadra-e, za korisnike koji žele da se upoznaju sa sa Mekintošem pa čak i da koriste kompatibilne Mac programe.


PC home - osnovna strana Novi broj|Arhiva|Pretrazivanje svih brojeva|O nama
Pretplatite se na PC|Postanite saradnik casopisa PC|Pitanja i komentari u vezi casopisa