Published: 15. 9. 2005   Category: 8 bits computers

Počítač ZX Spectrum

Amatérské rádio 83/5A

Před časem jsme referovali o velkém „bestselleru“ mezi osobními počítači počítači ZX-81 firmy Sinclair. Tento v současné době nejprodávanější počítač (koncem loňského roku se jich vyrobilo 150 000 měsíčně) dostal následovníka. Je jím ZX-Spectrum, jehož standardní verze s pamětí 16Kbyte se v Anglii prodává za 125 liber, což je prakticky původní cena stejně velkého ZX-81 (stavebnice ZX-81 spolu s pamětí 16Kbyte stojí nyní asi 6O liber). Spectrum s sebou přináší všechny výhodné vlastnosti ZX-81 (viz AR 5/82) a navíc tlačítkovou klávesnici, možnost rozšíření paměti RAM na 48Kbyte, osmibarevný obraz s vysokou rozlišovací schopností, zvuk, zdokonalený BASIC a řadu dalších novinek.

Hardware

Na rozdíl od ZX-81 se Spectrum nedodává jako stavebnice, ale pouze jako kompletní počítač. Přístroj je v černém pouzdře z plastické hmoty o rozměrech 233 × 144 × 30  a váze 530 g. Jak je již u počítačů Sinclair zvykem, je celý počítač sestaven z neuvěřitelně málo součástek. Kromě pamětí a procesoru jsou v něm pouze čtyři (!) další IO, hrst diskrétních součástek, modulátor TV signálu a piezoelektrický reproduktor. Počítač je osazen mikroprocesorem Z80, který pracuje na kmitočtu 3,5 MHz.

Klávesnice

Protože řada recenzí vytýkala ZX-81 jeho membránovou klávesnici, bylo Spectrum vybaveno klávesnicí tlačítkovou. Je však všeobecně známo, že membránová klávesnice jsou nesouměřitelně levnější a často i v provozu spolehlivější – nevadí jim ani když na ně zvrhnete limonádu nebo vysypete popelník. Tlačítkové klávesnice ZX-Spectrum byla proto vyrobena tak, že se na membránovou klávesnici položila z gumy lisovaná sada tlačítek se zdvihem asi 2 mm a „zázrak“ byl hotov. Tento způsob výroby tlačítkové klávesnice pak u svých počítačů použily i další firmy, např. SANYO.

Jednu věc však klávesnici počítače uživatelé občas vytýkají: je to skutečnost, že tlačítko má někdy až 7 funkcí. Např. tlačítko C“ může znamenat písmeno C nebo c, příkazy CONTINUE, PAPER, LPRINT, znak ?, nebo třetí uživatelem nadefinovaný znak. Práce s touto klávesnicí je proto pro začátečníka trochu obtížná. Avšak stejně jako u ZX-81 je to pouze věc zvyku.

Významnou změnou však je to, že všechna tlačítka mají tzv. AUTOREPEAT. což znamená, že držíme-li tlačítko stisknuté déle než O,7 s, začne se příslušný znak tisknout rychlostí 10 znaků/s po dobu držení tlačítka. Obě konstanty můžeme libovolně měnit a to i během programu. Takže počáteční prodleva může být od O,02 s do asi 5 s a rychlost tisku od jednoho znaku za 5 s do 25 znaků/s.

Operační systém

