Hlavní navigace

ZX Spectrum - vzor 2009

Martin Malý 25. 8. 2009

Před více než pětadvaceti lety vznikl legendární počítač ZX Spectrum. A ačkoli je dnešní hardware na hony vzdálené tehdejším strojům, nelze říct, že jsou počítače jako Spectrum, Apple, Commodore 64, Atari 800/130 a další mrtvé - v srdcích mnoha fanoušků žijí dodnes, stejně jako celá osmibitová éra.

Z dnešního pohledu je éra osmibitových počítačů něco jako doba bájných eposů – doba, kdy počítače vstoupily do domácností, kdy každý majitel byl tak trochu programátor, kdy jeden kilobajt paměti znamenal obrovský prostor… Z dnešního pohledu jistě směšné parametry, přesto tehdejší stroje rozpoutaly revoluci a dodneška stojí za to prostudovat si tehdejší postupy, kdy nedostatek technických možností nahrazovali důmyslní konstruktéři všelijakými hacky a triky.

Nejčastěji používanými procesory v té době byly hlavně dva typy: 6502 od MOS Technology a Z80 firmy Zilog. Oba procesory mají hodně společného: kromě toho, že svým výkonem a cenou přispěly k rozšíření domácích počítačů, tak oba byly vylepšenými verzemi procesorů jiných firem (6800 od Motoroly, resp. Intel 8080), oba představovaly vrchol osmibitové éry, oba měly následovníky, kteří přišli už pozdě, a v neposlední řadě oba přežily do dnešních dnů. 6502 byl resuscitován společností Western Design Center, která jej nabízí v CMOS verzi s mnoha vylepšeními. Z80 je vyráběn dodnes existující a prosperující společností Zilog. Oproti verzi ze 70. a 80. let je současný procesor rychlejší, je vyráběn i v pouzdrech pro SMD a Zilog nabízí např. i verzi s integrovanými I/O obvody.

Znovuvynalézání

Možná by se mohlo zdát, že v současnosti nemá osmibitová architektura význam ani uplatnění. Ale pravý opak je pravdou: Osmibitové jednočipové počítače jsou dostatečně výkonné k tomu, aby řídily jednoduché stroje, a zároveň je jejich výroba levná, použití snadné a vývojářské nástroje ověřené. (Když jsem před časem otevřel svůj MP3 přehrávač, objevil jsem v něm dva velké čipy: FLASH paměť a integrovaný obvod, který se podle datasheetu skládal z MP3 dekodéru a právě z procesoru Z80 – pozn. aut.)

Snadná dostupnost starých a ověřených procesorů spolu s moderní technologií vedou k renesanci osmibitových strojů z 80. let – alespoň na stolech nadšenců, kutilů a pamětníků. Na internetu lze nalézt nepřeberné množství návodů ke stavbě nejrůznějších osmibitových počítačů, od funkčních replik až po naprosto vlastní konstrukce. Na jedné straně jsou tak repliky tehdejších reálných počítačů (např. zde zmiňovaná replika Apple I či funkční Altair 8800), na druhé straně nejrůznější CP/M stroje či osmibitové stavebnice vlastní konstrukce. Mezi tím jsou moderní periferie pro historické kusy počítačů, či „reinvented“ počítače, kdy se pomocí nových technologií „znovuvynalézá“ starý počítač.

Proč? Ano, to je správná otázka. Asi ze stejného důvodu, z jakého někteří staví lodě v lahvích a jiní sbírají známky nebo portují Linux na mobilní telefony. Myslím, že na serveru Root.cz si tuto otázku klást nemusíme.

Retroleum

Pojďme se podívat na výtvory jednoho „znovuvynálezce a zlepšovatele“ – Phila Rustona. Phil začal s vlastním „Z80 projektem“ (dnes není na webu dostupný, ale byl postaven z běžných DIL čipů na několika deskách). Philovým cílem bylo postavit „počítač v duchu 80. let“, s levnými periferiemi (klávesnice PS/2, VGA displej, IDE disk) a moderními technikami. Verze 2 jeho Z80 Projectu (V2Z80P) byla kompletně přebudována a dostala vlastní „grafickou jednotku“ a „zvukovou jednotku“. Ve verzi 3 (V3Z80P) byly diskrétní IO nahrazeny programovatelnými logickými čipy (CPLD) či jednočipovými kontroléry. Na základní desce s procesorem Z80 byly dvě velká programovatelná pole Xilinx XC95×x, jedno z nich zajišťovalo funkce IDE rozhraní, druhé řešilo přístup k paměti a periferiím. Kromě těchto polí obsahovala deska i PIC16F627 pro klávesnici a Ubicom SX28 pro generování zvuku. K procesorové desce byla připojena deska s grafickým procesorem – opět postavený na třech CPLD obvodech XC95×xx.

