|
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: 3072 (0xc00) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, seg_00b514
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦this⟧
SEPARATE (Transport) FUNCTION Byte_String_To_Integer (Bs : Byte_Defs.Byte_String) RETURN Unix_Base_Types.Int IS Result : Unix_Base_Types.Int := 0; Int_Length : CONSTANT := 4; Negative : Boolean := False; Shifter : Integer := 0; Normalized_Bs : Byte_Defs.Byte_String (0 .. Int_Length - 1) := (OTHERS => 0); BEGIN IF Bs'Length < Int_Length THEN Normalized_Bs ((Normalized_Bs'Last - Bs'Length) + 1 .. Normalized_Bs'Last) := Bs; ELSE Normalized_Bs := Bs ((Bs'Last - Int_Length) + 1 .. Bs'Last); END IF; IF Normalized_Bs (0) > Byte_Defs.Byte (2 ** 7 - 1) THEN Negative := True; END IF; FOR I IN REVERSE Normalized_Bs'Range LOOP IF Negative THEN Normalized_Bs (I) := Byte_Defs.Byte'Last - Normalized_Bs (I); END IF; Result := Result + Integer (Normalized_Bs (I)) * (2 ** Shifter); Shifter := Shifter + 8; END LOOP; IF Negative THEN RETURN -Result - 1; ELSE RETURN Result; END IF; END Byte_String_To_Integer;
nblk1=2 nid=0 hdr6=4 [0x00] rec0=21 rec1=00 rec2=01 rec3=000 [0x01] rec0=0a rec1=00 rec2=02 rec3=000 tail 0x21507796c81fa70300a99 0x489e0066482863c01