|
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 - download
Length: 8192 (0x2000) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Temporary, seg_027f88
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦this⟧
------------------------------------------------------------------------------- with Umps_Defs; with Text_Io; package body Temporary is Max_Index : constant Natural := 100; subtype Private_String is String (1 .. 200); type Private_Range is range 1 .. Max_Index; type A_Table is array (Private_Range range <>) of Private_String; The_Table : A_Table (Private_Range); Current_Index : Private_Range := Private_Range'First; Adding_Index : Private_Range := Private_Range'First; --------------------------------------------------------------------------- procedure Add_Table (The_String : String) is begin if (Adding_Index in Private_Range) then Umps_Defs.Normalize (The_String, The_Table (Adding_Index)); Adding_Index := Private_Range'Succ (Adding_Index); end if; end Add_Table; --------------------------------------------------------------------------- procedure Init is begin Current_Index := Private_Range'First; Add_Table ("Request,Register, 0, 1, 0,Date, 1,The_Date, String,"); Add_Table ("Request,Register, 0, 1, 0,Time, 1,The_Time, Integer,"); Add_Table ("Request,Register, 0, 2, 0,Open, 2,File, String,aga,Rights, string,"); Add_Table ("Request,Register, 0, 2, 0,Open_File, 1,File, String,toto.c"); Add_Table ("Request,Register, 0, 2, 0,Open_File, 1,File, String,toto.c"); Add_Table ("Request,Register, 0, 2, 0,Open_@, 1,File, String,toto.c"); Add_Table ("Request,Register, 0, 3, 0,Display, 1,The_Number, Integer,12"); Add_Table ("Request,Register, 0, 3, 0,Open_Display, 1,Terminal, String,asperule:0"); Add_Table ("Request,Observed, 0, 1, 0,Open_File, 1,File, String,"); Add_Table ("Request,Query, 0, 1, 0,@, 0,"); Add_Table ("Request,Query, 0, 1, 0,Open@, 0,"); Add_Table ("Notice,Observed, 0, 1, 0,File,Open@, 0,"); Add_Table ("Notice,Observed, 0, 1, 0,File,Close, 0,"); -- Add_Table ("Request,Send, 0, 2, 0,Date,1,The_Date, String,"); Add_Table ("Request,Done, 0, 1, 2,Date,1,The_Date, String,16 avril 93"); Add_Table ("Request,Send, 0, 1, 0,Open,2,File, String,toto.c,Rights, String,rw"); Add_Table ("Request,Done, 0, 2, 1,Open,2,File, String,toto.c,Rights, String,rw"); Add_Table ("Notice,Send, 0, 2, 3,File,Close,1,File, String,toto.c"); Add_Table ("Request,Send, 0, 1, 3,Print,1,The_Date, String,16 avril 93"); Add_Table ("Request,Send, 0, 2, 0,Date,1,The_Date, String,"); Add_Table ("Request,Send, 0, 2, 0,Date,1,The_Date, String,"); Add_Table ("Request,Done, 0, 1, 2,Date,1,The_Date, String,16 avril 93"); Add_Table ("Request,Send, 0, 2, 0,Date,1,The_Date, String,"); Add_Table ("Request,Done, 0, 1, 2,Date,1,The_Date, String,16 avril 93"); end Init; --------------------------------------------------------------------------- procedure Put (The_Message : String; Message_Sended : out Boolean) is begin Message_Sended := True; Text_Io.Put_Line (The_Message); end Put; --------------------------------------------------------------------------- procedure Get (A_Message : in out String; Message_Size : out Natural; A_Message_Receive : out Boolean) is Index : Natural; begin if (Current_Index < Adding_Index) then A_Message_Receive := True; Index := 0; Search_End_Char: for I in The_Table (Current_Index)'Range loop exit Search_End_Char when The_Table (Current_Index) (I) = Ascii.Nul; Index := I; end loop Search_End_Char; Message_Size := Index; Umps_Defs.Normalize (The_Table (Current_Index) (1 .. Index), A_Message); Current_Index := Private_Range'Succ (Current_Index); else A_Message_Receive := False; Message_Size := 0; end if; end Get; end Temporary; -------------------------------------------------------------------------------
nblk1=7 nid=2 hdr6=a [0x00] rec0=1d rec1=00 rec2=01 rec3=09e [0x01] rec0=17 rec1=00 rec2=03 rec3=060 [0x02] rec0=18 rec1=00 rec2=05 rec3=006 [0x03] rec0=1c rec1=00 rec2=04 rec3=082 [0x04] rec0=10 rec1=00 rec2=06 rec3=000 [0x05] rec0=0f rec1=00 rec2=02 rec3=000 [0x06] rec0=02 rec1=00 rec2=04 rec3=001 tail 0x21520d4ca83ad7f8e07d5 0x42a00088462063c03 Free Block Chain: 0x2: 0000 00 07 02 05 80 1a 20 20 20 20 20 20 20 20 20 20 ┆ ┆ 0x7: 0000 00 00 01 60 80 1f 54 68 65 5f 44 61 74 65 2c 20 ┆ ` The_Date, ┆