DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦f0808675d⟧ Ada Source

    Length: 5120 (0x1400)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, seg_03bdab

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 

E3 Source Code




-- Copyright 1987, 1988  Verdix Corporation

------------------------------------------------------------------------------
-- link block for communication among the debugger, the runtime kernel,
-- and the user program.  The linker fills in the link_block fields;
-- except that the kernel fills in the record pointed to by the debug_block_p
-- field.
--
-- version for most machines (non-segmented)
------------------------------------------------------------------------------
WITH V_I_Types;
PACKAGE Link_Block IS

   PRAGMA Suppress (All_Checks);
   PRAGMA Suppress (Exception_Tables);
   PRAGMA Not_Elaborated;

   -- the following reference points in the user program.
   TYPE Link_Block_T IS
      RECORD
         Startup_P                 : V_I_Types.User_Address_T;
         Stack_Limit_P             : V_I_Types.User_Address_T;
         Raise_P                   : V_I_Types.User_Address_T;
         Constraint_Error_P        : V_I_Types.User_Address_T;
         Numeric_Error_P           : V_I_Types.User_Address_T;
         Program_Error_P           : V_I_Types.User_Address_T;
         Storage_Error_P           : V_I_Types.User_Address_T;
         Tasking_Error_P           : V_I_Types.User_Address_T;
         Debug_Block_P             : V_I_Types.User_Address_T;
         Main_Task_Priority_P      : V_I_Types.User_Address_T;
         Usr_Configuration_Table_P : V_I_Types.User_Address_T;
         Group_Table_P             : V_I_Types.User_Address_T;
         Program_Signature_P       : V_I_Types.User_Address_T;
         Raise_Interrupt_P         : V_I_Types.User_Address_T;
      END RECORD;
   TYPE A_Link_Block_T IS ACCESS Link_Block_T;

   -- the following are used to reference the kernel addresses of
   -- the runtime variables.  For segmented machines, the kernel
   -- data structures are kept in a single segment, so a short_address
   -- is sufficient.
   -- Note: should be renamed to kernel_block_t.
   TYPE Debug_Block_T IS
      RECORD
         Program_Head            : V_I_Types.Short_Address_T;
         Ct                      : V_I_Types.Short_Address_T;
         Runq_Head               : V_I_Types.Short_Address_T;
         Delayq_Head             : V_I_Types.Short_Address_T;
         In_Rts                  : V_I_Types.Short_Address_T;
         Krn_Configuration_Table : V_I_Types.Short_Address_T;
         Intr_Stack_Limit        : V_I_Types.Short_Address_T;
         Intr_Depth              : V_I_Types.Short_Address_T;
         Intr_Enter              : V_I_Types.Short_Address_T;
         Intr_Complete           : V_I_Types.Short_Address_T;
         Exit_Disabled_Flag      : V_I_Types.Short_Address_T;
         Pending_Interrupt_Flag  : V_I_Types.Short_Address_T;
         Current_Program         : V_I_Types.Short_Address_T;
      END RECORD;
   TYPE A_Debug_Block_T IS ACCESS Debug_Block_T;

END Link_Block;

E3 Meta Data

    nblk1=4
    nid=0
    hdr6=8
        [0x00] rec0=1a rec1=00 rec2=01 rec3=07c
        [0x01] rec0=01 rec1=00 rec2=04 rec3=07a
        [0x02] rec0=14 rec1=00 rec2=02 rec3=040
        [0x03] rec0=11 rec1=00 rec2=03 rec3=000
    tail 0x215347ee285657440d52d 0x489e0066482863c01