Autor Thema: Textausgabe INT 10h/13h  (Gelesen 2769 mal)

elfish_rider

  • Beiträge: 293
    • Profil anzeigen
Gespeichert
« am: 24. December 2004, 17:40 »
Ich versuche (im 80x25-Textmodus) den Bildschirm mit Zeichen zu füllen, doch beim schreiben des letzten Zeichens in der letzten Zeile scrollt es, was ich eben nicht möchte. Wie muss man vorgehen, dass dies nicht geschieht?

joachim_neu

  • Beiträge: 1 228
    • Profil anzeigen
    • http://www.joachim-neu.de
Gespeichert
« Antwort #1 am: 24. December 2004, 22:19 »
machs, indem du keine ints benutzt, sondern mim speicher arbeitest:

mov ax,0xB800
mov es,ax
xor di,di
mov cx,0x7D0
write_loop:
mov al,ACSII-CODE
stosb
mov al,FARB-CODE
stosb
loop write_loop


geht schneller und ohne umbruch.
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

System: 256 RAM, GeForce 2 MX 400, AMD Athlon XP 1600+, Windows XP, 1x Diskette, 1x DVD-ROM, 1x CD-R(W) Brenner,...

Jidder

  • Administrator
  • Beiträge: 1 625
    • Profil anzeigen
Gespeichert
« Antwort #2 am: 25. December 2004, 12:19 »
wobei das 0x7D0 das gleiche wie 80 * 25 * 2 ist. (=Spalten * Zeilen * Bytes_pro_Zeichen).
Dieser Text wird unter jedem Beitrag angezeigt.

 

Einloggen