Sinclair ZX Spectrum, mezi fanoušky označovaný Speccy, byl 8bitový domácí počítač od roku 1982 vyráběný ve Velké Británii jako nástupce počítače ZX81 firmou Sinclair Research, kterou založil Clive Sinclair. Model ZX Spectrum se dočkal několika vylepšených nástupců a také kompatibilních počítačů jiných výrobců nazývaných klony počítače Sinclair ZX Spectrum, například v Československu Didaktik. Zkratka ZX pochází od Zilog a tajemné ingredience X.
Počítač ZX Spectrum patřil vedle Commodore 64 a Atari k prvním domácím počítačům dostupným pro běžné uživatele, kteří je využívali především ke vzdělávání, např. učení programování, a hraní počítačových her. Jako monitor se obvykle používal běžný televizor a pro ukládání dat nejčastěji kazetový magnetofon.
Hardware 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 vnější vzhled počítače byl dílem Sinclairova designéra Ricka Dickinsona.
Konstrukce obsahovala poměrně málo integrovaných obvodů: vpravo|náhled|Motherboard modelu ZX Spectrum 48K (verze 3B — 1983) CPU Zilog Z80A na frekvenci 3,5 MHz, paměť ROM 16 kB, která obsahovala i jazyk 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 (8 ks 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.
Zvuk z integrovaného piezoelektrického bzučáku (beeper) musel být zajišťován jeho softwarovým spínáním. Grafický výstup zajišťoval anténní TV výstup, k připojení magnetofonu pro čtení a ukládání dat sloužila dvojice jacků. Na zadní straně byla také vyvedena sběrnice (expansion bus connector), která sloužila k připojení ostatních periferií prostřednictvím zařízení zvaných interface.
náhled|Popisky kláves Klávesnice ZX Spectra měla kromě písmen a číslic jen 4 další klávesy. Práce s klávesnicí byla poměrně nezvyklá, každá klávesa má – dle aktuálního módu kurzoru – více významů, kromě malých a velkých písmen a speciálních znaků i všechna klíčová slova Basicu, kterými byla klávesnice popsána.
Grafický systém
náhled|Přehled všech dostupných barev Počítač neobsahoval samostatný grafický čip, informace, co se má zobrazovat na monitoru, byly uloženy ve vyhrazené části paměti zvané Video RAM. Obvod ULA je kódoval na videosignál, který byl pomocí TV modulátoru převáděn na televizní signál připojitelný anténním konektorem k televizoru.
Specialitou ZX Spectra je oddělení grafické a barevné složky obrazu. Rozlišení obrazu je 256×192 bodů, kde každému pixelu odpovídá jeden bit v 6144 bajtech grafické videopaměti. Obraz byl dále rozdělen na 32×24 polí o rozměru 8×8 pixelů, každému poli byl přiřazen jeden „atribut“, jeden bajt z dalších 756 bajtů videopaměti. Atribut určoval jednu z 8 barev pro popředí (ink) a pro pozadí (paper), stupeň jasu (normální či jasný) a blikání (převracení barvy popředí a pozadí). Atributy byly přizpůsobeny zobrazování znaků znakové sady ZX Spectra stejných rozměrů ve stejném rastru a díky své úspornosti šetřil nároky na paměť. Tento systém umožňující použití jen dvou barev uvnitř atributu však 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) tímto problémem netrpěly. Commodore 64 používal barevné atributy také, ale pro animaci používal hardwarové sprity (sprite), což kolizi atributů zabránilo.
Software náhled|Program v Sinclair Basicu Software počítače byl napsán Stevem Vickersem ze společnosti Nine Tiles Ltd., autorů Sinclair BASICu, který počítač obsahuje ve své paměti ROM. Počítače verze ZX Spectrum 48K a ZX Spectrum 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ředpoklá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 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. Možnost změny znakové sady nabízely i jiné počítače, ale žádný z nich neměl tak jednoduchý systém, jako UDG ZX Spectra.
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. Přestože zvukový výstup tvořený softwarově generovaným jednobitovým signálem byl velmi limitující, vznikaly programy umožňující produkovat až osmikanálovou hudbu (program ZX-7, autor Ján Deák). U počítačů se 128K pamětí zvuk generoval samostatný zvukový obvod, což umožňovalo 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, mimo jiné nadstavby 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é.
Varianty počítače 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 pouze 1 kB paměti RAM a pouze černobílý textový režim.
Varianty se v zásadě dělí na dvě skupiny označované dle velikosti paměti RAM:
ZX Spectrum 48k – původní ZX Spectrum a kosmeticky vylepšené ZX Spectrum+, které popisuje tento článek ZX Spectrum 128k – zpětně kompatibilní a značně vylepšené ZX Spectrum 128K+ a z něj odvozené modely +2 a +3
ZX Spectrum náhled|vlevo|ZX Spectrum V roce 1982 byl nástupce počítače ZX81 vyvíjený pod názvy ZX81 Colour (z důvodů nového barevného zobrazování) a ZX82. Ze všech Dickinsonových návrhů vzhledu počítače byly nakonec pouze tři vyrobeny pro konečné posouzení a výběr konečného designu, jeden z těchto návrhů má dlouhý mezerník a dvě klávesy Caps Shift. Pod názvem ZX Spectrum ve vybraném designu s duhovým symbolem odkazujícím na barevné spektrum se počítač zpočátku vyráběl 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 prodávalo podstatně více. 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“. Prodávat se začal 23. dubna 1982.30 let ZX Spectra na edgeoftheworld.cz, vyd. 2012-04-23 Prodával se ve 30 zemích světa a prodávalo se ho 12–15 tisíc kusů týdně.Výlet do minulosti na Hudyho zápisník, vyd. 2007-01-09 (archivovaná verze stránky na archive.is, archivovaná verze stránky na archive.org) Podle dobových materiálů existovala i Skandinávská verze počítače, jehož znaková sada nejenom že obsahovala písmena å, ä a ö, ale umožňovala tato písmena použít i v názvech proměnných.Nordisk Spectrum – Svenska tecken åäö ÅÄÖ na k1.dyndns.org (archivovaná verze na archive.org)
ZX Spectrum+
náhled||ZX Spectrum+ 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 ze Sinclairu QL odvozená krabice a klávesnice s 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 2× více než jeho předchůdce s gumovou klávesnicí; nicméně někteří prodejci hlásili poměrně 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ů. Zřejmě se jednalo o doprodej skladových zásob v době, kdy na značku Sinclair už měla výhradní právo firma Amstrad.
ZX Spectrum 128K+
náhled|vlevo|ZX Spectrum 128K+