|
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: 7168 (0x1c00) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Duart_2661, seg_05be1e, seg_05c29a
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦this⟧
with V_Bits; package body Duart_2661 is Cste_Stop_Bit : constant array (Stop_Bit) of Integer := (Stop_Bit_0 => 2#0000_0000#, Stop_Bit_1 => 2#0100_0000#, Stop_Bit_1_5 => 2#1000_0000#, Stop_Bit_2 => 2#1100_0000#); Cste_Parity : constant array (Parity) of Integer := (Parity_None => 2#0000_0000#, Parity_Odd => 2#0001_0000#, Parity_Even => 2#0011_0000#); Cste_Car_Length : constant array (Car_Length) of Integer := (Car_Length_5_Bit => 2#0000_0000#, Car_Length_6_Bit => 2#0000_0100#, Car_Length_7_Bit => 2#0000_1000#, Car_Length_8_Bit => 2#0000_1100#); Cste_Mode : constant array (Mode) of Integer := (Mode_Synch => 2#0000_0000#, Mode_Asynch_1 => 2#0000_0001#, Mode_Asynch_16 => 2#0000_0010#, Mode_Asynch_64 => 2#0000_0011#); Cste_Clock_Source : constant array (Clock_Source) of Integer := (Clock_Source_None => 2#0011_0000#); Cste_Baud_Rate : constant array (Baud_Rate) of Integer := (Baud_Rate_75 => 2#0000_0001#, Baud_Rate_1200 => 2#0000_1001#, Baud_Rate_9600 => 2#0000_1110#, Baud_Rate_19200 => 2#0000_1111#); Cste_Operating : constant array (Operating) of Integer := (Normal => 2#0000_0000#, Asynch_Auto => 2#0100_0000#, Local_Loopback => 2#1000_0000#, Remote_Loopback => 2#1100_0000#); Cste_Req_To_Send : constant array (Req_To_Send) of Integer := (Active => 2#0000_0000#, Low => 2#0010_0000#); Cste_Error_Reset : constant array (Error_Reset) of Integer := (Normal => 2#0000_0000#, Active => 2#0001_0000#); Cste_Synch_Asynch : constant array (Synch_Asynch) of Integer := (Mode_1 => 2#0000_0000#, Mode_2 => 2#0000_1000#); Cste_Rxen : constant array (Rxen) of Integer := (Disable => 2#0000_0000#, Enable => 2#0000_0100#); Cste_Dtr : constant array (Dtr) of Integer := (Dtr_High => 2#0000_0000#, Dtr_Low => 2#0000_0010#); Cste_Txen : constant array (Txen) of Integer := (Disable => 2#0000_0000#, Enable => 2#0000_0001#); function Get_Mr1 (S : in Stop_Bit := Stop_Bit_1; P : in Parity := Parity_None; C : in Car_Length := Car_Length_8_Bit; M : in Mode := Mode_Asynch_1) return Byte is B : Integer := 0; begin B := V_Bits.Bit_Or (Cste_Stop_Bit (S), Cste_Parity (P)); B := V_Bits.Bit_Or (B, Cste_Car_Length (C)); B := V_Bits.Bit_Or (B, Cste_Mode (M)); return Byte (B); end Get_Mr1; function Get_Mr2 (C : in Clock_Source := Clock_Source_None; B : in Baud_Rate := Baud_Rate_9600) return Byte is By : Integer := 0; begin By := V_Bits.Bit_Or (Cste_Clock_Source (C), Cste_Baud_Rate (B)); return Byte (By); end Get_Mr2; function Get_Cr (O : in Operating := Normal; Rs : in Req_To_Send := Low; E : in Error_Reset := Normal; S : in Synch_Asynch := Mode_1; R : in Rxen := Enable; D : in Dtr := Dtr_Low; T : in Txen := Disable) return Byte is B : Integer := 0; begin B := V_Bits.Bit_Or (Cste_Operating (O), Cste_Req_To_Send (Rs)); B := V_Bits.Bit_Or (B, Cste_Error_Reset (E)); B := V_Bits.Bit_Or (B, Cste_Synch_Asynch (S)); B := V_Bits.Bit_Or (B, Cste_Rxen (R)); B := V_Bits.Bit_Or (B, Cste_Dtr (D)); B := V_Bits.Bit_Or (B, Cste_Txen (T)); return Byte (B); end Get_Cr; function Activer_It_Rx_Tx return Byte is begin return Get_Cr (T => Enable); end Activer_It_Rx_Tx; function Activer_It_Rx return Byte is begin return Get_Cr; end Activer_It_Rx; function Activer_It_Tx return Byte is begin return Get_Cr (R => Disable, T => Enable); end Activer_It_Tx; function Desactiver_It return Byte is begin return Get_Cr (R => Disable); end Desactiver_It; end Duart_2661;
nblk1=6 nid=4 hdr6=a [0x00] rec0=1c rec1=00 rec2=01 rec3=042 [0x01] rec0=1a rec1=00 rec2=02 rec3=044 [0x02] rec0=1a rec1=00 rec2=06 rec3=012 [0x03] rec0=1c rec1=00 rec2=03 rec3=004 [0x04] rec0=0a rec1=00 rec2=05 rec3=000 [0x05] rec0=0a rec1=00 rec2=04 rec3=000 tail 0x2176b507289556d04850b 0x42a00088462060003 Free Block Chain: 0x4: 0000 00 00 01 16 80 28 20 20 20 66 75 6e 63 74 69 6f ┆ ( functio┆