Operační systém počítače zabírá spolu s překladačem jazyka BASIC 16 Kbyte oproti 8 Kbyte u ZX-81 a je tedy mnohem dokonalejší. Nejdůležitější zlepšení jsou:

  1. Nerozeznává režimy FAST a SLOW. Spectrum pracuje neustála naplno“ (jako ve FAST), přičemž obrazovka stále svítí (jako ve SLOW).
  2. Spectrum má úplnou množinu znaků ASCII včetně malých písmen. K zpřehlednění programu přispívá kromě automatického vkládání mezer i to, že klíčová slova jazyka BASIC jsou psaná velkými písmeny, kdežto celý zbývající program písmeny malými.
  3. Před každým záznamem na magnetofon je nahráno krátké pípnutí, jehož cílem je nastavit nahrávací automatiku na správnou úroveň. Tento jednoduchý trik podstatně zlepšil kvalitu nahrávek na magnetofony bez možnosti ručního nastavení úrovně nahrávání, což jsou prakticky všechny levnější kazetové magnetofony.
  4. Zlepšila se kvalita nahrávání z magnetofonu do počítače díky Schmittovu klopnému obvodu, předřazenému před vlastní vstup TTL.
  5. Díky opatřením uvedeným v bodu 3 a 4 mohla být zvýšena rychlost záznamu na magnetofon z 300 na 1500 bitů/s. Spectrum se tak zařadilo mezi nejrychleji nahrávající osobní počítače.
  6. Kromě programu lze na magnetofonový pásek nahrát i numerické nebo řetězcové pole, obsah obrazovky nebo jakýkoli úsek paměti, zadaný svojí počáteční adresou a délkou.
  7. Bezchybnost každé nahrávky (kromě nahrávky obsahu obrazovky) můžeme zkontrolovat pomocí funkce VERIFY.
  8. Programy lze nejen nahrávat, ale pomocí příkazu MERGE můžeme k nahranému programu přihrávat další části, např. procedury. Počítač tento přihrávaný program zpracovává stejně, jako kdybychom jej zadávali z klávesnice, tzn. že dokáže přepisovat řádky původního programu, nebo mezi jeho řádky vkládat nové.

BASIC

Vybraných změn doznal i interpreter jazyka BASIC. Všechny výhody jazyka BASIC ze ZX-81, zejména jednoduchá práce se řetězci, zůstaly zachovány, a navíc přibylo mnoho nových.

  1. Je povoleno více příkazů na řádek.
  2. Jsou zavedeny příkazy READ, DATA, RESTORE.
  3. Jsou zavedeny uživatelem definovatelné funkce (DEF FN), které mohou mít až 26 číselných a 26 řetězcových argumentů.
  4. Velice příjemnou změnou je i to, že pokud počítač odhalí chybu. napíše nejen její kód, jak bývá obyčejně zvykem, ale i její stručnou charakteristiku, např.
    7 RETURN without GOSUB 130:2
    kde 130:2 znamená, že chyba nastala v druhem příkaze v řádku 130.
  5. Čísla je možno psát v desítkové í dvojkové soustavě, což oceníme zejména při zavádění vlastních grafických symbolů.
  6. Každé zmačknutí tlačítka je provázeno pípnutím, jehož délku si můžeme programově nastavit.

Vstupní a výstupní operace

