|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 5552 (0x15b0)
Types: TextFile
Names: »B«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
└─⟦129cab021⟧ »DATA«
└─⟦this⟧
with Easy_X;
with Bounded_String;
with Msg_Report;
with Turtle_Class;
with Object;
with Message;
with Arguments;
with Scanner;
with Symbol_Table;
use Object;
procedure Test_Turtle (Display : String) is
Identifier : Scanner.B_String;
Msg : Message.Selector;
Arg_List : Arguments.List;
Turtle_Object, Int_Object, Recep_Object : Object.Reference;
I, Turtle_Value : Integer;
begin
Msg_Report.Tracing_On;
Symbol_Table.Create;
Bounded_String.Copy (Identifier, Turtle_Class.Predefined_Turtle);
if Symbol_Table.Is_Found (Identifier) then
Turtle_Object := Symbol_Table.Get_Info (Identifier);
end if;
-- =======================================================================
Message.Copy (Msg, "Tonx");
Recep_Object := Turtle_Class.Send (Turtle_Object, Msg);
Msg_Report.Information
("ton x ? => " & Integer'Image (Object.Identificator (Recep_Object)));
-- =======================================================================
Message.Copy (Msg, "Tonyy");
Recep_Object := Turtle_Class.Send (Turtle_Object, Msg);
Msg_Report.Information
("ton y ? => " & Integer'Image (Object.Identificator (Recep_Object)));
-- =======================================================================
Msg_Report.Information ("ton x <= " & Integer'Image (10));
Message.Copy (Msg, "Tonx:");
Int_Object := Object.Create (C_Integer, 10);
Arg_List := Arguments.Void_Arguments;
Arguments.Write (Arg_List, Int_Object);
Recep_Object := Turtle_Class.Send (Turtle_Object, Msg, Arg_List);
Message.Copy (Msg, "Tonx");
Recep_Object := Turtle_Class.Send (Turtle_Object, Msg);
Msg_Report.Continue ("ton x ? => " &
Integer'Image (Object.Identificator (Recep_Object)));
-- =======================================================================
Msg_Report.Information ("ton y <= " & Integer'Image (100));
Message.Copy (Msg, "Tony:");
Int_Object := Object.Create (C_Integer, 100);
Arg_List := Arguments.Void_Arguments;
Arguments.Write (Arg_List, Int_Object);
Recep_Object := Turtle_Class.Send (Turtle_Object, Msg, Arg_List);
Message.Copy (Msg, "Tony");
Recep_Object := Turtle_Class.Send (Turtle_Object, Msg);
Msg_Report.Continue ("ton y ? => " &
Integer'Image (Object.Identificator (Recep_Object)));
-- =======================================================================
Symbol_Table.Image_Table;
Turtle_Class.Image_Table;
Easy_X.Open (Display);
loop
case Easy_X.Next_Event is
when Easy_X.Update =>
-- tortue vaenx:400 y:400
Arg_List := Arguments.Void_Arguments;
Int_Object := Object.Create (C_Integer, 400);
Arguments.Write (Arg_List, Int_Object);
Int_Object := Object.Create (C_Integer, 400);
Arguments.Write (Arg_List, Int_Object);
Message.Copy (Msg, "Vaenx:y:");
Recep_Object := Turtle_Class.Send
(Turtle_Object, Msg, Arg_List);
-- tortue Baissetaplume
Message.Copy (Msg, " Baissetaplume");
Recep_Object := Turtle_Class.Send (Turtle_Object, Msg);
I := 0;
while (I < 360) loop
Msg_Report.Information ("angle = " & Integer'Image (I));
-- tortue tataille:<(I / 120) + 1)>
Arg_List := Arguments.Void_Arguments;
Int_Object := Object.Create (C_Integer, (I / 120) + 1);
Arguments.Write (Arg_List, Int_Object);
Message.Copy (Msg, "Tataille:");
Recep_Object := Turtle_Class.Send
(Turtle_Object, Msg, Arg_List);
-- tortue avance: 200
Arg_List := Arguments.Void_Arguments;
Int_Object := Object.Create (C_Integer, 200);
Arguments.Write (Arg_List, Int_Object);
Message.Copy (Msg, "Avance:");
Recep_Object := Turtle_Class.Send
(Turtle_Object, Msg, Arg_List);
-- tortue vaenx:400 y:400
Arg_List := Arguments.Void_Arguments;
Int_Object := Object.Create (C_Integer, 400);
Arguments.Write (Arg_List, Int_Object);
Int_Object := Object.Create (C_Integer, 400);
Arguments.Write (Arg_List, Int_Object);
Message.Copy (Msg, "Vaenx:y:");
Recep_Object := Turtle_Class.Send
(Turtle_Object, Msg, Arg_List);
I := I + 10;
-- tortue Tonangle: <I>
Arg_List := Arguments.Void_Arguments;
Int_Object := Object.Create (C_Integer, I);
Arguments.Write (Arg_List, Int_Object);
Message.Copy (Msg, "Tonangle:");
Recep_Object := Turtle_Class.Send
(Turtle_Object, Msg, Arg_List);
end loop;
when Easy_X.Button_Up =>
exit;
when Easy_X.Button_Down =>
null;
end case;
end loop;
Easy_X.Close;
Turtle_Class.Image_Table;
Msg_Report.Information ("FIN DU TEST !!!");
end Test_Turtle;