Barevný grafický adaptér - Color Graphics Adapter

Adaptér pro barevnou grafiku
IBM Color Graphics Adapter.jpg
Grafická karta IBM CGA
Datum vydání 1981 ; Před 40 lety ( 1981 )
Architektura Motorola 6845 , ATI CW16800
Karty
Vstupní úroveň IBM Color Graphics Adapter, ATi Graphics Solution Rev 3, ATi Color Emulation Card, Tseng Labs ColorPAK,
Střední rozsah ATi Graphics Solution plus, ATi Graphics Solution Plus SP, ATi Graphics Solution SR, Number Nine Graphics System
High-end Grafické řešení ATi Small Wonder, Tseng Labs EVA/480
Nadšenec Grafické řešení ATi Small Wonder s herním portem
Dějiny
Nástupce

Color Graphics Adapter ( CGA ), původně nazývaný také Color / Graphics Adapter nebo IBM Color / Graphics Adapter Monitor , který byl zaveden v roce 1981, byla IBM je první barevná grafická karta pro IBM PC a vytvořila de facto standardem displeje počítače .

Hardware design

Originální IBM CGA grafická karta byla postavena kolem Motorola 6845 řadiče displeje, přišel s 16  kilobajtů z videopaměti postaven v roce, a představoval několik grafických a textových režimech . Nejvyšší rozlišení displeje ze všech režimů bylo 640 × 200 a nejvyšší podporovaná barevná hloubka byla 4bitová (16 barev).

CGA karta by mohla být buď připojeny k přímým záběrem CRT monitoru s použitím 4-bitový digitální ( TTL ) RGBI rozhraní, jako je například IBM 5153 barevný displej, nebo na NTSC Kompatibilní televize nebo kompozitní video monitoru přes konektor RCA . Konektor RCA poskytoval pouze video v základním pásmu, takže pro připojení CGA karty k televizoru bez kompozitního video vstupu byl zapotřebí samostatný RF modulátor .

IBM vyrobila barevný displej 5153 pro osobní počítač pro použití s ​​CGA, ale ten nebyl při vydání k dispozici a byl by vydán až v březnu 1983.

Přestože vlastní barevný displej IBM nebyl k dispozici, zákazníci mohli použít buď kompozitní výstup (v případě potřeby s RF modulátorem), nebo výstup s přímým pohonem s dostupnými monitory třetích stran, které podporovaly formát RGBI a rychlost skenování. Některé displeje třetích stran postrádaly vstup intenzity, čímž se snížil počet dostupných barev na osm, a mnoho také postrádalo jedinečné obvody IBM, které vykreslovaly tmavě žlutou barvu jako hnědou, takže jakýkoli software, který používal hnědou, by se zobrazoval nesprávně.

Možnosti výstupu

CGA nabídla několik režimů videa.

Grafické režimy:

  • 160 × 100 v 16 barvách, vybráno z palety 16 barev, s využitím specifické konfigurace textového režimu 80 × 25.
  • 320 × 200 ve 4 barvách, vybráno ze 3 pevných palet, s variantami s vysokou a nízkou intenzitou, přičemž barva 1 je vybrána z palety 16 barev.
  • 640 × 200 ve 2 barvách, jedna černá, jedna vybraná z palety 16 barev.

Některý software dosáhl větší barevné hloubky využitím barvy artefaktu při připojení ke kompozitnímu monitoru.

Režimy textu:

  • 40 × 25 s 8 × 8 pixelovým písmem (efektivní rozlišení 320 × 200)
  • 80 × 25 s 8 × 8 pixelovým písmem (efektivní rozlišení 640 × 200)

IBM zamýšlela kompatibilitu CGA s domácím televizním přijímačem. Grafické režimy 40 × 25 text a 320 × 200 jsou použitelné s televizorem a grafické režimy 80 × 25 text a 640 × 200 jsou určeny pro monitor.

Paleta barev

CGA používá 16barevný gamut, ale ne všechny barvy jsou vždy k dispozici, v závislosti na používaném grafickém režimu. V režimech středního a vysokého rozlišení jsou barvy ukládány v nižší bitové hloubce a vybírány pomocí indexů pevné palety, nikoli přímým výběrem z celé palety 16 barev.