V3Z80P

Verze 4 (V4Z80P) nahradila starší pole typu CPLD výkonnějšími FPGA a navíc dostala pouzdro připomínající notebook (FPGA umožnila zmenšit rozměry a počet desek). Parametry čtvrté verze napovídají o funkcích – v porovnání se současnými stroji k smíchu, ale nezapomínejme, že tu hovoříme o počítači s procesorem z roku 1976:

  • 8MHz Zilog Z80 CPU
  • 128KB System RAM
  • 128KB Video RAM
  • 128KB Audio RAM
  • 128KB Sprite RAM
  • 2.5″ IDE HDD
  • Slot pro Compact Flash
  • 5″ LCD display.
  • Čtyřkanálový stereo zvuk
  • 256 barev z palety 4096

Čtvrtá verze položila základ současnému stavu – ve verzi 5 pak Phil nahradil několik FPGA čipů jedním velkým, no a ve verzi 6 (V6Z80P) dostal jeho projekt současnou podobu: Jednodeskový počítač, poháněný procesorem Z80 na frekvenci 16MHz, který je podepřen velkým FPGA (Spartan II 150K). V6Z80P má interně tři paměťové sběrnice – jednu pro CPU a operační paměť (512kB), další pro video RAM (512kB) a třetí pro paměť samplovaných zvuků (128kB). Dále obsahuje dva standardní porty pro joystick (Atari-like), konektory pro PS/2 klávesnici a PS/2 myš, RS-232 port, slot pro SD/MMC paměťovou kartu, audiovýstup a videovýstup, který může být připojen jak na VGA, tak na video vstup běžné televize.

Phil o svém výtvoru říká: No, je to osmibitový jednodeskový retro počítač, na kterém si můžete zase užít toho starého dobrého programování v assembleru, kdy jste pod prsty cítili dotek křemíku a nestarali jste se o API a abstraktní vrstvy a o podobné nesmysly. Nebo to může být deska pro zkoušení vývoje s FPGA (ale musíte počítat s tím, že máte velmi málo volných pinů a někde je paměť, někde procesor).

V6Z80P

Hardware na přání

Pro kutily a programátory bude velmi zajímavý fakt, že konfigurace FPGA (tedy „vše kromě procesoru“) je uložena v externí přeprogramovatelné serial EEPROM paměti. V této paměti jsou k dispozici tři pozice („sloty“), do nichž mohou být nahrány tři různé konfigurace FPGA. Defaultní architektura je Rustonova OSCA (Old Skool Computer Architecture), ale nic nebrání tomu celou architekturu přeprogramovat a donutit FPGA, aby se tvářila například jako ZX Spectrum (v balíku, který Phil dodává, je právě tento emulátor obsažen). Při startu si pak můžeme vybrat stiskem F1-F3 konfiguraci, kterou chceme spustit.

OSCA je základ, který dokáže ze starého osmibitového procesoru na 16MHz vytáhnout efekty, srovnatelné s Amigou, ostatně – posuďte sami: Obsahuje šestnáctibitovou hardwarovou násobičku, hardwarovou podporu pro sprity, blitter, umožňuje i efekt zvaný „copper“:

Software

Phil přišel nejen se systémem, ale i s vlastním operačním systémem (FLOS). FLOS je takový kříženec mezi DOSem a debuggerem – umožňuje základní práci se souborovým systémem (na SD kartě), umožňuje debugovat běžící program a poskytuje některé základní funkce (ovládání klávesnice, myši, výpis znaků, komunikace po RS232), které mohou využívat běžící programy.

