|
|
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: T V
Length: 3668 (0xe54)
Types: TextFile
Names: »V«
└─⟦afbc8121e⟧ Bits:30000532 8mm tape, Rational 1000, MC68020_OS2000 7_2_2
└─⟦77aa8350c⟧ »DATA«
└─⟦f794ecd1d⟧
└─⟦this⟧
with Action;
with Directory;
with Object_Module_Support;
package Oms_Utilities is
package Oms renames Object_Module_Support;
package Cr renames Oms.Cross_Referencing;
package Ee renames Oms.Expression_Evaluation;
package Omf renames Oms.Object_Module_Format;
-- Provide an idiot-proof way to open an object module (complete
-- with idiot lights).
--
generic
type Error_State is private;
with procedure Error (S : String; State : in out Error_State);
procedure Open (Filename : String;
Action_Id : Action.Id := Action.Null_Id;
State : Oms.State_Info;
Estate : in out Error_State;
Module : out Omf.Object_Module);
generic
type Error_State is private;
with procedure Error (S : String; State : in out Error_State);
procedure Openv (Version : Directory.Version;
Action_Id : Action.Id := Action.Null_Id;
State : Oms.State_Info;
Estate : in out Error_State;
Module : out Omf.Object_Module);
-- Provide an abstraction over the MISC bits.
--
type Section_Misc is new Long_Integer;
type Global_Misc is new Long_Integer;
subtype Natural16 is Natural range 0 .. (2 ** 16) - 1;
type Global_Tag is (Nil, Toc_Label, Entry_Point, Based,
Spare1, Spare2, Spare3, Spare4, Spare5, Spare6,
Spare7, Spare8, Spare9, Spare10, Spare11, Spare12);
type Section_Tag is (Nil, Text, Data, Bss, Loader, Debug,
Toc, Excption, Spare1, Spare2, Spare3,
Spare4, Spare5, Spare6, Spare7, Spare8);
procedure Set_Tag (Sym : Oms.Symbol; Tag : Global_Tag);
procedure Set_Tc_Size (Sym : Oms.Symbol; Size : Natural16);
procedure Set_Ltdce_Index (Sym : Oms.Symbol; Index : Natural);
procedure Set_Base (Sym : Oms.Symbol; Base : Natural);
procedure Set_Visibility (Sym : Oms.Symbol;
Visible_To_Linker : Boolean := True);
procedure Set_Tag (Misc : in out Global_Misc; Tag : Global_Tag);
procedure Set_Tc_Size (Misc : in out Global_Misc; Size : Natural16);
procedure Set_Ltdce_Index (Misc : in out Global_Misc; Index : Natural);
procedure Set_Base (Misc : in out Global_Misc; Base : Natural);
procedure Set_Visibility (Misc : in out Global_Misc;
Visible_To_Linker : Boolean := True);
procedure Set_Tag (Misc : in out Section_Misc; Tag : in Section_Tag);
function Tag (Sym : Oms.Symbol) return Global_Tag;
function Tc_Size (Sym : Oms.Symbol) return Natural16;
function Ltdce_Index (Sym : Oms.Symbol) return Natural;
function Base (Sym : Oms.Symbol) return Natural;
function Visible (Sym : Oms.Symbol) return Boolean;
function Tag (Misc : Global_Misc) return Global_Tag;
function Tc_Size (Misc : Global_Misc) return Natural16;
function Ltdce_Index (Misc : Global_Misc) return Natural;
function Base (Misc : Global_Misc) return Natural;
function Visible (Misc : Global_Misc) return Boolean;
function Tag (Misc : in Section_Misc) return Section_Tag;
-- Image functions for MISC bits
--
function Image (Sym : in Oms.Symbol) return String;
function Image (Misc : in Global_Misc) return String;
function Image (Misc : in Section_Misc) return String;
end Oms_Utilities;