Historie osmibitových mikropočítačů vyráběných v SSSR (2)

24. 6. 2010
Doba čtení: 15 minut

Sdílet

Dnes se budeme zabývat popisem dalších osmibitových školních i domácích počítačů, které byly oficiálně i doslova „na koleně“ vyráběny v Sovětském svazu. Kromě původních konstrukcí, například počítače Vektor-06C, si popíšeme i některé klony ZX Spectra, kterých bylo v SSSR navrženo velké množství.

Obsah

1. Osmibitové mikropočítače a mikroprocesory v SSSR

2. Mikroprocesor KR580VM80A a jeho podpůrné obvody

3. Osmibitový mikropočítač Vektor-06C

4. Grafický subsystém mikropočítače Vektor-06C

5. Klony ZX Spectra v SSSR

6. Osmibitový mikropočítač Hobbit

7. Počítač Moskva a Pentagon-48

8. Obsah následující části seriálu

9. Odkazy na Internetu

1. Osmibitové mikropočítače a mikroprocesory v SSSR

V předchozí části seriálu o historii výpočetní techniky jsme se seznámili s jedním z prvních sériově vyráběných osmibitových mikropočítačů, které byly používány v Sovětském svazu. Jednalo se o počítače, jejichž český název po překladu zní Achát, původně Agát (v azbuce psáno АГАТ). Koncepce těchto mikropočítačů, tj. jak vlastní technologické řešení, tak i základní programové vybavení (především obsah paměti ROM), byla založena na v té době již velmi rozšířených a v zahraničí oblíbených osmibitových mikropočítačích Apple II, které se v USA používaly jak ve firmách, tak i v domácnostech a ve školství. Konstruktéři Achátu zpočátku využívali především ty elektronické součástky, které byly v SSSR vyráběny, popř. dováženy z okolních zemí RVHP. Teprve o několik let později bylo možné postavit další verze Achátů (konkrétně se jedná o typy 7 a 9) na originálním osmibitovém mikroprocesoru MOS 6502, který mimochodem v té době představoval již deset let starou technologii.

Obrázek 1: Osmibitový mikroprocesor MOS 6510, což je inovovaná varianta původního procesoru MOS 6502. Tento mikroprocesor byl použit například v mikropočítačích Commodore C64, v nichž byl využit I/O port, který je jednou z inovací MOS 6510 oproti MOS 6502.

V dnešní části seriálu u tohoto tématu zůstaneme – popíšeme si totiž některé další typy osmibitových mikropočítačů, které byly v SSSR navrhovány a vyráběny. Jedná se jak o počítače vyráběné oficiálně (tj. v některém podniku či výrobním družstvu), tak i o počítače, u nichž byla zveřejněna „pouze“ jejich konstrukce a obsah pamětí ROM, takže si je uživatelé museli postavit a oživit sami (což je pro mnoho lidí stejně zábavné jako samotné používání počítače). Vzhledem k tomu, že v SSSR bylo navrženo a posléze i vyrobeno nejvíce typů klonů ZX Spectra na světě (dokonce se uvádí, že počet variant ZX Spectra ze SSSR je vyšší než součet všech variant ze všech ostatních zemí), budeme se v následujících kapitolách taktéž věnovat popisu technických parametrů některých nejznámějších, nejpoužívanějších nebo nejzajímavějších variací na téma „Speccy“. Jedná se například o počítače Hobbit, Moskva, Leningrad, Scorpion či Pentagon (zajímavá sekvence jmen).

Obrázek 2: Osmibitový mikropočítač Achát popsaný v předchozí části tohoto seriálu.

2. Mikroprocesor KR580VM80A a jeho podpůrné obvody

