Historie vývoje počítačových her (16.část - herní konzole Vectrex) - Root.cz
Hlavní navigace

Historie vývoje počítačových her (16.část - herní konzole Vectrex)

1. 3. 2012
Doba čtení: 27 minut

Sdílet

V dnešní části seriálu o historii výpočetní techniky se budeme zabývat popisem další herní konzole, která se na trhu objevila v roce 1982. Jedná se o konzoli Vectrex s unikátním vektorovým displejem, díky němuž jsou hry určené pro tuto konzoli již na první pohled odlišné od her z ostatních herních konzolí.

Obsah

1. Osmibitová herní konzole Vectrex

2. Základní technické parametry herní konzole Vectrex

3. Srdce herní konzole Vectrex: mikroprocesor Motorola 6809

4. Unikátní vlastnosti mikroprocesoru Motorola 6809

5. Zvukový subsystém: čip AY-3–8912

6. Vlastnosti čipu AY-3–8912

7. Grafický subsystém: řadič vektorového displeje

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

9. Odkazy na Internetu

1. Osmibitová herní konzole Vectrex

V dnešní části seriálu o historii vývoje výpočetní techniky se seznámíme s poměrně unikátní osmibitovou herní konzolí pojmenovanou Vectrex. Tato herní konzole se od dalších podobných zařízení odlišuje především v tom, že přímo v konzoli je zabudován poměrně malý vektorový displej. Vzhledem ke způsobu generování obrazu na vektorovém displeji se nejedná o konzoli, kterou by bylo možné připojit k běžnému televizoru či monitoru. Teoreticky je však možné pro zobrazení použít osciloskop, u nějž je možné připojit externí signál i na X-ovou osu namísto časové základny :-) [http://www.y­outube.com/wat­ch?v=_eUoBMiaW0M]. Vzhledem k tomu, že tato herní konzole vznikla později, než například dříve popsané konzole Atari 2600 či Magnavox Odyssey2, mohli její konstruktéři využít výkonný a v některých ohledech vlastně i nejpropraco­vanější osmibitový mikroprocesor nabízený na trhu – jednalo se o čip Motorola 6809 s ručně optimalizovanými interními strukturami, který mj. obsahoval i hardwarovou násobičku, což je v oblasti osmibitových mikroprocesorů poměrně neobvyklá součást čipu.

pc6604

Obrázek 1: Herní konzole Vectrex (jedná se o prostorový model, nikoli o fotografii reálné konzole).

Historie herní konzole Vectrex se začala psát již v roce 1981, kdy se John Ross a Mike Purvis zabývali myšlenkou na vytvoření herního zařízení se zabudovanou obrazovkou (přitom při svých pokusech používali starší monochromatickou obrazovku získanou z výprodeje). Mělo se jednat o snadno přenosné zařízení, které by obsahovalo všechny ovládací prvky a možná i napájení v jediné krabičce. Mimochodem: podobné „minikonzole“ později skutečně vznikly, většinou se však jednalo o zařízení obsahující pouze jedinou hru a LCD s předkreslenými postavičkami a herním prostředím; u nás byly známé zejména sovětské hry Elektronika IM, například hra „Jen počkej!“ (i těmito, pro někoho dosti nostalgickými hrami se budeme ještě v dalších částech tohoto seriálu zabývat). Vraťme se však k Vectrexu. John Ross a Mike Purvis byli zaměstnanci společnosti Western Technology/Smith Engineering a tato firma se začala na jejich popud zabývat projektem, který nesl původně název Mini Arcade a později též HP-3000 či Vector-X.

pdp1

Obrázek 2: Herní konzole Vectrex je mj. vybavena pravděpodobně nejvýkonnějším mikroprocesorem osmibitové éry Motorola M6809, zvukovým čipem AY-3–8912 („aýčkem“ známým i ze ZX Spectra 128+ a Atari ST) a vlastním řadičem vektorového displeje.

Původně konstruktéři uvažovali o možnosti, že by herní konzole MiniArcade/HP-3000/Vector-X byla vybavena miniaturním pětipalcovým vektorovým displejem (což by vedlo k téměř kapesnímu formátu, velikostí možná dokonce srovnatelného s legendárním Nintendem), ovšem posléze – společně s převzetím celého projektu firmou Consumer Electronics (GCE) – došlo k mnoha úpravám a k použití devítipalcového displeje (přibližně s rozměry 8×11 palců orientovaným dosti neobvykle na stojato) a taktéž ke změně názvu konzole na Vectrex, což je skutečně název, který nenechává prakticky nikoho na pochybách, jaké typy grafických objektů dokáže tato herní konzole na svém interním displeji zobrazit.

Obrázek 3: Použitím vektorové obrazovky se vlastně konzole Vectrex vrátila na samotný začátek historie vývoje počítačových her. Na tomto obrázku je osciloskop, na němž je zobrazena hra Tennis for Two z padesátých let minulého století.

2. Základní technické parametry herní konzole Vectrex

Ke konci roku 1981 už byly úspěšně odzkoušeny různé prototypy Vectrexu a rozeběhl se vývoj skutečné, komerčně prodejné konzole. Zajímavé je, že původně měla být tato herní konzole osazena osmibitovým mikroprocesorem MOS 6502, s nímž jsme se již v tomto seriálu několikrát setkali, ovšem posléze došlo ke změně a byl vybrán výkonnější mikroprocesor Motorola 6809, přesněji řečeno varianta Motorola 68A09 s taktovací frekvencí 1,5 MHz. O generování hudby a zvuků se staral zvukový čip AY-3–8912, který byl mj. použit i v některých herních automatech a především pak v osmibitovém mikropočítači ZX-Spectrum 128k a taktéž v osobním počítači Atari ST. Vzhledem k tomu, že zobrazení na vektorovém displeji využívalo i analogové obvody (v podstatě lineární interpolátory, jejichž výstup byl přiváděn do horizontálního a vertikálního vychylovacího obvodu), není divu, že i herní ovladače konzole Vectrex byly analogové – jednalo se vlastně o obdobu ovladačů paddle, které byly již dobře známy například uživatelům konkurenční herní konzole Atari 2600.

Obrázek 4: U příležitosti padesátého výročí vzniku hry Tennis for Two vznikla rekonstrukce původního analogového počítače, obou ovladačů i zobrazovací jednotky.

Konzole Vectrex obsahovala i interní paměť ROM s kapacitou osmi kilobajtů (jednalo se o paměť umístěnou na čipu 2363). Obsah této paměti byl rozdělen na dvě části: v prvních čtyřech kilobajtech byla uložena hra Mine Storm, ve druhých čtyřech kilobajtech pak firmware nazvané Executive. Ve firmware byly uloženy různé podprogramy využívané hrami, například rutiny pro ovládáni časovačů, rutiny pro kreslení úseček atd. Paměť RAM byla sestavena z dvojice čipů 2414, přičemž každý z těchto čipů měl kapacitu 1kB×4B, tj. celková kapacita RAM byla pouhý jeden kilobajt (což je na druhou stranu osmkrát větší kapacita, než měli k dispozici skromní programátoři na Atari 2600 :-). V adresovém rozsahu mikroprocesoru Motorola 6809 bylo prvních 32kB vyhrazeno pro obsluhu externích paměťových modulů s hrami, ve skutečnosti však měla většina modulů kapacitu 4kB nebo 8kB, ve výjimečných případech pak 4kB+8kB (kombo). Viz též přiložená tabulka s mapou paměti herní konzole Vectrex:

Adresový rozsah Popis
$0000-$7FFF adresy paměťového modulu se hrou
$Dxx0-$DxxF řídicí registry čipu 6522 (jsou zrcadleny)
$E000-$EFFF Zabudovaná hra Mine Storm
$F000-$FFFF Executive (základní rutiny firmware)

Obrázek 5: Automatová (a tedy i komerční) varianta hry Lunar Lander s vektorovým displejem a ovládáním joystickem namísto numerických vstupů. Možná i zde se konstruktéři Vectrexu nechali inspirovat.

Mikroprocesor Motorola 6809 a zvukový čip AY-3–8912 byly doplněny obvodem 6522 tvořícím rozhraní mezi „digitální“ a „analogovou“ částí konzole a taktéž digitálně-analogovým převodníkem MC1408, který byl v zařízení přítomen pouze v jednom provedení, i když ve skutečnosti přes multiplexer ovládal celkem tři analogové výstupy. I když je mikroprocesor Motorola 6809 v některých ohledech výkonnější, než například MOS 6502, je poněkud paradoxně herní konzole Vectrex interně prakticky stejně jednoduchá, jako Atari 2600 a jednodušší než minule popsaná konzole Atari 5200, v níž byly použity hned čtyři čipy se střední či vysokou úrovní integrace (nepočítaje v to paměti ROM a RAM).

Obrázek 6: Snímek z „vektorové“ podoby hry Lunar Lander: začátek hry (snímek byl získán z emulátoru hracích automatů MAME).

Po komerčním neúspěchu Vectrexu se firma vlastnící práva na konzoli i software rozhodla k netradičnímu kroku – vše je uvolněno k bezplatnému používání za předpokladu, že se bude jednat o nevýdělečnou činnost. Mnoho firem vlastnících práva ke hrám osmdesátých let se k tomuto kroku ještě neodhodlalo :-(

3. Srdce herní konzole Vectrex: mikroprocesor Motorola 6809

Již v předchozích dvou kapitolách jsme se zmínili o tom, že herní konzole Vectrex byla vybavena osmibitovým mikroprocesorem Motorola (MC)6809. Tento mikroprocesor uzavírá celou řadu osmibitových čipů navržených a vyráběných společností Motorola (určité pokračování můžeme nalézt v osmibitových mikrořadičích 68HCxx, těmi se však zde nebudeme zabývat). Na začátku této „osmibitové“ řady stál historicky významný čip MC6800, který byl následovaný méně známými čipy MC6801 a MC6802. Po vzniku těchto dvou mikroprocesorů se vedení společnosti Motorola rozhodlo rozdělit další vývoj svých programovatelných čipů na dvě části. První skupina vývojářů se soustředila na vývoj zcela nové generace mikroprocesorů – jednalo se o později slavnou řadu 68000 (68k), jejíž tvůrci vlastně zcela přeskočili generaci šestnáctibitových procesorů, protože čipy Motorola 68000 byly v mnoha ohledech 32bitovými mikroprocesory. Druhá skupina vývojářů mezitím pracovala na novém typu osmibitového mikroprocesoru, který převzal mnoho svých vlastností jak z původního procesoru MC6800, tak i z konkurenčního čipu MOS 6502 (zde se konstruktéři nechali „inspirovat“ především nultou stránkou paměti a jejím efektivním adresováním).

Obrázek 7: Snímek z „vektorové“ podoby hry Lunar Lander: průběh hry ve chvíli, kdy je modul ještě vzdálený od povrchu Měsíce.

Výsledkem těchto snah byl s velkou pravděpodobností nejvýkonnější osmibitový mikroprocesor, který byl kdy vyroben. Jednalo se o procesor nazvaný MC6809, který programátorům nabízel několik v té době poměrně unikátních vlastností, například téměř zcela ortogonální instrukční sadu (samozřejmě se jednalo o procesor s architekturou CISC), dvojici šestnáctibitových index registrů či dva ukazatele na vrchol zásobníku ideální například pro implementaci programovacího jazyka Forth. Tento mikroprocesor sice programátorům ve své instrukční sadě nabízel „pouze“ 59 instrukcí, ovšem vzhledem k velkému množství adresovacích režimů a ortogonalitě instrukční sady dokázal provádět všechny instrukce původního čipu MC6800 (78 instrukcí) a samozřejmě i vykonávat mnohé další operace.

Obrázek 8: Hra Mine Storm dodávaná společně s konzolí Vectrex (spuštěno v emulátoru Vectrexu).

Pro zajímavost jsou v následující tabulce vypsány některé základní vlastnosti „programátorského modelu“ osmibitových mikroprocesorů a mikrořadičů přímo či nepřímo odvozených od původního čipu MC6800 (D je označení pro double accumulator, 16bitový akumulátor vytvořený z dvojice osmibitových akumulátorů A a B):

Čip Typ Akumulátor(y) D=A+B (16b) Index registr(y) Čítač instrukcí Zásobníkové registry Spec. registry
Motorola MC6800 CPU A (8b), B (8b) ne X (16b) PC (16b) SP (16b) CCR (6b)
Motorola MC6809 CPU A (8b), B (8b) ano X (16b), Y (16b) PC (16b) S (16b), U (16b) CCR (8b), DP (8b)
Motorola 68HC05 MCU A (8b) ne X (8b) PC (13b) SP (16b) CCR (5b)
Motorola 68HC08 MCU A (8b) ne H:X (16b) PC (16b) SP (16b) CCR (6b)
Motorola 68HC11 MCU A (8b), B (8b) ano X (16b), Y (16b) PC (16b) SP (16b) CCR (8b)
MOS 6502 CPU A (8b) ne X (8b), Y (8b) PC (16b) S (8b) P (7b)

Obrázek 9: Osmibitový mikroprocesor Motorola MC6800 je předchůdcem čipu MC6809.

4. Unikátní vlastnosti mikroprocesoru Motorola 6809

Jak původní mikroprocesor MC6800, tak i konkurenční čip MOS 6502 obsahoval speciální adresní režimy, s jejichž pomocí bylo možné přistupovat k prvním 256 bajtům operační paměti, a to rychlejším způsobem, než v případě použití plné 16bitové adresy (navíc byly instrukce i o jeden bajt kratší, což nebylo v dobách počítačů s maximálně 64 kB RAM nezanedbatelné). Konstruktéři mikroprocesoru MC6809 tuto možnost zachovali a navíc speciální osmibitové adresní režimy rozšířili o registr nazvaný DP (zkratka Direct Page), kterým bylo možné vybrat jakoukoli stránku v rámci paměťového prostoru 64 kB, kterou bylo následně možné použít v součinnosti s osmibitovou adresou (důležité je, že se neprovádělo časově náročné sčítání dvou adres, nejedná se o obdobu neblahého adresování typu segment:offset, kterým nás oblažila firma Intel :-). Nově přidána byla taktéž instrukce umožňující provést vynásobení dvou osmibitových operandů. Hardwarová násobička přitom nebyla u osmibitových mikroprocesorů příliš častým příslušenstvím, protože její implementace zabírala příliš mnoho cenné plochy čipu (počet tranzistorů na čipu je přímo úměrný jeho ploše a nepřímo úměrný použité technologii litografie).

Obrázek 10: Další fotografie osmibitového mikroprocesoru Motorola MC6800
(Zdroj: Wikipedia).

Zajímavé a i v dnešní době poněkud neobvyklé bylo též přidání druhého ukazatele na vrchol zásobníku U. To umožňovalo jak rychlé přepínání mezi různými procesy (operační systém → uživatelský program, uživatelský program → obslužná přerušovací rutina), tak i například snadnou implementaci interpretru programovacího jazyka Forth, který dvojici zásobníků používá. Vzhledem k tomu, že řadič i aritmeticko-logická jednotka mikroprocesoru MC6809 byly ručně optimalizovány (šlo o možná poslední procesor typu CISC, jehož interní struktura byla „zadrátována“ bez použití mikrokódu), jednalo se o velmi rychlý procesor, a to i v případě, že byl použit relativně pomalý zdroj hodinového signálu – původní MC6809 měl maximální hodinovou frekvenci rovnu 1MHz, model MC68A09 1,5 MHz (právě tento model byl použit v herní konzoli Vectrex) a konečně model MC68B09 mohl být taktován hodinovým signálem o frekvenci až 2 MHZ.

Obrázek 11: Mikroprocesor Motorola MC6809.

Z mnoha pohledů se tak jednalo o technologicky velmi dobře navržený mikroprocesor, který však přišel na trh již poměrně pozdě – v době nástupu šestnáctibitových a 32bitových čipů (ostatně to samé je možné říci i o herní konzoli Vectrex, které se „podařilo“ přijít na trh téměř v době, kdy v USA začala velká krize na trhu s herními konzolemi i hrami určenými pro tyto konzole). Vzhledem k technologickým kvalitám 6809 je poměrně zajímavý a poněkud nepochopitelný fakt, že mikrořadiče firmy Motorola, zejména pak čipy rodiny 68HC11, NEbyly založeny na 6809 ale na starším a ne tak výkonném čipu MC6800, což je z dnešního pohledu možná poněkud škoda (například o instrukční sadě 68HC11 lze říci cokoli, jen ne to, že je ortogonální a snadno naučitelná).

Obrázek 12: Zvukový čip AY-3–8910 ve čtyřicetipinovém pouzdře DIL (originál od firmy General Instrument)

5. Zvukový subsystém: čip AY-3–8912

Další nedílnou a velmi důležitou součástí herní konzole Vectrex byl i zvukový čip nazvaný AY-3–8912. Jedná se o jednu z variant zvukového generátoru AY-3–8910 vyráběného původně společností General Instruments (GI) a později taktéž firmou Yamaha pod označením YM2149 (největší rozdíly mezi jednotlivými variantami lidově nazvaného „á–ýčka“ spočívaly v existenci či neexistenci přídavných osmibitových paralelních portů). Tato společnost ovšem ve stejné době vyráběla i mnoho dalších zvukových čipů a zajímavé je, že jádro YM2149 se dodnes používá v dalších integrovaných obvodech určených pro video hry nebo mobilní telefony. Jedná se především o čip YM-2203 (označovaný též zkratkou OPN), který původní AY-3–8910 rozšiřuje o frekvenční modulaci. Integrované obvody řady AY-3–8910/YM2149 nebyly využívány pouze v herní konzoli Vectrex, ale najdeme je taktéž v osmibitovém počítači ZX Spectrum 128k, herní konzoli Intellivision, některých herních automatech a v neposlední řadě taktéž v osobních počítačích Atari ST. Není tedy divu, že je tento čip stále populární (a to v poměrně velké komunitě) a vznikají pro něj nové skladby (chiptunes), podobně jako pro konkurenční čip SID (Commodore C64) či POKEY (Atari 5200, Atari 800/130 XL/XE).

Obrázek 13: Zapojení pinů zvukového čipu AY-3–8910. Kromě dvou vstupně/výstupních osmibitových portů na obrázku vidíme i piny určené pro připojení obvodu k adresové a datové sběrnici počítače, vstup pro hodinový signál (z něho jsou odvozeny všechny frekvence zvukových generátorů, generátoru šumu i generátoru obálky) a analogové výstupy všech tří zvukových kanálů.

Již v předchozím odstavci jsme se zmínili o tom, že zvukový čip AY-3–8910 byl vyráběn ve více variantách. Tyto varianty, které byly rozlišovány poslední číslicí AY-3–8910, AY-3–8912 a AY-3–8913, se však nelišily způsobem generování zvuků (funkční bloky pro práci se zvukem zůstávaly nezměněné), ale především počtem osmibitových vstupně/výstupních portů ovládaných přes řídicí registry. AY-3–8910 se totiž v některých počítačích či herních konzolích používal kromě práce se zvuky a hudbou také pro ovládání dalších zařízení; mohl například pracovat jako jednoduchý programově řízený paralelní port, rozhraní pro připojení digitálních joysticků, přepínač mezi bankami operační paměti atd. Počítače či herní konzole, které pro ovládání dalších zařízení využívaly jiný obvod (například Intel 8255 či obvod 6522 v případě dnes popisované herní konzole Vectrex), tak obsahovaly buď nejmenší a samozřejmě i nejlevnější čtyřiadvaceti­pinovou variantu AY-3–8913, popř. osmadva­cetipinovou variantu AY-3–8912 (právě tato varianta byla mezi výrobci počítačů a taktéž herních konzolí nejpopulárnější).

Obrázek 14: Fotografie herní konzole Vectrex.

Základní vlastnosti všech tří variant zvukového čipu AY jsou vypsány v následující tabulce:

Označení čipu Počet osmibitových I/O portů Počet pinů
AY-3–8910 2 40 (pouzdro DIL)
AY-3–8912 1 28 (pouzdro DIL)
AY-3–8913 žádný 24 (pouzdro DIL)

Obrázek 15: Osobní počítač Atari 520ST osazený „á-ýčkem“.

6. Vlastnosti čipu AY-3–8912

Čip AY-3–8910 i všechny jeho varianty používá pro tvorbu zvuků a hudby tři samostatně nastavitelné tónové generátory, které produkují obdélníkové signály o zadané frekvenci (rozsah je 8 oktáv, každý kanál obsahuje dvanáctibitový dělič), jenž jsou dále zpracovávány. Každý tónový generátor vytváří zdroj zvukového signálu pro jeden ze zvukových kanálů – celkem jsou tedy k dispozici tři zvukové kanály, přičemž výstup každého z kanálů je vyveden na samostatný pin. Jedná se o analogový výstup, na který lze například přímo zapojit zesilovač. To je ovšem velmi netypické zapojení, u většiny ostatních zvukových čipů jsou zvuky z jednotlivých kanálů namixovány přímo na čipu do jednoho výstupu; na druhou stranu je však možné velmi jednoduše i s pomocí pouze jediného AY-3–8910 vytvářet stereo hudbu. Kromě tónových generátorů je možné použít i generátor šumu, jehož výstup lze přivést do zvoleného (či zvolených) zvukových kanálů. Generátor šumu se často používá například pro napodobení zvuku perkusních nástrojů, podobně jako tomu je u již zmíněného zvukového čipu POKEY a taktéž SID.

Obrázek 16: Herní automat se hrou Spy Hunter, o níž jsme se již v tomto seriálu při jiné příležitosti zmiňovali, byl vybaven dvojicí čipů AY-3–8910.

Obdélníkový signál vytvářený v tónových generátorech lze upravit pomocí takzvané obálky, která je však generována poněkud odlišným způsobem, než v případě čipu SID (u SIDu je použita obálka typu ADSR – attack, decay, sustain, release). Obálka má u AYčka tvar digitalizovaného periodického nebo neperiodického pilového či trojúhelníkového signálu. Taktéž je možné obálku ovládat programově, což vlastně znamená, že se pomocí zápisu do jednoho z řídicích registrů mění amplituda generovaného obdélníkového signálu. Na výstupu se nachází nelineární digitálně/analogový převodník, který slouží k převodu čtyřbitové hodnoty získané modifikací obdélníkového signálu obálkou na napěťovou úroveň v rozsahu do 1,35 Voltů (při zatížení analogového výstupu obvodem s odporem 1 kΩ). Díky nelineárnímu D/A převodníku se signál s původně lichoběžníkovým průběhem (výsledek změny amplitudy obdélníkového signálu pomocí obálky) mění na signál se „špičkami“, které dodávají hudbě vytvářené na čipu AY-3–8910 typické zabarvení, které se snaží s větším či menším úspěchem napodobovat i emulátory.

Obrázek 17: JAM – přehrávač hudby vytvořené původně pro čip AY.

Na osmnáctém obrázku je zobrazeno blokové schéma zvukového čipu AY-3–8910. Na tomto schématu můžeme v horní části vidět piny, pomocí kterých se AY připojoval k adresové a datové sběrnici počítače (předpokládá se, že se používá osmibitová datová sběrnice multiplexovaná s dolními osmi bity sběrnice adresové). Na vstupy BDIR, BC1 a BC2 mohou být připojeny řídicí signály, na piny DA0DA7 se připojují multiplexované adresové a datové vodiče a vstupy A8 a !A9 slouží pro výběr čipu (to, zda jsou přímo zapojeny na adresovou sběrnici, či zda je před nimi předřazen dekodér, je již závislé na architektuře počítače). Vstupně výstupní osmibitové porty jsou vyvedeny na piny IOA0IOA7 (první port) a IOB0IOB7 (druhý port). Posledními digitálními vstupy jsou CLOCK (hodiny, od nichž jsou odvozeny frekvence generovaných tónů) a !SEL (zamknutí hodin). Na poslední tři piny označené ANALOG A, ANALOG B a ANALOG C jsou vyvedeny výstupy ze všech tří zvukových kanálů. Tyto výstupy buď mohou být přivedeny do jednoho zesilovače (mono zvuk) nebo do více zesilovačů (stereo zvuk, tři hlasy).

Obrázek 18: Blokové schéma zvukového čipu AY-3–8910.

Užitečné odkazy týkající se zvukového čipu AY-3–8910/8912:

  1. General Instrument AY-3–8910,
    http://en.wiki­pedia.org/wiki/Ge­neral_Instrumen­t_AY-3–8910
  2. AY programy, hudba, etc.,
    http://bulba.un­tergrund.net/ma­in_e.htm
  3. Project AY,
    http://www.wor­ldofspectrum.or­g/projectay/
  4. AY Players,
    http://www.wor­ldofspectrum.or­g/projectay/a­yplayers.htm
  5. Chiptune,
    http://en.wiki­pedia.org/wiki/Chip­tune
  6. SNDH – Atari ST YM2149 Archive,
    http://sndh.a­tari.org/
  7. 8bitcollective,
    http://www.8bit­collective.com/
  8. Chiptune,
    http://www.chip­tune.com/
  9. STsndplay,
    http://www.no­crew.org/softwa­re-stsndplay.html
  10. Jam for Windows (Just Another Musicplayer),
    http://creamhq­.de/
  11. SND Player,
    http://sndpla­yer.atari.org/
  12. AY Hudba,
    http://www.dmoz­.org/Computer­s/Multimedia/Mu­sic_and_Audio/Au­dio_Formats/A­Y/

7. Grafický subsystém: řadič vektorového displeje

Použití mikroprocesoru Motorola MC6809 a současně zvukového čipu AY-3–8912 je sice v oblasti osmibitových herních konzolí poněkud neobvyklý počin, ovšem nejvýrazněji se tato konzole od veškeré konkurence odlišila v použití vektorového displeje. Samotný termín „vektorový displej“ je možná poněkud zavádějící, protože se jednalo o poměrně běžnou obrazovku (CRT) typu Samsung 240RB40 o rozměrech stínítka přibližně 8×11 palců. Neobvyklé ovšem bylo ovládání této obrazovky, protože se namísto rozmítání elektronového paprsku po jednotlivých řádcích s využitím dvojice pilových signálů (jak je to běžné u televizorů a monitorů s CRT) bylo horizontální i vertikální vychylování paprsku řízeno přímo herní konzolí pomocí dvojice lineárních interpolátorů vytvořených s využitím integračních článků. Taktéž intenzita elektronového paprsku a tím pádem i intenzita zobrazené stopy na stínítku byla řízena konzolí, což znamenalo, že bylo možné zobrazovat 2D a 3D objekty složené z úsečkových segmentů (teoreticky sice bylo možné pracovat i s křivkami, zde však nedostačoval potřebný výpočetní výkon i rychlost integračních článků).

Obrázek 19: První část zapojení řízení displeje herní konzole Vectrex. Na levé straně je zobrazen D/A převodník, jehož výstup je přes operační zesilovač přiveden do analogového přepínače.

Schema zapojení obvodů použitých pro řízení elektronového paprsku je zobrazeno na obrázku číslo 19 a 20. Základem je digitálně-analogový převodník MC1408, jehož výstupní signál je přes operační zesilovač přiváděn do analogového přepínače CD4052. Tři výstupy tohoto přepínače slouží pro řízení elektronového paprsku v horizontálním směru, ve vertikálním směru a taktéž k ovládání jeho intenzity. Analogové úrovně pro změnu horizontálního a vertikálního směru paprsku jsou přiváděny na integrační články, které paprsek postupně přesouvají do požadované pozice na obrazovce. Vzhledem k tomu, že se paprsek většinou po dosažení této pozice na chvíli zastaví, tvoří se na stínítku typické stopy v místech, kde dochází ke styku dvou úsečkových segmentů, popř. v místech začátku a konce segmentů. I tento (mimochodem velmi pěkný efekt) se mnoho emulátorů snaží napodobit, i když to samozřejmě není na rastrové obrazovce stoprocentně možné.

Obrázek 20: Druhá část zapojení řízení displeje herní konzole Vectrex. Ve střední části jsou zobrazeny oba integrační články pracující jako lineární interpolátory.

root_podpora

Ve firmware byly programátorům k dispozici rutiny umožňující vykreslení buď sekvence na sebe navazujících úseček, nebo též prakticky libovolného obrazce popsaného příkazy typu MOVETO a LINETO. Tyto rutiny vyžadovaly seznam souřadnic (dvojic) resp. seznam příkazů+souřadnic (trojic), který byl rutinou zpracován co nejrychlejším způsobem, aby se zamezilo poblikávání obrazce.

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

V následující části tohoto seriálu se zaměříme na popis emulátorů konzole Vectrex a taktéž si ukážeme některé hry, které pro tuto konzoli vznikly, a to jak v minulosti (komerční tituly), tak i v současnosti (hry vznikající na amatérské bázi, které jsou mnohdy lepší než komerční tituly).

9. Odkazy na Internetu

  1. Vectrex System History – The Mini Arcade
    http://vectrex­museum.com/vec­trexhistory.php
  2. GCE Vectrex: unique system, unique subculture. Part 2. Unique subculture
    http://lady-eklipse.livejou­rnal.com/
  3. Novinky.org: PSPVE v1.0.2 (Emulátor konzole Vectrex)
    http://psp.no­vinky.org/view­.php?cisloclan­ku=2008060010
  4. 3 Generations of Game Machine Architecture
    http://www.ata­riarchives.or­g/dev/CGEXPO99­.html
  5. Atari 5200
    http://www.ata­riage.com/sof­tware_search.html?Sys­temID=5200
  6. Atari 5200 Hardware and Accessories
    http://www.ata­riage.com/5200/ar­chives/hardwa­re.html
  7. Atari 5200 Screenshots
    http://www.ata­riage.com/sys­tem_items.html?Sys­temID=5200&Item­TypeID=SCREEN­SHOT
  8. History of video game consoles (second generation): Wikipedia
    http://en.wiki­pedia.org/wiki/His­tory_of_video_ga­me_consoles_(se­cond_generati­on)
  9. Atari 5200: Wikipedia
    http://en.wiki­pedia.org/wiki/A­tari_5200
  10. 6502 – the first RISC µP
    http://ericcle­ver.com/6500/
  11. The Video Game Console Library: Fairchild Channel F
    http://www.vi­deogameconsole­library.com/pg70-fairchild.htm
  12. Jerry Lawson
    http://www.vin­tage.org/2006/ma­in/bio.php?id=1586
  13. Fairchild Semiconductor F8
    http://www.nyx­.net/~lturner/pu­blic_html/F8_in­s.html
  14. Fairchild Channel F 101: A Beginner's Guide
    http://www.rac­ketboy.com/re­tro/fairchild-channel-f-101-a-beginners-guide
  15. Lowell O. Turner: This old microprocessor
    http://www.nyx­.net/~lturner/pu­blic_html/OldCPU­.html
  16. VC&G Interview: Jerry Lawson, Black Video Game Pioneer
    http://www.vin­tagecomputing­.com/index.php/ar­chives/545
  17. Fairchild Channel F
    http://en.wiki­pedia.org/wiki/Fa­irchild_Channel_F
  18. The Great CPU List Part II: Fairchild F8, Register windows
    http://jbayko­.sasktelwebsi­te.net/cpu2.html#Sec2Par­t2
  19. Fairchild F8
    http://en.wiki­pedia.org/wiki/Fa­irchild_F8
  20. 6+ Nostalgic Emulators For Vintage Video Gaming Enthusiasts (1972–1980)
    http://www.ma­keuseof.com/tag/6-nostalgic-emulators-vintage-video-gaming-enthusiasts-19721980/
  21. Channel F
    http://www.gi­antbomb.com/chan­nel-f/60–66/
  22. MESS Wiki
    http://www.mes­s.org/
  23. O2 Homepage
    http://www.the-nextlevel.com/o­dyssey2/
  24. Magnavox Odyssey2 (1978), Philips Videopac G7000 / C52 (1979)
    http://www.mes­s.org/sysinfo:o­dyssey2
  25. The Video Game Critic's Odyssey 2 Reviews
    http://videoga­mecritic.net/od­d.htm
  26. Computer Closet Collection: Magnavox Odyssey2
    http://www.com­putercloset.or­g/MagnavoxOdys­sey2.htm
  27. PHILIPS Videopac C52
    http://old-computers.com/mu­seum/computer­.asp?c=1060
  28. O2 Tech. Manual V.1.1 (PDF dokument)
    http://www.ata­rihq.com/danb/fi­les/o2doc.pdf
  29. Magnavox Odyssey2
    http://www.game-machines.com/con­soles/odyssey2­.php
  30. Magnavox Odyssey2 (Wikipedia EN)
    http://en.wiki­pedia.org/wiki/O­dyssey2
  31. Magnavox Odyssey2 Games (Wikipedia EN)
    http://en.wiki­pedia.org/wiki/Lis­t_of_Videopac_ga­mes
  32. The FPGA Videopac Project
    http://www.fpga­arcade.com/vi­deopac.htm
  33. Last minute addition: Odyssey 2 (P824×) VDC chip!
    http://ploguechip­sounds.blogspot­.com/2009/10/last-minute-addition-odyssey-2-p824×.html
  34. Space Invaders (Killer List of Video Games)
    http://www.arcade-museum.com/ga­me_detail.php?ga­me_id=9662
  35. Spy Hunter (Killer List of Video Games)
    http://www.arcade-museum.com/ga­me_detail.php?ga­me_id=9742
  36. Spy Hunter (Wikipedia)
    http://en.wiki­pedia.org/wiki/Spy_Hun­ter
  37. DP Interviews … Bob Whitehead
    http://www.di­gitpress.com/li­brary/intervi­ews/interview_bob_whi­tehead.html
  38. Atari Age: Video Chess
    http://www.ata­riage.com/sof­tware_page.html?Sof­twareID=1429
  39. Moby Games: Video Chess
    http://www.mo­bygames.com/ga­me/video-chess
  40. Wikipedia: Video Chess
    http://en.wiki­pedia.org/wiki/Vi­deo_Chess
  41. The Video Game Critic's Atari 2600 Reviews A
    http://videoga­mecritic.net/2600a­a.htm
  42. Classic gaming: Atari 2600 – Bezerk
    http://classic­gaming.gamespy­.com/View.php?vi­ew=GameMuseum­.Detail&id=13
  43. Classic gaming: Atari 2600 – E.T. the Extra-Terrestrial
    http://classic­gaming.gamespy­.com/View.php?vi­ew=GameMuseum­.Detail&id=290
  44. The Video Game Critic's Reviews With „ET“ Icon
    http://videoga­mecritic.net/i­con_ET.htm
  45. Atari 2600 ROMs
    http://www.ata­riage.com/sys­tem_items.html?Sys­temID=2600&Item­TypeID=ROM
  46. Atari 2600 ROMs – #, A through E (582K)
    http://www.ata­riage.com/2600/e­mulation/RomPac­ks/Atari2600_A-E.zip
  47. Atari 2600 ROMs – F through J (298K)
    http://www.ata­riage.com/2600/e­mulation/RomPac­ks/Atari2600_F-J.zip
  48. Atari 2600 ROMs – K through P (432K)
    http://www.ata­riage.com/2600/e­mulation/RomPac­ks/Atari2600_K-P.zip
  49. Atari 2600 ROMs – Q through S (539K)
    http://www.ata­riage.com/2600/e­mulation/RomPac­ks/Atari2600_Q-S.zip
  50. Atari 2600 ROMs – T through Z (260K)
    http://www.ata­riage.com/2600/e­mulation/RomPac­ks/Atari2600_T-Z.zip
  51. Top 10 Best-Selling Atari 2600 Games
    http://retro.ig­n.com/articles/903/903­024p1.html
  52. Top 100 Games Hits (past week) Atari 2600 VCS
    http://www.ata­rimania.com/top-atari-atari-2600-vcs-_G2_7.html
  53. Visitor Top 25 Total Downloads
    http://www.ata­rimania.com/pge­mainsoft.awp?ty­pe=G&system=2
  54. Atari 2600 FAQ
    http://www.ata­riage.com/2600/fa­q/index.html
  55. Atari 2600 Consoles and Clones
    http://www.ata­riage.com/2600/ar­chives/consoles­.html
  56. Atari 2600 Programming (odkazy)
    http://www.ata­riage.com/2600/pr­ogramming/index­.html
  57. Design case history: the Atari Video Computer System
    http://www.ata­riage.com/2600/ar­chives/design_ca­se.html?Syste­mID=2600
  58. Atari 2600 (Wikipedia)
    http://en.wiki­pedia.org/wiki/A­tari_2600
  59. Schémata zapojení Atari 2600 (překresleno)
    http://www.ata­riage.com/2600/ar­chives/schema­tics_pal/index­.html
  60. Schémata zapojení Atari 2600 (skeny původních schémat)
    http://www.vin­tagegamingandmo­re.com/atari-2600-schematics
  61. Adventure for the Atari 2600 Video Game Console by Warren Robinett
    http://www.wa­rrenrobinett.com/ad­venture/index­.html
  62. Mapa hry Adventure
    http://www.wa­rrenrobinett.com/ad­venture/adv-map1.gif
  63. Jay Glenn Miner Interview Pasadena, September 1992
    http://www.ra­bayjr.com/jay_mi­ner.htm
  64. Magnavox and the Odyssey systems
    http://www.pong-story.com/odys­sey_other.htm
  65. Magnavox Odyssey First home video game console
    http://www.pong-story.com/odys­sey.htm
  66. The Odyssey in France
    http://www.pong-story.com/ody­pubfr.htm
  67. Magnavox Odyssey at old-computers.org
    http://www.old-computers.com/mu­seum/photos.as­p?t=1&c=883&st=2
  68. Magnavox Odyssey Series (Wikipedia)
    http://en.wiki­pedia.org/wiki/Mag­navox_Odyssey_Se­ries
  69. MAGNAVOX ODYSSEY (1971)
    http://balduin­.wordpress.com/2007/10­/15/magnavox-odyssey-1971/
  70. Magnavox Odyssey FAQ
    http://www.pong-story.com/o1faq­.txt
  71. Richard Hewison – Level 9: Past masters of the adventure game
    http://www.sin­clairlair.co.uk/le­vel9.htm
  72. Level 9 Computing
    http://en.wiki­pedia.org/wiki/Le­vel9
  73. Worm in Paradise – Level 9 (CZ recenze)
    http://sincla­irzxspectrum.cz/sof­tware/recenze/wor­m_in_paradise­.php
  74. World of Spectrum: Jewels of Darkness
    http://www.wor­ldofspectrum.or­g/infoseekid.cgi?id=0011­293
  75. World of Spectrum: Hry společnosti Level 9
    http://www.wor­ldofspectrum.or­g/infoseekpub­.cgi?regexp=^Le­vel+9+Computin­g+Ltd$&loadpic­s=1
  76. Adventure International
    http://en.wiki­pedia.org/wiki/Ad­venture_Inter­national
  77. Stránky o firmě Infocom a jejích hrách
    http://www.csd­.uwo.ca/Infocom/
  78. atari.fandal.cz
    http://atari.fan­dal.cz/games.php
  79. Zork I: The Great Underground Empire (Moby games)
    http://www.mo­bygames.com/ga­me/dos/zork-the-great-underground-empire/review­s/reviewerId,4465/
  80. Zork I (Wikipedia)
    http://en.wiki­pedia.org/wiki/Zor­k_I
  81. Zork I Walkthrough
    http://www.ga­mefaqs.com/pc/5644­46-zork-i/faqs
  82. Zork I: The Great Underground Empire
    http://www.csd­.uwo.ca/Infocom/zor­k1.html
  83. Zork II: The Wizard of Frobozz (Moby games)
    http://www.mo­bygames.com/ga­me/dos/zork-ii-the-wizard-of-frobozz
  84. Zork II (Wikipedia)
    http://en.wiki­pedia.org/wiki/Zor­k_II
  85. Zork II: The Wizard of Frobozz
    http://www.csd­.uwo.ca/Infocom/zor­k2.html
  86. Zork III: The Dungeon Master (Moby games)
    http://www.mo­bygames.com/ga­me/zork-iii-the-dungeon-master
  87. Zork III (Wikipedia)
    http://en.wiki­pedia.org/wiki/Zor­k_III
  88. SAGA – Scott Adams Grand Adventure
    http://www.msa­dams.com/index­.htm
  89. Player 4 Stage 1: The Productivity Eaters
    http://www.the­doteaters.com/p4_sta­ge1.php
  90. Textovky.cz – Textovkářův ráj
    http://www.tex­tovky.cz/
  91. Scott Adams (game designer, Wikipedia)
    http://en.wiki­pedia.org/wiki/Scot­t_Adams_(game_de­signer)
  92. Interview with Scott Adams (Adventure Classic Gaming)
    http://www.ad­ventureclassic­gaming.com/in­dex.php/site/in­terviews/129/
  93. Scott Adams game interpreter
    http://www.ifar­chive.org/inde­xes/if-archiveXscott-adamsXinterpre­ters.html
  94. Ohlédnutí za herní historií: Textovky
    http://www.slu­necnice.cz/ti­py/ohlednuti-za-herni-historii-textovky/
  95. BASIC Computer Games (published 1978) – Hammurabi
    http://atariar­chives.org/ba­sicgames/show­page.php?page=78
  96. Hamurabi – zdrojový kód v BASICu
    http://www.dun­nington.u-net.com/public/ba­sicgames/HMRA­BI
  97. Hamurabi (Wikipedia)
    http://en.wiki­pedia.org/wiki/Ha­murabi
  98. Hammurabi naprogramovaný v JavaScriptu
    http://www.ham­murabigame.com/ham­murabi-game.php
  99. Empire – hratelné demo (připojení přes telnet)
    http://198.212­.189.111/
  100. Empire Classic (video game)
    http://en.wiki­pedia.org/wiki/Em­pire_Classic_(com­puter_game)
  101. Wolfpack empire (moderní verze hry Empire)
    http://www.wol­fpackempire.com/de­fault.htm
  102. FOCAL (programming language, Wikipedia)
    http://en.wiki­pedia.org/wiki/FO­CAL_(programmin­g_language)
  103. Forty Years of Lunar Lander
    http://techno­logizer.com/2009/07­/19/lunar-lander/
  104. Category: Timelines of video games (Wikipedia)
    http://en.wiki­pedia.org/wiki/Ca­tegory:Timeli­nes_of_video_ga­mes
  105. Dennis M. Ritchie – home page
    http://cm.bell-labs.com/who/dmr­/index.html
  106. Space Travel: Exploring the solar system and the PDP-7
    http://cm.bell-labs.com/who/dmr­/spacetravel.html
  107. Yes, A video game contributed to Unix Development
    http://people­.fas.harvard.e­du/~lib215/re­ference/histo­ry/spacetravel­.html
  108. Space Travel (video game)
    http://en.wiki­pedia.org/wiki/Spa­ce_Travel_(vi­deo_game)
  109. Computer and Video Game History
    http://inventor­s.about.com/li­brary/inventor­s/blcomputer_vi­deogames.htm
  110. OXO (Wikipedia)
    http://en.wiki­pedia.org/wiki/O­XO
  111. Tennis for Two (Wikipedia)
    http://en.wiki­pedia.org/wiki/Ten­nis_for_Two
  112. Who really invented the video game?
    http://www.ata­rimagazines.com/cva/v1n­1/inventedgames­.php
  113. The Video Game Revolution
    http://www.pbs­.org/kcts/vide­ogamerevoluti­on/history/ti­meline.html
  114. The First Video Game?
    http://www.bnl­.gov/bnlweb/his­tory/higinbot­ham.asp
  115. První část schématu analogového „počítače“ se hrou Tennis for Two:
    http://www.bnl­.gov/bnlweb/his­tory/images/Vi­deogameSchema­tic1.jpg
  116. Druhá část schématu analogového „počítače“ se hrou Tennis for Two:
    http://www.bnl­.gov/bnlweb/his­tory/images/Vi­deogameSchema­tic2.jpg
  117. MUD (stránka jednoho z tvůrců hry)
    http://www.mud­.co.uk/richar­d/mud.htm
  118. MUD1 (Wikipedia)
    http://en.wiki­pedia.org/wiki/MUD1
  119. Text-based game (Wikipedia)
    http://en.wiki­pedia.org/wiki/Text-based_game
  120. Text mode games
    http://www.tex­tmodegames.com/
  121. Why Text-Mode Games are Cool
    http://www.tex­tmodegames.com/ar­ticles/why-text-mode-games-are-cool.html
  122. The Dragon Ate My Homework
    http://www.wi­red.com/wired/ar­chive/1.03/mud­s.html
  123. Hunt the Wumpus
    http://en.wiki­pedia.org/wiki/Hun­t_the_Wumpus
  124. A Brief History of „Rogue“
    http://www.wichman­.org/roguehis­tory.html
  125. Rogue (video game) (Wikipedia)
    http://en.wiki­pedia.org/wiki/Ro­gue_(computer_ga­me)
  126. Roguish Charm
    http://www.1up­.com/features/es­sential-50-rogue
  127. Colossal Cave Adventure Map
    http://www.spi­tenet.com/cave/
  128. Colossal Cave Adventure
    http://www.ric­kadams.org/ad­venture/
  129. Here's where it all began…
    http://www.ric­kadams.org/ad­venture/a_his­tory.html
  130. David Kinder's guide to Adventure downloads at the Interactive Fiction Archive
    http://www.ric­kadams.org/ad­venture/e_dow­nloads.html
  131. Everything you ever wanted to know about …the magic word XYZZY
    http://www.ric­kadams.org/ad­venture/c_xyz­zy.html
  132. Colossal Cave Adventure jako Java Applet
    http://www.as­trodragon.com/zplet/ad­vent.html
  133. Colossal Cave Adventure
    http://en.wiki­pedia.org/wiki/Co­lossal_Cave_Ad­venture
  134. iPod Adventure Game
    http://hamimi­ami.com/ipod/ad­venture/index­.html

Byl pro vás článek přínosný?