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: ┃ T V ┃
Length: 3319 (0xcf7) Types: TextFile Names: »V«
└─⟦516dceb10⟧ Bits:30000751 8mm tape, Rational 1000, RCI_VADS └─ ⟦9a14c9417⟧ »DATA« └─⟦this⟧
-- Copyright 1988 Verdix Corporation ------------------------------------------------------------------------------ -- User interface to the interrupt services ------------------------------------------------------------------------------ WITH System; WITH V_I_Types; PACKAGE V_I_Intr IS PRAGMA Suppress (All_Checks); PRAGMA Suppress (Exception_Tables); PRAGMA Not_Elaborated; SUBTYPE Intr_Vector_Id_T IS V_I_Types.Intr_Vector_Id_T; SUBTYPE Intr_Status_T IS V_I_Types.Intr_Status_T; Disable_Intr_Status : CONSTANT Intr_Status_T := V_I_Types.Disable_Intr_Status; Enable_Intr_Status : CONSTANT Intr_Status_T := V_I_Types.Enable_Intr_Status; -------------------------------------------------------------------------- -- RTS routines to support attach/detach/enter/complete of ISR's -- The attach/detach routines return TRUE if the isr was -- successfully attached/detached. They return FALSE for an invalid -- interrupt vector. -------------------------------------------------------------------------- FUNCTION Attach_Isr (Iv : Intr_Vector_Id_T; Isr : System.Address) RETURN Boolean; FUNCTION Detach_Isr (Iv : Intr_Vector_Id_T) RETURN Boolean; PROCEDURE Enter_Isr; PROCEDURE Complete_Isr; -------------------------------------------------------------------------- -- RTS routines to enter/leave supervisor state for the current task -------------------------------------------------------------------------- PROCEDURE Enter_Supervisor_State; PROCEDURE Leave_Supervisor_State; -------------------------------------------------------------------------- -- RTS routine to support getting of interrupt status -------------------------------------------------------------------------- PROCEDURE Get_Interrupts (Old_Status : OUT Intr_Status_T); -------------------------------------------------------------------------- -- RTS routines to support enable/disable of interrupts from user program -------------------------------------------------------------------------- PROCEDURE Disable_Interrupts (Old_Status : OUT Intr_Status_T; New_Status : Intr_Status_T := Disable_Intr_Status); PROCEDURE Restore_Interrupts (Old_Status : Intr_Status_T); PRIVATE PRAGMA Interface (Ada, Attach_Isr); PRAGMA Interface_Name (Attach_Isr, "TS_ATTACH_ISR"); PRAGMA Interface (Ada, Detach_Isr); PRAGMA Interface_Name (Detach_Isr, "TS_DETACH_ISR"); PRAGMA Interface (Ada, Enter_Isr); PRAGMA Interface_Name (Enter_Isr, "TS_ENTER_ISR"); PRAGMA Interface (Ada, Complete_Isr); PRAGMA Interface_Name (Complete_Isr, "TS_COMPLETE_ISR"); PRAGMA Interface (Ada, Enter_Supervisor_State); PRAGMA Interface_Name (Enter_Supervisor_State, "TS_ENTER_SUPERVISOR_STATE"); PRAGMA Interface (Ada, Leave_Supervisor_State); PRAGMA Interface_Name (Leave_Supervisor_State, "TS_LEAVE_SUPERVISOR_STATE"); PRAGMA Interface (Ada, Get_Interrupts); PRAGMA Interface_Name (Get_Interrupts, "__GET_INTERRUPTS"); PRAGMA Interface (Ada, Disable_Interrupts); PRAGMA Interface_Name (Disable_Interrupts, "__DISABLE_INTERRUPTS"); PRAGMA Interface (Ada, Restore_Interrupts); PRAGMA Interface_Name (Restore_Interrupts, "__RESTORE_INTERRUPTS"); END V_I_Intr;