Article View: pl.comp.lang.asm
Article #657Re: Problem z przesunięciem ekranu
From: Johnny
Date: Thu, 21 Sep 2006 07:38
Date: Thu, 21 Sep 2006 07:38
112 lines
3429 bytes
3429 bytes
Po pierwsze to palnąłem z odpowiedzią o 28 kolumnach. Oczywiście Bernard ma rację chodzi o 40 kolumn czyli... 28h ;-) Po drugie: Matuzalem, Matuzalem, Matuzalem Twój program działa dokładnie w taki sam sposób jak mój (przynajmniej u mnie) czyli gubi znak w przedostatniej kolumnie ostatniego wiersza. Poniżej zamieszczam Twoją procedurę z małymi zmianami, tj. ustawienie "małego" trybu video no i pętla do odczytu znaków z wywołaniem Twojej procedury. W Twojej procedurze zmieniłem jedynie wiersz cmp dl, (4fh - 60) ; ilość znaków w wierszu na cmp dl,26h Doceniam Twoją pomoc. Próbuję samemu dojść przyczyny takiego zachowania. Ale po kilku dniach takich poszukiwań i po wykonaniu wielu prób warto zapytać innych, prawda? -- Johnny title ekran .model small .stack 100h .386 .code ;--------------------------------------------- ; main ;--------------------------------------------- main proc mov ax,@data ; inicjalizacja ds mov ds,ax xor ah,ah ; minimalny tryb wideo mov al,1h int 10h odczyt: mov ah,8h int 21h cmp al,1bh ; czy ESC je exit mov ah,0ah ; zapis znaku xor bh,bh mov cx,1h int 10h call Scroll loop odczyt exit: mov ax,4C00h ; zakończenie procedury int 21h main endp ;--------------------------------------------- ; Scroll ;--------------------------------------------- Scroll proc ; pobranie wskaźnika mov ah, 3 xor bx, bx int 10h ; ustawienie wskaźnika mov ah, 2 ;cmp dl, (4fh - 60) ; ilość znaków w wierszu cmp dl,26h ja short ch1 inc dl int 10h ret ch1: inc dh xor dl, dl cmp dh, 18h ja short ch2 int 10h ret ch2: mov dh, 18h int 10h ; przewinięcie okna mov ah, 6 mov al, 1 xor cx, cx mov dh, 18h mov dl, 4fh mov bh, 7 int 10h ret Scroll endp end main
Technical Details
Message-ID:
<eetfki$9hn$1@nemesis.news.tpi.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mailReferences:
<ee8g03$ia2$1@nemesis.news.tpi.pl> <eeb7nb$1r0$1@nemesis.news.tpi.pl> <1158244982.390461.281100@m73g2000cwd.googlegroups.com> <1158247875.473696.47560@e3g2000cwe.googlegroups.com> <eedgj5$hl8$1@atlantis.news.tpi.pl> <1158314745.102416.285490@p79g2000cwp.googlegroups.com> <1158315621.847716.34500@p79g2000cwp.googlegroups.com> <eee9ll$38u$1@atlantis.news.tpi.pl> <1158328549.838592.247550@m73g2000cwd.googlegroups.com> <eelk74$rmc$1@atlantis.news.tpi.pl> <1158601023.863820.102920@k70g2000cwa.googlegroups.com> <eequ8i$goo$1@atlantis.news.tpi.pl> <eer5cm$tiu$1@achot.icm.edu.pl> <eerbfh$i9l$1@nemesis.news.tpi.pl> <1158767448.505059.102840@d34g2000cwd.googlegroups.com>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mail From: Johnny <johnny_bez_spamu_@klub.chip.pl> Newsgroups: pl.comp.lang.asm Subject: Re: Problem z przesunięciem ekranu Date: Thu, 21 Sep 2006 09:38:15 +0200 Organization: tp.internet - http://www.tpi.pl/ Lines: 113 Message-ID: <eetfki$9hn$1@nemesis.news.tpi.pl> References: <ee8g03$ia2$1@nemesis.news.tpi.pl> <eeb7nb$1r0$1@nemesis.news.tpi.pl> <1158244982.390461.281100@m73g2000cwd.googlegroups.com> <1158247875.473696.47560@e3g2000cwe.googlegroups.com> <eedgj5$hl8$1@atlantis.news.tpi.pl> <1158314745.102416.285490@p79g2000cwp.googlegroups.com> <1158315621.847716.34500@p79g2000cwp.googlegroups.com> <eee9ll$38u$1@atlantis.news.tpi.pl> <1158328549.838592.247550@m73g2000cwd.googlegroups.com> <eelk74$rmc$1@atlantis.news.tpi.pl> <1158601023.863820.102920@k70g2000cwa.googlegroups.com> <eequ8i$goo$1@atlantis.news.tpi.pl> <eer5cm$tiu$1@achot.icm.edu.pl> <eerbfh$i9l$1@nemesis.news.tpi.pl> <1158767448.505059.102840@d34g2000cwd.googlegroups.com> NNTP-Posting-Host: nat-132.wasko.pl Mime-Version: 1.0 X-Trace: nemesis.news.tpi.pl 1158824403 9783 193.178.240.132 (21 Sep 2006 07:40:03 GMT) X-Complaints-To: usenet@tpi.pl NNTP-Posting-Date: Thu, 21 Sep 2006 07:40:03 +0000 (UTC) User-Agent: Thunderbird 1.5.0.7 (Windows/20060909) In-Reply-To: <1158767448.505059.102840@d34g2000cwd.googlegroups.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit