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: 9113 (0x2399) Types: TextFile Names: »V«
└─⟦149519bd4⟧ Bits:30000546 8mm tape, Rational 1000, !projects 93-07-13 └─ ⟦124ff5788⟧ »DATA« └─⟦this⟧ └─⟦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⟧
package Frame is -- Definition of a Request element type Command is (Reset, Autotest, Single_Shot, Flash, Free_Running, Int_Value, Int_Positive, Int_Negative); for Command use (Reset => 2#000#, Autotest => 2#001#, Single_Shot => 2#010#, Flash => 2#011#, Free_Running => 2#100#, Int_Value => 2#101#, Int_Positive => 2#110#, Int_Negative => 2#111#); type Sensor_Adr_Mode is (Port_A_Numeric, Port_A_Analogic, Port_B_Numeric, Slice); for Sensor_Adr_Mode use (Port_A_Numeric => 2#00#, Port_A_Analogic => 2#01#, Port_B_Numeric => 2#10#, Slice => 2#11#); type Sensor_Adr_Selection is range 2#000# .. 2#111#; subtype Sensor_Bit_Selection is Sensor_Adr_Selection; subtype Sensor_Slice_Selection is Sensor_Adr_Selection; Bit1_Bit0_B_Slice : constant Sensor_Slice_Selection := 2#000#; Bit3_Bit2_B_Slice : constant Sensor_Slice_Selection := 2#001#; Bit5_Bit4_B_Slice : constant Sensor_Slice_Selection := 2#010#; Bit7_Bit6_B_Slice : constant Sensor_Slice_Selection := 2#011#; Bit3_Bit0_B_Slice : constant Sensor_Slice_Selection := 2#100#; Bit7_Bit4_B_Slice : constant Sensor_Slice_Selection := 2#101#; Bit7_Bit0_B_Slice : constant Sensor_Slice_Selection := 2#110#; Bit7_Bit0_A_Slice : constant Sensor_Slice_Selection := 2#111#; type Request is private; function Create_Request (The_Command : Command; Adressing_Mode : Sensor_Adr_Mode; Bit_Selection : Sensor_Bit_Selection) return Request; function Create_Request (The_Command : Command; Slice_Selection : Sensor_Slice_Selection) return Request; -- Definition of Mode element type Sample_Count is (N_1, N_2, N_4, N_8, N_16, N_32, N_64, N_128); for Sample_Count use (N_1 => 2#000#, N_2 => 2#001#, N_4 => 2#010#, N_8 => 2#011#, N_16 => 2#100#, N_32 => 2#101#, N_64 => 2#110#, N_128 => 2#111#); type Format is (Eight_Bits, Sixteen_Bits); for Format use (Eight_Bits => 0, Sixteen_Bits => 1); type Mean is (Arithmetic, Slippery); for Mean use (Arithmetic => 0, Slippery => 1); type Measure is (Analogic, Numeric, Frequence, Period, Period_Up, Period_Down, Detection_Up, Detection_Down); for Measure use (Analogic => 2#000#, Numeric => 2#001#, Frequence => 2#010#, Period => 2#011#, Period_Up => 2#100#, Period_Down => 2#101#, Detection_Up => 2#110#, Detection_Down => 2#111#); type Mode is private; function Create_Mode (Mean_Value : Mean; Number_Of_Samples : Sample_Count; Data_Format : Format; Measure_Type : Measure) return Mode; -- Definition of Number and Periodicity of Transmissions element type Transmission_Count is (Infinity, N_1, N_2, N_5, N_10, N_20, N_50, N_100, N_200, N_500, N_1000, N_2000, N_5000, N_10000, N_20000, N_50000); for Transmission_Count use (Infinity => 2#0000#, N_1 => 2#0001#, N_2 => 2#0010#, N_5 => 2#0011#, N_10 => 2#0100#, N_20 => 2#0101#, N_50 => 2#0110#, N_100 => 2#0111#, N_200 => 2#1000#, N_500 => 2#1001#, N_1000 => 2#1010#, N_2000 => 2#1011#, N_5000 => 2#1100#, N_10000 => 2#1101#, N_20000 => 2#1110#, N_50000 => 2#1111#); type Transmission_Period is (Maximal_Speed, P_1ms, P_2ms, P_5ms, P_10ms, P_20ms, P_50ms, P_100ms, P_200ms, P_500ms, P_1s, P_2s, P_5s, P_10s, P_20s, P_60s); for Transmission_Period use (Maximal_Speed => 2#0000#, P_1ms => 2#0001#, P_2ms => 2#0010#, P_5ms => 2#0011#, P_10ms => 2#0100#, P_20ms => 2#0101#, P_50ms => 2#0110#, P_100ms => 2#0111#, P_200ms => 2#1000#, P_500ms => 2#1001#, P_1s => 2#1010#, P_2s => 2#1011#, P_5s => 2#1100#, P_10s => 2#1101#, P_20s => 2#1110#, P_60s => 2#1111#); type N_Delta_T is private; function Create_N_Delta_T (Number_Of_Transmissions : Transmission_Count; Period_Of_Transmissions : Transmission_Period) return N_Delta_T; -- Definition of threshold element type Threshold is range 0 .. 255; -- Definition of task element type Task_Selection is private; type Task_Identification is range 0 .. 7; function Create_Task_Selection return Task_Selection; procedure Action_On_Task (T : in out Task_Selection; Which_One : Task_Identification); procedure No_Action_On_Task (T : in out Task_Selection; Which_One : Task_Identification); -- Definition of adress element type Station_Identification is range 0 .. 30; type Adress is private; function Create_Adress (Station : Station_Identification; Station_Task : Task_Identification) return Adress; -- Definition of message element type Message is private; function Is_Acknowledge (M : Message) return Boolean; function As_Adress (M : Message) return Adress; function As_Natural (M : Message) return Natural; private type Request is record Master_Command : Command; Adressing_Mode : Sensor_Adr_Mode; Adressing_Selection : Sensor_Adr_Selection; end record; for Request use record Master_Command at 0 range 0 .. 2; Adressing_Mode at 0 range 3 .. 4; Adressing_Selection at 0 range 5 .. 7; end record; for Request'Size use 8; type Mode is record Mean_Value : Mean; Number_Of_Samples : Sample_Count; Data_Format : Format; Measure_Type : Measure; end record; for Mode use record Mean_Value at 0 range 0 .. 0; Number_Of_Samples at 0 range 1 .. 3; Data_Format at 0 range 4 .. 4; Measure_Type at 0 range 5 .. 7; end record; for Mode'Size use 8; type N_Delta_T is record Number_Of_Transmissions : Transmission_Count; Period_Of_Transmissions : Transmission_Period; end record; for N_Delta_T use record Number_Of_Transmissions at 0 range 0 .. 3; Period_Of_Transmissions at 0 range 4 .. 7; end record; for Threshold'Size use 8; type Task_Selection is record Task7_Active : Boolean; Task6_Active : Boolean; Task5_Active : Boolean; Task4_Active : Boolean; Task3_Active : Boolean; Task2_Active : Boolean; Task1_Active : Boolean; Task0_Active : Boolean; end record; for Task_Selection use record Task7_Active at 0 range 0 .. 0; Task6_Active at 0 range 1 .. 1; Task5_Active at 0 range 2 .. 2; Task4_Active at 0 range 3 .. 3; Task3_Active at 0 range 4 .. 4; Task2_Active at 0 range 5 .. 5; Task1_Active at 0 range 6 .. 6; Task0_Active at 0 range 7 .. 7; end record; for Task_Selection'Size use 8; type Adress is record Station : Station_Identification; Task_Number : Task_Identification; end record; for Adress use record Station at 0 range 0 .. 4; Task_Number at 0 range 5 .. 7; end record; for Adress'Size use 8; type Message is range 0 .. 255; for Message'Size use 8; end Frame;