|
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 - downloadIndex: ┃ T V ┃
Length: 5694 (0x163e) Types: TextFile Names: »V«
└─⟦afbc8121e⟧ Bits:30000532 8mm tape, Rational 1000, MC68020_OS2000 7_2_2 └─ ⟦77aa8350c⟧ »DATA« └─⟦f794ecd1d⟧ └─⟦this⟧
--------------------------------------------------------------------------- -- M68K_Definitions --------------------------------------------------------------------------- -- 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 1984, 1985, 1986, 1987, 1988. -- -- All rights reserved. -- --------------------------------------------------------------------------- -- 890417 BLS Changed module name from 3813 to 3873. -- 881214 MDW Changed module name from 3809 to 3813. -- --------------------------------------------------------------------------- with Byte_Defs; with Simple_Status; package M68k_Definitions is --| MACHINE DEFS |-- type Address is new Long_Integer range 0 .. 2 ** 32 - 1; Null_Address : constant Address := 0; subtype Task_Id is Address; Null_Task : constant Address := Null_Address; subtype Byte is Byte_Defs.Byte; Null_Byte : constant Byte := 0; type Word is range -2 ** 15 .. 2 ** 15 - 1; Null_Word : constant Word := 0; type Longword is new Long_Integer range -2 ** 31 .. 2 ** 31 - 1; Null_Longword : constant Longword := 0; type Quadword is new Long_Integer; Null_Quadword : constant Quadword := 0; subtype Byte_String is Byte_Defs.Byte_String; Null_Byte_String : constant Byte_String (0 .. 0) := (others => Null_Byte); type Register_Number is (D0, D1, D2, D3, D4, D5, D6, D7, A0, A1, A2, A3, A4, A5, A6, A7, Sr, Pc, Usp, Ssp, Msp, Vbr, Fp0, Fp1, Fp2, Fp3, Fp4, Fp5, Fp6, Fp7, Fpcr, Fpsr, Fpiar); subtype Register_Array is Byte_String (1 .. 194); Null_Registers : constant Register_Array := (others => Null_Byte); Register_Sizes : constant array (Register_Number) of Natural := (D0 => 4, D1 => 4, D2 => 4, D3 => 4, D4 => 4, D5 => 4, D6 => 4, D7 => 4, A0 => 4, A1 => 4, A2 => 4, A3 => 4, A4 => 4, A5 => 4, A6 => 4, A7 => 4, Sr => 2, Pc => 4, Usp => 4, Ssp => 4, Msp => 4, Vbr => 4, Fp0 => 12, Fp1 => 12, Fp2 => 12, Fp3 => 12, Fp4 => 12, Fp5 => 12, Fp6 => 12, Fp7 => 12, Fpcr => 4, Fpsr => 4, Fpiar => 4); function "=" (A, B : M68k_Definitions.Byte) return Boolean renames Byte_Defs."="; --| DEBUGGER DEFS |-- -- mirrors the spec for Debug.Stop_Event type Run_Type is (About_To_Return, -- stop after last statement of a subprogram Begin_Rendezvous, -- stop before first statement of accept body End_Rendezvous, -- stop after last statement of accept body Local_Statement, -- stop before next statement at same level Machine_Instruction, -- stop before next instruction Procedure_Entry, -- stop before first stmt/decl of called proc Returned, -- stop before next statement in caller Statement); -- stop before next statement type Break_Class is (Unknown, Startup, User, Task_Start, Task_Term, Rendezvous_Start, Rendezvous_End, Except, Proc_Start, Proc_End, Stmt_Step); type Event_Kind is (Async_Break, Async_Exception, Async_Creation, Async_Stop, Async_Step, Async_Termination, Async_Message, Async_Warning_Message, Async_Error_Message, Async_Register_Type, Async_Unregister_Type, Async_Register_Subsystem_Type, Async_Unregister_Subsystem_Type, Async_Break_And_Step, Async_Unknown); type Address_Kind is (Data_Space, Code_Space); type Terminate_Set is (Process, Process_Children, Program, Connected, Processor); -- conversions function To_Word (Word_String : Byte_String) return Word; function To_Address (Address_String : Byte_String) return Address; function To_Longword (Longword_String : Byte_String) return Longword; function To_Quadword (Quadword_String : Byte_String) return Quadword; function Convert_Word (W : Word) return Byte_String; function Convert_Address (A : Address) return Byte_String; function Convert_Longword (L : Longword) return Byte_String; function Convert_Quadword (Q : Quadword) return Byte_String; type Target_Event is record Kind : Event_Kind; Task_Name : Task_Id; Id : Longword; Frame_Pointer : Address; Pc : Address; Raise_Pc : Address; Exception_Name : Address; Step_Count : Longword; Is_Bottom : Boolean; Message : String (1 .. 256); Message_Len : Longword; Registers : Register_Array; Status : Simple_Status.Condition; end record; function Null_Event return M68k_Definitions.Target_Event; function Byte_Image (Bytes : Byte_String) return String; function Byte_Value (Str : String) return Byte_String; pragma Module_Name (4, 3873); pragma Bias_Key (28); end M68k_Definitions;