--*******1*********2*********3*********4*********5*********6*********7*****
with text_io;
package body ANSI_ESC is
---------------------------------------------------------------------------
-- Stellt Prozeduren zur Verfuegung, mit denen man die Attribute eines
-- ANSI-Bildschirms (Farbe des Hintergrunds, Farbe der Schrift, fett,
-- blinkend, Cursor-Position etc.) beeinflussen kann.
---------------------------------------------------------------------------
ATAB : array (BILDSCHIRM_ATTRIBUT) of string(1..2) :=
(NORMAL => "00" , FETT => "01" , VERMINDERT => "02" ,
KURSIV => "03" , UNTERSTRICHEN => "04" , BLINKEND => "05" ,
SCHNELL_BLINKEND => "06" , REVERS => "07" , UNSICHTBAR => "08" ,
V_SCHWARZ => "30" , V_ROT => "31" , V_GRUEN => "32" ,
V_GELB => "33" , V_BLAU => "34" , V_VIOLETT => "35" ,
V_KOBALT => "36" , V_WEISS => "37" ,
H_SCHWARZ => "40" , H_ROT => "41" , H_GRUEN => "42" ,
H_GELB => "43" , H_BLAU => "44" , H_VIOLETT => "45" ,
H_KOBALT => "46" , H_WEISS => "47" ,
SUBSKRIPT => "48" , SUPERSKRIPT => "49" , NEUTRAL => "!!" );
------------------------------------------------------------------------
ITAB : array (SPALTE) of string(1..2) :=
("01" , "02" , "03" , "04" , "05" , "06" , "07" , "08" , "09" , "10" ,
"11" , "12" , "13" , "14" , "15" , "16" , "17" , "18" , "19" , "20" ,
"21" , "22" , "23" , "24" , "25" , "26" , "27" , "28" , "29" , "30" ,
"31" , "32" , "33" , "34" , "35" , "36" , "37" , "38" , "39" , "40" ,
"41" , "42" , "43" , "44" , "45" , "46" , "47" , "48" , "49" , "50" ,
"51" , "52" , "53" , "54" , "55" , "56" , "57" , "58" , "59" , "60" ,
"61" , "62" , "63" , "64" , "65" , "66" , "67" , "68" , "69" , "70" ,
"71" , "72" , "73" , "74" , "75" , "76" , "77" , "78" , "79" , "80" );
------------------------------------------------------------------------
procedure SBA(A1, A2, A3, A4, A5, A6: BILDSCHIRM_ATTRIBUT := NEUTRAL) is
AUS_ANF : string(1..2) := ascii.esc & "[" ;
AUS_END : string(1..1) := "m" ;
begin
if A1 /= NEUTRAL then
text_io.put(item => AUS_ANF & ATAB(A1) & AUS_END);
end if ;
if A2 /= NEUTRAL then
text_io.put(item => AUS_ANF & ATAB(A2) & AUS_END);
end if ;
if A3 /= NEUTRAL then
text_io.put(item => AUS_ANF & ATAB(A3) & AUS_END);
end if ;
if A4 /= NEUTRAL then
text_io.put(item => AUS_ANF & ATAB(A4) & AUS_END);
end if ;
if A5 /= NEUTRAL then
text_io.put(item => AUS_ANF & ATAB(A5) & AUS_END);
end if ;
end SBA;
------------------------------------------------------------------------
procedure GEH_NACH(Y: ZEILE; X: SPALTE) is
AUS : string(1..8) := ascii.esc & "[??;??f" ;
begin
AUS(3..4):=ITAB(Y);
AUS(6..7):=ITAB(X);
text_io.put(item => AUS);
end GEH_NACH;
------------------------------------------------------------------------
procedure LOESCHE_BILDSCHIRM is
begin
text_io.put(item => ascii.esc & "[2J" );
end LOESCHE_BILDSCHIRM;
end ANSI_ESC;
--*******1*********2*********3*********4*********5*********6*********7*****
Messung V0.5 C=84 H=100 G=92
¤ Dauer der Verarbeitung: 0.14 Sekunden
(vorverarbeitet)
¤
*© Formatika GbR, Deutschland