LINUXSOFT.cz Přeskoč levou lištu
Uživatel: Heslo:  
   CZUKPL

> Emulátory (1) - Sinclair ZX-Spectrum

V prvním díle našeho krátkého seriálku se podíváme na emulátory platformy Sinclair ZX-Spectrum, která byla v Českých a Slovenských luzích a hájích pravděpodobně nejoblíbenější a nejrozšířenější.

21.11.2005 06:00 | MaReK Olšavský | Články autora | přečteno 17889×

Většina z uživatelů, kteří přišli k počítačům od počátku 80. let občas s láskou vzpomene na hry, které tenkrát hrávali. Mnozí si je s láskou zahrají dodnes, buď v některém z pozdějších remaků (bohužel většinou pro platformu MS Windows), nebo v některém z emulátorů. Hry i programy byly v té době maximálně optimalizovány vzhledem k malým systémovým prostředkům, většinou byly velmi promyšlené a daly se hrát celé dny, bohužel dnes je tomu téměř naopak. Pro řadu dnešních her je třeba počítače, který bude pro většinu lidí dostupný cca za půl roku, nehledě k tomu, že řada titulů, které oslní grafikou, efekty a zvukem je dohratelná za několik hodin a dále již nemá hráči co nabídnout.

Pravděpodobně nejpopulárnější 8 bitovou počítačovou platformou v našich končinách byl Sinclair ZX-Spectrum a jeho následovníci a klony. Počítač byl stavěn kolem mikroprocesoru Zilog Z80 (tuto firmu také založili lidé, kteří odešli od Intelu, pododně jako AMD), taktovaném na dnes směšných 3.50 MHz a zákaznického chipu ULA. Nejprve byl tento počítač vybaven 16KB RAM, později 48 KB (paměť ROM byla v obou verzích 16KB) a nakonec 128 KB. Jeden z klonů (slovenský Didaktik Gama) měl trochu nestandardně ovládaných 80 KB. Zvuk obstarával jednobitový pípák. Počítač stvořila firma Sinclair, sira Cliva Sinclaira, v roce 1982 jako následovníka počítače ZX-81 a pro jeho klávesnici se pro něj vžilo označení "gumák". V roce 1984 byla na trh uvedena verze Plus, která se lišila především mnohem lepší klávesnicí a v roce 1986 přišla verze +128K, kde většina změn byla uvnitř. Mezi jinými změnami přibyl zvuk ve vydání chipu Yamaha AY-3-8910, 128 KB RAM, 32 KB ROM v módu 128K s podstatně lepším BASICem, RS-232 a Midi. V roce 1986 byla také společnost zakoupena firmou Amstrad, ale další inovace již byly minimalistické - vestavění magnetofonu a 3" disketové mechaniky (ano opravdu nestandardní tři palce). V roce 1989 vznikl "pokračovatel" legendy - SAM Coupé (jeho možnosti byly zajímavé, ale přišel příliž pozdě, v době, kdy jsme již kupovali PC, Commodore Amiga a Atari ST), který ale již nebyl úspěšný,  byť uměl být v jednom módu kompatibilní s legendou. Podobnému osudu neunikl Sinclair QL, u kterého byl neúspěch dán především zpožděním proti plánovanému a očekávanému uvedení.

Počítače Sinclair jsou pravděpodobně nejvíce klonovanou a emulovanou platformou v historii, proto není možné obsáhnout v jednom článku všechny možné emulátory. Existují pro platformy Windows, DOS, Linux, MacOS, Java, ... Vzhledem k zaměření tohoto serveru budou popsány jen některé emulátory pro platformu Linux, přičemž se pokusím vybrat ty nejlepší. Existují i emulátory Sinclair QL a SAM Coupé, ale pro tyto platformy bude pravděpodobně velmi obtížné najít software.

Technické parametry Sinclair ZX-Spectrum :-)

Mikroprocesor: Zilog Z80, frekvence 3.50 MHz

Paměť: zpočátku 16KB, později 48KB a v modelech od roku 1986 je 128KB

grafika: 256×192 bodů v 15 barvách, které jsou v rastru 32×24 "prvků" (pozice znaků na displayi)

zvuk: 1bitový beeper, později 3 (zvukové) + 1 (šumový) kanálový chip Yamaha AY-3-8910

Obliba: Veliká spojená s velikou konkurencí mezi příznivci 8 bitových platforem Sinclair, Atari a Commodore 64

Spectemu

