Hollosi Information eXchange /HIX/
HIX CODER 1768
Copyright (C) HIX
2003-03-07
Új cikk beküldése (a cikk tartalma az író felelőssége)
Megrendelés Lemondás
1 Re: szamtek alapjai - videokartyak 3 (mind)  152 sor     (cikkei)

+ - Re: szamtek alapjai - videokartyak 3 (mind) VÁLASZ  Feladó: (cikkei)

> Multkor 135 sorban valaszoltal me'gis megjelent a listan.
Jo kerdes - szerintem ez mar magia...
 
> A cimezesrol: 16 bites offszetbol es a 16 bites szegmensbol
> hol allitodik elo a 20 bit? Belefert me'g a prociba, vagy kulon
> csip van a memoria dekoder es az cimbezetekek kozott?
Szerintem ezt a processzor belul intezi el - kivul 16 bites, ill. a 8088
emlekeim szerint csak 8 bites (es tobb ciklusban olvas).

> > Pl. egy konzol tudott vonalat rajzolni.
> Azaz volt saját procija, ami végrehajtotta az IO-n at kapott feladatokat,
> es aszerint toltotte fel a sajat videomemoriajat. Igaz?
Lehet, de lehet ugy is, ahogy irtam: az elektronsugar kozvetlen
vezerlesevel.
 
> >így sima monitort kaptunk, ahol a CPU rajzolta a vonalat.
> Marmint a videoramot beillesztettek a sima RAM cimtartomanyaba.
> Ekkor a videokartya egyetlen feladata a videoram
> folyamatos kiolvasasa es az analog videojel eloallitasa?
Plusz egy kis visszajelzes: elektronsugar visszateritesi fazis,
megszakitas generalasa kepenkent, VGA kartya allapota lekerdezheto, stb.
Ja, es a video ROM funkciok.

> >Eltelt 15 év, és eljutottunk oda, hogy a CPU már nem
> >simán vonalat rajzol, hanem textúrázott poligont árnyékol.
> >Ez viszonylag speciális feladat, ezért kitalálták,
> >hogy csinálja meg egy célprocesszor
> Szepen hangzik, de hogyan is van ez konkretan?
> Visszatertunk az elso verziohoz, hogy a CPU utasitgatja
> a videokartyan levo procit, hogy milyen kepet rajzoljon
> a videoramba? Ekkor is a normal RAM cimtartomanyaban
> van a videoram, de most mar ket proci is kepes bele irni
> es olvasni belole (megha olvasni a fo CPU nem is akar)?
Igen. 

> De hat a mechanika nem sokkal lassabb, mint a soros port??
A floppynal es a regebbi nyomtatoknal meg talan...
 
> >Tudtommal ilyen sehol sincs - ill. PC-n irhatsz olyan programot, amelyik
> >kozvetlenul a videomemoriabol dolgozik. Nekem van ilyen, de gyors gepen
> >nem celszeru igy irni, mert SOKKAL lassubb, mint a fo memoria.
> Ezt csak most ertettem meg. Jo, akkor nem irok ilyen progit :-)))
Azert van egy olyan elonye is, hogy ha megprobaljak visszafejteni a
programot, ugy szettorik a (nem szabvanyos) kep, hogy az amator
"dekoder" csak a fejet fogja... es persze sokkal kevesebb memoriat is
foglal.
 
> >> Jo, de hat attol, hogy ketszer 16 bitet egymas melle' teszunk,
> >> me'g megmeradhatott volna ez a kompatibilitas.
> >Na ja, de az elso gepben (amit ugy hivtak, hogy PC) 256kB RAM volt
> >osszesen. Ez igy 4 lehetseges szegmens lenne, amibol az elso foglalt a
> >rendszervaltozoknak es a DOS-nak. Igy viszont, ahogy megoldottak, akar
> >16 byte-onkent be lehet tolteni egy 8085-os programot
> Ezt akkor sem ertem, pedig fontosnak tunik. ********
Ahogy irtad, ugy 64kB-onkent kezdodhetne egy szegmens - a fejlesztoknek
pedig az volt a celja, hogy a 8085-osre irt programok lehetoleg
valtoztatas nelkul fussanak a PC-n. Igy egyszerre csak 3 programot
lehetne betolteni (elol a DOS lefoglal egy helyet). Ahogy megoldottak,
ugy a DOS utan kimarad 0-15 byte, majd johet az elso program. Ezutan
szinten kimarad max. 15 byte, johet a 2. program. Eleg sokat
betolthetsz, mig betelik a 256kB. Szovegszerkeszto, assembler, a
leforditott programod: minden belefer.

