Hi, kann mir jemand eine routine geben mit der ich einen punkt schnell zeichnen kann
, also mit direct memory accessing.
Ich mach das zur zeit noch mit BIOS-Ints,
doch das ist viel zu langsam.
Ich habe solche routinen schon gesehen,
würde aber gern wissen wo ich genau was
reinschreiben muß, und was ich beachten
muß, damit es funzt.
Da ich nicht weiß, ob Du in reinem Assembler programmierst oder in einer Sprache wie C(++) oder Pascal oder was auch immer, habe ich Dir hier den reinen Assemblerteil angegeben.
y bezeichnet die Y-Koordinate des Punktes
x bezeichnet die X-Koordinate des Punktes
c bezeichnet die Farbe (256)
SegA000 ist die Segmentadresse des VGA-Grafikspeichers und müßte als Pointer
($A000,0) deklariert werden.
Diese Routine funktioniert allerdings nur im Modus 13h !
Zu erreichen mittels:
mov ax,13h
int 10h
Es ist eigentlich ganz simpel…
Die SHL-Anweisungen erreichen eine Multiplikation mit 320 und die Addition
add bx,x addiert die X-Koordinate.
Dann muß alles nur noch an die entsprechende
Speicherstelle geschrieben werden…