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

⟦6fbdc1ea6⟧ Ada Source

    Length: 7168 (0x1c00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Mb_Frames, seg_03c40f, seg_03c4c7, seg_03c66e, seg_03c9a3, seg_04a971, seg_04b3df

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 
└─⟦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 Mb_Kbs;
with Output_Stream;
with Slot;

use Mb_Kbs;
package Mb_Frames is
    use Kbs;

    --------------------------------------------------------------------------

    type Goal_Status is (S_Satisfied, S_Active);

    package Status_Facilities is new Slot.Enumeration_Facilities (Goal_Status);

    Satisfied : constant Slot.Object := Status_Facilities.Value (S_Satisfied);
    Active    : constant Slot.Object := Status_Facilities.Value (S_Active);

    --------------------------------------------------------------------------

    type Goal_Types is (Gt_On, Gt_Holds, Gt_At, Gt_General);

    package Goal_Types_Facilities is
       new Slot.Enumeration_Facilities (Goal_Types);

    Goal_On : constant Slot.Object := Goal_Types_Facilities.Value (Gt_On);
    Goal_Holds : constant Slot.Object := Goal_Types_Facilities.Value (Gt_Holds);
    Goal_At : constant Slot.Object := Goal_Types_Facilities.Value (Gt_At);
    General : constant Slot.Object := Goal_Types_Facilities.Value (Gt_General);

    --------------------------------------------------------------------------

    type Object_Names is (On_Bananas, On_Floor, On_Blanket, On_Ladder,
                          On_Couch, On_Ceiling, On_Nothing);

    package Object_Names_Facilities is
       new Slot.Enumeration_Facilities (Object_Names);

    Bananas : constant Slot.Object :=
       Object_Names_Facilities.Value (On_Bananas);
    Floor : constant Slot.Object := Object_Names_Facilities.Value (On_Floor);
    Blanket : constant Slot.Object :=
       Object_Names_Facilities.Value (On_Blanket);
    Ladder : constant Slot.Object := Object_Names_Facilities.Value (On_Ladder);
    Couch : constant Slot.Object := Object_Names_Facilities.Value (On_Couch);
    Ceiling : constant Slot.Object :=
       Object_Names_Facilities.Value (On_Ceiling);
    No_Object : constant Slot.Object :=
       Object_Names_Facilities.Value (On_Nothing);


    --------------------------------------------------------------------------

    type Phys_Object_Weight is (Pow_Heavy, Pow_Light);

    package Phys_Object_Weight_Facilities is
       new Slot.Enumeration_Facilities (Phys_Object_Weight);

    Heavy : constant Slot.Object :=
       Phys_Object_Weight_Facilities.Value (Pow_Heavy);
    Light : constant Slot.Object :=
       Phys_Object_Weight_Facilities.Value (Pow_Light);

    --------------------------------------------------------------------------

    function Phys_Object_Image        (Of_Slot : Slot.Object) return String;  
    function Phys_Object_Weight_Image (Of_Slot : Slot.Object) return String;
    function Goal_Types_Image         (Of_Slot : Slot.Object) return String;
    function Goal_Status_Image        (Of_Slot : Slot.Object) return String;

    --------------------------------------------------------------------------


    type Point_Slots       is (X, Y);
    type Phys_Object_Slots is (Object_Name, Location, Weight, On);
    type Monkey_Slots      is (Location, On, Holds);
    type Goal_Slots        is (Status, Goal_Type, Object_Name, To);
    type Testcase_Slots    is (Goal_Type, Name);


    package Phys_Object is
       new Fact_Base.Generic_Class (Class_Name => Mb_Kbs.Phys_Object_Class,
                                    Class_Size => 20,
                                    Slot_Names => Phys_Object_Slots);

    package Monkey is
       new Fact_Base.Generic_Class (Class_Name => Mb_Kbs.Monkey_Class,
                                    Class_Size => 1,
                                    Slot_Names => Monkey_Slots);

    package Goal is new Fact_Base.Generic_Class
                           (Class_Name => Mb_Kbs.Goal_Class,
                            Class_Size => 20,
                            Slot_Names => Goal_Slots);

    package Testcase is
       new Fact_Base.Generic_Class (Class_Name => Mb_Kbs.Testcase_Class,
                                    Class_Size => 20,
                                    Slot_Names => Testcase_Slots);


end Mb_Frames;

E3 Meta Data

    nblk1=6
    nid=0
    hdr6=c
        [0x00] rec0=1d rec1=00 rec2=01 rec3=04a
        [0x01] rec0=17 rec1=00 rec2=02 rec3=02e
        [0x02] rec0=17 rec1=00 rec2=03 rec3=070
        [0x03] rec0=02 rec1=00 rec2=05 rec3=040
        [0x04] rec0=19 rec1=00 rec2=04 rec3=012
        [0x05] rec0=01 rec1=00 rec2=06 rec3=001
    tail 0x2173a8ef285af6713ea69 0x42a00088462063c03