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

⟦57aed6be7⟧ Ada Source

    Length: 13312 (0x3400)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, generic, package Printing, seg_021fdb

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 Quickdraw;
with Dialogs;
with Events;
package Printing is

    Ipfmaxpgs : constant := 128;
    Iprpgfract : constant := 120;
    Iprpgfst : constant := 1;
    Iprpgmax : constant := 9999;
    Iprrelease : constant := 3;
    Iprsavpfil : constant := -1;
    Iprabort : constant := 16#0080#;
    Iprdevctl : constant := 7;
    Lprreset : constant := 16#00010000#;
    Lprlinefeed : constant := 16#00030000#;
    Lprlfstd : constant := 16#0003FFFF#;
    Lprlfsixth : constant := 16#0003FFFF#;
    Lprpageend : constant := 16#00020000#;
    Lprdocopen : constant := 16#00010000#;
    Lprpageopen : constant := 16#00040000#;
    Lprpageclose : constant := 16#00020000#;
    Lprdocclose : constant := 16#00050000#;
    Ifmgrctl : constant := 8;
    Imemfullerr : constant := -108;
    Iioabort : constant := -27;
    Pprglobals : constant := 16#00000944#;
    Bdraftloop : constant := 0;
    Bspoolloop : constant := 1;
    Buser1loop : constant := 2;
    Buser2loop : constant := 3;
    Iprbitsctl : constant := 4;
    Lscreenbits : constant := 0;
    Lpaintbits : constant := 1;
    Lhiscreenbits : constant := 16#00000002#;
    Lhipaintbits : constant := 16#00000003#;
    Iprioctl : constant := 5;
    Iprevtctl : constant := 6;
    Lprevtall : constant := 16#0002FFFD#;
    Lprevttop : constant := 16#0001FFFD#;
    Iprdrvrref : constant := -3;
    Getrsldataop : constant := 4;
    Setrslop : constant := 5;
    Draftbitsop : constant := 6;
    Nodraftbitsop : constant := 7;
    Getrotnop : constant := 8;
    Nosuchrsl : constant := 1;
    Rgtype1 : constant := 1;
    Sprdrvr : constant Str255 :=
       (Char'Val (6), '.', 'P', 'r', 'i', 'n', 't', others => ' ');

    type Tfeed is (Feedcut, Feedfanfold, Feedmechcut, Feedother);

    type Tscan is (Scantb, Scanbt, Scanlr, Scanrl);

    type Tprport is
        record
            Gport : Quickdraw.Grafport;
            Gprocs : Quickdraw.Qdprocs;
            Lgparam1 : Longint;
            Lgparam2 : Longint;
            Lgparam3 : Longint;
            Lgparam4 : Longint;
            Fourptr : Boolean;
            Fourbits : Boolean;
        end record;
    type Tpprport is access Tprport;

    type Tprinfo is
        record
            Idev : Mac_Types.Integer;
            Ivres : Mac_Types.Integer;
            Ihres : Mac_Types.Integer;
            Rpage : Rect;
        end record;
    type Tpprinfo is access Tprinfo;

    type Tprstl is
        record
            Wdev : Mac_Types.Integer;
            Ipagev : Mac_Types.Integer;
            Ipageh : Mac_Types.Integer;
            Bport : Signedbyte;
            Feed : Tfeed;
        end record;
    type Tpprstl is access Tprstl;

    type Tprxinfo is
        record
            Irowbytes : Mac_Types.Integer;
            Ibandv : Mac_Types.Integer;
            Ibandh : Mac_Types.Integer;
            Idevbytes : Mac_Types.Integer;
            Ibands : Mac_Types.Integer;
            Bpatscale : Signedbyte;
            Bulthick : Signedbyte;
            Buloffset : Signedbyte;
            Bulshadow : Signedbyte;
            Scan : Tscan;
            Bxinfox : Signedbyte;
        end record;
    type Tpprxinfo is access Tprxinfo;

    type Tprjob is
        record
            Ifstpage : Mac_Types.Integer;
            Ilstpage : Mac_Types.Integer;
            Icopies : Mac_Types.Integer;
            Bjdocloop : Signedbyte;
            Ffromusr : Boolean;
            Pidleproc : Procptr;
            Pfilename : Stringptr;
            Ifilevol : Mac_Types.Integer;
            Bfilevers : Signedbyte;
            Bjobx : Signedbyte;
        end record;
    type Tpprjob is access Tprjob;

    type Array1_19integer is array (1 .. 19) of Mac_Types.Integer;
    type Tprint is
        record
            Iprversion : Mac_Types.Integer;
            Prinfo : Tprinfo;
            Rpaper : Rect;
            Prstl : Tprstl;
            Prinfopt : Tprinfo;
            Prxinfo : Tprxinfo;
            Prjob : Tprjob;
            Printx : Array1_19integer;
        end record;
    type Tpprint is access Tprint;
    type Thprint is access Tpprint;

    type Tprstatus is
        record
            Itotpages : Mac_Types.Integer;
            Icurpage : Mac_Types.Integer;
            Itotcopies : Mac_Types.Integer;
            Icurcopy : Mac_Types.Integer;
            Itotbands : Mac_Types.Integer;
            Icurband : Mac_Types.Integer;
            Fpgdirty : Boolean;
            Fimaging : Boolean;
            Hprint : Thprint;
            Pprport : Tpprport;
            Hpic : Quickdraw.Pichandle;
        end record;
    type Tpprstatus is access Tprstatus;

    type Array0_128longint is array (0 .. 128) of Longint;
    type Tpfpgdir is
        record
            Ipages : Mac_Types.Integer;
            Ipgpos : Array0_128longint;
        end record;
    type Tppfpgdir is access Tpfpgdir;
    type Thpfpgdir is access Tppfpgdir;

    type Tprdlg is
        record
            Dlg : Dialogs.Dialogrecord;
            Pfltrproc : Procptr;
            Pitemproc : Procptr;
            Hprintusr : Thprint;
            Fdoit : Boolean;
            Fdone : Boolean;
            Luser1 : Longint;
            Luser2 : Longint;
            Luser3 : Longint;
            Luser4 : Longint;
        end record;
    type Tpprdlg is access Tprdlg;

    type Tgnldata is
        record
            Iopcode : Mac_Types.Integer;
            Ierror : Mac_Types.Integer;
            Lreserved : Longint;
        end record;

    type Trslrg is
        record
            Imin : Mac_Types.Integer;
            Imax : Mac_Types.Integer;
        end record;

    type Trslrec is
        record
            Ixrsl : Mac_Types.Integer;
            Iyrsl : Mac_Types.Integer;
        end record;

    type Array1_27trslrec is array (1 .. 27) of Trslrec;
    type Tgetrslblk is
        record
            Iopcode : Mac_Types.Integer;
            Ierror : Mac_Types.Integer;
            Lreserved : Longint;
            Irgtype : Mac_Types.Integer;
            Xrslrg : Trslrg;
            Yrslrg : Trslrg;
            Irslreccnt : Mac_Types.Integer;
            Rgrslrec : Array1_27trslrec;
        end record;

    type Tsetrslblk is
        record
            Iopcode : Mac_Types.Integer;
            Ierror : Mac_Types.Integer;
            Lreserved : Longint;
            Hprint : Thprint;
            Ixrsl : Mac_Types.Integer;
            Iyrsl : Mac_Types.Integer;
        end record;

    type Tdftbitsblk is
        record
            Iopcode : Mac_Types.Integer;
            Ierror : Mac_Types.Integer;
            Lreserved : Longint;
            Hprint : Thprint;
        end record;

    type Tgetrotnblk is
        record
            Iopcode : Mac_Types.Integer;
            Ierror : Mac_Types.Integer;
            Lreserved : Longint;
            Hprint : Thprint;
            Flandscape : Boolean;
            Bxtra : Signedbyte;
        end record;

    type Tprect is access Rect;
    type Tpbitmap is access Quickdraw.Bitmap;

    procedure Prpurge;
    pragma Interface (Mpwpascal, Prpurge, "PRPURGE");

    procedure Prnopurge;
    pragma Interface (Mpwpascal, Prnopurge, "PRNOPURGE");

    procedure Propen;
    pragma Interface (Mpwpascal, Propen, "PROPEN");

    procedure Prclose;
    pragma Interface (Mpwpascal, Prclose, "PRCLOSE");

    procedure Printdefault (Hprint : Thprint);
    pragma Interface (Mpwpascal, Printdefault, "PRINTDEFAULT");

    function Prvalidate (Hprint : Thprint) return Boolean;
    pragma Interface (Mpwpascal, Prvalidate, "PRVALIDATE");

    function Prstldialog (Hprint : Thprint) return Boolean;
    pragma Interface (Mpwpascal, Prstldialog, "PRSTLDIALOG");

    function Prjobdialog (Hprint : Thprint) return Boolean;
    pragma Interface (Mpwpascal, Prjobdialog, "PRJOBDIALOG");

    function Prstlinit (Hprint : Thprint) return Tpprdlg;
    pragma Interface (Mpwpascal, Prstlinit, "PRSTLINIT");

    function Prjobinit (Hprint : Thprint) return Tpprdlg;
    pragma Interface (Mpwpascal, Prjobinit, "PRJOBINIT");

    procedure Prjobmerge (Hprintsrc : Thprint; Hprintdst : Thprint);
    pragma Interface (Mpwpascal, Prjobmerge, "PRJOBMERGE");

    function Prdlgmain (Hprint : Thprint; Pdlginit : Procptr) return Boolean;
    pragma Interface (Mpwpascal, Prdlgmain, "PRDLGMAIN");

    function Propendoc (Hprint : Thprint; Pprport : Tpprport; Piobuf : Ptr)
                       return Tpprport;
    pragma Interface (Mpwpascal, Propendoc, "PROPENDOC");

    procedure Prclosedoc (Pprport : Tpprport);
    pragma Interface (Mpwpascal, Prclosedoc, "PRCLOSEDOC");

    procedure Propenpage (Pprport : Tpprport; Ppageframe : Tprect);
    pragma Interface (Mpwpascal, Propenpage, "PROPENPAGE");

    procedure Prclosepage (Pprport : Tpprport);
    pragma Interface (Mpwpascal, Prclosepage, "PRCLOSEPAGE");

    procedure Prpicfile (Hprint : Thprint;
                         Pprport : Tpprport;
                         Piobuf : Ptr;
                         Pdevbuf : Ptr;
                         Prstatus : in out Tprstatus);
    pragma Interface (Mpwpascal, Prpicfile, "PRPICFILE");

    function Prerror return Mac_Types.Integer;
    pragma Interface (Mpwpascal, Prerror, "PRERROR");

    procedure Prseterror (Ierr : Mac_Types.Integer);
    pragma Interface (Mpwpascal, Prseterror, "PRSETERROR");

    procedure Prgeneral (Pdata : Ptr);
    pragma Interface (Mpwpascal, Prgeneral, "PRGENERAL");

    procedure Prdrvropen;
    pragma Interface (Mpwpascal, Prdrvropen, "PRDRVROPEN");

    procedure Prdrvrclose;
    pragma Interface (Mpwpascal, Prdrvrclose, "PRDRVRCLOSE");

    procedure Prctlcall (Iwhichctl : Mac_Types.Integer;
                         Lparam1 : Longint;
                         Lparam2 : Longint;
                         Lparam3 : Longint);
    pragma Interface (Mpwpascal, Prctlcall, "PRCTLCALL");

    function Prdrvrdce return Handle;
    pragma Interface (Mpwpascal, Prdrvrdce, "PRDRVRDCE");

    function Prdrvrvers return Mac_Types.Integer;
    pragma Interface (Mpwpascal, Prdrvrvers, "PRDRVRVERS");

    generic
        with function Routine (Hprint : Thprint) return Tpprdlg;
    procedure Userinitroutine;

    generic
        with function Routine (Thedialog : Dialogs.Dialogptr;
                               Theevent : Events.Eventrecord;
                               Itemhit : Varinteger) return Boolean;
    procedure Userfilterroutine;

    generic
        with function Routine (Item : Mac_Types.Integer;
                               Thedialog : Dialogs.Dialogptr)
                              return Mac_Types.Integer;
    procedure Userdialogroutine;

end Printing;



E3 Meta Data

    nblk1=c
    nid=0
    hdr6=18
        [0x00] rec0=1f rec1=00 rec2=01 rec3=004
        [0x01] rec0=1d rec1=00 rec2=02 rec3=004
        [0x02] rec0=22 rec1=00 rec2=03 rec3=036
        [0x03] rec0=1e rec1=00 rec2=04 rec3=016
        [0x04] rec0=1e rec1=00 rec2=05 rec3=028
        [0x05] rec0=26 rec1=00 rec2=06 rec3=008
        [0x06] rec0=20 rec1=00 rec2=07 rec3=014
        [0x07] rec0=22 rec1=00 rec2=08 rec3=018
        [0x08] rec0=17 rec1=00 rec2=09 rec3=01c
        [0x09] rec0=19 rec1=00 rec2=0a rec3=076
        [0x0a] rec0=1c rec1=00 rec2=0b rec3=070
        [0x0b] rec0=08 rec1=00 rec2=0c rec3=001
    tail 0x2171dcc6e83906e156d9b 0x42a00088462060003