> 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?
|