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

⟦0f396a307⟧ Ada Source

    Length: 3072 (0xc00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Maze, seg_05828c

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



----------------------------------------------------------------------
--
--                     Maze Package
--
--                      written by
--
--                   Edmond Schonberg
--
--                      Ada Project
--                   Courant Institute
--                  New York University
--                   251 Mercer Street
--                New York, New York  10012
--
-----------------------------------------------------------------------

package Maze is
    -- basic data structures.
    type Position is
        record
            Row, Col : Integer;
        end record;

    type Direction is (Up, Right, Down, Left);
    Goal : Position;

    -- The array dist is a shared data structure, accessed by all exploring
    -- tasks. A given position p in the maze has been visited by some task if
    --     dist(p.pos, p.col) < max_dist.
    Dist : array (1 .. 24, 1 .. 80) of Integer;
    Max_Dist : Integer := 1000;

    -- procedures to navigate the maze.

    function Open (P : Position) return Boolean;
    procedure Mark (P : Position; D : Direction);
    procedure New_Maze (Start, Goal : Position; Num_Lines : Integer);
    function Next_Pos (P : Position; D : Direction) return Position;
    function Right_Of (D : Direction) return Direction;
    function Left_Of (D : Direction) return Direction;
    function Back_Of (D : Direction) return Direction;
end Maze;

E3 Meta Data

    nblk1=2
    nid=0
    hdr6=4
        [0x00] rec0=22 rec1=00 rec2=01 rec3=006
        [0x01] rec0=0b rec1=00 rec2=02 rec3=001
    tail 0x2176587a687e28220ea62 0x42a00088462060003