Když jsou použity čtyři bity (pro režim s nízkým rozlišením nebo pro programování barevných registrů), jsou uspořádány podle barevného modelu RGBI :

  • Dolní tři bity představují červené, zelené a modré barevné složky
  • Čtvrtý bit „zesilovače“ po nastavení zvyšuje jas všech tří barevných složek (červené, zelené a modré).
Plná CGA 16-barevná paleta
0 černá
#000000
8 tmavě šedá
#555555
1 modrá
#0000AA
9 světle modrá
#5555FF
2 zelená
#00AA00
10 světle zelená
#55FF55
3 azurová
#00AAAA
11 světle azurová
#55FFFF
4 červená
#AA0000
12 světle červená
#FF5555
5 purpurová
#AA00AA
13 světle purpurová
#FF55FF
6 hnědá
#AA5500
14 žlutá
#FFFF55
7 světle šedá
#AAAAAA
15 bílá
#FFFFFF

S monitorem RGBI

Při použití monitoru s přímým pohonem jsou čtyři barevné bity vyvedeny přímo do konektoru DE-9 na zadní straně karty.

V monitoru jsou čtyři signály interpretovány tak, aby poháněly děla červené, zelené a modré barvy. S ohledem na výše popsaný barevný model RGBI by monitor použil ke zpracování digitálního čtyřbitového barevného čísla na analogová napětí v rozmezí od 0,0 do 1,0 přibližně následující vzorec:

red   := 2/3×(colorNumber & 4)/4 + 1/3×(colorNumber & 8)/8
green := 2/3×(colorNumber & 2)/2 + 1/3×(colorNumber & 8)/8
blue  := 2/3×(colorNumber & 1)/1 + 1/3×(colorNumber & 8)/8
tmavě žlutá
6 #AAAA00

S barvou 6 se zachází odlišně; při použití výše uvedeného vzorce by barva 6 byla tmavě žlutá , jak je vidět vlevo, ale aby se dosáhlo příjemnějšího hnědého tónu, speciální obvody ve většině monitorů RGBI, počínaje barevným displejem IBM 5153, tvoří výjimku pro barvy 6 a změní svůj odstín z tmavě žluté na hnědou polovinou amplitudy analogového zeleného signálu.

Tato paleta „RGBI s vyladěnou hnědou“ byla zachována jako výchozí paleta pozdějších grafických standardů pro počítače, jako jsou EGA a VGA , které mohou vybírat barvy z mnohem větších gamutů, ale výchozí jsou do přeprogramování.

S kompozitním barevným monitorem/televizorem

16 barev CGA při použití výstupu NTSC (revize karty po roce 1983)

Pro kompozitní výstup jsou tato čtyřbitová barevná čísla kódována integrovaným hardwarem CGA do signálu kompatibilního s NTSC přiváděného do výstupního konektoru RCA karty. Z nákladových důvodů se to nedělá pomocí převaděče RGB na YIQ, jak to požaduje standard NTSC, ale řadou klopných obvodů a zpožďovacích linek.

V důsledku toho postrádané odstíny postrádají čistotu; azurová i žlutá mají zejména nazelenalý odstín a barva 6 opět vypadá tmavě žlutá místo hnědé.

Relativní jas barev vytvořených kompozitním obvodem vytvářejícím barvy se mezi revizemi CGA liší: jsou shodné pro barvy 1-6 a 9-14 s časnými CGA vyráběnými do roku 1983 a liší se pro pozdější CGA díky přidání dalších odpory.

Jak však bylo uvedeno, tato metoda funguje pouze na televizorech NTSC. Televizory PAL při připojení ke kompozitnímu výstupu nezobrazují barvy podle očekávání, protože oddělení barev PAL brání vzniku artefaktů.

Standardní textové režimy

CGA nabízí čtyři textové režimy BIOS (v dokumentaci IBM nazývané alfanumerické nebo A/N režimy). V těchto režimech nelze jednotlivé pixely na obrazovce adresovat přímo. Místo toho je obrazovka rozdělena na mřížku buněk znaků, z nichž každá zobrazuje znak definovaný v jednom ze dvou bitmapových písem, „normálních“ a „tenkých“, obsažených v ROM karty. Písma jsou pevná a nelze je upravovat ani vybírat ze softwaru, pouze propojkou na desce samotné.

