<html><body><p>To asi moc nepomůže. dispMezera slouží pro oddělování tisíců a neumožňuje posun o víc než 3. Prodlužuje totiž zobrazování znaku v rámci toho, že je široký 5, ale font je z celých bajtů:</p><p><br></p><p>void dispChr(unsigned char c) { // ----------------------------------------------------<br>. unsigned int n;<br>. unsigned char a, b;</p><p>. switch (c) {<br>. case 9: if (dispX<(240-48)) dispX+=48; return;<br>. case 13: if (dispY<(320-8)) dispY+=8; else dispY=0; dispX=0; return;<br>. default: if (c<32) return;<br>. }<br>. if (dispMezera>3) dispMezera=3;<br>. n=(c-32)*7+4;<br>. dispBlok(dispX, dispY, 4+dispMezera, 8);</p><p>. ili_wrcmd(0x2c);<br>. for (b=0; b<7; b++) {<br>. for (a=0; a<5+dispMezera; a++) {<br>. if (font5x7[n+b] & (1<<a)) ili_wrI16(); else ili_wrP16();<br>. }<br>. }<br>. for (a=0; a<5+dispMezera; a++) ili_wrP16();<br>. dispX+=a;<br>. if (dispX>234) {<br>. dispX=0; dispY+=8;<br>. if (dispY>320) {dispX=0; dispY=0;}<br>. }<br>. dispMezera=1;<br>}</p><p><br></p><p>PH</p><p><br></p><p>Od: Pavel Troller <a href="mailto:patrol@sinus.cz">patrol@sinus.cz</a><br></p><blockquote>toto mne take napadlo. Mel jsem podezreni na "zdrhnuti" Y pozice.<br> Mozna by bylo dobre zavolat pred vypisem DispXY(16,0); .<br><br>> Tazko povedat, chyba moze byt vo zvysku, ktory nevidime, napr. nemoze<br>> dispChr() za urcitych okolnosti (napr. nastavene dispMezera) "pisat"<br>> niekde "mimo zorne pole"? Nepomoze ak sa namiesto nastavenia dispMezera<br>> zavola dispChr(' ')?</blockquote></body></html>