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 - download
Index: ┃ B T

⟦1c27b461d⟧ TextFile

    Length: 2921 (0xb69)
    Types: TextFile
    Names: »B«

Derivation

└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
    └─ ⟦129cab021⟧ »DATA« 
        └─⟦this⟧ 

TextFile

with Easy_Y;
with Object;

package body Graphic_Y is
    procedure Open (The_Display : String := "Aneth";
                    The_Window : in out Easy_Y.Window_Type) is
    begin
        Easy_Y.Open (Display => The_Display, Window => The_Window);
        Graphic_Y.Plot (0, 0);
        X_Current := 0;
        Easy_Y.Put_X (Window => The_Window, X => Object.Index (X_Current));
        Y_Current := 0;
        Easy_Y.Put_Y (Window => The_Window, Y => Object.Index (Y_Current));
    end Open;


    procedure Close (The_Window : in out Easy_Y.Window_Type) is
    begin
        Easy_Y.Close (Window => The_Window);
    end Close;


    procedure Move (X : in Integer; Y : in Integer) is
    begin
        X_Current := X;
        Y_Current := Y;
        Easy_Y.Move_To (Easy_Y.Coordinate (X_Current),
                        Easy_Y.Coordinate (Y_Current));
    end Move;


    procedure Draw (X : in Integer; Y : in Integer) is
    begin
        Easy_Y.Move_To (Easy_Y.Coordinate (X_Current),
                        Easy_Y.Coordinate (Y_Current));
        X_Current := X;
        Y_Current := Y;
        Easy_Y.Line_To (Easy_Y.Coordinate (X_Current),
                        Easy_Y.Coordinate (Y_Current));
    end Draw;


    procedure Carre (X : in Integer; Y : in Integer; Cote : in Integer) is
    begin
        Move (X, Y);
        Draw (X + Cote, Y);
        Draw (X + Cote, Y + Cote);
        Draw (X, Y + Cote);
        Draw (X, Y);
    end Carre;


    procedure Plot (X : in Integer; Y : in Integer) is
    begin
        X_Current := X;
        Y_Current := Y;
        Easy_Y.Move_To (Easy_Y.Coordinate (X_Current),
                        Easy_Y.Coordinate (Y_Current));
        Easy_Y.Line_To (Easy_Y.Coordinate (X_Current),
                        Easy_Y.Coordinate (Y_Current));
    end Plot;


    procedure Rectangle (X1 : in Integer;
                         Y1 : in Integer;
                         X2 : in Integer;
                         Y2 : in Integer) is
    begin
        Easy_Y.Move_To (Easy_Y.Coordinate (X1), Easy_Y.Coordinate (Y1));
        Easy_Y.Line_To (Easy_Y.Coordinate (X2), Easy_Y.Coordinate (Y1));
        Easy_Y.Line_To (Easy_Y.Coordinate (X2), Easy_Y.Coordinate (Y2));
        Easy_Y.Line_To (Easy_Y.Coordinate (X1), Easy_Y.Coordinate (Y2));
        Easy_Y.Line_To (Easy_Y.Coordinate (X1), Easy_Y.Coordinate (Y1));
    end Rectangle;

    procedure Thick (Taille : in Integer) is
    begin
        Easy_Y.Set_Pen (Easy_Y.Dimension (Taille));
    end Thick;


    procedure Write (A_String : in String; Font : in Size := Medium) is
    begin
        Easy_Y.Draw_String (A_String);
        Easy_Y.Set_Font (Easy_Y.Fonts'Val (Size'Pos (Font)));
    end Write;

    procedure Set_Display (Display : Integer) is
    begin
        null;
    end Set_Display;


    function Get_Display return Integer is
        I : Integer;
    begin
        return I;
    end Get_Display;

end Graphic_Y;