Obsah
2. Architektura počítače BBC Micro
3. Operační paměť a moduly ROM
5. Textový režim kompatibilní s Teletextem
6. Generátory zvuku v dobách osmibitových mikropočítačů
7. Zvukový subsystém počítače BBC Micro
8. Rozšiřující moduly a desky s přídavnými mikroprocesory
1. Historie vývoje počítačových her (166. část – BBC Micro: jeden z prvních vážných konkurentů IBM PC)
V předchozí části seriálu o historii vývoje počítačových her i herního hardware jsme se zabývali popisem platformy IBM PC, konkrétně prvních dvou modelů postavených na bázi 8/16bitového mikroprocesoru Intel 8088. IBM PC bylo v dobových reklamách prezentováno především jako kancelářský počítač, což ostatně i velmi dobře odpovídá orientaci společnosti IBM na středně velké firmy a korporace. Posléze se ovšem IBM PC rozšířilo i do dalších oblastí a právě tehdy – přibližně po roce 1984 – můžeme vidět i postupný nárůst počtu her naprogramovaných pro tuto platformu. Ovšem IBM PC samozřejmě nebyl jediným mikropočítačem, pro nějž vznikaly hry. Kromě již popsaných platforem (osmibitových mikropočítačů určených především do domácností) vyrostla PCčkům konkurence ve Velké Británii. Jednalo se o poměrně vyspělý osmibitový mikropočítač nazvaný BBC Micro, protože právě společnost BBC (British Broadcasting Corporation) se zapříčinila o jeho propagaci a šíření.
Obrázek 1: Dobový plakát s počítačem Acorn BBC Micro.
BBC Micro byl a vlastně doposud je ve Velké Británii velmi populárním mikropočítačem, který se usadil (spolu s u nás mnohem známějšími počítači ZX-80, ZX-81 a ZX Spectrum) na samotné špičce prodejnosti. BBC Micro měl být určen pro seznámení široké veřejnosti s počítači v rámci ambiciózního projektu Computer Literacy Project. Z toho důvodu musela být i cena celého řešení nízká. Počáteční jednání při návrhu počítače byla dokonce vedena i se sirem Clivem Sinclairem, z těchto jednání však posléze sešlo a BBC Micro navrhl jiný tým pracovníků ze společnosti Acorn, zejména pak Steve Furber a Sophie Wilson (současně se jedná o tvůrce fenomenálně úspěšné architektury ARM).
Počítače BBC Micro měly skutečně velký vliv na celou generaci programátorů a například tvůrci dnes populárního Raspberry PI se k odkazům na BBC Micro přímo hlásí, což je ostatně patrné i na prakticky stejném způsobu označování modelů BBC Micro a Raspberry PI. Ostatně jeden z architektů RPI Eben Upton říká:
„I've got a BBC Micro on my desk because I do word processing on my BBC Micro. I hit the button and it's on. If I set the jumpers right I can even configure it to boot into a word processor in one second. Obviously we've gained a lot. But from a strict usability point of view it's really suprising how much everything hasn't got any better.“
(citace z rozhovoru pro Linux Voice, pravděpodobně se mluví o software WordWise)
Obrázek 2: Osmibitový mikropočítač Acorn BBC Micro.
2. Architektura počítače BBC Micro
Hardwarová konfigurace počítače BBC Micro byla poměrně zajímavá, i když zde můžeme vidět určitý nepoměr mezi kapacitou operační paměti a požadavky na video paměť, popř. neexistenci čipu specializovaného pro hardwarové vykreslování spritů, což poněkud ztížilo pozici tohoto počítače na trhu s platformami pro počítačové hry (ostatně firma Acorn je známá tím, že věnovala více úsilí pro zvýšení výpočetního výkonu mikroprocesoru a mnohem méně úsilí do tvorby specializovaných zákaznických obvodů pro grafiku). Vraťme se však k popisu počítačů BBC Micro. Tento počítač byl založen na populárním osmibitovém mikroprocesoru MOS 6502, konkrétně na čipu MOS 6502A resp. Rockwell Semiconductor 6512A s hodinovou frekvencí nastavenou na celé 2 MHz. V dobovém kontextu se jedná o vysokou hodnotu, neboť další osobní počítače založené na stejném mikroprocesoru (Apple II, Atari, Commodore) pro ten stejný čip používaly nižší frekvenci, která dokonce u Commodore C64 klesla pod 1 MHz u evropské verze určené pro televizní normu PAL.
Obrázek 3: Originální mikropočítač Apple II řízený osmibitovým mikroprocesorem MOS 6502.
Čip MOS 6502 navrhl Chuck Peddle a sedm jeho spolupracovníků (Harry Bawcum, Ray Hirt, Terry Holdt, Mike James, Will Mathis, Bill Mensch a Rod Orgill), kteří spolu s ním opustili firmu Motorola. Důvodem k tomu, že někteří klíčoví zaměstnanci Motorolu opustili, byla jak tehdejší hospodářská recese v USA (a s tím související nepopulární reorganizace ve firmě), tak i to, že se zaměstnancům nelíbilo stěhování z Phoenixu do nově otevřené pobočky v Austinu. Nicméně se vraťme k Chucku Peddlemu a firmě MOS Technologies. V době, kdy Intel prodával svůj osmibitový mikroprocesor Intel 8080 za 179 dolarů (zaváděcí cena pro jeden kus byla dokonce 360 dolarů) a jeho hlavní konkurent firma Motorola svůj čip MC6800 za přesně tutéž částku 179 dolarů (zajímavá shoda že? :-), přišla firma MOS Technologies se zaváděcí cenou pouhých 25 dolarů.
Obrázek 4: Jedna z variant základní desky počítače C64. Tento počítač byl postaven na osmibitovém mikroprocesoru MOS 6510 (což je vylepšená varianta MOS 6502), grafickém čipu VIC-II, zvukovém čipu SID a dvojici vstupně-výstupních čipů SIO.
Zpočátku byla potenciálním zákazníkům tak nízká cena podezřelá, ale po skokovém zlevnění jak 8080, tak i MC6800 (rychlá reakce obou konkurentů na nabídku firmy MOS) se začal MOS 6502 prodávat ve velkém. Důvod pro tak nízkou cenu MOS 6502 byl jednoduchý – Chuck Peddle a jeho spolupracovníci použili vylepšenou metodu tvorby masky čipu, která jim dovolovala dělat pozdější opravy a především zvýšila výtěžnost výroby, tj. poměr dobrých čipů oproti zmetkům. Uvádí se, že 6502 měl až několikanásobně větší výtěžnost než 8080.
Obrázek 5: Herní konzole Atari 2600 vybavená mikroprocesorem MOS 6507, což je opět varianta původního čipu MOS 6502, ovšem s omezeným počtem pinů adresové sběrnice.
Dalším důvodem bylo zjednodušení samotného čipu – například byl použit pouze jeden osmibitový akumulátor (A), oba indexové registry X a Y byly osmibitové a osmibitový byl taktéž ukazatel na vrchol zásobníku SP (horních osm bitů adresy bylo nastaveno na 0×01, tj. zásobník byl v operační paměti umístěn na adresách 256 až 511). Právě příznivý poměr cena/výkon vedl k tomu, že se MOS 6502 objevil v mnoha úspěšných mikropočítačích, včetně dnes popisovaného BBC Micra.
Obrázek 6: Schéma zapojení herní konzole Atari 2600 s osmibitovým mikroprocesorem MOS 6507.
3. Operační paměť a moduly ROM
Existovalo několik modelů počítače BBC Micro, počínaje nejlevnějším Modelem A a konče Modelem B+128. Kapacita operační paměti RAM byla u modelu A rovna pouze šestnácti kilobajtům, u modelu B 32 kB a u modelu B+128 mohla dosahovat až na tehdejší dobu takřka nevyčerpatelných 128 kB :-). Paměť ROM měla u základních modelů A a B kapacitu plných 32 kB a obsahovala dodnes populární BBC Basic, který ze zmíněných 32 kB zabral celých 16 kB ROM. To mohlo být na začátku osmdesátých let minulého století považováno za poměrně velké plýtvání, protože ostatní Basicy se většinou vešly do 8 kB.
Obrázek 7: Úvodní obrazovka BBC BASICu ve verzi pro ZX Spectrum. Tato verze vznikla později než původní dialekt pro počítače Acorn BBC Micro, mj. i z toho důvodu, že nejdříve musel být tento dialekt BASICu portován na mikroprocesory Intel 8080 a Zilog Z80 (a samozřejmě také proto, že ZX Spectrum začalo být prodáváno později než Acorn BBC Micro).
Na druhou stranu vyžadovalo zmenšení interpretru na 8 kB mnohé kompromisy, například absenci některých příkazů pro grafiku či práci s řetězci, takže 16 kB pro kvalitní BBC Basic je možné brát jako důkaz snahy o prosazení tohoto počítače hlavně do školství, kde se tento jazyk poměrně intenzivně používal. Paměť RAM byla taktovaná na 4 MHz, což znamenalo, že při přístupu do paměti nemusel procesor nikdy čekat na data, a to ani v případě přístupu do framebufferu (opět odlišnost od některých konkurenčních osmibitových počítačů, nehledě již na IBM PC a grafickou kartu CGA s velmi problematickým přístupem do VRAM).
Konkrétní kapacity a konfigurace RAM a ROM pro jednotlivé modely počítače BBC Micro jsou vypsány v následující tabulce:
Model | ROM | RAM | Rozdělení RAM |
---|---|---|---|
Model A | 32 kB | 16 kB | základ (jediný blok) |
Model B | 32 kB | 32 kB | základ (jediný blok) |
Model B+64 | 48 kB | 64 kB | 32 kB základ + 20 kB shadow video + 12 kB extended |
Model B+128 | 48 kB | 128 kB | 32 kB základ + 20 kB shadow video + 76 kB extended |
Poznámka: vzhledem k malé kapacitě paměti RAM u Modelu A nebylo možné na tomto počítači využít ty grafické režimy, které vyžadovaly 20 kB RAM. Jedná se konkrétně o režimy 0 až 3, viz též tabulky použité v následující kapitole.
Obrázek 8: Vývojové prostředí konkurenčního Beta BASICu spuštěného na ZX Spectru. V horní části obrazovky se nachází program vypsaný menším fontem s maskou velikosti 4×8 pixelů (v této ploše se znaky vypisují do rastru o rozměrech 3×6 pixelů), zatímco příkaz v editačním řádku na spodní straně obrazovky používá font standardní s maskou velikosti 8×8 pixelů.
4. Grafický subsystém
Čipem, který se staral o vytváření obrazu na monitoru či televizoru, byl v počítači BBC Micro integrovaný obvod Motorola 6845, s nímž jsme se seznámili již minule při popisu možností grafické karty CGA. Ovšem v BBC Micro byl tento čip nakonfigurován takovým způsobem, že nabízel větší množství grafických a/nebo textových režimů než nepovedená karta CGA. Originální modely BBC Micro určené pro evropský trh, a tím pádem i pro televizní normu PAL, nabízely uživatelům následující grafické režimy:
Číslo režimu | Rozlišení | Bitů/pixel | Počet barev | Obrazení paměti |
---|---|---|---|---|
0 | 640 × 256 | 1 | 2 | 20 kB |
1 | 320 × 256 | 2 | 4 | 20 kB |
2 | 160 × 256 | 4 | 16 | 20 kB |
3 | 640 × 200 | 1 | 2 | 16 kB |
4 | 320 × 256 | 1 | 2 | 10 kB |
5 | 160 × 256 | 2 | 4 | 10 kB |
6 | 320 × 200 | 1 | 2 | 8 kB |
Režimy číslo 3 a 6 jsou poněkud zvláštní, neboť byly určeny převážně pro zobrazení textů. Menšího vertikálního rozlišení a tím pádem i menších nároků na alokovanou operační paměť bylo dosaženo takovým způsobem, že se do obrazu v pravidelných intervalech vkládal prázdný řádek. Pokud byl takový režim použit pro zobrazení grafiky, vedlo to k viditelným chybám, při zobrazení textů to však až tak nevadilo. Počítače exportované do USA používaly odlišný počet obrazových řádků kvůli omezením daným použitou TV normou NTSC:
Číslo režimu | Rozlišení | Bitů/pixel | Počet barev | Obrazení paměti |
---|---|---|---|---|
0 | 640 × 200 | 1 | 2 | 16 kB |
1 | 320 × 200 | 2 | 4 | 16 kB |
2 | 160 × 200 | 4 | 16 | 16 kB |
4 | 320 × 200 | 1 | 2 | 8 kB |
5 | 160 × 200 | 2 | 4 | 8 kB |
U modelů B+64 a B+128 byl podporován double buffering, kdy se druhý buffer uložit do stínové paměti (shadow video).
Obrázek 9: Ukázka grafických schopností BBC Micro – slavná hra Sentinel.
5. Textový režim kompatibilní s Teletextem
Kromě grafických režimů popsaných v předchozí kapitole byl navíc k dispozici i speciální textový režim číslo 7, který byl nazývaný „Teletext“ a to z toho prostého důvodu, že ho bylo možné použít právě pro generování teletextu (s využitím modulu založeného na čipu Mullard SAA5050). V tomto textovém režimu bylo možné zobrazovat 40 znaků textu na řádku, celkový počet textových řádků byl roven 25. Teletext režim vyžadoval pouhý jeden kilobajt operační paměti (přesněji řečeno 1000 bajtů) a navíc bylo možné v případě potřeby používat speciální znaky pro tvorbu pseudografiky. Zatímco u ostatních mikropočítačů (včetně IBM PC) se ve znakové sadě nacházely znaky s „pixely“ v mřížce 2×2 (celkem je možných šestnáct kombinací), u BBC Micro se jednalo o 64 znaků, z nichž každý představoval jednu kombinaci bitmapy o velikosti 2×3 pixely (pro zajímavost – tyto bitmapy se nazývaly sixel(s)). Celá obrazovka využívající tyto speciální pseudografické znaky tedy měla rozlišení 80×75 „pixelů“.
Obrázek 10: Znaky použité v režimu číslo 7 pro tvorbu pseudografiky.
6. Generátory zvuku v dobách osmibitových mikropočítačů
Kromě grafického subsystému byl počítač BBC Micro vybaven i relativně dobře vyváženým zvukovým subsystémem, kde slovem „vyvážený“ myslím poměr ceny potřebných čipů a možnosti počítače při tvorbě zvuků a hudby. Zatímco minule popsaná platforma IBM PC namísto plnohodnotného zvukového čipu používala pouze generátor obdélníkových impulsů generovaných čítačem/časovačem, na něž byl (přes zesilovač) připojen PC Speaker, prakticky všechny další domácí i osobní mikropočítače byly vybaveny sofistikovanějšími čipy (výjimkou je ZX 80/81 a ZX Spectrum 48k).
Obrázek 11: ZX Spectrum +128K, jenž byl taktéž vybavený zvukovým čipem řady AY-3–8910.
V době kralování osmibitových mikroprocesorů se jednalo o programovatelné zvukové generátory, které byly implementovány jako samostatné integrované obvody v některých případech doplněné o další funkce (paralelní či sériový port apod.):
# | Jméno čipu | Výrobce | Použití |
---|---|---|---|
1 | AY-3–8910 | General Instrument | Amstrad CPC, ZX Spectrum 128+ |
2 | YM2149 | Yamaha | Atari ST (založeno na AYčku) |
3 | SN76489 | Texas Instruments | BBC Micro, Sega SG-1000, Sega Master System… |
4 | TIA | Atari | Atari 2600 (navíc je TIA i grafický čip) |
5 | POKEY | Atari | řady Atari 400/800/XL/XE, … |
6 | SID | Commodore | Commodore C64 |
Obrázek 12: Osmibitový domácí počítač Atari 800 XL vybavený mikroprocesorem MOS 6502 a pomocnými koprocesory ANTIC, GTIA a taktéž programovatelným generátorem zvuků POKEY.
7. Zvukový subsystém počítače BBC Micro
Pro BBC Micro byl vybrán integrovaný obvod nazvaný Texas Instruments SN76489. Jedná se o poměrně jednoduchý čip dodávaný v pouzdru DIL o šestnácti vývodech, který byl určený pro generování (obdélníkových) zvukových signálů s volitelnou frekvencí a taktéž amplitudou (to je velmi důležitý rozdíl oproti PC Speakeru). Čip SN76489 obsahoval tři tónové generátory vytvářející periodický obdélníkový signál a jeden generátor šumu s periodou 215-1. Frekvence každého tónového generátoru byla určena desetibitovou konstantou uloženou do řídicího registru čipu SN76489. Tato konstanta byla použita ve frekvenční děličce (de facto běžném čítači), přičemž reálná frekvence vytvářeného obdélníkového signálu se vypočítala dělením vstupní frekvence.
Obrázek 13: Zvukový čip SN76489.
U každého tónového generátoru bylo taktéž možné určit amplitudu pomocí čtyřbitové hodnoty. Na výstupu se všechny zvukové signály sečetly, takže se rychlou změnou amplitudy a vhodným nastavením frekvencí jednotlivých zvukových kanálů daly generovat i poměrně složité melodie nebo zvuky ve hrách. Jak jsme se již řekli v předchozím odstavci, obsahoval tento čip navíc jeden generátor šumu, který byl implementován pomocí posuvného registru o šířce 15 bitů se zpětnou vazbou (bit, který se vracel na vstup posuvného registru, byl získán logickou operací nonekvivalence (XOR) nejvyšších bitů posuvného registru). Pro generátor šumu bylo možné zvolit pouze tři frekvence: Fosc/64, Fosc/128 a Fosc/256. Poněkud nešikovné je to, že obsah generátoru šumu nebylo možné přečíst mikroprocesorem, protože by se tato funkce mohla hodit ve hrách, které mnohdy vyžadují generátor (pseudo)náhodných čísel (tuto možnost nabízel například POKEY u Atari).
Obrázek 14: Způsob zapojení čipu SN76489.
Zdroj: firemní dokumentace k tomuto čipu.
Čip SN76489 obsahoval osm řídicích registrů – tři registry pro uložení konstanty pro děličky frekvence tónových generátorů, tři registry pro zápis amplitudy tónových generátorů, registr pro řízení generátoru šumu a konečně registr pro řízení amplitudy a frekvence generátoru šumu. Jak je z tohoto popisu patrné, byly možnosti zvukového čipu SN76489 poněkud menší než možnosti konkurenčních čipů AY-3–8910 či POKEY, na druhou stranu ovšem mnohem lepší, než u již dvakrát zmíněného nemotorného PC Speakeru.
Obrázek 15: Herní konzole SG-1000, která je taktéž vybavena zvukovým čipem SN76489.
8. Rozšiřující moduly a desky s přídavnými mikroprocesory
Počítač BBC Micro byl navržen takovým způsobem, že ho bylo možné relativně snadno rozšiřovat. Základními rozšiřujícími moduly byly desky s ROM, do nichž mohly být nahrány například uživatelské programy (viz citace zmíněná v první kapitole). Díky těmto ROM mohl být uživatelský program spuštěn prakticky ihned po zapnutí počítače, což je vlastnost, kterou se dnešní PC (ani tablety) zdaleka nemůžou chlubit :-) Kromě modulů s ROM však existovaly i další moduly určené například pro vytvoření počítačové sítě (Econet), řadič pevných disků a dokonce i moduly s koprocesory – MOS 6502 (pracující v tandemu s původním MOS 6502), Z80 (pro spuštění CP/M a programů pro tento systém, včetně populárního Pascalu) a dokonce později i modul s RISCovými procesory ARM. Mezi přídavné moduly patřil i adaptér pro generování teletextu, který byl zmíněn v souvislosti s grafickým režimem číslo 7.
9. BBC Basic
Nedílnou součástí počítače BBS Micro je dialekt jazyka Basic nazvaný BBC Basic, který byl velmi úspěšný především v západních zemích (ovšem nikoli v ČSSR, kde panovala, podobně jako v dalších státech RVHP, poněkud jiná situace). Původní hlavní autorkou je Sophie Wilsonová a mezi další autory, kteří například provedli portaci tohoto programovacího jazyka na jiné platformy, patří i známý Richard Russell.
Obrázek 16: Programovací jazyk BBC BASIC byl portován dokonce i na osobní počítače PC s nainstalovaným operačním systémem Microsoft Windows.
Firma Acorn již před vznikem BBC Micro konstruovala svoje počítače nazvané Atom vybavené sice poměrně rychlým, zato však omezeným a nekompatibilním dialektem BASICu, který se ukázal být nepříliš vhodný pro počítač určený mj. i pro výuku (jednou z pozitivních vlastností interpretru tohoto BASICu byla možnost zápisu assembleru spolu s BASICovými programy, která se později objevila i v BBC BASICu). Z tohoto důvodu BBC zpočátku uvažovala o tom, že nakoupí licence na dialekt BASICu nabízený firmou Microsoft, ovšem tento programovací jazyk, přesněji řečeno jeho varianta pro osmibitové mikroprocesory, postrádal některé vlastnosti, které byly vyžadovány k tomu, aby bylo možné tento dialekt použít pro potřeby výuky – týkalo se to například nedostupnosti již zmíněných programových konstrukcí umožňujících strukturované programování, taktéž nemožnosti použití dlouhých názvů proměnných (nikoli pouze jedno- či dvouznakových) atd. (prostě typický produkt Microsoftu :-)
Obrázek 17: Screenshot obrazovky původního BBC BASICu spuštěného v emulátoru počítače Acorn BBC Micro.
Z těchto důvodů bylo nakonec od myšlenky licencování Microsoft BASICu odstoupeno a pro nově vznikající platformu byl vytvořen nový jazyk s názvem BBC BASIC, který byl mj. navržen takovým způsobem, aby nebyl závislý na konkrétní počítačové platformě. Původní verze programovacího jazyka BBC BASIC z roku 1981 byla určena pro počítače vybavené osmibitovými mikroprocesory MOS 6502, ovšem v pozdějších letech došlo k jeho rozšíření i na další mikroprocesory a počítačové platformy, viz též údaje na stránce http://mdfs.net/Software/BBCBasic/.
Obrázek 18: BBC BASIC byl portován i na programovatelné kalkulačky TI-83+/TI-84+ s grafickým displejem. Zde je výsledek běhu programu pro výpočet Mandelbrotovy množiny.
Další vlastností BBC BASICu, která se postupem času rozšířila i na některé další dialekty tohoto programovacího jazyka, byla možnost práce s celočíselnými proměnnými, které byly na většině platforem interně ukládány jako 32bitové hodnoty ve dvojkovém doplňku. Celočíselné proměnné se od proměnných reálných (přesněji řečeno od proměnných uložených ve formátu plovoucí řádové čárky) odlišovaly tím, že se za jejich název přidával znak ‚%‘ (procento), což spolu s existencí řetězcových proměnných znamenalo, že identifikátory TEST, TEST% a TEST$ byly považovány za tři odlišné proměnné (dnes bychom pravděpodobně řekli, že celočíselné, reálné a řetězcové proměnné měly oddělené jmenné prostory :-). Pro práci s řetězci byly zvoleny stejně pojmenované funkce, jaké můžeme nalézt v interpretrech MS BASICu – LEFT$, RIGHT$ a MID$ (tyto funkce se však daly použít i na levé straně přiřazovacího příkazu jako omezovače podřetězce, který se měl změnit), navíc bylo možné pro nalezení podřetězce v řetězci použít příkaz INSTR.
Obrázek 19: Programovatelná grafická kalkulačka TI 83+, na níž byl taktéž portován BBC BASIC.
Ovšem největší předností BBC BASICu byla možnost zapisovat programové smyčky s využitím strukturovaných výrazů, nikoli s použitím příkazu GOTO, i když tato možnost zůstala zachována. Spolu s odstraněním nutnosti používat GOTO byla z BBC BASICu odstraněna povinnost číslovat všechny programové řádky. Poněkud paradoxní přitom je, že poslední verze učebnice BBC BASICu (která je mj. dostupná i na Internetu), se o příkazu GOTO a o číslování řádků zmiňuje pouze okrajově, což znamená, že tento příkaz již dávno není zapotřebí ani pro psaní školních ani reálných aplikací.
10. Legendární hra Elite
Jednou z nejznámějších a současně i nejpropracovanějších her pro osmibitové mikropočítače je hra Elite, o níž se před několika lety pěkně rozepsal Petr. První verze této hry vznikla již v roce 1984 a jejími autory jsou Ian Bell a David Braben (což jsou v oblasti vývoje her velmi známé osobnosti). Zajímavé je, že v době vzniku této hry měl David Braben 19 let a Ian Bell byl o pouhý jeden rok starší. Elite, která původně vznikla právě pro BBC Micro, znamenala v oblasti vývoje her dosti velký průlom, protože se jednalo o jednu z prvních her s trojrozměrnou grafikou a otevřeným světem (technicky podobná hra Mercenary vznikla až o rok později). Navíc šlo o hru určenou i pro běžné osmibitové domácí mikropočítače, včetně ZX Spectra a je nutné říci, že vidět plynule rotující modely kosmických lodí na ZX Spectru byl v polovině osmdesátých let skutečný zážitek.
Obrázek 20: Úvodní obrazovka s předváděním kosmických lodí.
Navíc byl ve hře Elite do všech detailů rozvinut koncept otevřených světů, s čímž souvisí nejenom prakticky naprostá svoboda hráče, ale i fakt, že si hráč sám zvolí cíl, kterého chce ve hře dosáhnout. Je například možné se zabývat legálním obchodem a převážet zboží mezi několika hvězdnými soustavami; lze se však také přidat na stranu pirátů, pašovat zboží atd. atd. K dispozici má hráč obrovské vesmírné prostory a pokud má dostatek kreditů, tak si může například vylepšit svoji kosmickou loď apod. Je to právě tato volnost pohybu a svoboda rozhodování, která udělal z Elite kultovní hru.
Obrázek 21: Informace o autorech.
Hra byla naprogramována v assembleru a vzhledem k absenci rastrových obrázků a textur měla velikost jen několika desítek kilobajtů. Portace hry na další platformy opět probíhala přes assembler, což je z dnešního pohledu téměř neuvěřitelné množství práce, která však byla dána nutností vykreslovat 3D scény i na počítačích vybavených osmibitovými mikroprocesory s taktovací frekvencí mnohdy nepřesahující jeden MHz.
Obrázek 22: Nákup paliva a vybavení pro kosmickou loď.
Obrázek 23: Mapa blízkých hvězdných systémů.
Obrázek 24: Informace o hvězdném systému.
Obrázek 25: Na čem se tak dá nejlépe vydělat?
11. Odkazy na Internetu
- BBC Basic: Graphics and Colours
http://www.bbcbasic.co.uk/bbcwin/manual/bbcwin3.html - BBC Basic: MODE 7 – Teletext
http://www.bbcbasic.co.uk/bbcwin/manual/bbcwinh.html - BBC Micro (Wikipedia)
https://en.wikipedia.org/wiki/BBC_Micro - The BBC Microcomputer User Guide
http://central.kaserver5.org/Kasoft/Typeset/BBC/Contents.html - BBC Micro Screen Formats
http://www.dfstudios.co.uk/articles/retro-computing/bbc-micro-screen-formats/ - BBC Micro Screen Formats Part 2
http://www.dfstudios.co.uk/articles/retro-computing/bbc-micro-screen-formats-part-2/ - SN76489 sound chip details
http://web.inter.nl.net/users/J.Kortink/home/articles/sn76489/ - SN76464 datasheet
http://www.ic-on-line.cn/view_online.php?id=1106623&file=0054%5Csn76494_409323.pdf - Texas Instruments SN76489 (Wikipedia)
http://en.wikipedia.org/wiki/Texas_Instruments_SN76489 - SN76489
http://www.smspower.org/Development/SN76489?sid=ae16503f2fb18070f3f40f2af56807f1 - Inside BBC Micro
http://8bs.com/inbbc.htm - Acorn BBC
http://www.old-computers.com/MUSEUM/computer.asp?c=29 - Sound Chip (Wikipedia)
https://en.wikipedia.org/wiki/Sound_chip - Programmable Sound Generator (Wikipedia)
https://en.wikipedia.org/wiki/Programmable_sound_generator - The 8086/8088 Primer
http://stevemorse.org/8086/index.html - Birth of a Standard: The Intel 8086 Microprocessor
http://www.pcworld.com/article/146957/birth_of_a_standard_the_intel_8086_microprocessor.html - A Brief History of Computing
http://trillian.randomstuff.org.uk/~stephen/history/8086.html - Intel 8086
http://en.wikipedia.org/wiki/Intel_8086 - Support/peripheral/other chips – 6800 family
http://www.cpu-world.com/Support/6800.html - Motorola 6845
http://en.wikipedia.org/wiki/Motorola_6845 - The 6845 Cathode Ray Tube Controller (CRTC)
http://www.tinyvga.com/6845 - IBM Monochrome Display Adapter
http://en.wikipedia.org/wiki/Monochrome_Display_Adapter - Color Graphics Adapter
http://en.wikipedia.org/wiki/Color_Graphics_Adapter - Magic Mushroom (demo pro PC s DOSem)
http://www.crossfire-designs.de/download/articles/soundcards//mushroom.rar - Píseň Magic Mushroom – originál
http://www.crossfire-designs.de/download/articles/soundcards/speaker_mushroom_converted.mp3 - Píseň Magic Mushroom – hráno na PC Speakeru
http://www.crossfire-designs.de/download/articles/soundcards/speaker_mushroom_speaker.mp3 - Pulse Width Modulation (PWM) Simulation Example
http://decibel.ni.com/content/docs/DOC-4599 - Resistor/Pulse Width Modulation DAC
http://www.k9spud.com/traxmod/pwmdac.php - Class D Amplifier
http://en.wikipedia.org/wiki/Electronic_amplifier#Class_D - Wikipedia EN: PC speaker
http://en.wikipedia.org/wiki/PC_speaker - Wikipedia EN: Intel 8253
http://en.wikipedia.org/wiki/Intel_8253 - Wikipedia EN: Intel 8255
http://en.wikipedia.org/wiki/Intel_8255 - Memory mapped I/O
http://www.sharpmz.org/mz-700/memio.htm - Using an 8255 PPI chip
http://drew.hickmans.net/8255.htm - Programming the PC Speaker
http://www.gamedev.net/reference/articles/article442.asp - SG-1000 (Wikipedia)
http://en.wikipedia.org/wiki/SG-1000 - Great Microprocessors of the Past and Present (V 13.4.0)
http://jbayko.sasktelwebsite.net/cpu.html - Wikipedia: 6502:
http://en.wikipedia.org/wiki/6502 - The Western Design Center, Inc.:
http://www.westerndesigncenter.com/ - Apple II History Home:
http://apple2history.org/ - www.6502.org:
http://www.6502.org/ - Root.cz: Elite – The New Kind
http://www.root.cz/clanky/elite-the-new-kind/ - Acorn Elite Pages
http://elite.acornarcade.com/index.htm