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

⟦69c3b859e⟧ Ada Source

    Length: 3072 (0xc00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Memory, seg_020ee7, separate D_Gui_Driver

Derivation

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

E3 Source Code



with Mot;
with Octet;

separate (D_Gui_Driver)

procedure Memory is

    I, J : Positive := 1;

    Reception : String (1 .. 80) := (others => '#');
    Emission : String (1 .. 36) := (others => '0');
    Adresse : Mot.T_Mot;
    Donnee : Octet.T_Octet;


begin
    Value := Gui_Interface.Get_Cnt_Memory_Add_Activate;
    if Cnt_Memory_Add /= Value then
        Cnt_Memory_Add := Value;
        Z80.Stopper;


        Gui_Interface.Iterator_Memory_List;
        Gui_Interface.Iterator.Init;
        I := 1;

        while not Gui_Interface.Iterator.Done loop
            Reception (I) := Gui_Interface.Iterator.Value;
            I := I + 1;
            Gui_Interface.Iterator.Next;
        end loop;


        Gui_Interface.Delete_Memory_Dump;

        I := 1;
        while Reception (I) /= '#' loop

            Adresse := Mot.Convert_Ascii_Mot
                          (Reception (I), Reception (I + 1),
                           Reception (I + 2), Reception (I + 3));  
            I := I + 4;

            for J in 1 .. 4 loop  
                Emission (J) := Reception ((I + J) - 1);
            end loop;

            J := 5;
            for Compteur_Octet in 1 .. 16 loop

                Memoire.Acces_Octet (Memoire.Lire, Adresse, Donnee);
                Octet.Convert_Octet_Ascii
                   (Donnee, Emission (J), Emission (J + 1));
                J := J + 2;  
                Adresse := Mot.Add (Adresse, Mot.Construire (0, 1));

            end loop;

            Gui_Interface.Set_Memory_Line (Emission);

        end loop;

        Gui_Interface.Display_Memory_Dump;


    end if;

end Memory;

E3 Meta Data

    nblk1=2
    nid=0
    hdr6=4
        [0x00] rec0=2a rec1=00 rec2=01 rec3=032
        [0x01] rec0=1c rec1=00 rec2=02 rec3=000
    tail 0x2170dddec8240773a57f1 0x42a00088462060003