home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Misc / MODULAV2GERMAN.DMS / in.adf / Def.zoo / Printer.def < prev    next >
Encoding:
Modula Definition  |  1988-11-06  |  5.3 KB  |  155 lines

  1. (*$M-*)
  2. DEFINITION MODULE Printer;
  3.  
  4. FROM SYSTEM IMPORT
  5.  CAST;
  6. FROM Exec IMPORT
  7.  nonstd,DevicePtr,IOFlagSet,Message,UnitPtr,UByte;
  8. FROM Graphics IMPORT
  9.  ColorMapPtr,RastPortPtr,ViewModeSet;
  10.  
  11. CONST
  12.  printerName="printer.device";
  13.  rawWrite=nonstd+0;
  14.  prtCommand=nonstd+1;
  15.  dumpRPort=nonstd+2;
  16.  
  17.  ris=0;     (* ESCc  reset                    ISO *)
  18.  rin=1;     (* ESC#1 initialize               +++ *)
  19.  ind=2;     (* ESCD  lf                       ISO *)               
  20.  nel=3;     (* ESCE  return,lf                ISO *)         
  21.  ri=4;      (* ESCM  reverse lf               ISO *)      
  22.  
  23.  sgr0=5;    (* ESC[0m normal char set         ISO *)    
  24.  sgr3=0;    (* ESC[3m italics on              ISO *)        
  25.  sgr23=7;   (* ESC[23m italics off            ISO *)
  26.  sgr4=8;    (* ESC[4m underline=0;            ISO *)
  27.  sgr24=9;   (* ESC[24m underline off          ISO *)
  28.  sgr1=10;   (* ESC[1m boldface on             ISO *)
  29.  sgr22=11;  (* ESC[22m boldface off           ISO *)
  30.  sfc=12;    (* SGR30-39  set foreground color ISO *)
  31.  sbc=13;    (* SGR40-49  set background color ISO *)
  32.  
  33.  shorp0=14; (* ESC[0w normal pitch            DEC *)
  34.  shorp2=15; (* ESC[2w elite on                DEC *)
  35.  shorp1=16; (* ESC[1w elite off               DEC *)
  36.  shorp4=17; (* ESC[4w condensed fine on       DEC *)
  37.  shorp3=18; (* ESC[3w condensed off           DEC *)
  38.  shorp6=19; (* ESC[6w enlarged on             DEC *)
  39.  shorp5=20; (* ESC[5w enlarged off            DEC *)
  40.  
  41.  den6=  21; (* ESC[6"z shadow print on        DEC (sort of) *)
  42.  den5=  22; (* ESC[5"z shadow print off       DEC *)
  43.  den4=  23; (* ESC[4"z doublestrike on        DEC *)
  44.  den3=  24; (* ESC[3"z doublestrike off       DEC *)
  45.  den2=  25; (* ESC[2"z  NLQ on                DEC *)
  46.  den1=  26; (* ESC[1"z  NLQ off               DEC *)
  47.  
  48.  sus2=  27; (* ESC[2v superscript on          +++ *)
  49.  sus1=  28; (* ESC[1v superscript off         +++ *)
  50.  sus4=  29; (* ESC[4v subscript on            +++ *)
  51.  sus3=  30; (* ESC[3v subscript off           +++ *)
  52.  sus0=  31; (* ESC[0v normalize the line      +++ *)
  53.  plu=   32; (* ESCL  partial line up          ISO *)
  54.  pld=   33; (* ESCK  partial line down        ISO *)
  55.  
  56.  fnt0=  34; (* ESC(B US char set              DEC *)
  57.  fnt1=  35; (* ESC(R French char set          DEC *)
  58.  fnt2=  36; (* ESC(K German char set          DEC *)
  59.  fnt3=  37; (* ESC(A UK char set              DEC *)
  60.  fnt4=  38; (* ESC(E Danish I char set        DEC *)
  61.  fnt5=  39; (* ESC(H Sweden char set          DEC *)
  62.  fnt6=  40; (* ESC(Y Italian char set         DEC *)
  63.  fnt7=  41; (* ESC(Z Spanish char set         DEC *)
  64.  fnt8=  42; (* ESC(J Japanese char set        +++ *)
  65.  fnt9=  43; (* ESC(6 Norweign char set        DEC *)
  66.  fnt10= 44; (* ESC(C Danish II char set       +++ *)
  67.  
  68.  prop2= 45; (* ESC[2p  proportional on        +++ *)
  69.  prop1= 46; (* ESC[1p  proportional off       +++ *)
  70.  prop0= 47; (* ESC[0p  proportional clear     +++ *)
  71.  tss=   48; (* ESC[n E set proportional offset ISO *)
  72.  jfy5=  49; (* ESC[5 F auto left justify      ISO *)
  73.  jfy7=  50; (* ESC[7 F auto right justify     ISO *)
  74.  jfy6=  51; (* ESC[6 F auto full justify      ISO *)
  75.  jfy0=  52; (* ESC[0 F auto justify off       ISO *)
  76.  jfy3=  53; (* ESC[3 F letter space (justify) ISO (special) *)
  77.  jfy1=  54; (* ESC[1 F word fill(auto center) ISO (special) *)
  78.  
  79.  verp0= 55; (* ESC[0z  1/8" line spacing      +++ *)
  80.  verp1= 56; (* ESC[1z  1/6" line spacing      +++ *)
  81.  slpp=  57; (* ESC[nt  set form length n      DEC *)
  82.  perf=  58; (* ESC[nq  perf skip n (n>0)      +++ *)
  83.  perf0= 59; (* ESC[0q  perf skip off          +++ *)
  84.  
  85.  lms=   60; (* ESC#9   Left margin set        +++ *)
  86.  rms=   61; (* ESC#0   Right margin set       +++ *)
  87.  tms=   62; (* ESC#8   Top margin set         +++ *)
  88.  bms=   63; (* ESC#2   Bottom marg set        +++ *)
  89.  stbm=  64; (* ESC[Pn1;Pn2r  T&B margins      DEC *)
  90.  slrm=  65; (* ESC[Pn1;Pn2s  L&R margin       DEC *)
  91.  cam=   66; (* ESC#3   Clear margins          +++ *)
  92.  
  93.  hts=   67; (* ESCH    Set horiz tab          ISO *)
  94.  vts=   68; (* ESCJ    Set vertical tabs      ISO *)
  95.  tbc0=  69; (* ESC[0g  Clr horiz tab          ISO *)
  96.  tbc3=  70; (* ESC[3g  Clear all h tab        ISO *)
  97.  tbc1=  71; (* ESC[1g  Clr vertical tabs      ISO *)
  98.  tbc4=  72; (* ESC[4g  Clr all v tabs         ISO *)
  99.  tbcall=73; (* ESC#4   Clr all h & v tabs     +++ *)
  100.  tbsall=74; (* ESC#5   Set default tabs       +++ *)
  101.  extend=75; (* ESC[Pn"x extended commands     +++ *)
  102.  
  103. TYPE
  104.  Error=(
  105.   e0,cancel,notGraphics,invertHam,badDimension,dimensionOvflow,
  106.   internalMemory,bufferMemory
  107.  );
  108.  IOPrinter=RECORD
  109.   message:Message;
  110.   device:DevicePtr;
  111.   unit:UnitPtr;
  112.   command:CARDINAL;
  113.   flags:IOFlagSet;
  114.   error:Error;
  115.   prtCommand:CARDINAL;
  116.   parm0:UByte;
  117.   parm1:UByte;
  118.   parm2:UByte;
  119.   parm3:UByte;
  120.  END;
  121.  IOPrinterPtr=POINTER TO IOPrtCmdReq;
  122.  Special=(
  123.   milCols,milRows,fullCols,fullRows,fracCols,fracRows,center,
  124.   aspect,density1,density2,density4
  125.  );
  126.  SpecialSet=SET OF Special;
  127.  
  128. CONST
  129.  density3=SpecialSet{density1,density2};
  130.  densityMask=CAST(SpecialSet,0F00H);
  131.  
  132. TYPE
  133.  IODRPReq=RECORD
  134.   message:Message;
  135.   device:DevicePtr;
  136.   unit:UnitPtr;
  137.   command:CARDINAL;
  138.   flags:IOFlagSet;
  139.   error:Error;
  140.   rastPort:RastPortPtr;
  141.   colorMap:ColorMapPtr;
  142.   modesHi:CARDINAL;
  143.   modes:ViewModeSet;
  144.   srcX:CARDINAL;
  145.   srcY:CARDINAL;
  146.   srcWidth:CARDINAL;
  147.   srcHeight:CARDINAL;
  148.   destCols:LONGINT;
  149.   destRows:LONGINT;
  150.   special:SpecialSet;
  151.  END;
  152.  IODRPReqPtr=POINTER TO IODRPReq;
  153.  
  154. END Printer.
  155.