Graafikakontroller

IBM-i **graafikakontroller** (**PGC**, inglise keeles *Professional Graphics Controller*), ka **professionaalne graafikaadapter**, on adapter, mis oli toodetud IBMi poolt personaalarvutite jaoks ning käitus kui IBM Color/Graphics Monitori adapterina ilma 160 x 100 värvi/graafika režiimita. Koos professionaalse graafikakontrolleri monitoriga võimaldas see inseneridel, teadlastel, tehnikutel ja disaineritel kasutada IBM-i personaalarvutit kõrgfunktsionaalse graafikavõimega integreeritud töökohana. 

PGC koosnes kolmest omavahel ühendatud PCB-st (*Printed Circuit Board*, trükkplaat) ning sisaldas graafikaprotsessorit ja mälu. PCB oli selle väljaandmise ajal IBM XT kõige arenenum graafikaplaat. PGC-l oli lihtne graafikakontrolleri kiip ning see kasutas välist digitaal-analoogmuundurit ja diskreetseid loogikakiipe paljude muude funktsioonide ja otsingutabelite jaoks. PGC toetas 640 × 480 resolutsiooni ja suutis kuvada 256 värvi 4096 paletist. PGC-l oli kaks töörežiimi – CGA (320 × 200) ja *nativ*. PGC-le sobiv monitor oli IBM 5175, analoog-RGB-monitor, mis oli selle jaoks ainulaadne ja mis ei ühildu ühegi teise graafikaplaadiga. 

Ekraan ja graafikakontroller pakuvad mitmesuguseid graafilisi funktsioone ja paljusid kasutusmugavuse ja kohandamise funktsioone, et aidata luua täiustatud graafikat. Need vahendid võivad aidata ka arvutipõhise disaini (CAD), arvutipõhise tootmise (CAM), arvutipõhise inseneri (CAE), pilditöötluse ja äriesitluse graafika puhul.

## Riistvara
PGC on rohkem kui lihtsalt adapter ja graafikakaart – see on täisarvuti, millel on oma protsessor, 68k ROM ja 320k RAM. See koosneb kahest täispikast ISA-kaardist ja kolmandast, väiksemast kaardist, mis asub nende vahel, kõik omavahel tugevalt kokku kinnittud.

Kuna PGC mahub kahte kõrvuti asuvasse pessa, ei tööta see originaalarvutis (5150) – laienduspesad on üksteisest liiga kaugel. Selle kasutamiseks koos 5150-ga on vaja laiendusseadet 5161, millel on 8 pesa õigete vahedega. PGC kasutab järgmisi riistvararessursse: 

* 2k RAM-i aadressil 0C6000h. Seda mälu jagatakse põhiarvuti ja PGC protsessori vahel.
* CGA ressursid – video RAM aadressidel 0B8000h-0BFFFFh ja I/O aadressid 03D0h-03DFh. Kui CGA emulaator on keelatud, siis neid ressursse ei kasutata.

PGC toiminguid juhib 8088 mikroprotsesor. See mikroprotsessor vastutab kommunikatsiooni eest, mis käib andme- ja aadressisiinide kaudu. Süsteem on võimeline aru saama erinevatest käskudest ning edastada kontrollerile ainult temale määratud käsud. Lisaks võimaldab liides mikroprotsessoril kirjutada ja lugeda mäluaadressidele, kasutades selleks IBM PGC mikroprotsessori andme- ja aadressisiine. 

Mikroprotsessor juhib ja lähtestab kontrolleri erinevaid sektsioone. Ta määratleb kontrolleri riistvaralised nõuded, et kontroller saaks jäljendada IBM Color/Graphics Monitor Adapteri toiminguid. Mikroprotsessor reguleerib ka emulaatori aadressi juhtimist, mis tõlgib süsteemi I/O aadressi teabe ja salvestab seotud andmed graafika emulaatori mällu ekraani kuvamiseks. Lõpetuseks initsialiseeritakse videojuhtimisgeneraator, mis genereerib ajastuse impulsid ning horisontaalsed ja vertikaalsed sünkroonimissignaalid. Töö ajal peatab mikroprotsessor kõik emulaatorisse saadetud käsud ning tõlgendab need. Mikroprotsessor on ka võimeline tõlgendama kõrgfunktsionaalseid graafikakäske, mis omakorda kirjutatakse ekraani kuvamise jaoks kuvamälusse. Nii emulaatoril kui ka kõrgfunktsionaalsetel graafikafunktsioonidel on juurdepääs otsingutabelile (*look-up table*) ja väljundi sektsioonidele.