Operace vstupu a výstupu obsahuji tolik nového, že si zaslouží vlastní kapitolu.

  1. V příkazu PRINT byl zaveden oddělovač ' (apostrof), který znamená přechod na další řádek. Vynechání dvou řádků se tedy jednoduše naprogramuje: 130 PRINT "Jsem počítač ZX-SPECTRUM" '"Dobrý den!" (Nejedná se o chybu tisku, Spectrum dokáže psát písmena s čárkami a háčky!)
  2. Další velmi výhodnou funkcí, která se u počítačů běžně nevyskytuje (ZX-81 ji však má), je funkce AT, která určí počátek dalšího tisku. Předchozí příklad bychom tedy mohli zapsat:
    130 PRINT AT 0,0; "Jsem počítač ZX-SPECTRUM"; AT 3,0; '"Dobrý den!", kde první číslice za AT udává řádek počítaný shora a druhá číslice sloupec počítaný zleva.
  3. Příkaz INPUT je možno zadávat v daleko obecnějším tvaru, než bývá zvykem. Součástí příkazu INPUT může být:
    1. Jakákoli položka, která vyhovuje syntaxi příkazu PRINT a nezačíná písmenem. Tato položka se vytiskne. Pokud bychom chtěli vytisknout hodnotu nějaké proměnné nebo výrazu začínajícího písmenem, stačí dát tuto proměnnou (výraz) do závorek.
    2. Jméno proměnné nebo prvku pole. (U ZX-81 mohl příkaz INPUT obsahovat pouze tyto položky a to ještě jen jednu.) Narazí-li počítač na tuto položku, zastaví práci a čeká na zadání její hodnoty z klávesnice. Z klávesnice lze zadat jakýkoli výraz. obsahující konstanty, v programu známé proměnné nebo prvky polí či uživatelem definovaných. Tento výraz se vypočítá a jeho hodnota se přiřadí proměnné (prvku pole) uvedené v příkazu INPUT.
    3. Funkce LINE následovaná jménem řetězcové proměnné Táto funkce zařídí načtení dalšího vstupujícího řádku do jmenované proměnné.
  4. Všechny tisky, naprogramované v příkazu INPUT, se tisknou ve spodní, editační zóně a po dokončení tohoto příkazu se smažou. Toto řešení považuji za daleko výhodnější než řešení klasické, protože málokdy chceme, aby otázky, které počítač klade, byly součástí výstupního textu.
  5. Byly zavedeny příkazy IN a OUT, které dovedou číst hodnoty ze zadaného portu nebo je na něj poslat.
  6. Dopíšeme-li na konec obrazovky, počítač se zeptá SCROLL?. Zmáčkneme-li klávesu „N“ (no), „O“ (nula) nebo BREAK, počítač obrazovku smaže. Zmáčkneme-li jakoukoli jinou klávesu, počítač posune obsah obrazovky o řádek vzhůru a na uvolněné místo napíše požadovaný text. Počet řádků, které se takto vytisknou, než se nás zeptá podruhé, můžeme programově nastavit od 1 do 255. Tím lze jednoduše zařídit, aby nám postupným scrollováním „neodjel“ z obrazovky text, o nejž bychom v žádném případě nechtěli přijít.

Zvuk

Spectrum dokáže „hrát“ v rozsahu 1O oktáv. Tón sice není díky použitému piezoelektrickému reproduktoru příliš kvalitní, avšak generovaný signál je veden na magnetofonový výstup, odkud jej můžeme použít jako vstupní signál libovolného zesilovače.

Chceme-li zahrát nějaký tón, musíme vždy udat jeho délku a výšku. Délka se udává v sekundách a výška v půltónech vzhledem k jednočárkovanému C. Příkaz „BEEP 12, O.5“ nám tedy zahraje malé c po dobu O,5 s. Desetinným číslem však můžeme zadat nejen délku, ale i výšku tónu, takže můžeme používat nejen temperovanou stupnici, jako např. klavír, ale i tzv. čistou stupnici, kterou dokáží zahrát třeba housle. Labužníci mohou díky těmto možnostem programovat i např. indiánskou hudbu, která používá své vlastni stupnice.

Grafika

Největší novinkou je na Spectru bezesporu jeho grafika. Obrazovka je tvořena 24 řádky po 32 znacích, kolem kterých je lem nazývaný BORDER. Každý znak je tvořen blokem 8 x 8 bodů. U kteréhokoli z těchto bloků si můžeme zvolit barvu pozadí (PAPER) a barvu, kterou bude znak natisknut (INK). K dispozici je 8 barev: černá, modrá, červená, fialová (magenta), zelená, zelenomodrá (cyan), žlutá a bílá. Na černobíle televizí tyto barvy vytvářejí v uvedeném pořadí stupnici šedi. Kterýkoli blok je dále možno „rozsvítit“ (BRIGHT – barvy zůstávají, avšak jsou světlejší) nebo nechat blikat (FLASH – periodicky se prohazuje barva pozadí a tisku). Kterýkoli z uvedených příkladů (PAPER, INK, BRIGHT, FLASH) spolu s později uvedeným příkazem OVER lze nastavit pro daný blok, pro daný příkaz INPUT nebo PRINT a nebo pro celou další práci.