Před popisem jednotlivých typů sovětských počítačů si však ještě řekněme, jaké elektronické součástky měli konstruktéři v SSSR vůbec k dispozici. Jedním z důvodů vzniku vlastních konstrukcí osmibitových mikropočítačů v SSSR totiž bylo i to, že dovoz minipočítačů a mikropočítačů ze západních zemí do států RVHP byl po poměrně dlouhou dobu ze strategických důvodů omezen. Panovaly totiž obavy (jak se ostatně ukázalo, tak v mnoha případech oprávněné) z toho, že by se s těmito stroji prováděl reverse engineering a následně by se získané znalosti používaly při vývoji vojenských technologií. Z tohoto důvodu bylo mnoho prvních konstrukcí sovětských mikropočítačů založeno na tuzemské součástkové základně, popř. na součástkách dovážených ze zemí RVHP. Jednou z nejdůležitějších součástek v mikropočítači je samozřejmě mikroprocesor, který v sobě sdružuje funkce aritmeticko-logické jednotky, řadiče (buď pevně „zadrátovaného“ či mikroprogramového), rozhraní adresové a datové sběrnice atd.

Obrázek 3: Osmibitový mikroprocesor KR580VM80A, který byl v SSSR vyráběn zhruba od roku 1979 až do samotného konce Sovětského svazu.

V SSSR se při konstrukci mikropočítačů, například dále popsaného Vektoru-06C či podomácku stavěného (a před nástupem klonů ZX Spectra i velmi oblíbeného) Radio-86KR, poměrně často používal osmibitový mikroprocesor nazvaný poněkud krypticky KR580VM80A (v azbuce psaný КР580ВМ80А), který byl založen na architektuře známého mikroprocesoru Intel 8080A. Tento mikroprocesor mohl pracovat na frekvencích od 1 MHz do 2,5 MHz a vyžadoval, podobně jako původní 8080ka, trojici napájecích napětí: +5V, +12V a –5V. Mikroprocesor KR580VM80A byl dodáván ve čtyřicetipinovém plastickém nebo keramickém pouzdře DIP (původní verze pojmenovaná КР580ИК80 byla vyráběna v 44 pinovém pouzdře).

Obrázek 4: Další fotografie mikroprocesoru KR580VM80A.

Zatímco pro zjednodušení konstrukce mikropočítačů založených na procesoru Intel 8080 byla vytvořena známá řada či stavebnice podpůrných (většinou programovatelných) obvodů, například čipy 8251, 8253, 8255 či 8257, v SSSR se vyráběly ekvivalenty těchto čipů, jejichž označení začínalo znaky KR580 nasledovaných dvojicí znaků (zkratka názvu) a následně dvěma číslicemi, které byly shodné s poslední dvojicí číslic originálních čipů firmy Intel (to znamená, že původní obvod Intel 8251 byl označován jako KR580IK51 atd.). Některé z ekvivalentních, přesněji řečeno do jisté míry ekvivalentních podpůrných obvodů jsou uvedeny v následující tabulce:

Čip firmy Intel Ekvivalentní sovětský čip Popis
8080 KR580VM80A mikroprocesor
8251 KR580IK51 řadič sériové linky
8235 KR580VI53 programovatelný časovač
8255 KR580VV55 trojice osmibitových paralelních I/O bran
8257 KR580VT57 řadič DMA
8259 KR580VN59 řadič přerušení

Obrázek 5: Mikroprocesor KR580VM80A v keramickém pouzdře.

3. Osmibitový mikropočítač Vektor-06C

Prvním typem počítače, se kterým se dnes seznámíme, je osmibitový mikropočítač nazvaný Vektor-06C (v azbuce psáno Вектор-06Ц), který byl navržen D. Temirazovem a A. Sokolovem počátkem roku 1987. Jedná se o počítač, jenž používal výše zmíněný osmibitový mikroprocesor KR580VM80A, který však mohl být nahrazen i procesorem KR580VM1 s menší spotřebou a několika dalšími vylepšeními. Tento mikropočítač měl poměrně neobvyklou architekturu – na jednu stranu jeho výpočetní výkon ani výbava podpůrnými obvody nijak nevybočovala z průměru mezi osmibitovými počítači, na stranu druhou nabízel téměř profesionální grafické režimy, které například překonávaly i možnosti nechvalně známé grafické karty CGA používané u osobních počítačů IBM PC XT. Další ze zvláštností počítače Vektor-06C bylo to, že jeho paměť ROM neobsahovala interpret jazyka BASIC, pouze v ní byly obsaženy základní rutiny operačního systému (z toho také vyplývá, že její kapacita byla pouze 2 kB).

Obrázek 6: Osmibitový mikropočítač Vektor-06C.

