DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

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 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: B T

⟦ef178e85a⟧ TextFile

    Length: 1090 (0x442)
    Types: TextFile
    Names: »B«

Derivation

└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
    └─⟦5cb1d1d7f⟧ »DATA« 
        └─⟦3b1ee7bd8⟧ 
            └─⟦this⟧ 

TextFile

with Readers_Writers;
use Readers_Writers;
package body Shared_Variable is

    C : Control;

    -- for testing only: Item made "in out" instead of "out"
    procedure Read (Item : in out Object_Type) is
    begin

        select
            C.Start (Read);
        or
            delay Read_Time_Limit;
            raise Timed_Out;
        end select;

        -- for testing only; this allows the scheduler to screw up!
        Copy (From => Object, To => Item);
        -- temporarily replaces
        --    Item := Object;

        -- for testing only
        Read_Put (Item);

        C.Stop;
    end Read;

    procedure Write (Item : in Object_Type) is
    begin

        select
            C.Start (Write);
        or
            delay Write_Time_Limit;
            raise Timed_Out;
        end select;

        -- for testing only; this allows the scheduler to screw up!
        Copy (From => Item, To => Object);
        -- temporarily replaces
        Object := Item;

        -- for testing only
        Write_Put (Item);

        C.Stop;
    end Write;

end Shared_Variable;