DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ B T ┃
Length: 2634 (0xa4a) Types: TextFile Names: »B«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11 └─ ⟦129cab021⟧ »DATA« └─⟦this⟧ └─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16 └─ ⟦6f12a12be⟧ »DATA« └─⟦this⟧ └─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04 └─ ⟦d65440be7⟧ »DATA« └─⟦this⟧
with System; with Text_Io; with Xt_Interface; with Unchecked_Conversion; package body Gui_Interface is subtype File_Name_Length is Integer range 1 .. 80; procedure Set_Output_C (C_Output : System.Address); pragma Interface (C, Set_Output_C); pragma Linkname (Set_Output_C, "SetOutput"); function Iter_Done_C return Integer; pragma Interface (C, Iter_Done_C); pragma Linkname (Iter_Done_C, "IterDone"); procedure Iter_Init; pragma Interface (C, Iter_Init); pragma Linkname (Iter_Init, "IterInit"); function Iter_Done return Boolean; procedure Iter_Next; pragma Interface (C, Iter_Next); pragma Linkname (Iter_Next, "IterNext"); function Iter_Value return Character; pragma Interface (C, Iter_Value); pragma Linkname (Iter_Value, "IterValue"); type String_Access is access String; function System_Address_To_String_Access is new Unchecked_Conversion (Source => System.Address, Target => String_Access); procedure Set_Output (Output : String) is C_Output : constant String := Output & Ascii.Nul; begin Set_Output_C (C_Output => C_Output (C_Output'First)'Address); end Set_Output; function Iter_Done return Boolean is begin if Iter_Done_C = 1 then return True; else return False; end if; end Iter_Done; function File_Name return String is A_File_Name : String (File_Name_Length); I : Integer := 1; begin Iter_Init; while not Iter_Done loop A_File_Name (I) := Iter_Value; Iter_Next; I := I + 1; end loop; return A_File_Name (1 .. I - 1); end File_Name; procedure Set_Clock_Cursor_C; pragma Interface (C, Set_Clock_Cursor_C); pragma Linkname (Set_Clock_Cursor_C, "SetClockCursor"); procedure Set_Clock_Cursor is begin Text_Io.Put_Line ("1"); Set_Clock_Cursor_C; Text_Io.Put_Line ("2"); if Xt_Interface.Pending then Xt_Interface.Next_Event; Text_Io.Put_Line ("a"); Xt_Interface.Dispatch_Event; Text_Io.Put_Line ("b"); end if; Text_Io.Put_Line ("3"); end Set_Clock_Cursor; procedure Set_Arrow_Cursor_C; pragma Interface (C, Set_Arrow_Cursor_C); pragma Linkname (Set_Arrow_Cursor_C, "SetArrowCursor"); procedure Set_Arrow_Cursor is begin Set_Arrow_Cursor_C; Xt_Interface.Next_Event; Xt_Interface.Dispatch_Event; end Set_Arrow_Cursor; end Gui_Interface;