|
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: 5120 (0x1400) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Local_Io_Conf, package body Serial_Support, seg_057e4f
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦this⟧
with Unchecked_Conversion; package body Local_Io_Conf is package Serial_Support is procedure Init; procedure Put (B : General_Defs.Byte); procedure Get (B : out General_Defs.Byte; Got_Byte : out Boolean); end Serial_Support; package body Serial_Support is procedure Init is begin C_Driver_Serie.Interface_Serie.Initialiser (General_Defs.Port_A, General_Defs.Bd9600, General_Defs.None, 8, 1); C_Driver_Serie.Interface_Serie.Serie.Emission_Reception (Port_Serie => General_Defs.Port_A, Mode => C_Driver_Serie.Interface_Serie.Serie.R); C_Driver_Serie.Interface_Serie.Serie.Pos_Interruption (C_Driver_Serie.Interface_Serie.Serie.R); end Init; procedure Put (B : General_Defs.Byte) is Trame1 : General_Defs.Byte_String (1 .. 1); begin Trame1 (1) := B; C_Driver_Serie.Tache_Driver_Serie.Ecriture_Trame (Trame1, General_Defs.Port_A); end Put; procedure Get (B : out General_Defs.Byte; Got_Byte : out Boolean) is Taille : Integer; Trame1 : General_Defs.Byte_String (1 .. 1); Port : General_Defs.Port := General_Defs.Port_A; begin C_Driver_Serie.Tache_Driver_Serie.Lecture_Trame (Trame1, Taille, Port); end Get; end Serial_Support; procedure Initialize (Device : Local_Device_Handle) is begin if Device = Dev0 then Serial_Support.Init; -- else -- raise Use_Error; end if; end Initialize; procedure Shutdown (Device : Local_Device_Handle) is begin null; end Shutdown; procedure Write_Char (Char : General_Defs.Byte) is begin Serial_Support.Put (Char); if General_Defs.Egaux (General_Defs.Byte (Character'Pos (Ascii.Lf)), Char) then Serial_Support.Put (Character'Pos (Ascii.Cr)); end if; end Write_Char; procedure Read (Device : Local_Device_Handle; Addr : System.Address; Count : in out Natural) is Taille : Integer; Trame1 : General_Defs.Byte_String (1 .. 1024); Port : General_Defs.Port := General_Defs.Port_A; begin C_Driver_Serie.Tache_Driver_Serie.Lecture_Trame (Trame1, Taille, Port); end Read; procedure Write (Device : Local_Device_Handle; Addr : System.Address; Count : in out Natural) is Trame1 : General_Defs.Byte_String (1 .. 1024); Port : General_Defs.Port := General_Defs.Port_A; begin C_Driver_Serie.Tache_Driver_Serie.Ecriture_Trame (Trame1, General_Defs.Port_A); end Write; end Local_Io_Conf;
nblk1=4 nid=0 hdr6=8 [0x00] rec0=1b rec1=00 rec2=01 rec3=034 [0x01] rec0=24 rec1=00 rec2=04 rec3=016 [0x02] rec0=1b rec1=00 rec2=02 rec3=008 [0x03] rec0=01 rec1=00 rec2=03 rec3=000 tail 0x217652ef887d482c5eed7 0x42a00088462060003