Písma jsou uložena jako bitmapy v barevné hloubce 1 bit, přičemž „1“ představuje znak a „0“ představuje pozadí. Tyto barvy lze vybrat nezávisle pro každý znak na obrazovce z celé 16barevné palety CGA. Znaková sada je definována hardwarovou kódovou stránkou 437 .

Data bitmapy písma jsou k dispozici pouze pro samotnou kartu, CPU je nemůže přečíst. V grafických režimech funguje textový výstup systému BIOS zkopírováním textu z ROM ROM bitů po bitu do grafické paměti.

Režim 40 × 25

40 sloupců po 25 řádcích, u každého znaku vzor 8 × 8 bodů. Efektivní rozlišení obrazovky v tomto režimu je 320 × 200 pixelů ( poměr stran pixelu 1: 1,2.) Karta má dostatečnou video RAM pro osm různých textových stránek v tomto režimu.

Režimy BIOS 0 a 1 jsou 40 textových režimů sloupců. Rozdíl mezi těmito dvěma režimy je vidět pouze na kompozitním monitoru, kde režim 0 deaktivuje sekvenci barev, takže se veškerý text zobrazí ve stupních šedi. Režim 1 povoluje dávkování barev a umožňuje barvy. Režim 0 a režim 1 jsou funkčně totožné na monitorech RGB a na pozdějších adaptérech, které emulují CGA, aniž by podporovaly kompozitní barevný výstup.

Režim 80x25

80 sloupců po 25 řádcích, přičemž každý znak má stále vzor bodů 8 × 8, ale zobrazuje se při vyšší rychlosti skenování. Efektivní rozlišení obrazovky v tomto režimu je 640 × 200 pixelů. V tomto režimu má karta dostatek paměti RAM pro čtyři různé textové stránky.

Režimy BIOS 2 a 3 vybírají 80 textových režimů sloupců. Stejně jako u textových režimů se 40 sloupci režim 2 zakazuje sekvenční signál v kompozitním signálu a režim 3 jej povoluje.

Barva textového režimu

Každá buňka znaků uložila čtyři bity pro barvu popředí a pozadí. Ve výchozí konfiguraci karet však čtvrtý bit barvy pozadí nenastavuje intenzitu, ale nastavuje atribut blikání pro buňku. Všechny znaky na obrazovce s touto sadou bitů budou pravidelně blikat, což znamená, že jejich barva popředí se změní na barvu pozadí, takže se postava stane neviditelnou. Všechny postavy souběžně blikají.

Nastavením hardwarového registru lze funkci blikání deaktivovat a obnovit tak přístup k vysoce intenzivním barvám pozadí.

Všechny blikající znaky na obrazovce synchronizovaně blikají. Efekt blikajícího atributu je ve výchozím nastavení povolen a efekt pozadí s vysokou intenzitou je deaktivován; deaktivace blikání je jediný způsob, jak volně zvolit posledně uvedené osmbarevné indexy (8–15) pro barvu pozadí.

Je pozoruhodné, že GW-BASIC a Microsoft QBasic programovací jazyky dodávané s MS-DOS podporovány všechny textové režimy CGA s plnou kontrolu barev, ale neposkytl normálních prostředků prostřednictvím jazyka BASIC pro přepnutí z režimu CGA mrknutí do 16- režim barvy pozadí. To bylo stále možné, ale přímo programováním hardwarových registrů pomocí příkazu OUT jazyka BASIC.

Standardní grafické režimy

CGA nabízí grafické režimy ve třech rozlišeních: 160 × 100, 320 × 200 a 640 × 200. Ve všech režimech lze přímo nastavit každý pixel na obrazovce, ale barevná hloubka pro vyšší režimy neumožňuje libovolný výběr z celé palety 16 barev.

160x100

Titulní obrazovka PakuPaku, klonu Pac-Mana, který používá režim 160 × 100

Režim s nízkým rozlišením 160 × 100 je ve skutečnosti režim 40 × 25 znaků. Protože vestavěná ROM znaků obsahuje „grafické“ prvky, například znak, který má horní polovinu barevnou popředí a dolní polovinu barevnou barvu pozadí, a protože barvy popředí a pozadí lze v textovém režimu libovolně volit, ale lze dosáhnout plnobarevného grafického zobrazení.

