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

⟦6edf329f3⟧ Ada Source

    Length: 5120 (0x1400)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Catenate_Files, seg_00c132

Derivation

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

E3 Source Code



with Directory_Tools;
with Text_Io;  
procedure Catenate_Files (Source    : String;
                          Target    : String;
                          Separator : String := String'(1 .. 1 => Ascii.Ff)) is
    package Dtn renames Directory_Tools.Naming;
    package Dto renames Directory_Tools.Object;  
    Iter                      : Dto.Iterator;
    The_In_File, The_Out_File : Text_Io.File_Type;
    The_Char                  : Character;  
    One_File_Passed           : Boolean := False;
begin
    Text_Io.Create (The_Out_File, Text_Io.Out_File, Target);
    Iter := Dtn.Resolution (Name         => Source,
                            Context      => Dtn.Default_Context,
                            Objects_Only => True);
    while not Dto.Done (Iter) loop
        if One_File_Passed then
            Text_Io.Put_Line (The_Out_File, Separator);
        end if;
        Text_Io.Open (The_In_File, Text_Io.In_File,
                      Name => Dtn.Unique_Full_Name (Dto.Value (Iter)));
        while not Text_Io.End_Of_File (The_In_File) loop
            while not Text_Io.End_Of_Line (The_In_File) loop
                Text_Io.Get (The_In_File, The_Char);
                Text_Io.Put (The_Out_File, The_Char);
            end loop;  
            Text_Io.Skip_Line (The_In_File);
            Text_Io.New_Line (The_Out_File);
        end loop;  
        Text_Io.Close (The_In_File);
        Dto.Next (Iter);
        One_File_Passed := True;
    end loop;
    Text_Io.Close (The_Out_File);  
end Catenate_Files;


E3 Meta Data

    nblk1=4
    nid=4
    hdr6=4
        [0x00] rec0=17 rec1=00 rec2=01 rec3=05c
        [0x01] rec0=11 rec1=00 rec2=03 rec3=000
        [0x02] rec0=0c rec1=00 rec2=04 rec3=000
        [0x03] rec0=0b rec1=00 rec2=03 rec3=000
    tail 0x217092c5c82026aab0be1 0x42a00088462063c03
Free Block Chain:
  0x4: 0000  00 02 01 cf 80 20 3d 3e 20 46 74 70 5f 50 72 6f  ┆      => Ftp_Pro┆
  0x2: 0000  00 00 01 be 80 0f 6d 6f 74 65 5f 44 69 72 65 63  ┆      mote_Direc┆