EGA

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 25. kesäkuuta 2022 tarkistetusta versiosta . tarkastukset vaativat 2 muokkausta .

EGA ( eng.  Enhanced Graphics Adapter - Advanced Graphics Adapter ) on standardi IBM PC :n näytöille ja videosovittimille , joka sijaitsee CGA :n ja VGA :n välissä ominaisuuksiltaan (väri- ja tilaresoluutio ). IBM julkaisi elokuussa 1984 uudelle henkilökohtaiselle IBM PC/AT -tietokoneelle . [1] EGA-videosovitin mahdollistaa 16 väriä 640 x 350 pikselin resoluutiolla . Videosovittimessa on 16 kilotavua ROM -muistia, joka parantaa grafiikkatoimintoja BIOS ja mukautettu näytönohjain , joka on arkkitehtuuriltaan samanlainen kuin Motorola MC6845 -siru [2] , mutta ei yhteensopiva sen kanssa. EGA-sovittimen resoluutiolla 640 × 350 voit käyttää samanaikaisesti 16 väriä 64 mahdollisesta (kaksi bittiä punaisille, vihreille ja sinisille komponenteille). EGA tukee myös 16 värin muunnelmia CGA 640x200 ja 320x200 grafiikkatiloista; tässä tapauksessa vain CGA-paletin värejä voidaan käyttää . Myös alkuperäisiä CGA-tiloja tuetaan, vaikka EGA ei ole täysin laitteistoyhteensopiva CGA:n kanssa. EGA voi näyttää kuvan MDA - näytöllä, tämä ominaisuus on käytössä kortin kytkimillä, kun taas vain 640x350-tila on käytettävissä.

EGA-kortti liitetään ISA - väylään 8-bittisestä versiosta alkaen. EGA:n perusversiossa oli 64 kilotavua videomuistia , mikä riitti korkearesoluutioiseen mustavalkografiikkaan ja värigrafiikkaan 640x200 ja 320x200. Ajan myötä useimpia EGA-kortteja alettiin tuottaa 256 kt:n videomuistilla. Jotkut kolmannen osapuolen EGA- kloonit (erityisesti ATI Technologies ja Paradise ) tukevat laajennettuja grafiikkatiloja (kuten 640x400, 640x480 ja 720x540), automaattista näyttötyypin tunnistusta ja joskus erityistä lomitettua tilaa CGA-näytöille.

EGA-standardi korvattiin VGA -standardilla , jonka IBM esitteli huhtikuussa 1987 PS/2 - tietokonemallilla .

Arkkitehtuuri ja tasossa oleva videomuisti

EGA-videomuisti jaettiin fyysisesti neljään samankokoiseen tasoon - 16K (pienemmät mallit) 64K (vanhemmat mallit).

Koko videomuistin suora kartoitus kerralla prosessorin osoiteavaruuteen oli mahdotonta, kaikki tasot näytettiin aina samassa osoitteessa - 0xa0000 16 värigrafiikkamoodille ja 0xb8000 kaikille muille. Siten sama osoite osoitti 4 tavua kerralla, jotka sijaitsevat ikään kuin "rinnakkaisina" toistensa kanssa 4 tasossa.

Prosessorin pääsyä varten tällaiseen videomuistiin EGA sisälsi ns. sekvensseri. Sekvensseri tuki 3 videomuistin kirjoitustilaa ja 2 lukutilaa, ja siinä oli huomattava määrä ohjausrekistereitä.

Tallennettaessa käytettiin rekistereitä:

Tilassa 0 prosessorilta saatu tavu ymmärrettiin uudeksi arvoksi 4 tason 4 tavulle. Tila 2 käytti prosessorilta vain 4 bittiä tavua kohden. Tasoissa, joissa oli 1 tässä tavussa, käytettiin arvoa 11111111b, lopuille - 00000000b.

Lukutilassa 0 käytettiin tasonvalintarekisteriä, luku luki tavun valitulta tasolta.