320 × 200

V režimu 320 × 200 se středním rozlišením jsou každý pixel dva bity, které vybírají barvy ze čtyřbarevné palety. V režimu 4 jsou dvě palety a v režimu 5 je jedna paleta.

Hardwarové palety CGA
# Režim 4 Režim 5
Paleta 0 Paleta 1 nízká intenzita vysoká intenzita
nízká intenzita vysoká intenzita nízká intenzita vysoká intenzita
0 0 - pozadí 0 - pozadí 0 - pozadí 0 - pozadí 0 - pozadí 0 - pozadí
1 2 - zelená 10 - světle zelená 3 - azurová 11 - světle azurová 3 - azurová 11 - světle azurová
2 4 - červená 12 - světle červená 5 - purpurová 13 - světle purpurová 4 - červená 12 - světle červená
3 6 - hnědá 14 - žlutá 7 - světle šedá 15 - bílá 7 - světle šedá 15 - bílá

Programováním hardwarových registrů lze provést několik možností. Nejprve vybraná paleta. Za druhé, intenzita-která je definována pro celou obrazovku, nikoli na základě počtu pixelů. Za třetí, barvu 0 („barvu pozadí“) lze nastavit na libovolnou ze 16 barev.

Konkrétní grafický režim BIOS ovlivňuje, jaké palety jsou k dispozici. Režim BIOS 4 nabízí dvě palety: zelenou/červenou/hnědou a azurovou/purpurovou/bílou.

Stejně jako u textových režimů 0 a 2 režim 5 deaktivuje sekvenci barev, aby se barvy mohly na kompozitním monitoru zobrazovat ve stupních šedi. Na rozdíl od textových režimů to však také ovlivňuje barvy zobrazené na monitoru RGBI a mění je na výše uvedenou azurovou/červenou/bílou paletu. Tato paleta není dokumentována společností IBM, ale byla použita v některém softwaru.

V režimu 640 × 200 s vysokým rozlišením je každý pixel jeden bit a poskytuje dvě barvy, které lze vybrat z palety 16 barev programováním hardwarových registrů.

640 × 200

V tomto režimu je obraz videa uložen jako jednoduchá bitmapa, přičemž jeden bit na pixel nastavuje barvu na „popředí“ nebo „pozadí“. Ve výchozím nastavení jsou barvy černé a jasně bílé, ale barvu popředí lze změnit na libovolný záznam v 16barevné paletě CGA. Na původní kartě IBM CGA nelze změnit barvu pozadí z černé. Režim BIOS 6 nastavuje grafický režim 640 × 200. Tento režim ve výchozím nastavení deaktivuje signál složeného barevného shluku. Systém BIOS neposkytuje možnost zapnout sekvenci barev v režimu 640 × 200 a uživatel ji musí zapsat přímo do registru řízení režimů.

Další grafické režimy a vylepšení

Existuje řada oficiálních i neoficiálních funkcí, které lze využít k dosažení speciálních efektů.

  • V grafickém režimu 320 × 200 lze barvu pozadí (která také ovlivňuje barvu ohraničení), která je při inicializaci režimu výchozí pro černou, změnit na kteroukoli z dalších 15 barev palety CGA. To umožňuje určité variace a také blikající efekty, protože barvu pozadí lze změnit, aniž byste museli překreslovat obrazovku (tj. Beze změny obsahu video RAM).
  • V textovém režimu lze barvu ohraničení (zobrazenou mimo běžnou oblast zobrazení a včetně oblasti proskenování ) změnit z výchozí černé na kteroukoli z dalších 15 barev.
  • Přesné načasování umožňuje přepnout na jinou paletu během výstupu videa, což umožňuje použití jedné ze šesti palet na linii skenování. Příkladem toho jsou California Games , když běží na základní frekvenci 4,77 MHz 8088. Běh na rychlejším počítači nemá žádný účinek, protože metoda, kterou programátoři používali k přepínání palet na předem určených místech, je extrémně citlivá na rychlost stroje. Totéž lze provést s barvou pozadí, která se používá k vytvoření řeky a silnice ve Froggeru . Další zdokumentovaný příklad techniky je v Atarisoftově přístavu Jungle Hunt na PC.
  • Další barvy lze aproximovat pomocí rozkladu .
  • Použití palety 0 s nízkou intenzitou a tmavě modrou jako barvu pozadí poskytuje tři primární barvy RGB a také hnědé.

