| 
 | 
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: 4313 (0x10d9)
    Types: TextFile
    Names: »B«
└─⟦149519bd4⟧ Bits:30000546 8mm tape, Rational 1000, !projects 93-07-13
    └─⟦124ff5788⟧ »DATA« 
        └─⟦this⟧ 
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
    └─⟦129cab021⟧ »DATA« 
        └─⟦this⟧ 
└─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16
    └─⟦6f12a12be⟧ »DATA« 
        └─⟦this⟧ 
└─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04
    └─⟦d65440be7⟧ »DATA« 
        └─⟦this⟧ 
with Rpc_Defs;
with Rpc_Client;
with Transport_Defs;
with Transport_Interchange;
with Transport_Name;
with Transport_Stream;
with Unbounded_String;
package body X_Io is
    package Us is new Unbounded_String;
    Remote_Host : constant Transport_Defs.Host_Id :=
       Transport_Name.Host_To_Host_Id ("Belladone");
    procedure Start_Request is  
       new Rpc_Client.Start_Request_Generic
              (Default_Network => Rpc_Defs.Network,
               Default_Host => Remote_Host,
               Default_Socket => Rpc_Defs.Socket,
               Default_Program => Rpc_Defs.Program,
               Default_Version => Rpc_Defs.Version);
    procedure End_Request (Stream : Transport_Stream.Stream_Id)
        renames Rpc_Client.End_Request;
    package body Xterm is
        type Object_Implementation is
            record
                Host : Us.Variable_String;
                Display : Us.Variable_String;
            end record;
        Xterm_Pool : array (1 .. 100) of Object_Implementation;
        procedure Create (Terminal : out Xterm.Object;
                          Host : String;
                          Display : String := "0") is
            Stream : Transport_Stream.Stream_Id;
        begin  
            Terminal := null;
            Start_Request (Stream => Stream,
                           Proc => Rpc_Defs.Proc_Number.Xterm.Create);
            Transport_Interchange.Put_String (Into => Stream, Data => Host);
            -- Transport_Interchange.Put_String (Into => Stream, Data => ":0");
            End_Request (Stream);  
            Rpc_Client.End_Response (Stream);
        end Create;
        procedure Close (Terminal : Xterm.Object) is
            Stream : Transport_Stream.Stream_Id;
        begin
            Start_Request (Stream => Stream,
                           Proc => Rpc_Defs.Proc_Number.Xterm.Close);
            End_Request (Stream);
            Rpc_Client.End_Response (Stream);
        end Close;
        procedure Put (Terminal : Xterm.Object; What : String) is
            Stream : Transport_Stream.Stream_Id;
        begin
            Start_Request (Stream => Stream,
                           Proc => Rpc_Defs.Proc_Number.Xterm.Put);
            Transport_Interchange.Put_String (Into => Stream, Data => What);
            End_Request (Stream);
            Rpc_Client.End_Response (Stream);
        end Put;
    end Xterm;
    package body Log is
        type Object_Implementation is
            record
                Host : Us.Variable_String;
                Display : Us.Variable_String;
            end record;
        Log_Pool : array (1 .. 100) of Object_Implementation;
        procedure Create (Logger : out Log.Object;
                          Host : String;
                          Display : String := "0") is
            Stream : Transport_Stream.Stream_Id;
        begin
            Logger := null;
            Start_Request (Stream => Stream,
                           Proc => Rpc_Defs.Proc_Number.Log.Create);
            Transport_Interchange.Put_String (Into => Stream, Data => Host);
            -- Transport_Interchange.Put_String (Into => Stream, Data => ":0");
            End_Request (Stream);  
            Rpc_Client.End_Response (Stream);
        end Create;
        procedure Close (Logger : Log.Object) is
            Stream : Transport_Stream.Stream_Id;
        begin
            Start_Request (Stream => Stream,
                           Proc => Rpc_Defs.Proc_Number.Log.Close);
            End_Request (Stream);
            Rpc_Client.End_Response (Stream);
        end Close;
        procedure Put (Logger : Log.Object; What : String) is
            Stream : Transport_Stream.Stream_Id;
        begin
            Start_Request (Stream => Stream,
                           Proc => Rpc_Defs.Proc_Number.Log.Put);
            Transport_Interchange.Put_String (Into => Stream, Data => What);
            End_Request (Stream);
            Rpc_Client.End_Response (Stream);
        end Put;
    end Log;
    procedure Initialize is
        Stream : Transport_Stream.Stream_Id;
    begin
        Start_Request (Stream => Stream,
                       Proc => Rpc_Defs.Proc_Number.Initialize);
        End_Request (Stream);
        Rpc_Client.End_Response (Stream);
    end Initialize;
end X_Io;