Obsah paměti ROM se navíc při startu počítače překopíroval do operační paměti (RAM) a následně se ROM zcela odpojila z adresového prostoru mikroprocesoru, což při bližším pohledu není špatné řešení, protože to například umožňuje standardní cestou „opatchovat“ základní systémové rutiny, popř. je zcela nahradit. To, že v ROM nebyl obsažen interpret BASICu však neznamenalo, že by se na počítači Vektor-06C tento jazyk nedal použít – byl samozřejmě dostupný na paměťových médiích (tj. na kompaktních kazetách), stejně jako interaktivní vývojové prostředí programovacího jazyka FORTH, který je pro některé účely vhodnější než BASIC (ovšem způsob programování v tomto jazyce si musí uživatelé postupně osvojit, protože není tak přímočarý jako v BASICu).

Obrázek 7: Modernější varianta počítače Vektor-06C.

Jedna z několika dostupných modifikací tohoto počítače spočívala v náhradě původního procesoru KR580VM80A za osmibitový mikroprocesor Zilog Z80, popř. za jeho sovětský ekvivalent KR580VM1. Tento modifikovaný model byl dále různými způsoby upravován, například verze nazvaná Vektor Turbo+ byla založena na mikroprocesoru Z80 s hodinovou frekvencí 6 MHz nebo dokonce 12 MHz a s operační pamětí zvětšenou až na 2MB. Tyto úpravy měly vést k tomu, aby se počítače Vektor začaly používat i pro kancelářské aplikace (textové procesory, tabulkové procesory, jednouživatelské databáze), ovšem na trhu se právě v té době (jedná se o první polovinu devadesátých let minulého století) již objevily osobní počítače kompatibilní s IBM PC (XT, AT), takže v tomto sektoru trhu nakonec počítače Vektor neslavily tak velký úspěch, jak by si jejich konstruktéři a výrobci přáli.

4. Grafický subsystém mikropočítače Vektor-06C

V předchozí kapitole jsme se zmínili o tom, že se grafický subsystém počítače Vektor-06C odlišoval od grafických subsystémů mnoha dalších osmibitových mikropočítačů. Operační paměť Vektoru-06C o kapacitě obligátních 64 kB totiž byla rozdělena na dvě poloviny. V prvních 32 kB paměti (mapovaných na adresy 0×000 až 0×7FFF) mohly být uloženy programy, data, zásobník i proměnné operačního systému, zatímco druhý blok paměti o kapacitě 32 kB RAM (mapovaný, jak jste již jistě uhodli, na adresy 0×8000 až 0×FFFF) se používal jako video paměť; dnes bychom řekli framebuffer. Tak velká kapacita video paměti je na osmibitových počítačích velmi neobvyklá a to ze dvou důvodů – obsazuje se celá polovina adresového prostoru naprosté většiny osmibitových mikroprocesorů a manipulace s tak velkým blokem paměti je nutně pomalá, což se negativně projevuje především ve hrách. Z tohoto důvodu se typické velikosti obrazových pamětí u osmibitových mikropočítačů pohybují na hodnotách okolo osmi kilobajtů.

Grafický subsystém počítače Vektor-06C podporoval dva grafické režimy. V prvním režimu se zobrazovala barevná bitmapa o rozlišení 256×256 pixelů, přičemž každý pixel mohl být obarven jednou ze šestnácti barev. Šestnáctibarevná barvová paleta byla vybírána z 256 barevných kombinací. Ve druhém režimu se zobrazovala bitmapa o rozlišení 512×256 pixelů, kde každý pixel mohl být obarven jednou barvou ze čtyřbarevné palety. Tyto možnosti grafického subsystému Vektor-06C jsou skutečně na osmibitový mikropočítač poněkud neobvyklé, zvláště když si uvědomíme, že již zmíněná „profesionální“ grafická karta CGA měla jen poloviční kapacitu framebufferu a navíc pevnou barvovou paletu (resp. dvojici barvových palet, mezi nimiž se bylo možné přepínat). Grafický výstup byl přes modulátor přiváděn na televizi nebo bylo možné po malé úpravě zapojení použít i multifrekvenční monitor.

Obrázek 8: Rekonstruovaný počítač Vektor-06C.

5. Klony ZX Spectra v SSSR