První emulátor, který jsem nainstaloval byl Spectemu, který je emulátorem původního ZX-Spectrum 48K. Na domovské stránce projektu jsou dostupné zdrojové kódy, takže instalace se sestává z "magické trojice" ./configure && make && make install, ale i připravené binární balíky pro PC platformu. Na stránkách nejsou uvedeny žádné zvláštní požadavky pro instalaci, pouze X11 server a případně svgalib.

Emulátor se spouští příkazem xspect (máte-li spuštěno grafické prostředí XWindow), respektive v konzoli pomocí vgaspect (ke spuštění této verze budete potřebovat svgalib). Rychlost programu je velice uspokojivá a dle slov autora mu běžel v plné rychlosti i na 80486, já jsem jej provozoval jak na Athlon XP 2000+, tak na PowerPC G3/366MHz naprosto spokojen s výsledky. Za dobu používání jsem nenarazil na program (samozřejmě, že s omezením na programy na modely před +128K), který by se mi nepodařilo spustit.

Program má některá menší omezení, například trochu horší uživatelské rozhraní, než program FUSE, protože k práci s programem je zapotřebí i terminál, neumí spolupracovat s PC joysticky a především se jedná o emulátor pouze ZX-Spectrum, ne již 128K. Program pracuje se soubory *.sna a *.z80, které jsou snapshoty paměti, ale i *.tzx a *.tap, které jsou obrazy pásku a natažení programu/hry z nich je stejné, jako bylo jejich původní nahrávání z pásku, tj. včetně stejných efektů, jak zvukových, tak v borderu.

Spectemu Nahrávání programu

Stav Spectemu po startu, zde v pozadí s terminálem a rozložením klávesnice *** Věrná emulace - takto vypadalo nahrávání z pásků na Sinclairu

FUSE

FUSE je zkratka od Free Unix Spectrum Emulator (pozor fuse je i rozhraní souborového systému, takže se nespleťte při instalaci), jedná se o podstatně lepší emulátor Sinclaira, než je výše popsané Spectemu. Na jeho domovských stránkách jsou odkazy na zdrojové kódy, sestavené binární instalace pro rozšířenější distribuce Linuxu (nejen pro něj, i pro MacOS a *BSD) a potřebné knihovny (libspectrum). Například pro v ČR/SR velmi rozšířenou distribuci Mandriva je k dispozici v plf. Na desktopu jsem tento emulátor instaloval (díky tomu, že mám Mandrivu) z plf, na iBook/Linux jsem zvolil instalaci ze zdrojových kódů. Před instalací ze zdrojových kódů bych si dovolil varovat začátečníky, nejedná se o kompilaci a instalaci pouze FUSE, ale je třeba předem nainstalovat i vyžadované knihovny. Emulátor neobsahuje obrazy ROM pamětí originálního Sinclaira a proto je potřeba je postahovat z Internetu. Na stránkách http://www.srcf.ucam.org/~pak21/spectrum/roms.pl jsou k dispozici legálně se svolením majitelů autorských práv, kterým je firma Amstrad.

Program vyžaduje XWindow, libSDL a svgalib, v případě, že budete mít nainstalované GTK+ knihovny, budete mít k dispozici velmi příjemné ovládání. Instalace je bezproblematická, stejně jako funkčnost, byť na menší problémy lze narazit. V GUI programu lze v menu Options -> Select ROMs nastavit soubory s jednotlivými obrazy pevných pamětí (ROM images) počítače ZX-Spectrum, či jejich klony (Pentagon, Timex, ...). Bohužel už není možné emulátor z GUI přepnout do "jiné verze" a je potřebné toto udělat z příkazové řádky pomocí parametru, například fuse --machine 128. Výhodou je, že při příštím prostém spuštění fuse je automaticky nastavena poslední emulovaná verze. Spolupráce s PC joystickem je bezproblémová, stejně tak program nabízí emulaci mnoha dalších zařízení. Zvuk funguje přes OSS.

Pro práci s uloženými programy poskytuje potřebná knihovna libspectrum spolupráci s formáty *.sna, *z80, *.sxz, *.tzx, *.tap, *.rzx, několik dalších jen pro čtení - *.zxs, *.sp.*, *.snp, (Warajevo verze) *.tap a nakonec čte soubory *.dck, které přísluší k Timexovým cartridgím. Pro čtení souborů můžete použít obrazy uložené i v gzipu, nebo bzipu. Pokud budete chtít uložit nějaké obrázky z her, program pro to nabízí funkce přímo. V Options->Filter... si můžete zvolit zobrazení podobným způsobem, jako na TV (je vidět rastrování, případně porůznu lehce rozmazaný obraz).

FUSE se Speccy klávesnicí FUSE - General Options Nastaveni joysticku