Některé z těchto výše uvedených vylepšení lze kombinovat. Příklady lze nalézt v několika hrách.

160 × 100 16 barevný režim

Jediný velký „pixel“ v režimu 160 × 100. Toto jsou dvě horní řady poloviny znaku 221. Všimněte si osmi základních nečtvercových pixelů a celkového poměru stran 1: 1,2.

Technicky tento režim není grafický režim, ale vylepšení textového režimu 80 × 25. Registr výšky znakové buňky se změní tak, aby místo normálních osmi řádků zobrazoval pouze dva řádky na buňku znaků. Tím se počet zobrazených textových řádků čtyřnásobí z 25 na 100. Tyto „pevně stlačené“ textové znaky nejsou úplné znaky. Před přechodem na další řádek systém zobrazí pouze jejich horní dva řádky pixelů (po osmi).

ASCII.221.character.svg Znak 221
Half-block.character.blue.red.svg 221 s modrým textem a červenou barvou pozadí
Half-block.character.red.blue.svg 221 s červeným textem a modrou barvou pozadí.
ASCII.222.character.svg Znak 222

Znak 221 znakové sady CGA se skládá z pole zabírajícího celou levou polovinu matice znaků. (Znak 222 se skládá z pole zabírajícího celou pravou polovinu.)

Protože každému znaku lze přiřadit různé barvy popředí a pozadí, může být zbarven (například) modře vlevo (barva popředí) a jasně červeně vpravo (barva pozadí). To lze zvrátit záměnou barev popředí a pozadí.

Pomocí znaku 221 nebo 222 lze tedy každou polovinu každé zkrácené buňky znaků považovat za jednotlivý pixel - takže je k dispozici 160 horizontálních pixelů na řádek. Je tedy možné 160 × 100 pixelů při 16 barvách s poměrem stran 1: 1,2.

Přestože jde o kruhový způsob dosažení 16-barevného grafického zobrazení, funguje to docela dobře a režim je dokonce uveden (i když není vysvětlen) v oficiální hardwarové dokumentaci IBM.

Více detailů lze dosáhnout v tomto režimu použitím jiných postav, kombinujících umění ASCII s výše uvedenou technikou.

Protože CGA má 16  KiB (16 384 bytů) grafické paměti, ne 16 000, je stejně snadné nastavit počet řádků v tomto režimu na 102 místo 100 pro rozlišení 160 × 102 (16320 pixelů). To používá další video paměť, která je obvykle nepoužívaná. Většina her to však neudělala, možná ze strachu by to fungovalo pouze na některých monitorech, ale na jiných ne- strach, který není neopodstatněný, protože se později zjistilo, že určité kompatibilní mají karty, které buď závadu, nebo ignorují jakýkoli pokus o vložení zařízení do tohoto režimu.

Stejnou techniku ​​zmenšení výšky textové buňky lze také použít v textovém režimu 40 × 25. To dávalo smysl pouze při použití umění ASCII, protože bez něj by výsledné rozlišení bylo pouze 80 × 100.

Kompozitní výstup

Použití kompozitního výstupu místo monitoru RGBI produkovalo video nižší kvality, kvůli nižšímu oddělení NTSC mezi jasem a chrominancí. Jedná se zejména o problém s 80sloupcovým textem:

80sloupcový text na RGB (vlevo) vs. kompozitní monitor (vpravo)

Z tohoto důvodu má každý z textových a grafických režimů duplicitní režim, který deaktivuje kompozitní barevný výbuch , což má za následek černobílý obraz, ale také eliminuje barevné krvácení a vytváří ostřejší obraz. Na monitorech RGBI jsou obě verze každého režimu obvykle totožné, s výjimkou grafického režimu 320 × 200, kde „monochromatická“ verze produkuje třetí paletu.

Rozšířené barvy artefaktů

