home *** CD-ROM | disk | FTP | other *** search
/ AMIGA PD 1 / AMIGA-PD-1.iso / Programme_zum_Heft / Programmieren / Kurztests / PascalPCQ / Include / Devices / ConUnit.i < prev    next >
Text File  |  1991-04-06  |  2KB  |  77 lines

  1. {
  2.     ConUnit.i for PCQ Pascal
  3.  
  4.     Console device unit definitions
  5. }
  6.  
  7. {$I "Include:Exec/Ports.i"}
  8. {$I "Include:Devices/Console.i"}
  9. {$I "Include:Devices/Keymap.i"}
  10. {$I "Include:Devices/InputEvent.i"}
  11.  
  12.  
  13. const
  14.  
  15.     PMB_ASM    = M_LNM + 1;    { internal storage bit for AS flag }
  16.     PMB_AWM    = PMB_ASM + 1;    { internal storage bit for AW flag }
  17.     MAXTABS    = 80;
  18.  
  19.  
  20. type
  21.  
  22.     ConUnit = record
  23.     cu_MP    : MsgPort;
  24.     { ---- read only variables }
  25.     cu_Window    : Address;    { (WindowPtr) intuition window bound to this unit }
  26.     cu_XCP        : Short;    { character position }
  27.     cu_YCP        : Short;
  28.     cu_XMax        : Short;    { max character position }
  29.     cu_YMax        : Short;
  30.     cu_XRSize    : Short;    { character raster size }
  31.     cu_YRSize    : Short;
  32.     cu_XROrigin    : Short;    { raster origin }
  33.     cu_YROrigin    : Short;
  34.     cu_XRExtant    : Short;    { raster maxima }
  35.     cu_YRExtant    : Short;
  36.     cu_XMinShrink    : Short;    { smallest area intact from resize process }
  37.     cu_YMinShrink    : Short;
  38.     cu_XCCP        : Short;    { cursor position }
  39.     cu_YCCP        : Short;
  40.  
  41.    { ---- read/write variables (writes must must be protected) }
  42.    { ---- storage for AskKeyMap and SetKeyMap }
  43.  
  44.     cu_KeyMapStruct    : KeyMap;
  45.  
  46.    { ---- tab stops }
  47.  
  48.     cu_TabStops    : Array [0..MAXTABS-1] of Short;
  49.                 { 0 at start, -1 at end of list }
  50.  
  51.    { ---- console rastport attributes }
  52.  
  53.     cu_Mask        : Byte;
  54.     cu_FgPen    : Byte;
  55.     cu_BgPen    : Byte;
  56.     cu_AOLPen    : Byte;
  57.     cu_DrawMode    : Byte;
  58.     cu_AreaPtSz    : Byte;
  59.     cu_AreaPtrn    : Address;    { cursor area pattern }
  60.     cu_Minterms    : Array [0..7] of Byte;    { console minterms }
  61.     cu_Font        : Address;    { (TextFontPtr) }
  62.     cu_AlgoStyle    : Byte;
  63.     cu_TxFlags    : Byte;
  64.     cu_TxHeight    : Short;
  65.     cu_TxWidth    : Short;
  66.     cu_TxBaseline    : Short;
  67.     cu_TxSpacing    : Short;
  68.  
  69.    { ---- console MODES and RAW EVENTS switches }
  70.  
  71.     cu_Modes    : Array [0..(PMB_AWM+7) div 8 - 1] of Byte;
  72.                 { one bit per mode }
  73.     cu_RawEvents    : Array [0..(IECLASS_MAX+7) div 8 - 1] of Byte;
  74.     end;
  75.     ConUnitPtr = ^ConUnit;
  76.  
  77.