Toisin sanoen, kyse olisi oikeaoppisesta paletin vaihdosta cga-tilassa. Colorilla se kyllä onnistuu, mutta valikoima on rajattu vain pariin vaihtoehtoon ja nekin tummia sävyjä. Eikä sitä myöskään saada noin vain sitten takaisin sitä kirkkaampaa sävyä.
Tarkoituksena olisi juuri voida käyttää näitä kirkkaampia sävyjä, eli tuttu musta-cyaani-magenta-valkoinen ja toinen, joka on musta-vihreä-punainen-keltainen. Palette ei käy tässä, koska todellisuudessa moinen ei toimi cga:ssa. Koetin jo Googlella jotain löytää, mutta löytyi vain lista erilaisista paleteista cga-tilassa, ja minä jo tiedän miltä näyttää ne paletit. Joillain keskeytyksillä kait sitä joutunee leikkimään tälläkin kertaa (mutta sehän onkin intohimoni, err.. )
-Grey-
Voisipa samantien saman aiheen alla kysyä vielä sellaista pervoa kysymystä, että minkä keskeytyksien kautta saa selville onko cga-, tai hercules-tukea koneella? Ja herculesilla tarkoitan 720x348x1, eli Screen 3. Hyvin hauska näyttötila. Lomituksiakin löytyy tuplaten mitä cga:ssa :-P
-Grey-
MOI Grey!
Toi sun hercules jutska on tosiaakin sairasta! Enstex sulla pitäis olla Hercules display adapter card elikä näytönohjainkortti sun masiinassa eli joku 286:n tai vahempi mylly. Ilmasessa QBasic:ssä löyty itsessään sit tuki kyseiselle näytölle/ohjaimelle...muistaakseni komentoparametri /h... tai jotain
Unohda!!!
CGA-paletin vaihtaminen onnistuu kuin onnistuukin COLOR-komennolla. Jos toinen parametri on parillinen, värit ovat vihreä, punainen ja ruskea. Jos toinen parametri on pariton, värit ovat turkoosi, violetti ja valkoinen.
SCREEN 1 COLOR , 0 ' COLOR , 1 LINE (0, 0)-(100, 0), 1 LINE (0, 5)-(100, 5), 2 LINE (0, 10)-(100,10), 3
Tässä on vielä lainaus Aki Korhosen kirjasta PC pintaa syvemmältä. Aiheena on VGA-, EGA-, CGA-, Hercules- ja MDA-korttien tunnistaminen.
A. Korhonen kirjoitti:
Ainoa tapa tunnistaa näytönohjain on aloittaa uusimmasta ja edetä alaspäin kunnes kortin BIOSin tai rekisterien toimivuus osoittaa kyseessä olevan jokin tietty näytönohjain. VGA:n tunnistaminen on erittäin helppoa. Kutsutaan INT 10H AH=1AH AL=0 ja tarkastetaan, onko palautearvo AL-rekisterissä 1AH. Jollei, kyseessä ei ole VGA.
EGA:n tunnistus liittyy BIOS-kutsuun INT 10H AH=12H BL=10H. Jos BL-rekisterin arvo on välillä 0-3, kyseessä on EGA-kortti.
Kun tiedetään, että kyseessä ei ole EGA eikä VGA, CGA:n saa eriteltyä usealla eri tavalla. Helpoin on tarkastaa BIOS-tietoalueelta käytössä olevan 6845-piirin I/O-osoite. Jos se on 3D4H, kortti on CGA.
Jäljelle jää ainoastaan Hercules- ja MDA-korttien erottaminen toisistaan. Tätä varten on luettava näytönohjaimen hetkellisen tilan ilmoittavaa rekisteriä I/O-osoitteessa 3BAH. MDA-kortissa kyseinen rekisteri ei sisällä vertical retrace -signaalia, joka Herculeksessa sijaitsee bitissä 7. Jos riittävän pitkällä aikavälillä 3BAH:n bitti 7 vaihtuu, kyseessä on Hercules. Muuten ainoa jäljelle jäävä vaihtoehto on MDA.
Antti Laaksonen kirjoitti:
CGA-paletin vaihtaminen onnistuu kuin onnistuukin COLOR-komennolla.
Paitsi että vaihto tapahtuu väärin. Jos palettia ei vaihda, väreinä on cyaani, magenta ja valkoinen. Pariton parametri tummempaa moiset sävyt, eli se ei toimi todellakaan oikein minusta, koska paluuta kirkkaampiin sävyihin ei ole enää.
Näytönohjaimen tunnistamiseen löysin tuurilla jonkin pätkän, jonka sain jopa toimimaan.
neau33 kirjoitti:
Unohda!!!
Myöhäistä! Olen jo ehtinyt pokettamaan siinä näyttötilassa..
-Grey-
Onpas kumma juttu, minulla tuo koodi toimii moitteettomasti sekä aidossa DOSissa että Windows XP:n kautta.
Qbasicin color on cga:ssa hieman vajaa paletin vaihtoon. Tiedän nimittäin että cga-tilassa on parikin erilaista palettia. Kuten mainitsemani vihreä-keltainen-punainen. Googlettakaa vaikka pari screenshottia sellaisesta pelistä kuin Phantasie III, ja näette moisen paletin..
-Grey-
Aihe on jo aika vanha, joten et voi enää vastata siihen.