V perexu tohoto článku jsme si řekli na první pohled možná překvapivou informaci, že v bývalém SSSR bylo navrženo i vyráběno více typů klonů osmibitových počítačů ZX Spectrum, než kdekoli jinde na světě. Tento stav byl způsoben především tím, že originální ZX Spectrum bylo v SSSR prodáváno za neuvěřitelnou cenu téměř 40000 rublů, zatímco průměrný měsíční plat byl cca 250 rublů (kurz rublu byl nastaven na cca 10 Kčs). Jednoduchým výpočtem můžeme zjistit, že průměrně vydělávající člověk si mohl vysněné ZX Spectrum pořídit po 13 letech, což je z dnešního pohledu srovnatelné snad pouze s hypotékou. Nelze se tedy divit tomu, že na různých místech SSSR existovaly pokusy o konstrukci počítače stejně jednoduchého (po technické stránce) a současně stejně univerzálního, jako bylo ZX Spectrum. Při návrhu sovětských klonů ZX Spectra se však museli konstruktéři vypořádat například se zpočátku nedostatečnou součástkovou základnou – týkalo se to jak ekvivalentů procesorů Z80, tak i náhrady zákaznického čipu ULA.

Obrázek 9: Rumunský klon ZX Spectra – díky velmi jednoduché konstrukci ZX Spectra se klony těchto počítačů vyráběly doslova po celém světě.

Mikroprocesor Z80 bylo možné nahradit více typy čipů, například se jednalo o procesor T34V (vyráběn od roku 1991), KR1858VM1 (plně kompatibilní se Z80), KM1582VM2 (opět plně kompatibilní, ovšem v plastickém pouzdře) a VM3 (zde existovaly oproti původnímu Z80 určité rozdíly). Čip ULA byl nahrazován buď elektronickým obvodem skládajícím se z jednodušších logických čipů, sovětským ekvivalentem čipu ULA (s rozdílným časováním) a v pozdější době taktéž originálním ULA. Zatímco originální ZX Spectrum mělo buď 16 kB nebo mnohem častěji 48 kB operační paměti, sovětské klony měly vesměs nainstalováno minimálně 64 kB RAM (některé modely však mnohem více). „Přebývajících“ 16 kB se používalo jako stínová RAM, kterou využívaly některé editory, kopírovací programy, překladače a taktéž operační systémy. Obsah paměti ROM (o typické kapacitě 16 kB) byl různý – buď se jednalo o téměř identickou kopii původní ROM firmy Sinclair Research (v SSSR, ostatně jako v ČSSR a dalších zemích RVHP, nemělo slovo „copyright“ téměř žádný význam) nebo různě upravovanou ROM, která však většinou zaručovala alespoň základní funkcionalitu s původním ZX Spectrem, včetně interpretru jazyka BASIC.

Obrázek 10: Mapa, na které jsou jednotlivé státy rozděleny podle toho, kolik klonů (typů) ZX Spectra v nich vzniklo.

6. Osmibitový mikropočítač Hobbit

Známým, i když z historického hlediska zdaleka ne prvním klonem ZX Spectra je osmibitový mikropočítač Hobbit (v azbuce psáno ХОББИТ) navržený Dimitrijem Michajlovem, jehož výroba začala v roce 1990. Tento počítač byl až na nepatrné odchylky plně kompatibilní s původním ZX Spectrem 48k. V základní sestavě obsahoval mikroprocesor Z80 s hodinovou frekvencí 3,5 MHz, paměť RAM o kapacitě 64 kB a taktéž, na rozdíl od původního Spectra, několik nových portů – trojici joystickových portů, paralelní port a sériový port. K počítači bylo možné připojit dvě disketové jednotky pro diskety o průměru 5 1/4 palce, přičemž formát disket odpovídal počítačům PC. V roce 1991 byla představena nová verze počítačů Hobbit, která používala diskety o průměru 3 1/2 palce, podobně jako například osobní počítače Atari ST či Amiga (a o několik let později i počítače PC AT).

Obrázek 11: Varianta osmibitového mikropočítače Hobbit.

