Sinclair ZX Spectrum

Z Multimediaexpo.cz

(Přesměrováno)
Originální Sinclair ZX Spectrum 48K (1982)

Sinclair ZX Spectrum, mezi fanoušky označovaný Speccy, byl 8-bitový domácí počítač, původně vyrobený ve Velké Británii v roce 1982 firmou Sinclair Research Ltd. Původně byl pojmenovaný ZX81 Colour a ZX82 a později přejmenovaný Sinclairem na ZX Spectrum. Bylo to z důvodu jeho barevného zobrazování, na rozdíl od jeho černobílého předchůdce Sinclair ZX81. Zakladatelem této firmy je Clive Sinclair.

Obsah

Hardware

Motherboard modelu ZX Spectrum 48K (verze 3B — 1983)

Hardware počítače byl velmi jednoduchý, proto se jeho cena na britském trhu dostala pod 100 liber, což byl naprostý hit. Hardware počítače navrhl Richard Altwasser ze Sinclair Research a vnejší vzhled počítače byl dílem Sinclairova designera Ricka Dickinsona.

Pro zobrazení počítač používal RF modulátor. Jako monitor mohl sloužit jakýkoliv televizní přijímač, připojený přes běžný anténní vstup. Text mohl být zobrazován v 32 sloupcích a 24 řádcích pomocí znaků ze znakové sady ZX Spectra. Zobrazovací pole tvořilo obdélník, umístěný zhruba uprostřed obrazovky, u nevyužívaného kraje (border) bylo možné ovládat pouze barvu celku, a často se využívala pro indikaci při nahrávání programu (Load). Pro zobrazení textu či grafiky bylo možné vybrat 8 barev, každou ve dvou úrovních jasu, což dohromady dávalo 15 odstínů (černá je stejná v obou úrovních jasu). Rozlišení obrazu je 256x192 bodů se stejným barevným omezením. Spectrum mělo zajímavou metodu zobrazení barev - pro ušetření paměti byly barvy oddělené od bodového rastru v takzvaných "atributech" v síti 32x24, což odpovídalo znakovému rozlišení. Každé pozici zobrazovacího pole o rozměru 8x8 bodů byl přidělen tzv. atribut - osmibitová číslo - obsahoval barvu popředí (3bity), barvu pozadí (3bity) a stupeň jasu (normální či jasný) a možnost blikání (po jednom bitu), což bylo jednoduché převracení barvy popředí a pozadí v krátkém intervalu. Bohužel tento systém ale vedl k efektu zvanému "kolize atributů" a k bizarním projevům při animaci ve hrách. Grafikům se však tento problém podařilo často až zázračně obejít. Systém zobrazení barev je výrazným znakem ZX Spectra a byl často i terčem vtípků od zastánců jiných platforem. Ostatní počítače téže doby (např. Amstrad CPC) netrpěly tímto problémem. Commodore 64 používal barevné atributy také, ale pro animaci používal hardwarové sprity (sprite), což kolizi atributů zabránilo.

Zvuk byl zajištěn pomocí integrovaného bzučáku (beeper), který produkoval jednokanálový zvuk o rozsahu 10 oktáv pomocí příkazu Basicu. Programátoři her většinou nepoužívali ovládání zvuku z Basicu, ale pomocí přímého přístupu k portu, kde jedním bitem bylo možné reproduktor ovládat. Spectrum také mělo konektor pro rozšíření sběrnice (expansion bus connector). Programy a data bylo možné ukládat a číst pomocí magnetofonu připojeného na linkový vstup/výstup nebo prostřednictvím až osmi jednotek ZX Microdrive (což byly miniaturní kazety se smyčkou magnetofonové pásky), připojených na Interface 1.

Software počítače byl napsán Stevem Vickersem ze společnosti Nine Tiles Ltd., autorů Sinclair BASICu. Klávesnice ZX Spectra je popsána klíčovými slovy BASICu pro snazší psaní příkazů; tedy např. stisk klávesy „G“ napsalo BASICový příkaz GOTO. Práce s klávesnicí byla poměrně nezvyklá, každá klávesa má - dle aktuálního umístění kurzoru - více významů, např. jedno nebo dvě klíčová slova, malé i velké písmeno, speciální znak apod., přepínatelné pomocí shiftů.

Konstrukce obsahovala poměrně málo integrovaných obvodů:

  • CPU Zilog Z80A na frekvenci 3,5 MHz
  • paměť ROM 16 kB, která obsahovala i jazyk BASIC (konkrétně Sinclair BASIC)
  • paměť RWM-RAM 16 kB, necelých 7 kB této paměti sloužilo zároveň jako videoRAM.
  • u verze 48kB byla osazena paměť 32kB (8ks levných defektních původně 64kB pamětí)
  • čip ULA odpovědný za buzení sběrnice a TV-výstup a zvuk
  • televizní modulátor

