|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 6144 (0x1800) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package V_I_Intr, seg_04b9ae
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦this⟧
-- Copyright 1988, 1992 Verdix Corporation ------------------------------------------------------------------------------ -- User interface to the interrupt services -- -- Provides backward compatibility with earlier releases of VADS. -- -- The interface to ALL the low kernel services is now provided in -- ada_krn_i.a. Types used by these services is defined in ada_krn_defs.a. -- -- This package simply layers upon the interrupt data structures and -- subprograms found in ada_krn_defs.a and ada_krn_i.a. -- -- Differences from earlier releases: -- [1] The following services aren't supported: enter_isr(), complete_isr(). ------------------------------------------------------------------------------ with System; with Ada_Krn_Defs; package V_I_Intr is pragma Suppress (All_Checks); pragma Suppress (Exception_Tables); pragma Not_Elaborated; V_I_Intr_Not_Supported : exception; type Intr_Vector_Id_T is new Ada_Krn_Defs.Intr_Vector_Id_T; type Intr_Status_T is new Ada_Krn_Defs.Intr_Status_T; -- DISABLE_INTR_STATUS\x09: constant intr_status_t := --\x09\x09intr_status_t(ada_krn_defs.DISABLE_INTR_STATUS); function Disable_Intr_Status return Intr_Status_T; pragma Inline_Only (Disable_Intr_Status); -- ENABLE_INTR_STATUS\x09: constant intr_status_t := --\x09\x09intr_status_t(ada_krn_defs.ENABLE_INTR_STATUS); function Enable_Intr_Status return Intr_Status_T; pragma Inline_Only (Enable_Intr_Status); -------------------------------------------------------------------------- -- RTS routines to support attach/detach 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; pragma Inline_Only (Attach_Isr); function Detach_Isr (Iv : Intr_Vector_Id_T) return Boolean; pragma Inline_Only (Detach_Isr); -------------------------------------------------------------------------- -- RTS routines to support enter/complete of ISR's -- -- Not supported. If called, raise the exception, V_I_INTR_NOT_SUPPORTED. -- -- Check, V_INTERRUPTS in VADS_EXEC, V_PASSIVE_ISR in V_USR_CONF -- or V_SIGNAL_ISR in V_USR_CONF for the routines to be called. -------------------------------------------------------------------------- procedure Enter_Isr; pragma Inline_Only (Enter_Isr); procedure Complete_Isr; pragma Inline_Only (Complete_Isr); -------------------------------------------------------------------------- -- RTS routines to enter/leave supervisor state for the current task -------------------------------------------------------------------------- procedure Enter_Supervisor_State; pragma Inline_Only (Enter_Supervisor_State); procedure Leave_Supervisor_State; pragma Inline_Only (Leave_Supervisor_State); -------------------------------------------------------------------------- -- RTS routine to support getting of interrupt status -------------------------------------------------------------------------- procedure Get_Interrupts (Old_Status : out Intr_Status_T); pragma Inline_Only (Get_Interrupts); -------------------------------------------------------------------------- -- 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); pragma Inline_Only (Disable_Interrupts); procedure Restore_Interrupts (Old_Status : Intr_Status_T); pragma Inline_Only (Restore_Interrupts); end V_I_Intr;
nblk1=5 nid=0 hdr6=a [0x00] rec0=1c rec1=00 rec2=01 rec3=076 [0x01] rec0=15 rec1=00 rec2=02 rec3=030 [0x02] rec0=15 rec1=00 rec2=03 rec3=028 [0x03] rec0=12 rec1=00 rec2=04 rec3=058 [0x04] rec0=04 rec1=00 rec2=05 rec3=001 tail 0x21750bd7686843834dce6 0x42a00088462060003