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

⟦26787e662⟧ Ada Source

    Length: 5120 (0x1400)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Main, seg_00539a, separate Puz_Main

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



separate (Puz_Main)  
procedure Main  
             (Display      : X_String := "";     -- X server to use
              Geometry     : X_String := "";     -- geometry of window
              Size         : String   := "";     -- puzzle size in squares
              Speed        : Natural  := 0;      -- tiles/second to move
              New_Colormap : Boolean  := False)  -- create a new colormap
              is  
    Count  : S_Natural;  
    Option : X_Rm_Value;  
    Typee  : X_Rm_Representation;  
begin

    Tiles_Per_Second := S_Long (Speed);

--    /********************************/
--    /** parse command line options **/
--    /********************************/

    Setup_Display (Display);

    if Size = "" then  
        X_Get_Default (Dpy, "Puzzle", "Size", Typee, Option);  
        if "=" (Option, None_X_Rm_Value) then  
            Puzzle_Width  := 4;  
            Puzzle_Height := 4;  
        else  
            Figure_Puzzle_Size (To_String (Option.V_X_String_Pointer.all));  
        end if;  
    else  
        Figure_Puzzle_Size (Size);  
    end if;  
    Puzzle_Size := Min ((Puzzle_Width / 2) * 2, (Puzzle_Height / 2) * 2);

    if Tiles_Per_Second = 0 then  
        X_Get_Default (Dpy, "Puzzle", "Speed", Typee, Option);  
        if "/=" (Option, None_X_Rm_Value) then  
            Tiles_Per_Second := S_Natural (Option.V_S_Long);  
        else  
            Tiles_Per_Second := Default_Speed;  
        end if;  
        if Tiles_Per_Second = 0 then  
            Tiles_Per_Second := 1;  
        end if;  
    end if;

    Create_New_Colormap := New_Colormap;  
    if not Create_New_Colormap then  
        X_Get_Default (Dpy, "Puzzle", "Colormap", Typee, Option);  
        if "/=" (Option, None_X_Rm_Value) then  
            Create_New_Colormap := True;  
        end if;  
    end if;

    if Geometry = "" then  
        X_Get_Default (Dpy, "Puzzle", "Geometry", Typee, Option);  
        if "/=" (Option, None_X_Rm_Value) then  
            Setup (Display, Option.V_X_String_Pointer.all);  
        else  
            Setup (Display, Geometry);  
        end if;  
    else  
        Setup (Display, Geometry);  
    end if;

    Process_Input;

exception  
    when Terminate_Program =>  
        null;  
end Main;  

E3 Meta Data

    nblk1=4
    nid=0
    hdr6=8
        [0x00] rec0=1d rec1=00 rec2=01 rec3=03e
        [0x01] rec0=00 rec1=00 rec2=04 rec3=006
        [0x02] rec0=1c rec1=00 rec2=02 rec3=07a
        [0x03] rec0=10 rec1=00 rec2=03 rec3=000
    tail 0x21700894481978953118d 0x42a00088462063203