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

⟦32e334478⟧ TextFile

    Length: 763 (0x2fb)
    Types: TextFile
    Names: »B«

Derivation

└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
    └─ ⟦129cab021⟧ »DATA« 
        └─⟦bb25a46d4⟧ 
└─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16
    └─ ⟦6f12a12be⟧ »DATA« 
        └─⟦bb25a46d4⟧ 
└─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04
    └─ ⟦d65440be7⟧ »DATA« 
        └─⟦bb25a46d4⟧ 
            └─⟦this⟧ 

TextFile

with CALENDAR;
with UNCHECKED_CONVERSION;
function UNIQUE return STRING is

   type INTEGER5 is range 0 .. 31;
   for INTEGER5'SIZE use 5;

   type TIME_STRING is
      array (POSITIVE range 1 .. (CALENDAR.TIME'SIZE + INTEGER5'SIZE - 1) /
                                    INTEGER5'SIZE) of INTEGER5;

   GOOD_CHARACTERS : constant array (INTEGER5) of CHARACTER :=
      "012345abcdefghijklmnopqrstuvwxyz";

   function TO_TIME_STRING is
      new UNCHECKED_CONVERSION (SOURCE => CALENDAR.TIME, TARGET => TIME_STRING);

   NOW : constant CALENDAR.TIME := CALENDAR.CLOCK;
   TS : constant TIME_STRING := TO_TIME_STRING (NOW);
   S : STRING (TS'RANGE);
begin
   for I in TS'RANGE loop
      S (I) := GOOD_CHARACTERS (TS (I));
   end loop;
   return S;
end UNIQUE;