DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

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

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦7cfa66101⟧ Ada Source

    Length: 4096 (0x1000)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Hex, seg_04cdb5

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« 
        └─⟦this⟧ 

E3 Source Code



--\x09Routines to convert two's-complement integers to and from their
--\x09unsigned hex representations.
--
with Unsigned_Types;
with Machine_Types;
package Hex is

    function Hex_To_Integer (Str : String) return Integer;
    --
    -- Input is a string containing a hex number, possibly with blanks
    -- on either side.  The hex number can have lower or upper case
    -- letters a..f.  The resulting integer will have the bit pattern
    -- represented by the hex number.
    --
    -- Note, input is *not* of the form "16#af2b#", it is in the form "af2b".


    function Integer_To_Hex
                (Int : Integer; Width : Integer := 0; Fill : Character := ' ')
                return String;
    --
    --  int    the integer value to be converted to hex
    --  width  the width of the result (number of ascii characters)
    --  fill   the character to be used to pad the number to the left
    --         if the converted number has fewer characters than "width"
    --         (usually either '0' or ' ').  For example:
    --
    --         integer_to_hex(16#99#, 4, '0') would return "0099".


    function Unsigned_To_Hex (Uint : Unsigned_Types.Unsigned_Integer;
                              Width : Integer := 0;
                              Fill : Character := ' ') return String;
    --
    --  uint   the unsigned integer value to be converted to hex
    --  width  the width of the result (number of ascii characters)
    --  fill   the character to be used to pad the number to the left
    --         if the converted number has fewer characters than "width"
    --         (usually either '0' or ' ').  For example:
    --
    --         integer_to_hex(16#99#, 4, '0') would return "0099".


    function Word_To_Hex
                (W : Machine_Types.Word; Fill : Character := ' ') return String;


    function Byte_To_Hex
                (B : Machine_Types.Byte; Fill : Character := ' ') return String;
nd Hex;

E3 Meta Data

    nblk1=3
    nid=0
    hdr6=6
        [0x00] rec0=1a rec1=00 rec2=01 rec3=086
        [0x01] rec0=1a rec1=00 rec2=02 rec3=002
        [0x02] rec0=01 rec1=00 rec2=03 rec3=000
    tail 0x217541b30874f7b3f9cf4 0x42a00088462060003