|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 8192 (0x2000)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Errors, seg_038fca, seg_039406, seg_03954b
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦5a81ac88f⟧ »Space Info Vol 1«
└─⟦this⟧
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
with Bounded_String;
with Custom;
with Easy_X;
with Integer_Class;
with Message;
with Object;
with Parameters;
with Pen_Class;
with Scanner;
with String_Class;
package body Errors is
A_Pen : Object.Reference := Pen_Class.Get_For_Error;
Opened_Window : Boolean := False;
procedure Write_With_Pen (The_Pen : Object.Reference;
The_String : String;
X, Y : Integer) is
Msg : Message.Selector;
Arg : Parameters.List;
Obj : Object.Reference;
Ton_X : Scanner.Lexeme := Bounded_String.Value
("TON_X:", Custom.String_Max_Length);
Ton_Y : Scanner.Lexeme := Bounded_String.Value
("TON_Y:", Custom.String_Max_Length);
Fin : Scanner.Lexeme := Bounded_String.Value
("FIN", Custom.String_Max_Length);
Ecris : Scanner.Lexeme := Bounded_String.Value
("ECRIS:", Custom.String_Max_Length);
begin
Message.Free (Msg);
Parameters.Free (Arg);
Obj := Integer_Class.Create (X);
Message.Insert (Ton_Y, Msg);
Parameters.Insert (Obj, Arg);
Obj := Integer_Class.Create (Y);
Message.Insert (Ton_X, Msg);
Parameters.Insert (Obj, Arg);
Pen_Class.Send (The_Pen, Msg, Arg, Obj);
Obj := Pen_Class.Send (The_Pen, Fin);
Message.Free (Msg);
Parameters.Free (Arg);
Obj := String_Class.Get_For_Error (The_String);
Message.Insert (Ecris, Msg);
Parameters.Insert (Obj, Arg);
Pen_Class.Send (The_Pen, Msg, Arg, Obj);
end Write_With_Pen;
procedure Parse_Log (The_Error : String;
Terminal : String;
With_Line_Nb : Boolean := True) is
Line_Number : Natural;
begin
Easy_X.Open (Terminal, " Y'A UN PROBLEME... ", 100, 300, 800, 50);
loop
case Easy_X.Next_Event is
when Easy_X.Update =>
if With_Line_Nb then
Line_Number := Scanner.Get_Line_Number;
Write_With_Pen
(A_Pen, "En analysant la ligne numero " &
Natural'Image (Line_Number) & " :",
20, 20);
Write_With_Pen (A_Pen, The_Error, 40, 30);
else
Write_With_Pen (A_Pen, The_Error, 20, 20);
end if;
when Easy_X.Button_Down =>
exit;
when Easy_X.Button_Up =>
null;
end case;
end loop;
Opened_Window := True;
raise Stop_Parsing;
end Parse_Log;
procedure Save_Interpret_Line (Line_Number : Natural) is
begin
Interpreting_Line := Line_Number;
if not Opened_Window then
Opened_Window := True;
end if;
end Save_Interpret_Line;
procedure Interpret_Log (The_Error : String;
Terminal : String;
With_Line_Nb : Boolean := True) is
begin
Easy_X.Close;
Easy_X.Open (Terminal, " Y'A UN PROBLEME... ", 100, 300, 800, 50);
loop
case Easy_X.Next_Event is
when Easy_X.Update =>
if With_Line_Nb then
Write_With_Pen
(A_Pen, "En interpretant la ligne numero" &
Natural'Image (Interpreting_Line) & " :",
20, 20);
Write_With_Pen (A_Pen, The_Error, 40, 30);
else
Write_With_Pen (A_Pen, The_Error, 20, 20);
end if;
when Easy_X.Button_Down =>
exit;
when Easy_X.Button_Up =>
null;
end case;
end loop;
raise Stop_Interpreting;
end Interpret_Log;
procedure Run_Log (The_Error : String; Terminal : String) is
begin
if Opened_Window then
Easy_X.Close;
end if;
Easy_X.Open (Terminal, " A BIENTOT ... ", 200, 400, 700, 40);
loop
case Easy_X.Next_Event is
when Easy_X.Update =>
Write_With_Pen (A_Pen, The_Error, 30, 30);
when Easy_X.Button_Down =>
exit;
when Easy_X.Button_Up =>
null;
end case;
end loop;
Easy_X.Close;
end Run_Log;
end Errors;
nblk1=7
nid=4
hdr6=a
[0x00] rec0=1e rec1=00 rec2=01 rec3=04e
[0x01] rec0=1a rec1=00 rec2=07 rec3=030
[0x02] rec0=18 rec1=00 rec2=06 rec3=078
[0x03] rec0=19 rec1=00 rec2=02 rec3=020
[0x04] rec0=1e rec1=00 rec2=05 rec3=000
[0x05] rec0=1d rec1=00 rec2=04 rec3=001
[0x06] rec0=25 rec1=7c rec2=00 rec3=01f
tail 0x215320ca084e95a9cd8df 0x42a00088462060003
Free Block Chain:
0x4: 0000 00 03 03 67 80 14 61 73 79 5f 58 2e 42 75 74 74 ┆ g asy_X.Butt┆
0x3: 0000 00 00 02 b7 00 15 20 20 20 20 20 20 20 20 20 20 ┆ ┆