[Ada95] Czyszczenie ekranu

0

Mam takie pytanie: czy istnieje polecenie dzięki któremu można wyczyścić ekran w programnie nie używając sposobu przesuwania o np. 50 linijek?, a jeżeli istnieje to czy mógłbym prosić o podanie go?
Z góry dzięki.
Ryba

0

Jaki język?!
Jaki system?!

ech....

Jeśli DOS, to możesz zrobić tak, jak działa polecenie CLS.

  1. Odczyt aktualnego trybu graficznego
  2. Zmiana trybu na aktualny

Może brzmi to dziwnie, ale przy ustawianiu trybu (ostatni bit wyzerowany) to bufor karty video jest czyszczony.


Inny (gorszy imo) sposób: Możesz również pobrać adres bufora video i go wyczyścić. Będzie to zapewne: b800:0 -> tryb tekstowy, kolorowy b000:0 -> tryb tekstowy, czarno-biały a000:0 -> tryb graficzny ale nie dam głowy, że w jakiś trybach nie będą inne a koniec bufora? zależny od trybu
Jeśli jest to pod DOSem i wiesz, że np. używasz tylko trybu 3 (tekstowy, 80x25 znaków, 16 kolorów) to możesz od razu wywoływać ten tryb jeśli chcesz wyczyścić bufor:
mov ax,3
int 10h
0

łaaaa sorrki zapomniałem dodać .. o Adę 95 chodzi;p
sorrki;]

//a co z systemem operacyjnym? albo informacją o jaki tryb chodzi? ech... - M

0

//a co z systemem operacyjnym? albo informacją o jaki tryb chodzi? ech... - M

A po co to? Nie każdy ogranicza się do języków niskiego/średniego poziomu.

Jeśli chodzi o procedurę czyszczącą ekran... Osobiście nie znalazłem nic poza procedurą New_Page, ale chyba najpierw trzeba będzie ustawić długość strony. Jeżeli się nie mylę to będzie to działało jak New_Line (Dlugosc_Strony);. Jednak coś raczej musi być, poszukaj dokładnie (polecam źródła paczek).

edit:
Pod Linuxem możesz spróbować po prostu uruchomić "clear", lecz psuje to portowalność kodu, oczywiście.

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