Varianty

Celá éra populárních 8bitových mikropočítačů začala variantou ZX80 vyrobenou v roce 1980. Poté následovala vylepšená varianta ZX81 v roce 1981. Obě verze měly k dispozici pro uživatele 1 kB paměti RAM, prodávaly se však i rozšiřující moduly až do 64 kB.

ZX Spectrum

První varianta počítače ZX Spectrum vznikla v roce 1982. Vyráběl se ve dvou variantách, se 16 kB RAM a se 48 kB RAM. Varianta se 48 kB RAM byla sice dražší, ale i přesto se jich prodalo podstatně více (Your Spectrum 02-09/97). Počítač měl klávesnici se čtyřiceti tlačítky z gumy a v Československu se pro něj vžilo označení „gumák“.

ZX Spectrum+ (Rozměry (mm): 319 × 149 × 38 (ŠxHxV))

ZX Spectrum+

ZX Spectrum+ se zapojeným rozhraním pro joystick

V červnu roku 1984 se objevilo v plánech ZX Spectrum+ a bylo nabízeno od října téhož roku. Tato varianta se hardwarově téměř nelišila od předchozí. Jedinou, ale hodně viditelnou změnou byla krabice a klávesnice, která tentokrát byla tvořena z 58 plastových kláves. Navíc přibylo i tlačítko reset po levé straně počítače. Toto 48KB Spectrum se prodávalo 2x více než jeho předůdce s gumovou klávesnicí; nicméně někteří prodejci hlásili poměrne vysokou závadnost. Omezené množství tohoto modelu se prodávalo později v ČSSR v běžné obchodní síti pod označením Delta, na přístroji bylo odstraněno logo Sinclair Research a překryto štítkem s logem Delta, také bylo označení počítače odstraněno z výrobního štítku a obalů.

ZX Spectrum 128K+

ZX Spectrum 128K+

Třetí z roku 1986 se vzhledem od předchozí na první pohled příliš nelišila - pouze na pravou stranu počítače přibyl chladič. Ovšem co se týče samotného počítače, tak se dá říci, že se jednalo o druhou revoluci. Paměť ROM byla zvětšena z 16 kB na 32 kB a nyní obsahovala vylepšený editor. Paměť RAM byla zvětšena na 128 kB. Paměť obrazu, která je umístěna v operační paměti, mohla být přepnuta na dvě místa, což umožňovalo vytvářet zajímavé grafické efekty. Zvukový výstup byl vylepšen monofonně zapojeným tříkanálovým zvukovým generátorem AY-3-8912, který navíc obsahoval i jeden osmibitový port, který byl použit na dva sériové porty, s tím že jeden je určen pro MIDI a druhý pro připojení keypadu (pomocné klávesnice), jenž obsahoval 19 kláves. Tento model byl považován za jakýsi standard a většina předchozích typů byla upravována tak, aby se mu co nejvíce přiblížila - přidáváním paměti a připojováním zvukových rozhraní s obvodem AY-3-891x (v ČR byl asi nejvíce rozšířen zvukový interface Didaktik Melodik).

ZX Spectrum +2

ZX Spectrum +2

Čtvrtou variantou také z roku 1986 byl počítač, který hned na první pohled zaujal integrovaným kazetovým magnetofonem, sloužícím pro načítání a ukládání programů a dat. Dalším rozšířením oproti předchozí variantě jsou porty pro připojení dvou joysticků, které musely být originální od Sinclaira (později AMSTRAD) a měly jinak zapojeny piny klasického konektoru canon 9. Jednalo se vlastně o napojení kláves 1-5 a 6-0 (v programech označován jako Sinclair Joystick). Poslední změna se týkala klávesnice, která sice má stejný počet kláves jako v předchozím případě, ale zmizel z nich popis klíčových slov používaných v původním editoru, takže bylo v podstatě nevyhnutelné používat nový editor (z verze 128K). Po technické stránce však byla změna klávesnice velice pozitivní.

ZX Spectrum +3

ZX Spectrum +3

Pátou variantou byl počítač z roku 1987 na první pohled hodně podobný předchozímu, pouze kazetový magnetofon vystřídala 3" disketová mechanika. Vzhledem k tomu, že pro její práci bylo třeba upravit ROM, byla opět zvýšena a to rovnou na 64 kB. Zároveň bylo upraveno stránkování paměti RAM tak, aby veškerý adresový rozsah byl obsazen pamětí RAM (tzv. režim allram) a tudíž bylo možné provozovat operační systém CP/M.

ZX Spectrum +, ZX Spectrum +2A, ZX Spectrum +3, pro porovnání vzhledu Amstrad CPC 6128