Konstrukce počítačů Hobbit byla navržena s ohledem na to, aby se tyto stroje mohly používat na školách. Tomuto účelu odpovídá například klávesnice s ruským rozložením kláves s popisky v azbuce a taktéž možnost propojit jednotlivé počítače mezi sebou pomocí lokální sítě o přenosové rychlosti 56 kb za sekundu. Na „učitelském“ počítači mohly být vytvořeny síťové disky sdílené ostatními stroji.

Obrázek 12: Druhá varianta počítače Hobbit (vlevo), povšimněte si odlišného numerického bloku kláves. Na pravé straně obrázku porovnání Hobbitu se ZX Spectrem+ 128k.

Kromě obligátního interpretru programovacího jazyka BASIC byl na počítačích Hobbit používán i programovací jazyk FORTH, který produkoval velmi rychlé aplikace – na rozdíl od mnoha dalších implementací FORTHu se totiž prováděl překlad uživatelských programů přímo do strojového kódu mikroprocesoru Z80 a nikoli tvorba bajtkódu obsahujícího instrukce virtuálního zásobníkového procesoru. Grafické i zvukové možnosti tohoto počítače odpovídaly původnímu ZX Spectru – grafický režim používal bitmapu o rozlišení 256×192 pixelů s atributy o velikosti 8×8 pixelů a o tvorbu zvuku se staral reproduktor připojený na jednobitový výstup.

Obrázek 13: Příručka k počítači Hobbit, jeden z nástrojů pro tento počítač a vpravo tvůrce Hobbitu.

7. Počítač Moskva a Pentagon-48

Prvním sériově vyráběným domácím osmibitovým mikropočítačem kompatibilním se ZX Spectrem v SSSR byl počítač nazvaný jednoduše Moskva. Tento počítač existoval ve dvou variantách. Varianta nazvaná Moskva 48K, která začala být vyráběna v roce 1988, byla kompatibilní se ZX Spectrem 48K (tj. se slavným „gumákem“), zatímco varianta Moskva 128K z roku 1989 byla kompatibilní se ZX Spectrem 128k, ovšem s několika rozšířeními – například bylo přidáno rozhraní pro ovládání tiskáren, port pro joystick, výstup na monitor atd.

Obrázek 14: Jeden ze sovětských klonů ZX Spectra.

Poměrně jednoduchou úpravou v zapojení počítače Moskva-48 vznikl počítač Pentagon-48. Zmíněná úprava spočívala v odstranění obvodů pro generování RGB obrazu. Počítače Pentagon se dále vyvíjely (a vzhledem k poměrně stabilní uživatelské základně patrně i stále vyvíjejí), což je ovšem téma, kterému se budeme věnovat v následující části tohoto seriálu.

Obrázek 15: Časové průběhy synchronizačních signálů při generování obrazu na počítači Scorpion.

Obrázek 16: Časové průběhy synchronizačních signálů při generování obrazu na počítači Pentagon

8. Obsah následující části seriálu

V následující části seriálu o historii výpočetní techniky si popíšeme (nyní již konečně do větších podrobností) některé další klony ZX Spectra, které vznikly v SSSR. Zaměříme se především na počítače navržené Sergejem Zonovem, který zkonstruoval například dnes již legendární počítače Leningrad 1, Leningrad 2 či Scorpion, které jsou mnohými uživateli používány dodnes, i když by v nich sir Sinclair svoje ZX Spectrum pravděpodobně nepoznal – tyto počítače mají mnohdy 1 MB RAM, externí PC klávesnici, myš, adaptér pro připojení IDE disků, slot pro karty ISA, paměť ROM o kapacitě 64 kB se třemi operačními systémy a další technické novinky. Více informací si řekneme příště.

Obrázek 17: Varianta počítače Scorpion.

Obrázek 18: Mikropočítač Pentagon.

ict ve školství 24

Obrázek 19: Jedna z variant základní desky počítače Pentagon.

Obrázek 20: Ruským hackerům se podařilo upravit loader Windows XP takovým způsobem, že je možné je nabootovat i na ZX Spectru :-)