Prázdné FUSE, jen s nápovědou o rozložení klávesnice *** Obecná nastavení FUSE *** Nastavení joysticku

XZX-Pro

V některých testech se jedná pravděpodobně o nejlépe hodnocený emulátor Sinclaira, je distribuován ve dvou verzích, jednak lze stáhnout jeho binární soubory (případně zdrojové kódy) volně šířené verze a provést instalaci, druhá cesta je zaplacení autorovi, kdy získáte vlastnosti, potlačené ve volné verzi - funkční Centronics, BetaDisk se 4 mechanikami, vylepšené rozhraní, ... takže je otázkou, zda-li bude ochoten někdo za tato vylepšení zaplatit, pokud nebude motivací pro platbu podpoření projektu... Na domovských stránkách projektu jsou ke stažení obě verze programu a najdete zde i cenu za plnou verzi (25,-€).

Program ke své instalaci vyžaduje Motif (stačí OpenMotif - http://www.openmotif.org/ ), dle dokumentace s lesstifem nefunguje. Po instalaci OpenMotif je možné přistoupit ke kompilaci a instalaci xzx-pro, opět jsem volil instalaci ze zdrojových kódů a po chvíli byl emulátor připraven k práci, tedy spíše ke hraní. Při prvním startu z terminálu (abychom viděli případné hlášky) pravděpodovně uvidíte větší množství chybových hlášek, nicméně program funguje. Jedná se většinou o chybějící ROM obrazy zařízení. Opět je standardem práce se všemi podstatnými formáty, ve kterých programy pro Speccy emulátor můžete najít.

XZX-Pro Advanced Tactical Fighter v XZX-Pro

ZXZ-Pro s několika monitorovacími panely *** Arkádové letadélko ATF v XZX-Fro

Další emulátory a zhodnocení

Do hrubého popisu, který je výše jsem se pokusil vybrat alespoň ty nejlepší emulátory (vzato subjektivně z mého pohledu). Na mnohé další se místo již nenajde, ale alespoň se pokusme jmenovat ty známější - FBZX (FrameBuffer ZX-Spectrum - Španělský emulátor, umí i Speccy 128K), X128 (Emulátor, který mohou znát někteří fandové již z DOSu), Glukalka a mohl bych zde jmenovat několik dalších, které jsou multiplatformní, protože jsou napsány na Java platformě a uživatelé dalších platforem (mimo Linuxu) najdou pro svůj systém emulátor také.

Ze zde testovaných emulátorů se mi nejvíce líbí FUSE, Spectemu je jednoduchý emulátor původního 16KB, nebo 48KB ZX-Spectra, který svůj úkol splní na 100%. XZX-Pro má (významné) mínus, protože většina uživatelů LINUXu nemá nainstalován OpenMotif (dokonce jsem jej neměl ani v archívech pro Mandrivu a musel jsem instalovat ze zdrojových kódů). Fuse má rozumnou instalaci, byť v základu chybí ROM soubory, ale poté funguje k 100% spokojenosti.

Alespoň několik obrázků z her

ATF Batman R-Type

Advanced Tactical Fighter *** Batman - temný rytíř v Sinclairu *** R-Type - i na Speccy byly pěkné hry

Závěr

Původním plánem bylo popsat několik emulátorů mé kdysi oblíbené platformy a poté pokračovat některými dalšími platformami, které tu byly - Atari, Commodore, Amiga (exemplář mám ještě stále doma), Atari ST, ale koukneme se na zoubek i emulátorům takových "raritek", jako byl SAM Coupé, Sharp MZ a MSX, kde slůvkem raritky myslím jejich nízkou penetraci, kterou měli v našich končinách.

Zajímavé odkazy

http://dmoz.org/Computers/Emulators/Sinclair/ZX_Spectrum/ - Pravděpodobně nejúplnější přehled Open Source emulátorů Sinclaira.

http://www.srcf.ucam.org/~pak21/spectrum/roms.pl - Obrazy ROM pamětí, které budete občas potřebovat, protože většinou nejsou v emulátoru obsaženy.

http://www.worldofspectrum.org/ - Zajímavé místo na Internetu, najdete tu nejen emulátory, ale i archív her a programů pro Speccy emulátory, nebo například seznam her, které byly ze Spectra přeportovány.

Verze pro tisk

pridej.cz

 

DISKUZE

ZX - nostalgie 21.11.2005 10:47 Petr Zajíc
L Re: ZX - nostalgie 21.11.2005 10:55 MaReK Olšavský
  L Re: ZX - nostalgie 21.11.2005 22:00 martin matejovic
    L Re: ZX - nostalgie 22.11.2005 06:37 MaReK Olšavský
Jůů, líbíí :-) 21.11.2005 17:42 slackman
|- Re: Jůů, líbíí :-) 21.11.2005 18:13 o.k.
L Re: Jůů, líbíí :-) 21.11.2005 18:18 MaReK Olšavský
  L Re: Jůů, líbíí :-) 22.11.2005 11:33 slackman
    L Re: Jůů, líbíí :-) 22.11.2005 11:59 MaReK Olšavský
      L Re: Jůů, líbíí :-) 22.11.2005 19:01 slackman
