|
|
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 - metrics - downloadIndex: S T V
Length: 5507 (0x1583)
Types: TextFile
Names: »SYSTEM_TEXT«, »V«
└─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3
└─⟦fc9b38f02⟧ »DATA«
└─⟦9b46a407a⟧
└─⟦12c68c704⟧
└─⟦this⟧
└─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS
└─⟦91c658230⟧ »DATA«
└─⟦458657fb6⟧
└─⟦220843204⟧
└─⟦this⟧
package System is
pragma Read_Only;
pragma Open_Private_Part;
pragma Subsystem (Ada_Base);
pragma Module_Name (4, 66);
type Address is private;
Null_Address : constant Address;
type Name is (R1000);
System_Name : constant Name := R1000;
Bit : constant := 1;
Storage_Unit : constant := 1 * Bit;
Word_Size : constant := 128 * Bit;
Byte_Size : constant := 8 * Bit;
Megabyte : constant := (2 ** 20) * Byte_Size;
Memory_Size : constant := 32 * Megabyte;
-- System-Dependent Named Numbers
Min_Int : constant := Long_Integer'Pos (Long_Integer'First);
Max_Int : constant := Long_Integer'Pos (Long_Integer'Last);
Max_Digits : constant := 15;
Max_Mantissa : constant := 63;
Fine_Delta : constant := 1.0 / (2.0 ** 63);
Tick : constant := 200.0E-9;
subtype Priority is Integer range 0 .. 5;
type Byte is new Natural range 0 .. 255;
type Byte_String is array (Natural range <>) of Byte;
-- Basic units of transmission/reception to/from IO devices.
type Virtual_Processor_Number is new Long_Integer range 0 .. 2 ** 10 - 1;
type Module_Number is new Long_Integer range 0 .. 2 ** 22 - 1;
type Module_Name is new Long_Integer range 0 .. 2 ** 32 - 1;
subtype Code_Segment_Name is Module_Name range 0 .. 2 ** 24 - 1;
type Bit_Offset is new Long_Integer range 0 .. 2 ** 32 - 1;
Null_Module : constant Module_Name := 0;
function Convert (The_Address : Address) return Long_Integer;
pragma Suppress (Elaboration_Check, Convert);
function Extract_Vp (From_Address : Address)
return Virtual_Processor_Number;
pragma Suppress (Elaboration_Check, Extract_Vp);
function Extract_Number (From_Address : Address) return Module_Number;
pragma Suppress (Elaboration_Check, Extract_Number);
function Extract_Name (From_Address : Address) return Module_Name;
pragma Suppress (Elaboration_Check, Extract_Name);
function Extract_Offset (From_Address : Address) return Bit_Offset;
pragma Suppress (Elaboration_Check, Extract_Offset);
function Get_Vp (From_Name : Module_Name) return Virtual_Processor_Number;
pragma Suppress (Elaboration_Check, Get_Vp);
function Get_Number (From_Name : Module_Name) return Module_Number;
pragma Suppress (Elaboration_Check, Get_Number);
function Compose_Name (With_Vp : Virtual_Processor_Number;
With_Number : Module_Number) return Module_Name;
pragma Suppress (Elaboration_Check, Compose_Name);
function Current_Name return Module_Name;
pragma Suppress (Elaboration_Check, Current_Name);
function Current_Vp return Virtual_Processor_Number;
pragma Suppress (Elaboration_Check, Current_Vp);
function Current_Number return Module_Number;
pragma Suppress (Elaboration_Check, Current_Number);
type Segment is private;
Null_Segment : constant Segment;
type Package_Type is private;
pragma Enable_Runtime_Privacy (Package_Type);
Null_Package : constant Package_Type;
Invalid_Package_Value : exception;
type Exception_Number is new Long_Integer range 0 .. 2 ** 48 - 1;
Operand_Class_Error : exception;
pragma Exception_Name (Operand_Class_Error, 96);
Type_Error : exception;
pragma Exception_Name (Type_Error, 97);
Visibility_Error : exception;
pragma Exception_Name (Visibility_Error, 98);
Capability_Error : exception;
pragma Exception_Name (Capability_Error, 99);
Machine_Restriction : exception;
pragma Exception_Name (Machine_Restriction, 100);
Illegal_Instruction : exception;
pragma Exception_Name (Illegal_Instruction, 101);
Illegal_Reference : exception;
pragma Exception_Name (Illegal_Reference, 102);
Illegal_Frame_Exit : exception;
pragma Exception_Name (Illegal_Frame_Exit, 103);
Record_Field_Error : exception;
pragma Exception_Name (Record_Field_Error, 104);
Utility_Error : exception;
pragma Exception_Name (Utility_Error, 105);
Unsupported_Feature : exception;
pragma Exception_Name (Unsupported_Feature, 106);
Illegal_Heap_Access : exception;
pragma Exception_Name (Illegal_Heap_Access, 107);
Select_Use_Error : exception;
pragma Exception_Name (Select_Use_Error, 108);
Frame_Establish_Error : exception;
pragma Exception_Name (Frame_Establish_Error, 129);
Nonexistent_Space_Error : exception;
pragma Exception_Name (Nonexistent_Space_Error, 131);
Nonexistent_Page_Error : exception;
pragma Exception_Name (Nonexistent_Page_Error, 132);
Write_To_Read_Only_Page : exception;
pragma Exception_Name (Write_To_Read_Only_Page, 133);
Heap_Pointer_Copy_Error : exception;
pragma Exception_Name (Heap_Pointer_Copy_Error, 134);
Assertion_Error : exception;
pragma Exception_Name (Assertion_Error, 135);
Microcode_Assist_Error : exception;
pragma Exception_Name (Microcode_Assist_Error, 136);
private
type Address is new Long_Integer;
Null_Address : constant Address := 0;
type Segment is access Boolean;
pragma Segmented_Heap (Segment);
Null_Segment : constant Segment := null;
type Package_Type is new Long_Integer;
Null_Package : constant Package_Type := 0;
end System;