9. Odkazy na Internetu

  1. CPU world: KR580VM80A
    http://www.cpu-world.com/CPUs/80­80/USSR-KR580VM80A.html
  2. Wikipedia EN: KR580VM80A
    http://en.wiki­pedia.org/wiki/KR580VM80A
  3. Agat computer
    http://en.wiki­pedia.org/wiki/A­gat_computer
  4. Agat 7
    http://www.old-computers.com/MU­SEUM/computer­.asp?st=1&c=509
  5. Agat 9
    http://www.old-computers.com/MU­SEUM/computer­.asp?c=510
  6. Osobní počítač Achát
    http://www.com­puter-museum.ru/his­tussr/agat_pc­.htm
  7. Hobbit nostalgia page
    http://www.ta­runz.org/~vas­silii/Hobbit/
  8. Hobbit (computer)
    http://en.wiki­pedia.org/wiki/Hob­bit_%28computer%29
  9. ZX Hobbit (rusky)
    http://zxdimsla­.chat.ru/ZXHOB­BIT/title.htm
  10. The Hobbit
    http://www.sin­cuser.f9.co.uk/126/hob­bit.htm
  11. Rage Hard!
    http://www.ys­rnry.co.uk/ar­ticles/ragehar­d0990.htm
  12. Rage Hard! (2)
    http://www.ys­rnry.co.uk/ar­ticles/ragehar­d0191.htm
  13. Science, technology, and ecopolitics in the USSR (kniha)
    http://books.go­ogle.com/book­s?id=rrULmz5IV­ZQC&pg=PA71&dq=a­gat+computer&cd=6#v=o­nepage&q=agat%20com­puter&f=false
  14. Vector-06C
    http://en.wiki­pedia.org/wiki/Vec­tor-06C
  15. Generations of the COMPUTERS: From lamp „monsters“ to integrated chips
    http://www.bashe­du.ru/konkurs/tar­hov/english/ge­nerat.htm
  16. Computing and cybernetics in CEE
    http://www.bu­rundi.sk/monos­kop/index.php/Com­puting_and_cy­bernetics_in_CEE
  17. Tribute to the Soviet Computing – Part I
    http://www.you­tube.com/watch?v=1Zx4NE­AAt-E&feature=related
  18. Timeline of Computer History
    http://www.com­puterhistory.or­g/timeline/
  19. Russian Virtual Computer Museum: Strela Computer
    http://www.com­puter-museum.ru/english/stre­la.htm
  20. Russian Virtual Computer Museum: General-Purpose Automatic Digital Computer „Ural-11“
    http://www.com­puter-museum.ru/english/u­ral11.htm
  21. ES EVM
    http://en.wiki­pedia.org/wiki/ES_EVM
  22. History of computer hardware in Soviet Bloc countries
    http://en.wiki­pedia.org/wiki/His­tory_of_compu­ter_hardware_in_com­munist_countri­es
  23. Rapira (programovací jazyk)
    http://en.wiki­pedia.org/wiki/Ra­pira
  24. Rapira language (anglicky)
    http://ershov­.iis.nsk.su/ar­chive/eaindex­.asp?did=7653&l­ang=2
  25. Sinclair clones
    htt://zx.inter­face1.net/zxclo­nes.htmlp
  26. Russian Most Popular Spectrum Models (combined) FAQ and TECH INFO.
    http://www.wor­ldfspectrum.or­g/rusfaq/o
  27. List of ZX Spectrum clones
    http://en.wiki­edia.org/wiki/Lis­t_of_ZX_Spectrum_clo­nesp
  28. (ZX Spectrum) Clones and variants
    http://www.nvg­.ntnu.n/sincla­ir/computers/clo­nes/clones.htmo
  29. Russian Sinclair Clones
    http://www.vg­.ntnu.no/sincla­ir/computers/clo­nes/russian.htmn
  30. Russian Speccy Demoscene History
    http://www.8bit­todaycom/arti­cles/11/russi­an-speccy-demoscene-history.
  31. ZX Spectrum clones
    http:/tarjan.uw­.hu/zxclones_en­.htm/
  32. SR Home-Computers
    http:/www.home­computer.de/pa­ges/easteurope_us­sr.html/
  33. ZX SPECTRUM 48K VERSIONS AND CLONES AROUND THE WORLD
    http://zxspec­trum48i-demo.pl/clones­.html.

Autor článku

Vystudoval VUT FIT a v současné době pracuje na projektech vytvářených v jazycích Python a Go.