DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦80beec4a8⟧ Ada Source

    Length: 3072 (0xc00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Get, seg_0290e4

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 

E3 Source Code



with Byte_Defs;
with Text_Io;
with Transport;
with Transport_Defs;
with Utils;
procedure Get is
    package T renames Transport;
    package T_Defs renames Transport_Defs;

    C : T.Connection_Id;
    S : T_Defs.Status_Code;
    N : constant T_Defs.Network_Name := "TCP/IP";
    Sid : constant Transport_Defs.Socket_Id := (10, 45);
    Cnt : Natural;

    D : Byte_Defs.Byte_String (1 .. 10);

    function "=" (L, R : Transport_Defs.Status_Code) return Boolean
        renames Transport_Defs."=";


begin
    loop

        T.Open (Connection => C,
                Status => S,
                Network => N,
                Local_Socket => Sid);

        if S /= Transport_Defs.Ok then
            Text_Io.Put_Line ("*** Server Socket Open Failed. Error Code: " &
                              Transport_Defs.Image (S));
            return;
        else
            Text_Io.Put_Line ("+++ Server Socket Open");
        end if;


        T.Connect (C, S);


        if S /= Transport_Defs.Ok then
            Text_Io.Put_Line ("*** Server Connect Failed. Error Code: " &
                              Transport_Defs.Image (S));
            return;

        else
            Text_Io.Put_Line ("+++ Server Connected");
        end if;

        Text_Io.Put_Line ("get: avant receive");
        T.Receive (Connection => C,
                   Status => S,
                   Data => D,
                   Count => Cnt,
                   Max_Wait => Duration'Last);
        Text_Io.Put_Line ("got " & Integer'Image (Cnt) & " characters => " &
                          Utils.Byte_String_To_String (D));

        T.Close (Connection => C);
        Text_Io.Put_Line ("get: connection closed");

    end loop;
end Get;

E3 Meta Data

    nblk1=2
    nid=0
    hdr6=4
        [0x00] rec0=28 rec1=00 rec2=01 rec3=010
        [0x01] rec0=1a rec1=00 rec2=02 rec3=001
    tail 0x215215c2083c874b932fb 0x42a00088462060003