Moodissa 1 käytettiin bitinvalintarekisteriä, sekvensseri poimi 4 tasosta 4 bittiä, joiden paikan antoi valintarekisteri ja yhdisti ne 4-bittiseksi arvoksi (ylimmät 4 bittiä asetettiin nollaan).

CGA-grafiikkatiloissa käytettiin vain tasoa 0, sekvensseri oli aina oletustilassa eikä sitä käytetty.

Tekstitiloissa samaa tasoa 0 käytettiin merkkikoodien ja attribuuttien tallentamiseen, kun taas tasoa 1 käytettiin merkkigeneraattoritaulukoiden tallentamiseen. Sekvensseri oli yleensä oletustilassa, paitsi merkkigeneraattoria ladattaessa - tätä varten tasomaskirekisteri vaihdettiin arvoon 2, merkkigeneraattorin tiedot kirjoitettiin samaan osoitteeseen 0xb8000 ja sitten maski vaihdettiin takaisin 1:een.

Kaikki 16 värin grafiikkatilat käyttivät kaikkia 4 tasoa, joista jokainen tallensi yksivärisen kuvan yhdelle yhteisen värin neljästä komponentista - punaisesta, vihreästä, sinisestä ja intensiteetistä (oletuspaletissa). Yhdistämällä bittejä 4 tasosta saatiin neljän bitin pikselin väriarvo (indeksi paletille). Siksi 320x200x16-väritila, joka oli visuaalisesti ja toiminnallisesti identtinen PCjr:ssä ja Tandy 1000:ssa esiintyneen tilan kanssa, ei ollut sen kanssa yhteensopiva kirjoitettaessa suoraan videomuistiin.

