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

⟦7c6cd1c71⟧ Ada Source

    Length: 5120 (0x1400)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, generic, package Direct_Io, pragma Module_Name 4 3203, pragma Segmented_Heap File_Type, pragma Subsystem Input_Output, seg_0063b5

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 Io_Exceptions;
with Device_Independent_Io;

generic
    type Element_Type is private;
    pragma Must_Be_Constrained (Element_Type);
package Direct_Io is

    pragma Subsystem (Input_Output);
    pragma Module_Name (4, 3203);

    type File_Type is limited private;

    type File_Mode is (In_File, Inout_File, Out_File);

    type Count is new Integer range 0 .. Integer'Last / Element_Type'Size;

    subtype Positive_Count is Count range 1 .. Count'Last;


    -- File management


    procedure Create (File : in out File_Type;
                      Mode :        File_Mode := Inout_File;
                      Name :        String    := "";
                      Form :        String    := "");

    procedure Open (File : in out File_Type;
                    Mode :        File_Mode;
                    Name :        String;
                    Form :        String := "");

    procedure Close  (File : in out File_Type);
    procedre Delete (File : in out File_Type);
    procedure Reset  (File : in out File_Type; Mode : File_Mode);
    procedure Reset  (File : in out File_Type);

    function Mode (File : File_Type) return File_Mode;
    function Name (File : File_Type) return String;
    function Form (File : File_Type) return String;

    function Is_Open (File : File_Type) return Boolean;

    -- Input and output operations

    procedure Read (File :     File_Type;
                    Item : out Element_Type;
                    From :     Positive_Count);
    procedure Read (File : File_Type; Item : out Element_Type);

    procedure Write (File : File_Type;
                     Item : Element_Type;
                     To   : Positive_Count);
    procedure Write (File : File_Type; Item : Element_Type);

    procedure Set_Index (File : File_Type; To : Positive_Count);

    function Index (File : File_Type) return Positive_Count;
    function Size  (File : File_Type) return Count;

    function End_Of_File (File : File_Type) return Boolean;


    -- Exceptions

    Status_Error : exception renames Io_Exceptions.Status_Error;
    Mode_Error   : exception renames Io_Exceptions.Mode_Error;
    Name_Error   : exception renames Io_Exceptions.Name_Error;
    Use_Error    : exception renames Io_Exceptions.Use_Error;
    Device_Error : exception renames Io_Exceptions.Device_Error;
    End_Error    : exception renames Io_Exceptions.End_Error;
    Data_Error   : exception renames Io_Exceptions.Data_Error;

private
    -- implementation dependent
    type File_Descriptor;
    type File_Type is access File_Descriptor;
    pragma Segmented_Heap (File_Type);
end Direct_Io;

E3 Meta Data

    nblk1=4
    nid=0
    hdr6=8
        [0x00] rec0=24 rec1=00 rec2=01 rec3=014
        [0x01] rec0=00 rec1=00 rec2=04 rec3=002
        [0x02] rec0=19 rec1=00 rec2=02 rec3=05e
        [0x03] rec0=15 rec1=00 rec2=03 rec3=000
    tail 0x2150141a881bf812b0868 0x42a00088462065003