[asm] Czyszczenie zawartosci ekranu.

0

Jak najszybciej wyczyścić zawartość ekranu?
Używam VESA do wyświetlania bitmapy i przy rysowaniu drugi raz bitmapy lekko przesuniętej pozostaje stara bitmapa.
Nie chcę drugi raz ustawiać trybu graficznego przed narysowaniem bitmapy (strasznie to miga). Jakieś pomysły?

0

W takim razie po co czyścić od razu cały ekran ?

user image

Tak powinno być najszybciej (jeśli przesuwasz bitmapkę o 1 piksel):

for Xp := X to X1 do
komorkaPamieci[Xp, Y] := 0;
for Yp := Y to Y1 do
komorkaPamieci[X, Yp] := 0;

Jeśli przesuwasz o więcej pikseli, napisz sobie procedurę wypełniania zerami prostokąta. Oczywiście wiesz, że dla bitmapy 24 bitowej trzeba wypełnić 3 komórki dla każdego piksela, dla 16 bitowej - dwie. Z resztą.. o czym ja mówię.. tylko dziwię się że sam na to nie wpadłeś (a może ja o czymś nie wiem..)

pozdrawiam.

1 użytkowników online, w tym zalogowanych: 0, gości: 1