Jopa ne rekisterit, jotka vastasivat MC6845-rekisterien osoitteita ja tarkoitusta, poikkesivat sisällön tulkinnasta. Erityisesti rivin merkkien lukumäärän, symbolin kuvarivien ja kehyksen tekstirivien rekistereihin 6845:lle oli tarpeen kirjoittaa arvoja, jotka ovat 1 vähemmän kuin haluttu (eli esimerkiksi 114 merkkiä riviä kohden 80 sarakkeen tilassa, ohjelmoitu 113:ksi (0x71 heksadesimaalissa) Saman tarkoituksen EGA-ohjainrekistereihin piti kirjoittaa 2 vähemmän arvoa (eli 112 tai 0x70 samaan esimerkki) [3] .

Paletti

4-bittiset väriarvot välitettiin 16 palettirekisterin läpi, joista jokainen sisälsi 6-bittisen väriarvon - 2 bittiä R:lle, G:lle ja B:lle. Sama 6-bittinen arvo asetettiin sitten monitoriin johtavaan kaapeliin. .

Palettirekisterit toteutettiin vain kirjoitettavina ilman lukukykyä.

Tekstitilat

Tekstitilat käyttävät kahdenlaisia ​​fontteja. Tavallinen EGA-fontti muodostuu 7×9 matriisista 8×14 pikselin solussa. Yhteensopivuuden vuoksi CGA:n kanssa käytetään fonttia, jonka matriisi on 7x7 8x8 pikselin solussa.

EGA on ensimmäinen IBM:n videosovitin, joka muuttaa ohjelmallisesti tekstitilan fontteja.

Seuraavat tilat ovat käytettävissä: [4] [5]

Grafiikkatilat

EGA Plus [7] (Super EGA):

Genoa Systems tuotti samanlaisia ​​näytönohjaimia. Mukana oli myös JEGA- näytönohjain .

Tekniset tiedot

Värinäyttöön liitettynä EGA käytti 60 Hz:n kuvataajuutta ja saattoi käyttää toista kahdesta viivataajuudesta - 21,8 kHz 350 riville (tekstitilat merkkikoolla 8x14 pikseliä ja tilat 640x350x16 ja 640x350 × 4) ja 15,7 kHz tekstitiloihin, joissa merkkitila on 8 × 8 pikseliä ja grafiikkatiloihin, joissa on 200 riviä. Kun se on liitetty yksiväriseen näyttöön, se tuotti signaaleja tavallisella yksivärisen näytön linjataajuudella 18,43 kHz ja kuvataajuudella 50 Hz. Näytön tyyppi asetettiin kytkinpankkiin, joihin pääsee käsiksi takalevyssä (kannattimessa) olevan reiän kautta.

Liitin

Näytönohjaimen liittimen tyyppi: [8]

5 yksi
9 6
Johtopäätös Kuvaus
yksi Maapallo
2 toissijainen punainen
3 ensisijainen punainen
neljä ensisijainen vihreä
5 ensisijainen sininen
6 toissijainen vihreä / intensiteetti
7 toissijainen sininen
kahdeksan linjan synkronointi
9 kehysten synkronointi

Signaali

Tyyppi digitaalinen, TTL [9]
Lupa 640×350 jne.
Vaakataajuus 15,7/21,8 kHz
Pystysuuntainen taajuus 60 Hz
Värien määrä 16/64

Kilpailevat videosovittimet

Vuonna 1984 IBM julkaisi myös Professional Graphics Controller -näytönsovittimen CAD -käyttöön . Sovitin tuki 640 × 480 pikselin resoluutiota (hieman korkeampi kuin EGA, näytön pikseleiden fyysinen koko on sama vaaka- (viiva) ja pystysuunnassa, eli pikselit ovat "neliöitä") ja 256 värin samanaikainen tulostus 4096 mahdollisesta väristä. Lisääntynyt värien määrä mahdollisti fotorealististen kuvien luomisen. Sovittimella oli oma kieli 2D- ja 3D-kuvien luomiseen ja muuntamiseen. Lisäksi sovitin voisi jäljitellä CGA :n työtä [10] .

Muistiinpanot

  1. EGA-levyt, joissa on merkintä "Hyväksytty standardi"  // InfoWorld. - 1985. - T. 7 , nro 51 . - s. 14. - ISSN 0199-6649 .
  2. Glenn A. Hart. IBM asettaa uuden standardin  // PC Magazine. - Ziff-Davis Publishing, 1984. - Vol. 3 , no. 25 . - S. 173 .
  3. Wilton, Richard. Laitteiston ohjelmointi // Ohjelmoijan opas PC- ja PS/2-videojärjestelmiin . - Microsoft Press, 1987. - S.  544 . — ISBN 1-55615-103-9 .
  4. Dnes, Walter Nicer-konsoli textmodes  (englanniksi)  (linkki ei saatavilla) . Haettu 28. lokakuuta 2006. Arkistoitu alkuperäisestä 7. joulukuuta 2003.
  5. Muzychenko, Evgeny Usein kysytyt kysymykset (usein kysytyt kysymykset) IBM PC:n videolaitteista (txt)  (linkki, jota ei voi käyttää) . Käyttöpäivä: 28. lokakuuta 2006. Arkistoitu alkuperäisestä 17. helmikuuta 2012.
  6. Int 10/AX=1112h . Haettu 28. lokakuuta 2006. Arkistoitu alkuperäisestä 19. kesäkuuta 2016.
  7. PC Mag - Google Books
  8. Hakemisto www.5v.ru (pääsemätön linkki) . Haettu 24. lokakuuta 2006. Arkistoitu alkuperäisestä 28. lokakuuta 2011. 
  9. Kuphaldt, Tony R. Logiikkasignaalin jännitetasot (eng.) (linkki ei ole käytettävissä) . Kaikki piireistä . Käyttöpäivä: 14. lokakuuta 2006. Arkistoitu alkuperäisestä 8. helmikuuta 2012.   
  10. Duke, Keith A.; Wall, W. Alan. Ammattimainen näytönohjain (englanniksi) (downlink) . IBM Systems Journal (1985). Haettu 1. marraskuuta 2006. Arkistoitu alkuperäisestä 17. helmikuuta 2012.