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

⟦a0f3f9341⟧ Ada Source

    Length: 4096 (0x1000)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Evenement, seg_04cc84, seg_04cd6a

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



package body Evenement is

    Coupure_Secteur : constant String := "coupure secteur";
    Carte_Acceptee : constant String := "carte acceptee";
    Lecteur_En_Veille : constant String := "carte refusee =>lecteur en veille";
    Mauvais_Code_Site : constant String := "carte refusee => mauvais code site";
    Pas_Programmee : constant String := "carte refusee => pas programmee";
    Defaut_Apb : constant String := "carte refusee => defaut A.P.B";
    Mauvaise_Plage : constant String :=
       "carte refusee => mauvaise plage horaire";
    Status_Inconnu : constant String := "status inconnu";

    function Was_Power_Off (Rapport : in Object) return Boolean is
    begin
        return Rapport.Status = 16#0#;
    end Was_Power_Off;

    function Image (Status : in Natural) return String is
    begin
        case Status is
            when 16#00# =>
                return Coupure_Secteur;
            when 16#30# =>  
                return Carte_Acceptee;           when 16#31# =>
                return Lecteur_En_Veille;
            when 16#32# =>
                return Mauvais_Code_Site;
            when 16#33# =>
                return Pas_Programmee;
            when 16#34# =>
                return Defaut_Apb;
            when 16#35# =>
                return Mauvaise_Plage;
            when others =>
                return Status_Inconnu;
        end case;
    end Image;

    function Image (Rapport : in Object) return String is
    begin
        return String'(Date.Image (Rapport.La_Date) & ", Carte :" &
                       Carte.Image (Rapport.La_Carte) & ", Num tete :" &
                       Natural'Image (Rapport.Num_Tete) &
                       ", Status : " & Image (Rapport.Status));
    end Image;

    function Get (Rapport : in Object) return Carte.Object is
    begin
        return Rapport.La_Carte;
    end Get;


    function Value (The_Byte_String : in Mt.Byte_String) return Object is

        Date_Str : Mt.Byte_String (1 .. 3);
        Carte_Str : Mt.Byte_String (1 .. 2);

    begin
        Date_Str (1 .. 3) := The_Byte_String (1 .. 3);
        Carte_Str (1 .. 2) := The_Byte_String (4 .. 5);
        return Object'(La_Date => Date.Value (Date_Str),
                       La_Carte => Carte.Value (Carte_Str),
                       Num_Tete => The_Byte_String (6),
                       Status => The_Byte_String (7));

    exception
        when Constraint_Error =>
            return Zero;
    end Value;

    function Zero return Object is
    begin
        return Object'(La_Date => Date.Zero,
                       La_Carte => Carte.Zero,
                       Num_Tete => 0,
                       Status => 16#FF#);
    end Zero;


end Evenement;

E3 Meta Data

    nblk1=3
    nid=0
    hdr6=6
        [0x00] rec0=1a rec1=00 rec2=01 rec3=002
        [0x01] rec0=1d rec1=00 rec2=02 rec3=07a
        [0x02] rec0=1c rec1=00 rec2=03 rec3=000
    tail 0x217540c8e874f6e3357b3 0x42a00088462060003