> >Ebbol a kep beallitasa ALTALABAN rendesen van megirva a BIOS-ban.
> >Van rutin egy pixel kiirasara is, azonban ez annyira lassu, hogy szinte
> >soha nem hasznaljak.
> Na most itt gond van. Oprendszerig me'g mindig nem igazan jutottunk el,
> de annyit mar hallottam rola, hogy az is egy felulet a felhasznalo
> progiknak.
> Tehat a programozo ki akar irni valamit, ezt tovabbadja az OSnek,
> az tovabbadja a BIOSrutinnak, az intezkedik.
> ?A programozo reszerol szep dolog kikerulni az OSt es sajat szakallra
> irogatni abba a RAM teruletbe, ami majd atmasolodik a videoramba?
NEM!
Egyreszt: nem masolodik, hanem kozvetlenul a videoRAM-ba szokas irni -
de nem illik, es idonkent eleg maceras is! Viszont a BIOS rutin akar
10-20-szor lassubb is lehet, igy sokszor nem felel meg az adott celra.
En mar irtam olyan programot, amely hasznal BIOS rutinokat is (bizonyos
celra jobb) es kozvetlen memoriairast is - egy kepernyon.
Amire celszeru BIOS rutint hasznalni:
- normal szovegkiiratas, ha vezerlokarakterek (Enter, Tab, stb) is
vannak vagy a kepet gorgetni is kell,
- ha nem ismeri a program a videokartya tipusat,
- EGA grafikus mod (nagyon bonyolult a kezelese),
- SVGA grafikus mod (ha mukodik - meg nem probaltam).
Amire NEM LEHET a BIOS rutint hasznalni.
- gyors kepkezeles,
- kulonleges karakterek (pl. Enter) kijelzese,
- nem ismer minden funkciot (pl. nem tud pozicionalni, csak ha
rendszervaltozokat irsz).

> >> Ha 1 pixelt csak 1 bit jelol, akkor a tinta es hatter szinet
> >> mint a kep egeszere vonatkozo infot kell megadni.
> >Hatter ilyenkor nincs, es a CGA-n van olyan uzemmod,
> >ahol 1 pixel 2 bit es ugyanigy mukodik.
> Hogyhogy nincs hatter? Mindig fekete?
Nem: az adott pixelen csak az o szine latszik es semmi mas. Egy pixel
csak egyszinu :-)

> >> Az egesz kepernyo vagy a-b-c-d szinekbol vagy e-f-g-h szinekbol all?
> >Igen, es 1 pixelre 2 bit mondja meg, hogy melyik ebbol a 4-bol.
> Es a kep egeszere vonatkozo infok kozt van, hogy a 2 kozul
> melyik 4es csoportbol fognak valasztani 1et a pixelt jelolo "2bitek"?
Igen.
 
> >Sajnos a Herc. kartya - bar a CGA utan keszult - nem tud fenyes keretet,
> >sem normalis karakterjellemzoket: pl. ha a karakter eloterszine
> >megegyezik a hatterrel, akkor nem lenne szabad latszania,
> Es latszik??
Igen :-( kiveve, ha nulla.
 
> > ha pedig a hatterszin nagyobb, mint az eloter,
> >akkor inverz karakter kellene.
> Talan nem lesz inverz belole??
Nem bizony :-( Kiveve, ha feher papiron fekete tinta.
 
> A CGA kartya videoramjat me'g a felhasznaloi progi toltotte fel?
> A programozonak kellett vacakolnia a videoram CGA szabvany
> szerinti feltoltesenek reszleteivel?, cim szerint?
Nem, ugyanez van, amit fenn irtam. A regebbi kartya kozvetlen irasnal
havazik (nagyon ronda) - ennek ellenere sok program igy hasznalja. Nem
tul gyors a gep, sokat szamit a sebesseg.

> Mert a szemre bizza, hogy kiatlagolja a keppontot,
> ami 25Hz-cel kvazi villog? Ha igen, akkor ertem.
Igen.
 
> Hogyhogy "kikuldi videojelnek"? Anelkul allit elo videojelet,
> hogy elobb kulon videoramban osszeallitana' a kepet?
Pontosan! Hova tenne (nincs erre plusz memoriaja)?

> Ehhez mar tenyleg helyi proci + helyi ROM kell a videokartyara!
Egyik sem, hanem egy nem tul bonyolult sorrendi logikai halozat, amelyik
az adott sorrendben szepen vegigmegy a kartyan, osszerakosgatja a
biteket (ha kell,  a karaktergenerator ROM-bol) es kuldi ki. Foiskolan
meg en is terveztem hasonlot... nezz meg egy regi CGA kartyat: tele van
logikai IC-vel.
 
> 3 * 2 bit = 6 bit = 64 szin, oke. Egyszerre miert csak 16 latszik ebbol?
Ilyen a kartya. Kompromisszum.

> Vagy akkor miert nem csak 4 biten lehet programozni a szineket
> (ekkor persze nem osszetevonkent, hanem kesz palettarol)?
6 biten 64 paletta lehetne - igy sokkal jobb, ahogy megoldottak. A 16
szin lehet pl. 16 zoldes arnyalat vagy barmi mas, az adott 64 szinbol.
64-bol 16-ot nagyon sokfelekeppen lehet valasztani.

> Miert nem frissitik az alaplapo levo BIOSt, hogy ismerje a tobbi
Mert nem fer bele! Ezen kivul: minek ismerje minden kartya minden
verziojat - nem eleg az, amit beteszel? Azon meg ugyis ott van a ROM.
Milyen surun szeretned frissiteni az alaplapi BIOS-t? Nem egyszerubb
csak betenni a videokartyat?

AGYKONTROLL ALLAT AUTO AZSIA BUDAPEST CODER DOSZ FELVIDEK FILM FILOZOFIA FORUM GURU HANG HIPHOP HIRDETES HIRMONDO HIXDVD HUDOM HUNGARY JATEK KEP KONYHA KONYV KORNYESZ KUKKER KULTURA LINUX MAGELLAN MAHAL MOBIL MOKA MOZAIK NARANCS NARANCS1 NY NYELV OTTHON OTTHONKA PARA RANDI REJTVENY SCM SPORT SZABAD SZALON TANC TIPP TUDOMANY UK UTAZAS UTLEVEL VITA WEBMESTER WINDOWS