|
|
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: 3603 (0xe13)
Types: TextFile
Names: »B«
└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
└─⟦5cb1d1d7f⟧ »DATA«
└─⟦3b1ee7bd8⟧
└─⟦this⟧
with Global_Def, Pack_1;
use Global_Def;
package body Pack_2 is
function Func_3 (Enum_Par_In : in Enumeration) return Boolean;
-- forward declaration
procedure Proc_6 (Enum_Par_In : in Enumeration;
Enum_Par_Out : out Enumeration) is
begin
Enum_Par_Out := Enum_Par_In;
if not Func_3 (Enum_Par_In) then
Enum_Par_Out := Ident_4;
end if;
case Enum_Par_In is
when Ident_1 =>
Enum_Par_Out := Ident_1;
when Ident_2 =>
if Pack_1.Int_Glob > 100 then
Enum_Par_Out := Ident_1;
else
Enum_Par_Out := Ident_4;
end if;
when Ident_3 =>
Enum_Par_Out := Ident_2; -- executed
when Ident_4 =>
null;
when Ident_5 =>
Enum_Par_Out := Ident_3;
end case;
end Proc_6;
procedure Proc_7 (Int_Par_In_1, Int_Par_In_2 : in One_To_Fifty;
Int_Par_Out : out One_To_Fifty) is
Int_Loc : One_To_Fifty;
begin
Int_Loc := Int_Par_In_1 + 2;
Int_Par_Out := Int_Par_In_2 + Int_Loc;
end Proc_7;
procedure Proc_8 (Array_Par_In_Out_1 : in out Array_1_Dim_Integer;
Array_Par_In_Out_2 : in out Array_2_Dim_Integer;
Int_Par_In_1, Int_Par_In_2 : in Integer) is
Int_Loc : One_To_Fifty;
begin
Int_Loc := Int_Par_In_1 + 5;
Array_Par_In_Out_1 (Int_Loc) := Int_Par_In_2;
Array_Par_In_Out_1 (Int_Loc + 1) := Array_Par_In_Out_1 (Int_Loc);
Array_Par_In_Out_1 (Int_Loc + 30) := Int_Loc;
for Int_Index in Int_Loc .. Int_Loc + 1 loop -- loop body executed twice
Array_Par_In_Out_2 (Int_Loc, Int_Index) := Int_Loc;
end loop;
Array_Par_In_Out_2 (Int_Loc, Int_Loc - 1) :=
Array_Par_In_Out_2 (Int_Loc, Int_Loc - 1) + 1;
Array_Par_In_Out_2 (Int_Loc + 20, Int_Loc) :=
Array_Par_In_Out_1 (Int_Loc);
Pack_1.Int_Glob := 5;
end Proc_8;
function Func_1 (Char_Par_In_1, Char_Par_In_2 : in Capital_Letter)
return Enumeration is
Char_Loc_1, Char_Loc_2 : Capital_Letter;
begin
Char_Loc_1 := Char_Par_In_1;
Char_Loc_2 := Char_Loc_1;
if Char_Loc_2 /= Char_Par_In_2 then
return Ident_1;
else
return Ident_2;
end if;
end Func_1;
function Func_2 (String_Par_In_1, String_Par_In_2 : in String_30)
return Boolean is
Int_Loc : One_To_Thirty;
Char_Loc : Capital_Letter;
begin
Int_Loc := 2;
while Int_Loc <= 2 loop
if Func_1 (String_Par_In_1 (Int_Loc),
String_Par_In_2 (Int_Loc + 1)) = Ident_1 then
Char_Loc := 'A';
Int_Loc := Int_Loc + 1;
end if;
end loop;
if Char_Loc >= 'W' and Char_Loc < 'Z' then
Int_Loc := 7;
end if;
if Char_Loc = 'X' then
return True;
else
if String_Par_In_1 > String_Par_In_2 then
Int_Loc := Int_Loc + 7;
return True;
else
return False;
end if;
end if;
end Func_2;
function Func_3 (Enum_Par_In : in Enumeration) return Boolean is
Enum_Loc : Enumeration;
begin
Enum_Loc := Enum_Par_In;
if Enum_Loc = Ident_3 then
return True;
end if;
end Func_3;
end Pack_2;