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

⟦e112a7a5f⟧ Ada Source

    Length: 10240 (0x2800)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Slots, seg_021fec

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 (c) 1990 Meridian Software Systems, Inc.      --
with Mac_Types;
use Mac_Types;
with Osutils;
package Slots is

    Fcardischanged : constant := 1;
    Fckforsame : constant := 0;
    Fckfornext : constant := 1;
    Fwarmstart : constant := 2;
    Statenil : constant := 0;
    Statesdminit : constant := 1;
    Statepraminit : constant := 2;
    Statepinit : constant := 3;
    Statesinit : constant := 4;
    Smacos68000 : constant := 1;
    Smacos68020 : constant := 2;

    type Slotintqelement is
        record
            Sqlink : Ptr;
            Sqtype : Mac_Types.Integer;
            Sqprio : Mac_Types.Integer;
            Sqaddr : Procptr;
            Sqparm : Longint;
        end record;
    type Sqelemptr is access Slotintqelement;

    type Spblock is
        record
            Spresult : Longint;
            Spspointer : Ptr;
            Spsize : Longint;
            Spoffsetdata : Longint;
            Spiofilename : Ptr;
            Spsexecpblk : Ptr;
            Spstackptr : Ptr;
            Spmisc : Longint;
            Spreserved : Longint;
            Spioreserved : Mac_Types.Integer;
            Sprefnum : Mac_Types.Integer;
            Spcategory : Mac_Types.Integer;
            Spctype : Mac_Types.Integer;
            Spdrvrsw : Mac_Types.Integer;
            Spdrvrhw : Mac_Types.Integer;
            Sptbmask : Signedbyte;
            Spslot : Signedbyte;
            Spid : Signedbyte;
            Spextdev : Signedbyte;
            Sphwdev : Signedbyte;
            Spbytelanes : Signedbyte;
            Spflags : Signedbyte;
            Spkey : Signedbyte;
        end record;
    type Spblockptr is access Spblock;

    type Array0_1signedbyte is array (0 .. 1) of Signedbyte;
    type Sinforecord is
        record
            Sidirptr : Ptr;
            Siinitstatusa : Mac_Types.Integer;
            Siinitstatusv : Mac_Types.Integer;
            Sistate : Signedbyte;
            Sicpubytelanes : Signedbyte;
            Sitopofrom : Signedbyte;
            Sistatusflags : Signedbyte;
            Sitoconst : Mac_Types.Integer;
            Sireserved : Array0_1signedbyte;
        end record;
    type Sinforecptr is access Sinforecord;

    type Sdmrecord is
        record
            Sdbevsave : Procptr;
            Sdbuserrproc : Procptr;
            Sderrorentry : Procptr;
            Sdreserved : Longint;
        end record;

    type Fheaderrec is
        record
            Fhdiroffset : Longint;
            Fhlength : Longint;
            Fhcrc : Longint;
            Fhromrev : Signedbyte;
            Fhformat : Signedbyte;
            Fhtstpat : Longint;
            Fhreserved : Signedbyte;
            Fhbytelanes : Signedbyte;
        end record;
    type Fheaderrecptr is access Fheaderrec;

    type Seblock is
        record
            Seslot : Signedbyte;
            Sesrsrcid : Signedbyte;
            Sestatus : Mac_Types.Integer;
            Seflags : Signedbyte;
            Sefiller0 : Signedbyte;
            Sefiller1 : Signedbyte;
            Sefiller2 : Signedbyte;
            Seresult : Longint;
            Seiofilename : Longint;
            Sedevice : Signedbyte;
            Separtition : Signedbyte;
            Seostype : Signedbyte;
            Sereserved : Signedbyte;
            Serefnum : Signedbyte;
            Senumdevices : Signedbyte;
            Sebootstate : Signedbyte;
        end record;

    function Sintinstall (Sintqelemptr : Sqelemptr; Theslot : Mac_Types.Integer)
                         return Oserr;
    pragma Interface (Mpwpascal, Sintinstall, "SINTINSTALL");

    function Sintremove (Sintqelemptr : Sqelemptr; Theslot : Mac_Types.Integer)
                        return Oserr;
    pragma Interface (Mpwpascal, Sintremove, "SINTREMOVE");

    function Sreadbyte (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sreadbyte, "SREADBYTE");

    function Sreadword (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sreadword, "SREADWORD");

    function Sreadlong (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sreadlong, "SREADLONG");

    function Sgetcstring (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sgetcstring, "SGETCSTRING");

    function Sgetblock (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sgetblock, "SGETBLOCK");

    function Sfindstruct (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sfindstruct, "SFINDSTRUCT");

    function Sreadstruct (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sreadstruct, "SREADSTRUCT");

    function Sreadinfo (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sreadinfo, "SREADINFO");

    function Sreadpramrec (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sreadpramrec, "SREADPRAMREC");

    function Sputpramrec (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sputpramrec, "SPUTPRAMREC");

    function Sreadfheader (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sreadfheader, "SREADFHEADER");

    function Snextsrsrc (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Snextsrsrc, "SNEXTSRSRC");

    function Snexttypesrsrc (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Snexttypesrsrc, "SNEXTTYPESRSRC");

    function Srsrcinfo (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Srsrcinfo, "SRSRCINFO");

    function Sckcardstat (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sckcardstat, "SCKCARDSTAT");

    function Sreaddrvrname (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sreaddrvrname, "SREADDRVRNAME");

    function Sfinddevbase (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sfinddevbase, "SFINDDEVBASE");

    function Sfindbigdevbase (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sfindbigdevbase, "SFINDBIGDEVBASE");

    function Initsdeclmgr (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Initsdeclmgr, "INITSDECLMGR");

    function Sprimaryinit (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sprimaryinit, "SPRIMARYINIT");

    function Scardchanged (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Scardchanged, "SCARDCHANGED");

    function Sexec (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sexec, "SEXEC");

    function Soffsetdata (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Soffsetdata, "SOFFSETDATA");

    function Sinitpramrecs (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sinitpramrecs, "SINITPRAMRECS");

    function Sreadpbsize (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sreadpbsize, "SREADPBSIZE");

    function Scalcstep (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Scalcstep, "SCALCSTEP");

    function Sinitsrsrctable (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sinitsrsrctable, "SINITSRSRCTABLE");

    function Ssearchsrt (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Ssearchsrt, "SSEARCHSRT");

    function Supdatesrt (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Supdatesrt, "SUPDATESRT");

    function Scalcspointer (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Scalcspointer, "SCALCSPOINTER");

    function Sgetdriver (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sgetdriver, "SGETDRIVER");

    function Sptrtoslot (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sptrtoslot, "SPTRTOSLOT");

    function Sfindsinforecptr (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sfindsinforecptr, "SFINDSINFORECPTR");

    function Sfindsrsrcptr (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sfindsrsrcptr, "SFINDSRSRCPTR");

    function Sdeletesrtrec (Spblkptr : Spblockptr) return Oserr;
    pragma Interface (Mpwpascal, Sdeletesrtrec, "SDELETESRTREC");

    function Openslot
                (Paramblock : Osutils.Parmblkptr; Async : Boolean) return Oserr;
    pragma Interface (Mpwpascal, Openslot, "OPENSLOT");

end Slots;

E3 Meta Data

    nblk1=9
    nid=0
    hdr6=12
        [0x00] rec0=24 rec1=00 rec2=01 rec3=01e
        [0x01] rec0=1c rec1=00 rec2=02 rec3=010
        [0x02] rec0=21 rec1=00 rec2=03 rec3=018
        [0x03] rec0=19 rec1=00 rec2=04 rec3=066
        [0x04] rec0=18 rec1=00 rec2=05 rec3=054
        [0x05] rec0=16 rec1=00 rec2=06 rec3=07c
        [0x06] rec0=18 rec1=00 rec2=07 rec3=016
        [0x07] rec0=17 rec1=00 rec2=08 rec3=03c
        [0x08] rec0=11 rec1=00 rec2=09 rec3=001
    tail 0x2171dcd5a83906e46f0c4 0x42a00088462060003