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

⟦57d502dd5⟧ Ada Source

    Length: 5120 (0x1400)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Display, seg_047708

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 

E3 Source Code



with Window_Io;

package body Display is


    Window_Player_In : Window_Io.File_Type;
    Window_Player_Out : Window_Io.File_Type;
    Window_World : Window_Io.File_Type;

    Line : Window_Io.Line_Number := 1;
    Column : Window_Io.Column_Number := 1;

    procedure Create_Window_S is
    begin
        Window_Io.Open (Window_World, Window_Io.Out_File, "Window World");  
        Window_Io.Open (Window_Player_In, Window_Io.In_File, "Window Player");
        Window_Io.Open (Window_Player_Out, Window_Io.Out_File, "Window Player");
        Window_Io.Set_Banner (Window_Player_In, "field_3", "The Joyeux Lurons");
    end Create_Window_S;

    procedure Delete_Window_S is
    begin
        Window_Io.Delete (Window_Player_In);
        Window_Io.Delete (Window_World);
    end Delete_Window_S;

    procedure Write_On_World (A_String : in String) is
    begin
        Window_Io.Overwrite (Window_World, A_String);
        Window_Io.New_Line (Window_World);
    end Write_On_World;

    procedure Write_On_Player (A_String : in String) is
    begin
        Window_Io.Overwrite (Window_Player_Out, A_String);
        Window_Io.New_Line (Window_Player_Out);
    end Write_On_Player;


    procedure Query (Input : Window_Io.File_Type;
                     Output : Window_Io.File_Type;
                     Prompt : String;
                     Line : Window_Io.Line_Number;
                     Column : Window_Io.Column_Number;
                     Item : out String;
                     Last : out Natural) is

    begin
        Window_Io.Position_Cursor (Output, Line, Column);
        Window_Io.Delete_Lines (Output);
        Window_Io.Overwrite (Output, Item => Prompt, Kind => Window_Io.Prompt);
        Window_Io.Position_Cursor (Input, Line, Column + 1);
        Window_Io.Get_Line (Input, "", Item, Last);
    end Query;


    procedure Read_Player (A_String : out String; Last : out Natural) is

    begin
        Window_Io.Report_Cursor (Window_Player_In, Line, Column);
        Query (Window_Player_In, Window_Player_Out,
               Prompt => "$ ",
               Line => Line,
               Column => 2,
               Item => A_String,
               Last => Last);
    end Read_Player;

    procedure Clear_Player is
    begin
        Window_Io.Delete_Lines (Window_Player_In);
    end Clear_Player;

    procedure Clear_World is
    begin
        Window_Io.Delete_Lines (Window_World);
    end Clear_World;

end Display;

E3 Meta Data

    nblk1=4
    nid=4
    hdr6=6
        [0x00] rec0=1f rec1=00 rec2=01 rec3=04e
        [0x01] rec0=1d rec1=00 rec2=03 rec3=00e
        [0x02] rec0=15 rec1=00 rec2=02 rec3=000
        [0x03] rec0=0d rec1=00 rec2=04 rec3=000
    tail 0x215447d0286544f0fe010 0x42a00088462060003
Free Block Chain:
  0x4: 0000  00 00 01 52 80 1d 28 41 5f 53 74 72 69 6e 67 20  ┆   R  (A_String ┆