Tento počítač však přinesl řadu nekompatibilit s předchozími modely, které sice bylo možné softwarově obejít, ale problémy nastávaly u původních programů a her. Zároveň v původním editoru nefungovaly diskové operace a také úprava programů pro spolupráci s disketami i přes poměrně robustně naprogramovaný systém (byť dost pomalý a s řadou postupně opravovaných chyb) nebyla vůbec snadná. Také se na tomto počítači objevil problém s porty pro připojení joysticků, které si Amstrad upravil tak, že bylo třeba používat jeho joysticky (případně použít redukci, nebo porty přepojit podle standardu). Z paměti ROM byly navíc odstraněny rutiny pro obsluhu keypadu. Některé z nich bylo možné vyvolat po přepnutí do grafického (G) módu klávesnice. Pohodlnější ovšem bylo použití programu keypad, který běžel pod IM2. Konektor, do kterého se keypad u variant 128k+/+2 připojoval u +3 zůstal, byl pojmenován AUX a nebylo ho možné ovládat z BASICu. Počítač obsahuje vestavěný pozdrav. K jeho vyvolání je nutné v editoru napsat příkaz copy randomize a po stisknutí klávesy Enter je nutné současně stisknout klávesy C, J a L.

ZX Spectrum +2A/+2B

ZX Spectrum +2A

Šestá a poslední oficiální varianta tohoto počítače vznikla také v roce 1987 a jedná se v podstatě o ZX Spectrum +3, kde je ovšem místo disketové mechaniky zpět kazetový magnetofon. Vzhledem se téměř neliší od počítače ZX Spectrum +2 (dokonce i nápis na počítači zůstal stejný), ale barva se změnila z šedé na černou. Označení A a B rozlišovalo jazykovou verzi ROM (A - anglická, B - španělská). Tento počítač bylo velice jednoduché rozšířit o disketovou mechaniku, neboť již obsahoval operační systém, který s ní uměl pracovat, takže stačilo připojit pouze řadič. Tento počítač byl v ČR (především verze +2B) pro zvýšení kompatibility často upravován výměnou jednoho obvodu ROM za ROM obsaženou v počítači ZX Spectrum 128K. Pozdější verze +2A už uměla využívat konektor AUX z BASICu stejně jako konektor RS-232. Pro přepnutí tisku přes tento port sloužil příkaz FORMAT LPRINT „A“, o kterém se ale manuál nezmiňoval. Kromě toho byla rozšířena tisková syntaxe příkazu COPY o COPY EXP BRIGHT, která před tiskem nastavila jas na celý obraz. Důvodem bylo šetření barvy při tisku obrázků. Také byl rozšířen vestavěný pozdrav. Postup jeho vyvolání zůstal stejný, ale bylo možné ho ovládat pomocí kláves 0 (nula) a P. Opustit ho bylo možné stiskem klávesy Q.

Periférie

Firma Sinclair Research Ltd. (a později i Amstrad) vyráběla k počítačům ZX Spectrum také svoje periférie.

ZX Printer

Jednojehličková tiskárna. Tiskárna tiskla na pohliníkovaný papír, tím způsobem, že v místě, kde se tisklo, se hliník odpařoval. Tiskárna se začala vyrábět dříve, než počítač ZX Spectrum, neboť vznikla jako tiskárna k počítači ZX81.

Tiskárna se připojovala přímo na systémový konektor ZX Spectra. Tiskárnu bylo možné ovládat pomocí tří příkazů: LPRINT, LLIST a COPY.

