DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ B T

⟦35ff76ecd⟧ TextFile

    Length: 4643 (0x1223)
    Types: TextFile
    Names: »B«

Derivation

└─⟦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⟧ 

TextFile

PACKAGE BODY Transport_Defs IS
   TYPE Character_Map IS ARRAY (Character) OF Character;

   Upperfy : Character_Map;

   FUNCTION Initialize_Upperfy RETURN Character_Map IS
      Answer : Character_Map;
      Shift  : CONSTANT := Character'Pos ('A') - Character'Pos ('a');
   BEGIN
      FOR I IN Answer'Range LOOP
         Answer (I) := I;
      END LOOP;
      FOR I IN 'a' .. 'z' LOOP
         Answer (I) := Character'Val (Character'Pos (I) + Shift);
      END LOOP;
      RETURN Answer;
   END Initialize_Upperfy;

   FUNCTION Normalize (S : String) RETURN String IS
      Answer : String (S'Range);
      First  : Positive := S'First;
      Last   : Natural  := S'Last;
   BEGIN
      WHILE First <= Last AND THEN S (First) = ' ' LOOP
         First := First + 1;
      END LOOP;
      WHILE First <= Last AND THEN S (Last) = ' ' LOOP
         Last := Last - 1;
      END LOOP;
      FOR I IN First .. Last LOOP
         Answer (I) := Upperfy (S (I));
      END LOOP;
      RETURN Answer (First .. Last);
   END Normalize;

   FUNCTION Hash (S : String) RETURN Natural IS
      Answer : Natural := 0;
   BEGIN
      FOR I IN S'Range LOOP
         Answer := (Answer MOD (Natural'Last - 128)) + Character'Pos (S (I));
      END LOOP;
      RETURN Answer;
   END Hash;

   FUNCTION Normalize (S : Byte_Defs.Byte_String)
                      RETURN Byte_Defs.Byte_String IS
      First : Integer := S'First;
      Last  : Integer := S'Last;
   BEGIN
      WHILE First <= Last AND THEN Byte_Defs."=" (S (First), 0) LOOP
         First := First + 1;
      END LOOP;
      RETURN S (First .. Last);
   END Normalize;

   FUNCTION Hash (S : Byte_Defs.Byte_String) RETURN Natural IS
      Answer : Natural := 0;
   BEGIN
      FOR I IN S'Range LOOP
         Answer := (Answer MOD (Natural'Last - 256)) + Natural (S (I));
      END LOOP;
      RETURN Answer;
   END Hash;

   FUNCTION Normalize (Value : Network_Name) RETURN Network_Name IS
   BEGIN
      RETURN Network_Name (Normalize (String (Value)));
   END Normalize;

   FUNCTION Hash (Value : Network_Name) RETURN Natural IS
   BEGIN
      RETURN Hash (String (Value));
   END Hash;

   FUNCTION Normalize (Value : Host_Id) RETURN Host_Id IS
   BEGIN
      RETURN Host_Id (Normalize (Byte_Defs.Byte_String (Value)));
   END Normalize;

   FUNCTION Hash (Value : Host_Id) RETURN Natural IS
   BEGIN
      RETURN Hash (Byte_Defs.Byte_String (Value));
   END Hash;

   FUNCTION Normalize (Value : Socket_Id) RETURN Socket_Id IS
   BEGIN
      RETURN Socket_Id (Normalize (Byte_Defs.Byte_String (Value)));
   END Normalize;

   FUNCTION Hash (Value : Socket_Id) RETURN Natural IS
   BEGIN
      RETURN Hash (Byte_Defs.Byte_String (Value));
   END Hash;

   FUNCTION Image (Status : Status_Code) RETURN String IS
   BEGIN
      CASE Status IS
         WHEN Ok =>
            RETURN "OK";
         WHEN No_Local_Resources =>
            RETURN "NO_LOCAL_RESOURCES";
         WHEN No_Free_Sockets =>
            RETURN "NO_FREE_SOCKETS";
         WHEN No_Free_Memory =>
            RETURN "NO_FREE_MEMORY";
         WHEN Not_Open =>
            RETURN "NOT_OPEN";
         WHEN Not_Connected =>
            RETURN "NOT_CONNECTED";
         WHEN Too_Many_Clients =>
            RETURN "TOO_MANY_CLIENTS";
         WHEN Timed_Out =>
            RETURN "TIMED_OUT";
         WHEN No_Such_Host =>
            RETURN "NO_SUCH_HOST";
         WHEN Connection_Refused =>
            RETURN "CONNECTION_REFUSED";
         WHEN Disconnected =>
            RETURN "DISCONNECTED";
         WHEN Connection_Broken =>
            RETURN "CONNECTION_BROKEN";
         WHEN No_Hardware =>
            RETURN "NO_HARDWARE";
         WHEN No_Such_Network =>
            RETURN "NO_SUCH_NETWORK";
         WHEN Not_Initialized =>
            RETURN "NOT_INITIALIZED";
         WHEN Not_Downloaded =>
            RETURN "NOT_DOWNLOADED";
         WHEN Socket_In_Use =>
            RETURN "SOCKET_IN_USE";
         WHEN Access_Denied =>
            RETURN "ACCESS_DENIED";
         WHEN No_Free_Connections =>
            RETURN "NO_FREE_CONNECTIONS";
         WHEN Not_Registered =>
            RETURN "NOT_REGISTERED";
         WHEN Network_Unreachable =>
            RETURN "NETWORK_UNREACHABLE";
         WHEN Host_Unreachable =>
            RETURN "HOST_UNREACHABLE";
         WHEN Protocol_Not_Supported =>
            RETURN "PROTOCOL_NOT_SUPPORTED";
         WHEN No_Such_Socket =>
            RETURN "NO_SUCH_SOCKET";
         WHEN OTHERS =>
            RETURN ("Transport.Status_Code" & Status_Code'Image (Status));
      END CASE;
   END Image;

BEGIN
   Upperfy := Initialize_Upperfy;
END Transport_Defs;