Programátoři zjistili, že tuto vadu lze proměnit v přínos, protože odlišné vzory bodů s vysokým rozlišením by se proměnily v konzistentní oblasti plných barev, což by umožnilo zobrazení zcela nových barev artefaktů . S touto technikou bylo možné použít standardní 320 × 200 čtyřbarevný i 640 × 200 grafický režim barva na černé.

Vnitřní provoz

Přímé barvy jsou normálních 16 barev, jak je popsáno výše v části „Paleta barev CGA“.

Barvy artefaktu jsou vidět, protože chromový dekodér NTSC kompozitního monitoru nesprávně interpretuje některé informace o jasu jako barvu. Pečlivým umístěním pixelů do vhodných vzorů může programátor vytvářet specifické artefakty křížových barev, které poskytnou požadovanou novou barvu; buď z čistě černo-bílé pixelů 640 x 200 režimu, nebo vyplývající z kombinace z přímých a artefakt barev v 320 x 200 režimu, jak je patrné z následujících obrázků.

S volbou mezi režimem 320 × 200 vs. 640 × 200, volbou mezi dvěma paletami a jednou volně volitelnou barvou (pozadí v režimech 320 × 200 a popředí v režimu 640 × 200) je tedy možné používat mnoho různých sad artefaktů barev, což v celkové gamutu více než 100 barev.

Pozdější demonstrace nadšenců zvýšily maximální počet barev, které může CGA zobrazit současně, na 1024. Tato technika zahrnuje vylepšení textového režimu, které čtyřnásobně zvyšuje počet řádků textu. Určité znaky ASCII, jako například U a‼, se poté použijí k vytvoření potřebných vzorů, jejichž výsledkem jsou nepotřesené obrázky s efektivním rozlišením 80 × 100 na kompozitním monitoru.

Dostupnost a upozornění

Varianta této techniky 320 × 200 (viz výše) je to, jak vypadá standardní grafický režim podporovaný systémem BIOS na kompozitním barevném monitoru. Varianta 640 × 200 však vyžaduje trochu úpravu (zakázání barevného roztržení) přímo v hardwarových registrech CGA. V důsledku toho se obvykle označuje jako samostatný „režim“.

Kompozitní barevné artefakty, které jsou zcela závislé na procesu kódování/dekódování NTSC, nejsou k dispozici na monitoru RGBI, ani nejsou emulovány pomocí EGA, VGA nebo současných grafických adaptérů.

Moderní emulátor DOSBox zaměřený na hry podporuje režim CGA, který může emulovat barevné artefakty kompozitního monitoru. Podporován je kompozitní režim 640 × 200 i složitější varianta 320 × 200.

Rozlišení a použití

Kompozitní artefakty, ať už používané záměrně nebo jako nežádoucí artefakty, snižují efektivní horizontální rozlišení na maximálně 160 pixelů, více pro text černobílý nebo bílý na černém, aniž by se měnilo vertikální rozlišení. Výsledný kompozitní video displej s „artefaktovými“ barvami je někdy popisován jako „režim“ 160 × 200/16 barev, ačkoli technicky se jednalo o techniku ​​využívající standardní režim.

Nízké rozlišení této metody kompozitních barevných artefaktů vedlo k tomu, že byla používána téměř výhradně ve hrách. Mnoho vysoce profilových titulů nabízelo grafiku optimalizovanou pro kompozitní barevné monitory. Ultima II , první hra v herní sérii, která byla přenesena na IBM PC, používala kompozitní grafiku CGA. King's Quest Také jsem nabídl 16barevnou grafiku na PC, PCjr a Tandy 1000, ale na titulní obrazovce poskytl „ režim RGB “, který by využíval pouze běžný grafický režim CGA, omezený na 4 barvy. V tomto režimu bylo pro simulaci dalších barev použito dithering .

Vysoká barevná hloubka

1024 barev v kompozitním režimu
1024 barev v kompozitním režimu

Využitím barev artefaktů, barevných hodin NTSC a metody podobné té, která se používá v 16barevném režimu pseudo-grafiky 160 × 100 , je možné na kompozitních monitorech zobrazit více než 16 barev.

