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

⟦21746f253⟧ Ada Source

    Length: 4096 (0x1000)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Usr_Defs, seg_04b99b

Derivation

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

E3 Source Code



-- Copyright 1991 Verdix Corporation

with System;
with Krn_Defs;
with Ada_Krn_Defs;
with Unchecked_Conversion;
package Usr_Defs is
    pragma Suppress (All_Checks);
    pragma Suppress (Exception_Tables);
    pragma Not_Elaborated;
    pragma Local_Access;

    -------------------------------------------------------------------------
    -- Type definitions for services resident in the user program
    -------------------------------------------------------------------------

    -- The following information is stored below the Ada tcb.
    type Ada_Tcb_Hdr_T is
        record
            Krn_Tsk : Ada_Krn_Defs.Krn_Task_Id;
            Mutex : Ada_Krn_Defs.Mutex_T;
--\x09\x09stack_limit\x09\x09: system.address;\x09-- handled by VADS micro kernel
        end record;
    type A_Ada_Tcb_Hdr_T is access Ada_Tcb_Hdr_T;
    function To_A_Ada_Tcb_Hdr_T is new Unchecked_Conversion
                                          (System.Address, A_Ada_Tcb_Hdr_T);

    -- KLUDGE, this should be a constant not needing elaboration code.
--\x09Ada_tcb_hdr_len: constant integer :=
--\x09\x09\x09\x09\x09\x09\x09\x09Ada_tcb_hdr_t'size / system.STORAGE_UNIT;
    function Ada_Tcb_Hdr_Len return Integer;
    pragma Inline_Only (Ada_Tcb_Hdr_Len);

    function To_Krn_Task_Id is
       new Unchecked_Conversion (Krn_Defs.A_Krn_Tcb_T,
                                 Ada_Krn_Defs.Krn_Task_Id);
    function To_A_Krn_Tcb_T is
       new Unchecked_Conversion
              (Ada_Krn_Defs.Krn_Task_Id, Krn_Defs.A_Krn_Tcb_T);

    -- The following information is stored below the Ada program control
    -- block (pcb).
    type Ada_Pcb_Hdr_T is
        record
            Krn_Prg : Ada_Krn_Defs.Krn_Program_Id;
            Idle_Callout : System.Address;
        end record;
    type A_Ada_Pcb_Hdr_T is access Ada_Pcb_Hdr_T;
    function To_A_Ada_Pcb_Hdr_T is new Unchecked_Conversion
                                          (System.Address, A_Ada_Pcb_Hdr_T);

    -- KLUDGE, this should be a constant not needing elaboration code.
--\x09Ada_pcb_hdr_len: constant integer :=
--\x09\x09\x09\x09\x09\x09\x09\x09Ada_pcb_hdr_t'size / system.STORAGE_UNIT;
    function Ada_Pcb_Hdr_Len return Integer;
    pragma Inline_Only (Ada_Pcb_Hdr_Len);

    function To_Krn_Program_Id is
       new Unchecked_Conversion (Krn_Defs.A_Krn_Pcb_T,
                                 Ada_Krn_Defs.Krn_Program_Id);
    function To_A_Krn_Pcb_T is
       new Unchecked_Conversion
              (Ada_Krn_Defs.Krn_Program_Id, Krn_Defs.A_Krn_Pcb_T);

    type A_Natural is access Natural;
    function To_A_Natural is new Unchecked_Conversion
                                    (System.Address, A_Natural);

    type A_Address is access System.Address;
    function To_A_Address is new Unchecked_Conversion
                                    (System.Address, A_Address);
end Usr_Defs;

E3 Meta Data

    nblk1=3
    nid=0
    hdr6=6
        [0x00] rec0=1d rec1=00 rec2=01 rec3=014
        [0x01] rec0=18 rec1=00 rec2=02 rec3=024
        [0x02] rec0=16 rec1=00 rec2=03 rec3=001
    tail 0x21750bcdc868437cac1bd 0x42a00088462060003