Tím však divy nekončí. Spectrum umí ovládat kterýkoli bod obrazovky – má tedy rozlišovací schopnost 256 x 196 bodů. Libovolné dva body dokáže spojit přímkou nebo kruhovým obloukem o zadaném úhlu (přímka je oblouk s úhlem O°), dokáže nakreslit kružnici o zadaném poloměru se středem v daném bodě. Tyto vlastnosti jsou nedocenitelné, rozhodneme-li se kreslit grafy funkcí, vývojové diagramy nebo jiné obrázky.

Grafy a písmena můžeme libovolně směšovat. Pokud potřebujeme kreslit do bloku, ve kterém je již něco napsáno či nakresleno, máme tři možnosti:

  1. Ponechat starý obsah a blok přeskočit.
  2. Smazat starý obsah a nahrát nový.
  3. Pomocí funkce OVER napsat nový obsah přes starý, přičemž v bodech křížení čar bude nastavena barva pozadí (čáru lze tedy smazat tak, že ji nakreslíme ještě jednou pomocí OVER).

Spectrum má dále 16 grafických symbolů převzatých ze ZX-81 a možnost dodefinování dalších 32 symbolů podle okamžitých potřeb uživatele (řecká písmena, háčky, čárky, matematické symboly, obrázky panáčků, letadel nebo lodí pro hy atd.). Tím se Spectrum zařadilo mezí několik málo počítačů, které jsou schopny psát česky. V případe potřeby je dokonce možno předefinovat celý znakový soubor a psát třeba azbukou nebo japonsky.

Doplňky

Mezi největší lákadla patří jeho příslušenství. Spectrum může používat stejnou tiskárnu jako ZX-81. avšak, jak jsme již uvedli v AR 5/82, je tato tiskárna pro nás nevhodná. Daleko pozoruhodnější jsou však další doplňky.

S největším ohlasem se setkal tzv. Microdrive, který má nahradit u osobních počítačů doposud používané pružné disky. Těchto Mikrodrivů lze k Spectru připojit až 8 najednou, přičemž v každém je zasunut jeden výměnný Mikroflopy, což je nekonečná páska obsahující 100 Kbyte programu nebo dat. Střední přístupová doba k souboru je 3,5 s a přenosová rychlost je 16 Kbyte/s. Největším lákadlem je však cena, neboť Microdrive má stát 50 liber (v porovnání s nejméně 200 librami za jednotku s pružným diskem).

Dalším doplňkem je internace RS232 spolu se zařízením, umožňujícím spolupráci několika stejných počítačů. Prostřednictvím tohoto doplňku lze Spectrum napojit na prakticky jakýkoli vetší počítač nebo jeho periférie a používat je. Jak lze již dopředu odhadnout, nejčastěji připojovaným zařízením bude bezpochyby tiskárna.

Rychlost

Jako každý výrobek, má í Spectrum své slabiny. Mezi nejzávažnější patří asi jeho rychlost. Spectrum je ještě o něco pomalejší než ZX-81 a řadí se mezi nejpomalejší osobní počítače. Z počítačů, které můžete znát, jsou pomalejší pouze SHARP PC 3201, ATARI, Video Genie a osobní počítače firmy Texas Instruments.

Závěr

Spectrum je velmi dobrý osobní počítač, který zpočátku neměl ve své cenové hladině konkurenci. Prospekt o něm dokonce prohlašoval, že je to nejlepší počítač za méně než 50O liber. Je určen všem, kteří se s jeho pomocí chtějí naučit programovat a využívat jej později k práci i zábavě. S počítači jeho vlastností a ceny se značně přiblížila realizace futurologické vize: „každý svoje hodinky, každý svůj počítač“. Lze jen doufat, že se podobné počítače objeví časem i na našem trhu. Ekonomický přínos daný tím, že by se s touto technikou mohly doma seznamovat i děti a takto získané znalosti a zkušenosti uplatnit ve svém budoucím zaměstnání, stojí při nejmenším za zamyšlení.


Ing. Rudolf Pecinovský