Během výstupu každého řádku nastane 160 cyklů barevných hodin NTSC, takže v režimu 40 sloupců zabírá každý pixel polovinu cyklu a v režimu 80 sloupců každý pixel používá čtvrtinu cyklu. Omezením zobrazení znaků na horní jeden nebo dva řádky skenování a využitím uspořádání pixelů v určitých znacích kódové stránky 437 je možné zobrazit až 1024 barev. Tato technika byla použita v ukázce 8088 MPH.

Omezení, chyby a chyby

Časování videa na CGA zajišťuje video řadič Motorola 6845 . Tento integrovaný obvod byl původně navržen pouze pro znakové alfanumerické (textové) displeje a může adresovat maximálně 128 znakových řádků.

Aby bylo možné realizovat grafické režimy s 200 skenovacími řádky na CGA, je MC6845 naprogramován se 100 řádky znaků na obrázek a dvěma řádky skenování na řádek znaků. Protože je výstup adresy paměti videa z MC6845 pro každý skript v rámci znakového řádku identický, musí CGA použít výstup „řádku adresy“ MC6845 (tj. Řádek skenu v řádku znaků) jako dodatečný bit adresy pro načtení rastrových dat z videa Paměť.

To znamená, že pokud velikost rastrových dat jednoho skenovacího řádku není mocnina dvou, nelze rastrová data ve video paměti ukládat nepřetržitě. Místo toho grafické režimy na CGA ukládají sudé skenované řádky souvisle do paměti, následované druhým blokem lichých skenovacích řádků začínajícím na pozici 8,192 video paměti. Toto uspořádání má za následek další režii v grafických režimech pro software, který manipuluje s video pamětí.

Přestože grafický řadič MC6845 může poskytovat časování prokládaného videa , obvody CGA zarovnávají synchronizační signály tak, aby skenování bylo vždy progresivní. V důsledku toho není možné zdvojnásobit vertikální rozlišení na 400 skenovacích řádků pomocí standardního 15 kHz monitoru.

Vyšší šířka pásma používaná režimem 80 sloupců textu způsobí, že se na obrazovce objeví náhodné krátké vodorovné čáry (známé jako „sníh“), pokud program během kreslení obrazovky zapisuje přímo do paměti videa. Systém BIOS se tomuto problému vyhýbá pouze tím, že přistupuje k paměti během horizontálního retrace nebo dočasně vypne výstup během posouvání. Přestože to způsobuje blikání displeje, IBM usoudila, že je to lepší než sníh. Problém „sněhu“ se nevyskytuje na žádném jiném grafickém adaptéru ani na většině klonů CGA.

V 80sloupcovém textovém režimu se frekvence hodin pixelů zdvojnásobí a všechny synchronizační signály jsou vyvedeny na dvojnásobek počtu hodinových cyklů, aby trvaly po správnou dobu. Signální obvod barevného shluku kompozitního výstupu je výjimkou: protože stále vydává stejný počet cyklů, nyní se zdvojnásobenou taktovací frekvencí, je produkovaný signál barevného roztržení pro většinu monitorů příliš krátký, přičemž neposkytuje žádnou nebo nestabilní barvu. Dokumentace IBM proto uvádí režim 80 sloupců textu jako „funkci“ pouze pro RGBI a černobílé kompozitní monitory. Stabilní barvy lze stále dosáhnout nastavením barvy ohraničení na hnědou, která shodně vytváří fázi shodnou se správným signálem barevného roztržení a slouží jako její náhrada.

Podpora dvou hlav

CGA byl vydán spolu s IBM MDA a ve skutečnosti by mohl být nainstalován vedle MDA ve stejném počítači. Příkaz dodávaný s PC-DOS umožňoval přepínání výstupu displeje mezi kartami CGA a MDA. Některé programy, jako jsou rané verze AutoCADu pro MS-DOS, podporovaly použití obou displejů současně.

Softwarová podpora

CGA byla široce podporována v počítačovém softwaru až do 90. let minulého století. Některý ze softwaru, který desku podporoval, byl:

Konkurenční adaptéry

BYTE v lednu 1982 popsal výstup z CGA jako „velmi dobrý - o něco lepší než barevná grafika na stávajících mikropočítačích“. PC Magazine nesouhlasil a v červnu 1983 uvedl, že „monochromatický displej IBM je pro text naprosto nádherný a úžasně snadný pro oči, ale je omezen na jednoduchou grafiku znaků. Kvalita textu na displejích připojených k barevnému/grafickému adaptéru ... je na nejlepší střední kvality a přispívá k únavě očí na dlouhou vzdálenost “.

