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

⟦72adc7d14⟧ Ada Source

    Length: 6144 (0x1800)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Gui_Interface, package body Iterator, seg_00f6fe

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



package body Gui_Interface is

    procedure Init_C;
    pragma Interface (C, Init_C);
    pragma Linkname (Init_C, "Init");


    function Get_Cnt_Reset_Activate_C return Integer;
    pragma Interface (C, Get_Cnt_Reset_Activate_C);
    pragma Linkname (Get_Cnt_Reset_Activate_C, "GetCntResetActivate");

    function Get_Cnt_Stop_Activate_C return Integer;
    pragma Interface (C, Get_Cnt_Stop_Activate_C);
    pragma Linkname (Get_Cnt_Stop_Activate_C, "GetCntStopActivate");

    function Get_Cnt_Step_Activate_C return Integer;
    pragma Interface (C, Get_Cnt_Step_Activate_C);
    pragma Linkname (Get_Cnt_Step_Activate_C, "GetCntStepActivate");

    function Get_Cnt_Go_Activate_C return Integer;
    pragma Interface (C, Get_Cnt_Go_Activate_C);
    pragma Linkname (Get_Cnt_Go_Activate_C, "GetCntGoActivate");

    function Get_Cnt_Quit_Activate_C return Integer;
    pragma Interface (C, Get_Cnt_Quit_Activate_C);
    pragma Linkname (Get_Cnt_Quit_Activate, "GetCntQuitActivate");

    procedure Set_Message_C (C_Message : System.Address);
    pragma Interface (C, Set_Message_C);
    pragma Linkname (Set_Message_C, "SetMessage");

    function Iter_Done_C return Integer;
    pragma Interface (C, Iter_Done_C);
    pragma Linkname (Iter_Done_C, "IterDone");

    procedure Iter_Init_C;
    pragma Interface (C, Iter_Init_C);
    pragma Linkname (Iter_Init_C, "IterInit");

    procedure Iter_Next_C;
    pragma Interface (C, Iter_Next_C);
    pragma Linkname (Iter_Next_C, "IterNext");

    function Iter_Value_C return Character;
    pragma Interface (C, Iter_Value_C);
    pragma Linkname (Iter_Value_C, "IterValue");


    procedure Init is
    begin
        Init_C;
    end Init;


    function Get_Cnt_Reset_Activate return Integer is
    begin
        return Get_Cnt_Reset_Activate_C;
    end Get_Cnt_Reset_Activate;


    function Get_Cnt_Stop_Activate return Integer is
    begin
        return Get_Cnt_Stop_Activate_C;
    end Get_Cnt_Stop_Activate;


    function Get_Cnt_Go_Activate return Integer is
    begin
        return Get_Cnt_Go_Activate_C;
    end Get_Cnt_Go_Activate;


    function Get_Cnt_Step_Activate return Integer is
    begin
        return Get_Cnt_Step_Activate_C;
    end Get_Cnt_Step_Activate;


    function Get_Cnt_Quit_Activate return Integer is
    begin
        return Get_Cnt_Quit_Activate_C;
    end Get_Cnt_Quit_Activate;


    procedure Set_Message (Message : String) is
        C_Message : constant String := Message & Ascii.Nul;
    begin
        Set_Message_C (C_Message => C_Message (C_Message'First)'Address);
    end Set_Message;


    procedure Set_Instruction (Instruction : String) is
        C_Instruction : constant String := Instruction & Ascii.Nul;
    begin
        Set_Instruction_C (C_Instruction =>
                              C_Instruction (C_Instruction'First)'Address);
    end Set_Instruction;


    procedure Update (Z80_Status : String) is
        C_Z80_Status : constant String := Z80_Status & Ascii.Nul;
    begin
        Set_Z80_Status_C (C_Z80_Status =>
                             C_Z80_Status (C_Z80_Status'First)'Address);
    end Update;


    package body Iterator is
        procedure Init is
        begin
            Iter_Init_C;
        end Init;


        function Done return Boolean is
        begin
            if Iter_Done_C = 1 then
                return True;
            else
                return False;
            end if;
        end Done;


        procedure Next is
        begin
            Iter_Next_C;
        end Next;


        function Value return Character is
        begin
            return Iter_Value_C;
        end Value;
    end Iterator;

end Gui_Interface;

E3 Meta Data

    nblk1=5
    nid=2
    hdr6=8
        [0x00] rec0=1b rec1=00 rec2=01 rec3=052
        [0x01] rec0=25 rec1=00 rec2=04 rec3=010
        [0x02] rec0=22 rec1=00 rec2=05 rec3=01a
        [0x03] rec0=29 rec1=00 rec2=03 rec3=000
        [0x04] rec0=00 rec1=d2 rec2=08 rec3=56e
    tail 0x2170bdecc822b74223bb0 0x42a00088462060003
Free Block Chain:
  0x2: 0000  00 00 03 67 80 1e 70 64 61 74 65 20 28 5a 38 30  ┆   g  pdate (Z80┆