Ajattelin tässä jossain vaiheessa yrittää tehdä jotain matopelin tapaista C:llä ihan kokeilumielessä. Ongelmaksi muodostui kuitenkin: kuinka C:llä (siis DOSissa) valitaan tekstin paikka. Siis, kun QBasicilla kirjoitetaan:
LOCATE 5,5
PRINT "Paikassa 5,5"
Niin kuinka sama hoituu C:llä? Matopeli tulee olemaan nimittäin tekstigrafiikkainen.
Muuten auttaisin mutta en osaa noita Rykker saattais tietää, on unohtunut sekin niihin mopo juttuihin :)
Mailaa sille kyllä se vastaa :)
hmm... Se ei onnistu printf komennolla. Sinun pitää käsitellä tekstitilan näyttömuistia suoraan. Osoite on perusmuistin segmentti B800h Ja kun meillä on _dos_ds osoittamassa, niin osoite on 0xB8000. Mutta tässäpä on esimerkki aliohjelma.
void putascii(int x, int y, int ascii, int vari) {
_farpokeb(_dos_ds, 0xB8000+(y*80+x)*2, ascii); //Kirjoitetaan ascii merkki muistiin
_farpokeb(_dos_ds, 0xB8000+(y*80+x)*2+1, vari); //kirjoitetaan väri muistiiin
}
Näin yksinkertaisella aliohjelmalla selvittiin!
Ei onnistu printf:llä mutta kyllä siihen joku komento oli, en vaan muista mikä.
Aihe on jo aika vanha, joten et voi enää vastata siihen.