|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 1620 (0x654)
Types: TextFile
Names: »B«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
└─⟦129cab021⟧ »DATA«
└─⟦this⟧
└─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04
└─⟦d65440be7⟧ »DATA«
└─⟦this⟧
with Text_Io;
with String_Map_Generic;
package body Registres is
Table_Registres_Size : Integer := 101;
package String_Tab_Registres is
new String_Map_Generic (Size => Table_Registres_Size,
Range_Type => Type_Value);
La_Map : String_Tab_Registres.Map;
procedure Init_Registres is
-- Init : String_Tab_Registres.Iterator;
begin
String_Tab_Registres.Initialize (La_Map);
end Init_Registres;
procedure Set_Registre (Registre : Type_Registre; Valeur : Type_Value) is
Reg : constant String := Registre.all;
Val : constant Type_Value := Valeur;
-- Init : String_Tab_Registres.Iterator;
begin
String_Tab_Registres.Define
(The_Map => La_Map, D => Reg, R => Val, Trap_Multiples => True);
exception
when String_Tab_Registres.Multiply_Defined =>
begin
String_Tab_Registres.Undefine (The_Map => La_Map, D => Reg);
String_Tab_Registres.Define (The_Map => La_Map,
D => Reg,
R => Val,
Trap_Multiples => True);
end;
end Set_Registre;
function Get_Value_Registre (Registre : Type_Registre) return Type_Value is
I : Type_Value;
Reg : constant String := Registre.all;
begin
Text_Io.Put_Line (" Reg : " & Registre.all);
I := String_Tab_Registres.Eval (The_Map => La_Map, D => Reg);
return I;
end Get_Value_Registre;
end Registres;