V retrospektivním komentáři společnost Next Generation také zaujala negativní pohled na CGA a uvedla: „I v té době (počátek osmdesátých let) byla tato grafika strašná a ve srovnání s jinými barevnými stroji na trhu bledá.“

CGA měla několik konkurentů:

  • Pro obchodní a textové zpracování poskytla IBM současně s CGA Monochrome Display Adapter (MDA). MDA byla zpočátku mnohem populárnější než CGA. Jelikož bylo firmám prodáno mnoho počítačů, byl ostrý monochromatický text s vysokým rozlišením pro spuštěné aplikace vhodnější.
  • V roce 1982 byla představena grafická karta jiného výrobce než Hercules (HGC), první grafická karta třetí strany pro PC. Kromě textového režimu kompatibilního s MDA nabídl monochromatický grafický režim s rozlišením 720 × 348 pixelů, vyšším než CGA.
  • Také v roce 1982 byla představena deska Plantronics Colorplus s dvojnásobnou pamětí oproti standardní desce CGA (32 000 oproti 16 000). Dodatečnou paměť lze použít v grafických režimech ke zdvojnásobení barevné hloubky, což poskytuje dva další grafické režimy - 16 barev při rozlišení 320 × 200 nebo 4 barvy při rozlišení 640 × 200.
  • IBM PCjr (1984) a je kompatibilní Tandy 1000 (1985), uváděný na palubě "rozšířen CGA" video hardware, který rozšířený video RAM než 16 kB, což umožňuje 16 barev v rozlišení 320 x 200 a čtyři barvy na 640 x 200 rozlišení. Protože Tandy 1000 dlouho přežil PCjr, staly se video režimy známé jako Tandy Graphics Adapter “ nebo „TGA“ a byly velmi populární pro hry v 80. letech minulého století. Podobný, ale méně široce používaný byl Plantronics Colorplus .
  • V roce 1984 IBM také představila profesionální grafický řadič , špičkové grafické řešení určené např. Pro CAD aplikace. Většinou to bylo zpětně kompatibilní s CGA. PGC neviděl rozsáhlé přijetí kvůli jeho ceně $ 4,000, a byl přerušen v roce 1987.

Další alternativy:

  • Společnost Paradise Systems představila v roce 1984 první úspěšnou kartu kompatibilní s CGA pro monitory MDA. Zobrazovalo 16 barev CGA v odstínech jednobarevné. Protože byla karta Paradise kompatibilní s CGA, karta Paradise nepotřebovala speciální softwarovou podporu ani další ovladače.
  • Dalším rozšířením některých čipových sad kompatibilních s CGA (včetně těch v Olivetti M24, AT&T 6300, DEC VAXmate a některých přenosných počítačích Compaq a Toshiba ) je dvojnásobné vertikální rozlišení. To poskytuje kvalitnější textový displej 8 × 16 a další grafický režim 640 × 400.

CGA karta byla nahrazena ve spotřebitelském prostoru kartou IBM Enhanced Graphics Adapter (EGA), která podporuje většinu režimů CGA a přidává další rozlišení (640 × 350), stejně jako softwarově volitelnou paletu 16 barev ze 64 textový i grafický režim.

Specifikace

Konektor

Barevný grafický adaptér používá standardní konektor DE-9 pro přímý přenos videa (na monitor RGBI). Konektor na kartě je samice a konektor na kabelu monitoru je samec.

Konektor DE-9 viděný při pohledu na zadní stranu počítače
Přiřazení pinů
Kolík Funkce
1 Přízemní
2 Přízemní
3 Červené
4 Zelená
5 Modrý
6 Intenzita
7 Rezervováno
8 Horizontální synchronizace
9 Vertikální synchronizace

Signál

Typ Digitální, TTL
Řešení 640h × 200v, 320h × 200v
H-frekv 15699,8 Hz (14,318181 MHz/8/114)
V-frekv 59,923 Hz (H-frekvence/262)
Barvy 16

Viz také

Reference

Poznámky

externí odkazy