|
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: 8192 (0x2000) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package V_I_Libop, seg_0509c3
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦this⟧
with System; use System; with V_I_Pass; use V_I_Pass; with Unchecked_Conversion; package V_I_Libop is pragma Not_Elaborated; pragma Suppress (Exception_Tables); pragma Suppress (All_Checks); ---- for image and value attributes --------------------- type Target_Integer is new Integer; type Target_Dv_Integer is new Integer; type Dv_Rec is record Char_Size : Target_Dv_Integer; Low : Target_Dv_Integer; High : Target_Dv_Integer; Size : Target_Dv_Integer; end record; type Dv_Ptr is access Dv_Rec; pragma Local_Access (Dv_Ptr); type Image_Rec is record Width : Integer; Count : Integer; Images : String (1 .. 1); end record; type Image_Ptr is access Image_Rec; pragma Local_Access (Image_Ptr); type Pv_Arr is array (Target_Integer range 0 .. 0) of Target_Integer; type Pv_Ptr is access Pv_Arr; pragma Local_Access (Pv_Ptr); type Char_Ptr is access Character; pragma Local_Access (Char_Ptr); function Atoc is new Unchecked_Conversion (Address, Char_Ptr); function Enum_Image (Map : Image_Ptr; Val : Target_Integer; Dv : Dv_Ptr) return Address; function Enum_Value (Str : Address; Dv : Dv_Ptr; Image : Image_Ptr) return Target_Integer; function Enum_Width (Map : Image_Ptr; Low, High : Target_Integer) return Target_Integer; function Int_Image (Val : Target_Integer; Image : Address; Dv : Dv_Ptr) return Address; function Int_Value (Str : Address; Dv : Dv_Ptr; Lb, Ub : Target_Integer) return Target_Integer; function Int_Width (Low : Target_Integer; High : Target_Integer) return Target_Integer; ------ val/pos support -------------------------------------- function Val_To_Pos (Val : Target_Integer; Pv_Map : Pv_Ptr) return Target_Integer; ------ bit support ------------------------------------------ procedure Bitcopy (Bits : Integer; Src_Base : Address; Src_Bit_Offset : Integer; Dst_Base : Address; Dst_Bit_Offset : Integer); function Biteq (Bits : Integer; Lhs_Base : Address; Lhs_Bit_Offset : Integer; Rhs_Base : Address; Rhs_Bit_Offset : Integer) return Boolean; -- catenation support --------------------------------------------- procedure Lib_Catenate (Arg_List_P : Address; New_Dv : Dv_Ptr); -- block memory support ------------------------------------------- procedure Bcopy (Src_Addr, Dst_Addr : Address; Lgth : Integer); procedure Bzero (Addr : Address; Lgth : Integer); -- Compare 2 strings of characters given their address and the length. -- Condition codes are left for the calling procedure. procedure Cmpc3 (Addr1 : Address; Addr2 : Address; Lgth : Integer); -- Compare 2 strings of chars with possibly different lengths. -- Condition codes are left for the calling procedure. procedure Cmpc4 (Addr1 : Address; Lgth1 : Integer; Addr2 : Address; Lgth2 : Integer); -- Compare 2 strings of longs with possibly different lengths. -- Condition codes are left for the calling procedure. procedure Cmpl4 (Addr1 : Address; Lgth1 : Integer; Addr2 : Address; Lgth2 : Integer); -- Compare 2 strings of words with possibly different lengths. -- Condition codes are left for the calling procedure. procedure Cmpw4 (Addr1 : Address; Lgth1 : Integer; Addr2 : Address; Lgth2 : Integer); -- Copy a block of memory from one address to another. -- Handles overlapping segments of memory. procedure Movc3 (Addr1 : Address; Addr2 : Address; Lgth : Integer); -- fixed point support -------------------------------------------- function Fixed_Mantissa (Low : Target_Integer; High : Target_Integer) return Target_Integer; -- string support -------------------------------------------- procedure Strncpy (Dest : System.Address; Src : System.Address; Len : Integer); private pragma Interface (Ada, Fixed_Mantissa); pragma Interface_Name (Fixed_Mantissa, "FIXED_MANTISSA"); pragma Interface (Ada, Movc3); pragma Interface_Name (Movc3, "MOVC3"); pragma Interface (Ada, Cmpw4); pragma Interface_Name (Cmpw4, "CMPW4"); pragma Interface (Ada, Cmpl4); pragma Interface_Name (Cmpl4, "CMPL4"); pragma Interface (Ada, Cmpc4); pragma Interface_Name (Cmpc4, "CMPC4"); pragma Interface (Ada, Cmpc3); pragma Interface_Name (Cmpc3, "CMPC3"); pragma Interface (Ada, Bzero); pragma Interface_Name (Bzero, "BZERO"); pragma Interface (Ada, Bcopy); pragma Interface_Name (Bcopy, "BCOPY"); pragma Interface (Ada, Biteq); pragma Interface_Name (Biteq, "BITEQ"); pragma Interface (Ada, Bitcopy); pragma Interface_Name (Bitcopy, "BITCOPY"); pragma Interface (Ada, Val_To_Pos); pragma Interface_Name (Val_To_Pos, "VAL_TO_POS"); pragma Interface (Ada, Int_Width); pragma Interface_Name (Int_Width, "INT_WIDTH"); pragma Interface (Ada, Int_Value); pragma Interface_Name (Int_Value, "INT_VALUE"); pragma Interface (Ada, Int_Image); pragma Interface_Name (Int_Image, "INT_IMAGE"); pragma Interface (Ada, Enum_Width); pragma Interface_Name (Enum_Width, "ENUM_WIDTH"); pragma Interface (Ada, Enum_Value); pragma Interface_Name (Enum_Value, "ENUM_VALUE"); pragma Interface (Ada, Enum_Image); pragma Interface_Name (Enum_Image, "ENUM_IMAGE"); pragma Interface (Ada, Lib_Catenate); pragma Interface_Name (Lib_Catenate, "__LIB_CATENATE"); pragma Interface (Ada, Strncpy); pragma Interface_Name (Strncpy, "__STRNCPY"); end V_I_Libop;
nblk1=7 nid=0 hdr6=e [0x00] rec0=24 rec1=00 rec2=01 rec3=020 [0x01] rec0=15 rec1=00 rec2=02 rec3=014 [0x02] rec0=15 rec1=00 rec2=03 rec3=046 [0x03] rec0=13 rec1=00 rec2=04 rec3=04a [0x04] rec0=18 rec1=00 rec2=05 rec3=00c [0x05] rec0=16 rec1=00 rec2=06 rec3=042 [0x06] rec0=08 rec1=00 rec2=07 rec3=000 tail 0x217580618878e79e0a244 0x42a00088462060003