|
|
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: 4559 (0x11cf)
Types: TextFile
Names: »V«
└─⟦afbc8121e⟧ Bits:30000532 8mm tape, Rational 1000, MC68020_OS2000 7_2_2
└─⟦77aa8350c⟧ »DATA«
└─⟦f794ecd1d⟧
└─⟦24d1ddd49⟧
└─⟦this⟧
-- The use of this system is subject to the software license terms and
-- conditions agreed upon between Rational and the Customer.
--
-- Copyright 1988 by Rational.
--
-- RESTRICTED RIGHTS LEGEND
--
-- Use, duplication, or disclosure by the Government is subject to
-- restrictions as set forth in subdivision (b)(3)(ii) of the Rights in
-- Technical Data and Computer Software clause at 52.227-7013.
--
--
-- Rational
-- 3320 Scott Boulevard
-- Santa Clara, California 95054-3197
--
-- PROPRIETARY AND CONFIDENTIAL INFORMATION OF RATIONAL;
-- USE OR COPYING WITHOUT EXPRESS WRITTEN AUTHORIZATION
-- IS STRICTLY PROHIBITED. THIS MATERIAL IS PROTECTED AS
-- AN UNPUBLISHED WORK UNDER THE U.S. COPYRIGHT ACT OF
-- 1976. CREATED 1988. ALL RIGHTS RESERVED.
--
--
with Runtime_Ids;
with System;
with Unchecked_Conversion;
package System_Definitions is
subtype Address is System.Address;
type Address_Ref is access Address;
for Address_Ref'Storage_Size use 0;
Unit_Size : constant := 8;
Byte_Size : constant := 8 / Unit_Size;
Boolean_Size : constant := 1 * Byte_Size;
Address_Size : constant := 4 * Byte_Size;
Pointer_Size : constant := 4 * Byte_Size;
Integer_Size : constant := 4 * Byte_Size;
Word : constant := 4 * Byte_Size;
Word_Length : constant := Word * Unit_Size;
subtype Duration is Standard.Duration;
Duration_Size : constant := 4 * Byte_Size;
subtype Priority is System.Priority;
Priority_Size : constant := 1 * Byte_Size;
Minimum_Block_Size : constant := 2048;
package Operators is
function Plus_Ai (Left : Address; Right : Integer) return Address;
function Plus_Ia (Left : Integer; Right : Address) return Address;
function Minus_Aa (Left : Address; Right : Address) return Integer;
function Minus_Ai (Left : Address; Right : Integer) return Address;
function "=" (Left, Right : Address) return Boolean renames System."=";
function Lt (Left, Right : Address) return Boolean;
function Le (Left, Right : Address) return Boolean;
function Gt (Left, Right : Address) return Boolean;
function Ge (Left, Right : Address) return Boolean;
function To_Address is new Unchecked_Conversion (Integer, Address);
function To_Integer is new Unchecked_Conversion (Address, Integer);
function "=" (L, R : Address_Ref) return Boolean
renames System_Definitions."=";
function "=" (X, Y : Priority) return Boolean renames Standard."=";
function "<" (X, Y : Priority) return Boolean renames Standard."<";
function "<=" (X, Y : Priority) return Boolean renames Standard."<=";
function ">" (X, Y : Priority) return Boolean renames Standard.">";
function ">=" (X, Y : Priority) return Boolean renames Standard.">=";
private
pragma Interface (Asm, Plus_Ai);
pragma Import_Function (Plus_Ai, "__SYSTEM.UNSIGNED_ADD",
Mechanism => (Value, Value));
pragma Interface (Asm, Plus_Ia);
pragma Import_Function (Plus_Ia, "__SYSTEM.UNSIGNED_ADD",
Mechanism => (Value, Value));
pragma Interface (Asm, Minus_Aa);
pragma Import_Function (Minus_Aa, "__SYSTEM.UNSIGNED_SUBTRACT",
Mechanism => (Value, Value));
pragma Interface (Asm, Minus_Ai);
pragma Import_Function (Minus_Ai, "__SYSTEM.UNSIGNED_SUBTRACT",
Mechanism => (Value, Value));
pragma Interface (Asm, Lt);
pragma Import_Function (Lt, "__SYSTEM.UNSIGNED_LT",
Mechanism => (Value, Value));
pragma Interface (Asm, Le);
pragma Import_Function (Le, "__SYSTEM.UNSIGNED_LE",
Mechanism => (Value, Value));
pragma Interface (Asm, Gt);
pragma Import_Function (Gt, "__SYSTEM.UNSIGNED_GT",
Mechanism => (Value, Value));
pragma Interface (Asm, Ge);
pragma Import_Function (Ge, "__SYSTEM.UNSIGNED_GE",
Mechanism => (Value, Value));
end Operators;
end System_Definitions;
pragma Export_Elaboration_Procedure ("__SYSTEM_DEFS_SPEC_ELAB");
pragma Runtime_Unit (Unit_Number => Runtime_Ids.Runtime_Compunit,
Elab_Routine_Number => Runtime_Ids.Internal);