LPRINT vytiskl zadaný text (ekvivalentní příkaz byl PRINT #3). LLIST vytiskl aktuální program (ekvivalentní příkaz byl LIST #3). Tyto dva příkazy bylo možné použít ve spojení s jakoukoliv tiskárnou, pokud pro ni existoval příslušný ovladač.

COPY vytiskl obsah obrazovky. Tento příkaz funguje pouze se ZX Printerem. V operační paměti má počítač ZX Spectrum vyhrazeno 256 bytů vyrovnávací paměti právě pro tisk pomocí ZX Printeru.

Na počítačích ZX Spectrum 128K+/+2/+2A/+3 a počítačích s nimi kompatibilních je možné ZX Printer použít pouze v režimu 48 BASIC. V režimu 128 BASIC nebo +3 BASIC jsou totiž do oblasti vyrovnávací paměti pro ZX Printer umístěny další systémové proměnné těchto počítačů. Příkaz COPY pak bylo možné využít pro tisk aktuálního obsahu obrazovky na tiskárně připojené pomocí sériového nebo paralelního portu těchto počítačů.

ZX Interface I

ZX Interface I
ZX Interface I s připojenou mechanikou ZX Microdrive

Vyrobený k ZX Spectru a ZX Spectru+, nicméně fungoval i se ZX Spectry 128K/+2. V počítačích ZX Spectrum +2A/+3 již podporován nebyl, neboť Amstrad na něj (stejně jako na ZX Microdrive) neměl koupenou licenci. Interface obsahoval řadič pro ZX Microdrive, port RS-232 a síť ZX Net. Interface měl vlastní paměť ROM o velikosti 8kB a stejně tak velkou paměť RAM. V případě potřeby se tyto paměti připojovaly místo původní ROM ZX Spectra. Tato paměť obsahovala ovládací rutiny, analyzátor rozšířené syntaxe a další chybová hlášení (viz Rozšířená syntaxe Sinclair BASICu). Existovaly dva příkazy, které nebyly v manuálu k zařízení zmíněny, a to CLS # a CLEAR #. Připojením ZX Interface I přibyly v paměti ZX Spectra další systémové proměnné, následkem čehož se posunul i začátek umístění programu v Basicu. Někteří programátoři umísťovali do Basicu i strojový kód (obvykle jako poznámku za příkaz REM). Pokud spouštění takto umístěného strojového kódu probíhalo pomocí fixně zadané adresy, program se zhroutil, neboť na místě předpokládaného strojového kódu byly po připojení ZX Interface I právě ony nové systémové proměnné. Aby vše fungovalo správně, měla být v takovém případě použita pro spuštění adresa odvozená ze systémové proměnné, ve které byl uložen právě začátek uložení programu v Basicu. Samozřejmě, aby vše fungovalo, nesměly se v takto umístěném strojovém kódu vyskytovat skoky s pevnou adresou, které odkazovaly na jinou část tohoto kódu.

ZX Interface II

ZX Interface II

Rozhraní pro připojení dvou joysticků a paměťové karty. Joysticky byly připojeny paralelně ke klávesnici. Joystick označený jako Sinclair joystick 1 ovládal klávesy 1, 2, 3, 4 a 5 a Sinclair joystick 2 ovládal klávesy 6, 7, 8, 9 a 0. Paměťová karta byla vlastně paměť ROM, ze které byl zaveden program po resetování počítače. Pro její ovládání tedy neexistovaly příkazy. Na paměťových kartách bylo vydáno jenom asi 10 her.

Protože paměťová karta nahrazovala původní ROM počítače, její velikost mohla být nejvýše 16 kB. Zvolené řešení trvalého odpojení paměti ROM počítače v případě připojení pamětové karty omezovalo převod programů, které využívaly podprogramy z původní ROM. Tyto podprogramy pak musely být obsaženy i na paměťové kartě. Některé programy využívající více podprogramů z původní paměti ROM pak nebylo možné na paměťovovou kartu převést a to i přesto, že samotný program neměl větší velikost než 16 kB.

ZX Microdrive
Microdrive kazeta

ZX Microdrive

Paměťové médium, které mělo nahradit magnetofon. Bylo tvořeno nekonečnou páskou, která měla kapacitu 85 kB. Bohužel ZX Microdrive bylo značně poruchové a navíc docházelo ke slepkám pásky. Zařízení se k počítači připojovalo pomocí ZX Interface I a současně bylo možné mít připojeno až 8 mechanik. Mechaniky Microdrive byly použity jako paměťové médium i u počítače Sinclair QL, ale díky zvýšené kapacitě nebyl záznam na Microdrive počítačem Sinclair QL kompatibilní se záznamem na Microdrive ZX Spectrem.

ZX Spectrum s připojeným ZX Interface I, ZX Interface II a interfacem pro připojení monitoru (Peritel)

joysticky Sinclair SJS-1

Joysticky vzhledově navržené k ZX Spectru +2. Umožňovaly pohyb ve 4 směrech a měly jediné tlačítko fire. Joysticky existovaly ve dvou barevných variantách, v černé a šedé.

joysticky Sinclair SJS-2

Proti SJS-1 měly menší základní část a nebylo na nich vylisováno logo Sinclair (logo bylo pouze na obalu). Na základní části joysticku bylo druhé tlačítko, spojedné s tlačítkem na vrcholu joysticku paralelně. Vyráběly se v černé barvě, tlačítka byla červená.

Sinclair Magnum Phaser Light Gun

Světelná pistole Sinclair Magnum Phaser

Světelná pistole. Bylo jí možné použít asi v 6 hrách. Pistole existovala ve dvou provedeních, pro počítače se 48kB pamětí, kde se připojovala do konektoru pro kazetový magnetofon, a pro počítače se 128kB pamětí, kde se připojovala pomocí konektoru Keypad, resp. AUX.

Keypad

Přídavná numerická klávesnice k počítačů ZX Spectrum 128K+ a ZX Spectrum +2. Tato klávesnice kromě rychlejšího psaní čísel umožňovala v režimu 128 Basic i rychlejší editaci Basicového programu, neboť pomocí této klávesnice bylo možné provádět např. skok za následující nebo předcházející slovo. Ovládací rutinky byly umístěny v ROM počítačů, obsahující 48 Basic, takže pro vkládnání čísel ji bylo možné použít i v režimu 48 Basic. V počítačích ZX Spectrum +2A/+3 byly ovládací rutinky Keypadu odstraněny, nicméně její editační funkce v +3 Basicu zůstaly a některé z nich bylo možné vyvolat v grafickém módu.

Další periférie jiných firem

Kromě Sinclair Research doplňky k těmto počítačům nabízeli i další výrobci. Zejména se jednalo o kazetové magnetofony, interface pro joystick, joysticky a další. Toto zboží např. vyráběly firmy Cheetah a Kempston.

Někteří výrobci pojmenovávali své výrobky tak, aby jejich názvy byly podobné názvům výrobků Sinclair Research. Občas tak došlo k situaci, kdy dva různé výrobky byly pojmenovány podobně. Existoval například ZX Interface III, který sloužil k převodu programů z kazet na microdrive, a ZX Interface 3, což byl interface pro připojení tiskáren.

divIDE

divIDE není sice historickou periferii, ale i v dnešní době jsou lidé, kteří chtějí počítače kompatibilní se ZX Spectrem používat, třeba si zahrát svou oblíbenou hru. Kazeťáky nebyly 100% spolehlivé ani před lety, a teď z 20 let staré kazety pravděpodobně nic nedostanete. Disketové mechaniky (Betadisk, D80, +3, MB02+) jsou na tom sice lépe, ale špatně se shánějí. Proto Pavel Cimbál někdy v roce 2003 vyvinul pod GNU licencí divIDE. DivIDE je IDE interface s malou pamětí pro systém. Na IDE konektor lze připojit běžné IDE periferie (používají se zejména redukce na CF a SD karty) a zda bude možné je ovládat záleží jen na SW, který je v paměti divIDE. Tato paměť je typu flash EEPROM a je ji možné přepisovat přímo na ZX Spectru, takže změna firmware je otázkou chvilky. K dispozici je několik firmwarů/systémů, které umožňují číst soubory pro emulátory z HDD (CF, SD...), emulovat D80 nebo +D. DivIDE vyrábí a prodává několik výrobců. Odhaduje se, že mezi lidmi je minimálně 500 kusů tohoto interface.

Software

Počítače Sinclair ZX Spectrum obsahovaly programovací jazyk Sinclair BASIC. Verze 48K a 48K+ umožňovaly zápis příkazů pouze jedinou klávesou. Protože příkazů bylo více, než kláves a také bylo nutné psát i běžné znaky, pracovala klávesnice v několika módech (K - klíčová slova, L - malá písmena, C - velká písmena, G - grafika, E - rozšířený mód, který umožňoval psát další příkazy a speciální znaky). Při psaní programu byla obrazovka tvořena dvěma částmi. V horní části byl zobrazen program a bylo možné zde vybírat řádek pro editaci. Ve spodní části se prováděl zápis nového řádku nebo editace vybraného řádku programu. Pro přenesení vybraného řádku do spodní části bylo nutné stisknout klávesu EDIT (případně klávesy Symbol Shift + 1). Pokud nový řádek obsahoval číslo řádku, byl zařazen do programu, pokud neobsahoval číslo řádku, příkazy se po odeslání řádku vykonaly. Čísla řádků mohla nabývat hodnot 1 až 9999. Ovšem pomocí modifikace uloženého programu pomocí příkazu POKE bylo možné vytvořit i řádek s číslem 0 (takovýto řádek nebylo možné editovat) nebo s číslem vyšším než 9999 (v čísle řádku se pak objevovala i písmena a symboly, ale nešlo o šestnáctkovou soustavu). Dokonce bylo možné takto vytvořit i programy s několika řádky, které měly shodné číslo. Takovéto úpravy byly prováděny za účelem ztížení zkoumání a modifikace programů (Např. jedna z verzí hry Bomb Jack měla ve svojí zaváděcí Basicové části třikrát řádek s číslem 0).

Analyzátor správnosti zapsaného příkazu kontroloval správnost zápisu už při odeslání napsaného řádku. Pokud byla nalezena syntaktická chyba, byl zobrazen blikající otazník v místě, kde byl chybný zápis přepokládán (například nedostatečný nebo nadměrný počet parametrů příkazu, chybějící klíčové slovo nebo znak, nezdvojené uvozovky uvnitř řetězce a podobně). Chybně zapsané příkazy se tedy v programu nemohly při jeho vykonávání objevit. Přístup upozornění na chybu zápisu místo pouhého akceptování zapsaného řádku a zjištění chyby až při interpretaci programu byl velmi výhodný pro výuku.

S příchodem počítače ZX Spectrum 128+ přišel i celoobrazovkový editor a nutnost psát příkazy po jednotlivých písmenech. Kurzor se pohyboval přímo v programu, změny v programu bylo možné provádět bez nutnosti daný řádek vybrat. Po stisku klávesy Enter byl změněný řádek odeslán k analýze a známá klíčová slova byla převedena na jejich jednobytové vyjádření. Kvůli kompatibilitě byl Basicový program uložen stejným stejným způsobem jako u počítačů se 48K pamětí. V Basicu počítačů ZX Spectrum 128+ přibyly příkazy PLAY a SPECTRUM, které nahradily grafické znaky pod písmeny 'T' a 'U'. To občas způsobilo chybné zobrazení grafiky v některých programech napsaných v Basicu.

Grafické možnosti Sinclair BASICu nejsou příliš rozsáhlé. Je možné využít grafický znaků znakové sady ZX Spectra a nebo grafických příkazů pro kreslení, kterých ale není mnoho. Kromě základních příkazů PLOT a DRAW obsahuje pouze příkaz CIRCLE. Toto je zčásti vykompenzováno existencí uživatelsky definovatelných grafických znaků ve znakové sadě (tyto znaky jsou nazývány zkratkou UDG - user defined graphics). Tyto znaky nemají svoje předlohy uložené v paměti ROM, ale v paměti RAM, kde je lze libovolně měnit. Po spuštění počítače jsou tyto grafické znaky shodné se znaky 'A' až 'U' (u počítačů ZX Spectrum 128K/+2/+2A/+3 pouze 'A' až 'S'). Po změně jedné ze systémových proměnných je také možné definovat vzhled i standardní části znakové sady, případně definovat znakových sad několik a mezi nimi přepínat. Pomocí jiné systémové proměnné lze stejným způsobem přepínat mezi více znakovými sadami UDG.

Hudební možnosti také nejsou příliš rozsáhlé. Vestavěný reproduktor počítačů se 48K pamětí lze ovládat pomocí příkazu BEEP, který má dva parametry, výšku generovaného tónu a jeho délku. I přes poměrně omezené zvukové možnosti těchto počítačů vznikaly programy umožňující produkovat až osmikanálovou hudbu (program ZX-7, autor Ján Deák). Počítače se 128K pamětí díky přítomnosti zvukového obvodu umožňovaly generovat z Basicu až tříkanálovou hudbu pomocí příkazu PLAY. Pomocí tohoto příkazu bylo též možné ovládat hudební nástroje připojené pomocí MIDI.

Pro rozšíření možností jazyka Sinclair BASIC vzniklo několik nadstaveb tohoto jazyka: Pro-Dos BASIC, Beta BASIC, Laser BASIC a Mega BASIC. Pro-Dos BASIC využíval vestavěný editor ZX Spectra, rozšiřující příkazy začínaly znakem hvězdička a musely být vypsány po písmenech. Naproti tomu Beta BASIC obsahoval vlastní editor, v posledních verzích umožňoval tři způsoby zadávání příkazů: stisknutím jediné klávesy, vypsáním celého příkazu a nebo kombinovaný způsob, kdy pokud se na začátku řádku stisknutím jakékoliv jiné klávesy kromě mezerníku vypsal příkaz jedinou klávesou. Pokud byl stisknut mezerník, bylo nutné příkaz vypsat po jednotlivých písmenech. Beta BASIC existoval i pro počítače ZX Spectrum 128+/+2. Varianta pro počítače ZX Spectrum +2A/+3 byla také plánována, ale uskutečněna nebyla. Z Beta BASICu vychází SAM BASIC počítače SAM Coupé.

Obchodní úspěch

Velmi nízká cena přinesla počítači obrovský obchodní úspěch, i přes nemalé chyby jak v hardwaru tak v softwaru. Prodával se vcelku i jako počítačová stavebnice, což cenu dále snižovalo.

Díky masovému rozšíření začínalo mnoho tehdejších začínajících programátorů a počítačových nadšenců právě na tomto počítači, podobně jak na laciných počítačích Atari či Commodore.

Pro tento počítač bylo velké množství populárních her, mnohdy ve vysoké kvalitě s neotřelými nápady, takže i moderní počítačové hry pro PC těží z odkazu ZX Spectra.

Zejména ve východní Evropě se rozvinula silná demo scéna, známá od roku 1985.

Úpravy

Československá odnož

8bitový počítač Didaktik M

V Československu byl i přes obtížnou dostupnost tento počítač velmi populární. Začínal na něm i František Fuka, který vyrobil pod jménem Fuxoft několik her.

Slovenský podnik Didaktik Skalica již od roku 1986 vyráběl počítače Didaktik, které zpočátku byly vylepšenou variantou počítače PMD 85, ale v roce 1988 začal vyrábět počítač Didaktik Gama, který byl programově kompatibilní s počítačem ZX Spectrum. V roce 1992 byl s bombastickou reklamou nahrazen počítačem Didaktik M a později ještě vznikl počítač Didaktik Kompakt, který v sobě integroval 3,5" disketovou jednotku D80 pro DD diskety s kapacitou 720 kB.

V časopise Amatérské radio vyšla svého času konstrukce ekvivalentního počítače pod názvem Mistrum, která obvod ULA nahrazovala mnoha součástkami TTL.

Domácí úpravy

Především Spectrum 48K/48K+ byly různě upravovány. Jednalo se o rozšíření paměti, obvykle tak, aby paměť RAM mohla být adresována už od adresy 0000. Nejvíce rozšířené byly úpravy podle Pavla Trollera a podle Jiřího Lamače. Úprava podle Trollera rozšiřovala paměť o 32 kB a stránkování paměti probíhalo pomocí portu 255. Na tento port nebylo nutné posílat specifickou hodnotu, jakákoliv hodnota provedla přestránkování buď na režim klasického Spectra (ROM + videoram na adresách od 0 do 32765) nebo na režim, kdy je celá paměť tvořena pamětí RAM. Zapojení provádělo přepnutí režimu o jednu instrukci později, takže bylo možné přecházet mezi přepínanými částmi paměti bez použití dodatečného programového kódu, který by byl umístěný v trvale připojené paměti. Některý hardware, používající vlastní paměť ROM ne vždy s touto úpravou správně fungoval (docházelo ke kolizím na sběrnici). Úprava podle Lamače rozšiřovala paměť na 80, 272 nebo až 528 kB (poté, co se zvýšily ceny pamětí RAM, bylo publikováno nové schéma umožňující další varianty velikosti rozšířené paměti a sice 112, 144 a 304 kB) a její stránkování probíhalo pomocí portu 253 (nebylo komatibilní se stránkováním Specter 128). Rozšířená paměť se dělila na stránky o velikosti 32kB. Po odeslání hodnoty na port 253 se do paměťového rozsahu 0 až 32765 připojila stránka rozšířené paměti určená právě touto hodnotou, případně byla připojena původní ROM + videoram Spectra.

U obou těchto rozšíření existovala ještě zapojení umožňující nahradit paměť ROM pamětí RAM se zakázatelným zápisem, a do této paměti pak nahrát obsah ROM (existuje několik upravených pamětí ROM např. ISOROM nebo LECROM). K rozšíření podle Lamače navíc existovalo zapojení, které umožňovalo používat dvě videopaměti, podobně jako tomu bylo u Spectra 128. Návod na rozšíření podle Lamače vyšel Amatérském rádiu. Srovnání obou variant je zveřejněno v časopise ZX Magazín 1/96.

Dále existovala úprava podle Imricha Konkola, která přidávala 32kB a přepínání paměti probíhalo na portu 253, kde hodnota odeslaná na tento port určovala kofiguraci přidané paměti. Úprava umožňovala nahradit paměť v rozsahu 0 až 32765 pamětí RAM. Navíc ale umožňovala odpojení pouze paměti ROM a místo ní do paměťového rozsahu 0 až 16383 připojit zvolenou polovinu přidané paměti. Do této přidané paměti nebylo možné zakázat zápis. Význam jednotlivých bitů portu 253 byl zvolen tak, aby přepnutí do režimu připojení 32kB stránky bylo provedené pomocí stejné hodnoty jako u úpravy podle Lamače.

Mezi složitější a ne příliš často využívané patřilo rozšíření paměti, které umožnovalo připojit 32kB stránky rozšířené paměti do paměťového rozsahu 16384 až 49151. Aby bylo možné na takto upraveném počítači provozovat operační systém CP/M, zapojení umožňovalo připojit stránku č. 0 do paměťového rozsahu 0 až 32765.

Ruské klony

  • ATM - obsahuje 1024 kB RAM, 128 kB ROM, Z80 s frekvencí 7 MHz, tři grafické a jeden textový režim
  • Baltika - ne zcela kompatibilní se ZX Spectrem
  • Delta S 128 - konektory pro joysticky Sinclair a Kempston, neobsahuje hudební čip AY
  • Elara Disk 128 - konektory pro joysticky Sinclair a Kempston, zabudovaný interface Lprint III, Ram může být 128 až 512 kB
  • Hobbit - 64 kB RAM, 64 kB ROM, 2 videoram
  • Kay 3SL Turbo Korvet - původní verze měly 256 kB RAM, poslední verze 1024 kB RAM
  • Leningrad 1
  • Leningrad 2
  • Moskva 48
  • Moskva 128 - kompatibilní se ZX Spectrem 128, chyběl jí čip AY
  • Peters 256
  • Pentagon 48 - obsahoval řadič disketových jednotek systému Betadisk
  • Pentagon 128
  • Pentagon 512 - existuje i verze, která má pouze 256 kB paměti (běžně se nepoužívá) a verze která má 1024 kB paměti RAM (díky způsobu připojení paměti větší než 128 na port #7FFD a zvyklostem při psaní programů, které používají stránkování paměti instrukce ld A,stránka; or 64; out (253),A; programy pro ZX Spectrum 128 na těchto Pentagonech nefungují. Programy stránkující paměť pomocí ld A,stránka; ld BC,#7FFD; out(C),A; fungují bez problémů.)
  • Quorum
  • Quorum 64 - proti klasickému ZX Spectru má navíc 16 kB paměti připojitelné místo ROM
  • Quorum 128 - proti klasickému ZX Spectru 128 má navíc 16 kB paměti připojitelné místo ROM. Umožňuje spuštění operačního systému CP/M. Software v ROM obsahuje paměťový monitor.
  • Quorum 128+ - proti Quorum 128 má navíc zabudovanou 3,5" disketovou jednotku
  • Scorpion ZS-256, existuje úprava pro 512 kB RAM, poslední verze mají 128, 256 nebo 512 kB ROM (Prof-ROM obsahují spoustu užitečných programů, včetně obslužných programů pro řadič pevného disku systému S.M.U.C.)
  • Sprinter - procesor 21 MHz nebo 3,5 MHz, RAM 4096 kB, cache RAM 64 kB, videoRAM 256 kb nebo 512 kB, používá IDE zařízení, obsahuje dva ISA sloty, 5 grafických režimů
  • ZX-Next - má dva procesory Z-80 (druhá jako grafický koprocesor), RAM až 512 kB, navíc i grafický režim 640x200 bodů (CGA)
  • ZX-Profi - kromě režimů 48k, 128k, má režim CP/M, paměť RAM až 1024 kB, má navíc dva nové grafické režimy

Počítače spojené s historií ZX Spectra

  • ZX80 a ZX81 - předchůdci počítače ZX Spectrum
  • Sinclair QL – měl se stát nástupcem ZX Spectra, ale komerčně se neprosadil. Po jeho neúspěchu bylo uvedeno na trh ZX Spectrum+, které bylo Sinclairu QL vzhledově podobné.
  • SAM Coupé – měl se stát nástupcem počítačů Sinclair, jeho vznik vycházel z předpokladu, že majitel Spectra si raději koupí Sam Coupé, než nějaký jiný počítač, ale v době jeho vzniku už ale existovaly počítače Amiga a Atari ST a počítače typu IBM PC.
  • Cambridge Z88 – kapesní počítač vyrobený firmou Cambridge Research poté, co byla firma Sinclair Research koupena firmou Amstrad
  • Timex Sinclair TS2068 - navržený v USA, sice vycházel ze ZX Spectra, bez použití emulátoru s ním nebyl kompatibilní
  • Timex Computer TC2048 - klon počítače ZX Spectrum s grafickými možnostmi TS2068 a rozhraním pro Kempston joystick, oblíbený především v Portugalsku a Polsku

Související články

Literatura

  • ARDLEY, Neil. Sinclair ZX Spectrum + User Guide. [s.l.] : Dorling Kindersley Ltd. in association with Sinclair Research Ltd.. ISBN 0-86318-080-9.
  • SPITAL, Ivor; GOODWINS, Rupert. ZX Spectrum +2. [s.l.] : Amstrad, 1986.
  • ZX Spectrum +3. [s.l.] : Amstrad.
  • ZX Interface 1 and ZX Microdrive. [s.l.] : Sinclair Research Limited, 1983.
  • Konkol, I. CP/M opäť na scéne - Úprava pamäti ZX Spectra pre OS CP/M. FIFO, február 1993, roč. 3, čís. 21, s. 10 - 11.
  • Modroczki, T. Historie, která stojí za zmínku: 15. výročí Sinclair ZX Spectrum. Your Spectrum, čís. 02-03/97, s. 4 - 11.
  • Žabenský, P. ROM, RAM, EPROM, PROM, ... - Hrátky s pamění a něco už skoro zapomenutého. ZX Magazín, čís. 1/96, s. 28 - 29. ISSN 1210-4833.

Externí odkazy

Česky

Technické popisy na root.cz

Anglicky