Diky za tu pripominku 22.11.2005 21:45 Milan Hejpetr
  L Re: Diky za tu pripominku 22.11.2005 22:01 MaReK Olšavský
    |- Re: Diky za tu pripominku 23.11.2005 21:30 Milan Hejpetr
    L Re: Diky za tu pripominku 23.11.2005 21:48 Milan Hejpetr
      L Re: Diky za tu pripominku 24.11.2005 07:56 MaReK Olšavský
        L Re: Diky za tu pripominku 28.11.2005 12:10 "Dejf" David Škola
          L Re: Diky za tu pripominku 28.11.2005 17:04 MaReK Olšavský
            L Re: Diky za tu pripominku 29.11.2005 12:11 "Dejf" David Škola




Příspívat do diskuze mohou pouze registrovaní uživatelé.
> Vyhledávání software
> Vyhledávání článků

19.7.2015 11:29 /MaReK Olšavský
Konkurence Androidu a iOS to nemá snadné. Vývoj Firefox OS se snaží zbavit cílení na nejlevnější přístroje, s čímž souvisí nejedno omezení funkčnosti, a už mu roste konkurence na stejných základech. Pro vývoj systému H5OS byla získána investice US$ 100 mil.
Přidat komentář

3.7.2015 5:54 /MaReK Olšavský
Grafiky by mohlo zajímat vydání Blenderu 2.75, jehož nejzásadnější novinkou je OpenCL (na GPU AMD), nebo realtime stereoskopická vizualizace v prostorovém modeláři.
Přidat komentář

11.6.2015 14:41 /Jiří Václavík
Máte-li rádi perl a hodinu času, pak ji určitě využijte ke shlédnutí přednášky Ricarda Signese Perl 5.22 and You z letošního YAPC::NA.
Přidat komentář

9.6.2015 19:27 /MaReK Olšavský
Vývojáři Mozilly si zřejmě oblíbili rytmus vydávání nových verzí po 6 týdnech a stejně často budou vycházet i aktualizace Rustu, které by v sérii (1.0, 1.1, 1.2, …) měly být naprosto kompatibilní.
Komentářů: 1

31.5.2015 14:06 /MaReK Olšavský
„Open source Matlab“ GNU Octave, byl vydán ve verzi 4.0, která posiluje kompatibilitu s Matlabem, defaultně zapíná podporu OpenMP a zavádí GUI z Qt/OpenGL (s failoverem Fltk/Gnuplot).
Přidat komentář

26.5.2015 21:14 /MaReK Olšavský
Uživatelé Fedory mohou začít aktualizovat, protože vyšla verze 22. Největší změnou je asi nástup nového DNF, místo Yumu, a GCC 5.1.
Komentářů: 1

25.5.2015 19:22 /Petr Ježek
V Linux Jounalu vyšel zajímavý článek napsaný koncem minulého roku o historii, vlastnostech a přítomnosti init systémů s minimem věštění do budoucnosti. Bez emocí si tak lze s pomocí článku lépe najít vlastní pozici k použití systemd či něčeho jiného.
Přidat komentář

22.5.2015 18:20 /Petr Ježek
Vyšel Systemd 220 s řadou změn. Český podíl na vývoji je nezanedbatelný. Je otázka, jak se změny dotknou jednotlivých distribucí.
Přidat komentář

   Více ...   Přidat zprávičku

> Poslední diskuze

28.8.2015 15:47 / Jan Němec
Nechat se zotročit nebo podnikat

20.8.2015 21:39 / Ondrej Hascak
Stahnuti csv z FTP na muj server + cron job

19.8.2015 16:04 / Miroslav Kovařík
PHP Nahrávání a uložení MP3 do MySQL

5.8.2015 12:32 / Michal Janoušek
Re: Gnome commander

25.7.2015 18:59 / Jana Pátková
Gnome commander

Více ...

ISSN 1801-3805 | Provozovatel: Pavel Kysilka, IČ: 72868490 (2003-2015) | mail at linuxsoft dot cz | Design: www.megadesign.cz | Textová verze | zákony online