## Töörežiimid
### CGA režiim
Kui kaart emuleerib CGA-d, näeb see välja ja toimib üsna sarnaselt tõelise CGA-ga, välja arvatud järgmised erandid: 
* Tekstirežiimis on 400 pikslirida, mitte 200.
* Tekstirežiimis kasutatav font on EGA 14-piksline font, mitte CGA 8-piksline font venitatud versioonis.
* Mittestandardsed režiimid (nt dokumenteerimata 160x100 režiim) ei tööta.
* Kui reaalses CGA-s on pordi 03D8h bitt 2 ja pordi 03D9h bitt 5 mõlemad seatud, on graafikarežiimides kasutatav palett punane/tsüaansinine/valge. PGC puhul on see magenta/tsüaan/valge. Kui pordi 03D9h bitt 5 pole määratud, kuvatakse ikkagi punane/tsüaansinine/valge. See on pigem püsivara kui riistvara probleem.

### Nativ režiim
Algrežiimis saadab host-arvuti käsud PGC-le, mis seejärel täidab need asünkroonselt. Käsud saadetakse, kirjutades need ring buffer'isse aadressil 0C6000h ja suurendades write pointer'it aadressil 0C6300h. Kuna PGC võtab sellest puhvrist baite, suurendab see read pointer'it aadressil 0C6301h.
Vaikimisi olenevad PGC koordinaadid 640 x 480 ekraani keskel asuval lähtepunktist.

## Tehnilised andmed
* 60 kaatrit sekundis ilma ülerealaotuseta
* 16 x 8 tähemärgi kast emuleerimisrežiimis
* Sisseehitatud 8 MHz Intel 8088 mikroprotsessor
* Video sagedus 25 MHz 
* Ekraani selge/värvilise üleujutuse funktsioon
* 320 kB ekraani salvestusruumi. 
** 20 kB mahus kuvaloendeid ja sisemised muutujad.
** 300 kB mahus kuvamisandmeid
* 64 kB sisseehitatud graafika mikrokoodi
* Lugemiseks/kirjutamiseks on saadaval 8-bitised tasapinnad
* Nõuded võimsusele: 5 volti alalisvoolu, ±5%; kuni 5,0 amprit
* Mõõdud: kontroller mahub kahte kõrvuti asuvasse IBM 5161 Personal Computer Expansion Uniti, IBM 5160 Personal Computer XT või IBM 5170 Personal Computer AT pessa. 
** Kaardikomplekti pikkus: 333,25 mm (13,12 tolli). 
** Kaardi kõrgus (tollised sakid): 106,7 mm (4,2 tolli). 
** Kaardikomplekti paksus: 1,52 mm (0,06 tolli). 
** Komponendi maksimaalne kõrgus: 12,7 mm (0,5 tolli). 
** Kaardi vahe: 20,3 mm (0,8 tolli)
 

## Ühilduv kuvar
PCG-le sobiv ekraan oli vähetuntud IBM 5175. See pärineb aastast 1984. See tarniti koos seotud graafikakaardiga, mis oli mõeldud CAD-rakenduste jaoks. 5175 suudab kuvada 256 värvi 4096st, mida võimaldas monitoriga kaasnev graafikakontroller. Karbist välja võttes töötas 5175 monitor ainult spetsiaalse graafikakaardiga, mille ühilduvus oli väga piiratud. 5175 sai aga VGA-ga töötamiseks modifitseerida. VGA-ks muudetud IBM 5175 monitoride olid mõnda aega saadaval selliste edasimüüjate kaudu nagu COMB ja Computer Reset. Kuulujutt on, et 2019. aasta jooksul avastati Computer Reset laost mõned alles jäänud IBM 5157. 

### Kuvari omadused
* Eraldi heleduse, kontrasti ja sisse- ja väljalülitamise juhtnupud
* Samad füüsilised mõõtmed kui IBM 5153 värviekraanil
* 640 horisontaalne x 480 vertikaalne pel definitsioon
* 67 pelli tolli kohta nii horisontaalselt kui ka vertikaalselt
* Peegeldusvastane kate
* Tumendatud ekraan suurendab kontrasti
* 0,31 mm, varjumaski ekraan tagab selguse ja detailsus

## Viited