V6Z80P si získal mnoho fanoušků po celém světě, kteří přispívají do knihovny programů, takže pro V6Z80P existuje např. přehrávač MODů, prohlížeč obrázků či textový editor. Některý SW je k dispozici v PC podobě (překladače assembleru či C). Veškeré komunikační protokoly jsou dobře dokumentovány, FLOS i OSCA jsou otevřené architektury (k dispozici jsou zdrojové kódy), takže většímu rozšíření brání jen nedostatek hardware. Phil vyrobil a prodal několik desítek kusů V6Z80P (cena je zhruba 90 liber + poštovné). Což je za přijatelnou cenu naprosto perfektní platforma pro hobby vývojáře, pro hračičky, pro bastlíře i pro lidi s nostalgickou vazbou k éře osmibitových počítačů…

Často se v komunitě fanoušků ZX Spectra hovoří o tom, jaký počítač by mohl být důstojným nástupcem ZXS pro 21. století – přeci jen původní hardware zastarává a i když byl navržen naprosto jedinečně, tak některá vylepšení jsou možná jen za cenu poměrně divokých hacků. Ortodoxní fanoušci trvají na tom, že Spectrum nesmí být měněno, ale liberálnější milovníci by rádi viděli „stroj s příchutí Spectra“, pro který by mohli zase vytvářet hry a dema jako v 80. a 90. letech, a právě pro ně by mohl být V6Z80P tím správným impulsem.

Některé odkazy:

Našli jste v článku chybu?

27. 8. 2009 10:12

Abych jen doplnil, k cemu se napriklad AutoLisp dal pouzit. Vstupem byl vykres, v jehoz jedne hladine byly umisteny 2D body (namerene v terenu), u nichz byl textovy box se zapsanou vyskou – tento vykres byl vyexportovan primo z „laseroveho“ geodetickeho pristroje.

Nasledne AutoLispovsky program sahl do databaze tohoto vykresu, provedl parovani bodu s textove zapsanymi vyskami a potom pomoci dost nabuseneho algoritmu vytvoril vrstevnice (pomoci polycar). Bylo tam docela dost rekurzivniho volani,…

27. 8. 2009 10:03

No praveze to zasobnik procesoru nepouzivalo, to by nebylo omezeny na osm urovni ale treba na 32768 (u i386 v realnem rezimu). To omezeni bylo umele, stejne jako omezeni na 1000 zanoreni v pozdejsich verzich AutoLispu. Autodesk si asi neuvedomil silu toho jazyka (resp. spis spojeni Lispu s CADem), tak ho zbytecne orezal.

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

Podnikatel.cz: EET: Totálně nezvládli metodologii projektu

EET: Totálně nezvládli metodologii projektu

Měšec.cz: Za palivo zaplatíte mobilem (TEST)

Za palivo zaplatíte mobilem (TEST)

DigiZone.cz: Ohrozí Freedom TV přechodové sítě?

Ohrozí Freedom TV přechodové sítě?

Vitalia.cz: To není kašel! Správná diagnóza zachrání život

To není kašel! Správná diagnóza zachrání život

DigiZone.cz: Sony KD-55XD8005 s Android 6.0

Sony KD-55XD8005 s Android 6.0

DigiZone.cz: Rádio Šlágr má licenci pro digi vysílání

Rádio Šlágr má licenci pro digi vysílání

Měšec.cz: Air Bank zruší TOP3 garanci a zdražuje kurzy

Air Bank zruší TOP3 garanci a zdražuje kurzy

DigiZone.cz: Sat novinky: slovenská TV8 HD i ruský NTV Mir

Sat novinky: slovenská TV8 HD i ruský NTV Mir

Vitalia.cz: Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Lupa.cz: Co se dá měřit přes Internet věcí

Co se dá měřit přes Internet věcí

Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?

Vitalia.cz: Znáte „černý detox“? Ani to nezkoušejte

Znáte „černý detox“? Ani to nezkoušejte

Lupa.cz: Seznam mění vedení. Pavel Zima v čele končí

Seznam mění vedení. Pavel Zima v čele končí

Podnikatel.cz: Podnikatelům dorazí varování od BSA

Podnikatelům dorazí varování od BSA

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte

120na80.cz: Jak oddálit Alzheimera?

Jak oddálit Alzheimera?

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

Podnikatel.cz: Chaos u EET pokračuje. Jsou tu další návrhy

Chaos u EET pokračuje. Jsou tu další návrhy

DigiZone.cz: ČRa DVB-T2 ověřeno: Hisense a Sencor

ČRa DVB-T2 ověřeno: Hisense a Sencor