home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / cpm / list / ep-misc.ark / EP.DEF < prev    next >
Text File  |  1988-05-21  |  5KB  |  130 lines

  1.  
  2. /* access values for 2 letter run-off type commands */
  3. #define ad    val['A'-'@']['D'-'@']    /* adjust, or left margin    */
  4. #define ll    val['L'-'@']['L'-'@']    /* line length            */
  5. #define co    val['C'-'@']['O'-'@']    /* concatenation (Boolean)    */
  6. #define ju    val['J'-'@']['U'-'@']    /* justification (Boolean)    */
  7. #define fo    val['F'-'@']['O'-'@']    /* font number; 0 = native Eps.    */
  8. #define cs    val['C'-'@']['S'-'@']    /* character spacing        */
  9. #define cw    val['C'-'@']['W'-'@']    /* character width        */
  10. #define cheight    val['C'-'@']['H'-'@']    /* character height        */
  11. #define st    val['S'-'@']['T'-'@']    /* stretch            */
  12. #define sh    val['S'-'@']['H'-'@']    /* shrink            */
  13. #define sl    val['S'-'@']['L'-'@']    /* set leading            */
  14. #define pl    val['P'-'@']['L'-'@']    /* page length            */
  15. #define br    val['B'-'@']['R'-'@']    /* break            */
  16.  
  17. #define tm    val['T'-'@']['M'-'@']    /* top margin            */
  18. #define bm    val['B'-'@']['M'-'@']    /* bottom margin        */
  19. #define hm    val['H'-'@']['M'-'@']    /* heading margin        */
  20. #define fm    val['F'-'@']['M'-'@']    /* footing margin        */
  21. #define in    val['I'-'@']['N'-'@']    /* indent            */
  22. #define ir    val['I'-'@']['R'-'@']    /* indent right            */
  23. #define ro    val['R'-'@']['O'-'@']    /* room                */
  24.  
  25. #define nf    val['N'-'@']['F'-'@']    /* new fonts            */
  26. #define gu    val['G'-'@']['U'-'@']    /* gutter            */
  27. #define cc    val['C'-'@']['C'-'@']    /* current column        */
  28. #define nc    val['N'-'@']['C'-'@']    /* number columns        */
  29. #define pn    val['P'-'@']['N'-'@']    /* page number            */
  30.  
  31.  
  32.  
  33. #define mx    val['M'-'@']['X'-'@']    /* MX flag            */
  34. #define rb    val['R'-'@']['B'-'@']    /* required blank        */
  35. #define ec    val['E'-'@']['C'-'@']    /* escape character        */
  36.  
  37. /* synonyms of Epson commands    */
  38. #define el    val['E'-'@']['L'-'@']    /* elite            */
  39. #define cp    val['C'-'@']['P'-'@']    /* com-pressed            */
  40. #define em    val['E'-'@']['M'-'@']    /* emphasized            */
  41. #define ds    val['D'-'@']['S'-'@']    /* double strike        */
  42. #define ex    val['E'-'@']['X'-'@']    /* expanded            */
  43. #define pr    val['P'-'@']['R'-'@']    /* proportional            */
  44. #define it    val['I'-'@']['T'-'@']    /* italic            */
  45. #define sp    val['S'-'@']['P'-'@']    /* su-perscript            */
  46. #define sb    val['S'-'@']['B'-'@']    /* su-bscript             */
  47. #define ul    val['U'-'@']['L'-'@']    /* under-line            */
  48.  
  49. #define bo    val['B'-'@']['O'-'@']    /* bold                */
  50. #define be    val['B'-'@']['E'-'@']    /* bent                */
  51. #define fa    val['F'-'@']['A'-'@']    /* fast                */
  52. #define ta    val['T'-'@']['A'-'@']    /* tall                */
  53.  
  54. #define    CMDCH    '\\'    /* command character (use 'li'?)*/
  55. #define    DOTCH    '.'    /* at beginning of line, same
  56.                as CMDCH            */
  57. #define FF    0x0C
  58. #define    SOFTSP    0xA0    /* WS fill sp char        */
  59. #define    SOFTCR    0x8D    /* WS intra paragraph newline    */
  60. #define SOFTHY    0x1E    /* WS inactive soft hyphen    */
  61. #define SOFTHYA    0x1F    /* WS acitve soft hyphen    */
  62.  
  63. #define NUMFTS    7    /* maximum number of graphic fonts    */
  64. #define LENFTN  14    /* len of name is 8 plus 5 for prefixes and a nul */
  65. #define MAXLINE    300
  66. #define MAXSNEST 40
  67.  
  68. /* various measures in terms of dots    */
  69. #define PICA    24
  70. #define POINT    3
  71. #define INCH    240
  72. #define    VINCH    216
  73.  
  74.  
  75.  
  76. /* masks for mode bits */
  77. #define ELITE     0x01
  78. #define PRPTNL     0x02
  79. #define CMPRSSD  0x04
  80. #define EMPHSZD  0x08
  81. #define DBLSTRK  0x10
  82. #define EXPNDD     0x20
  83. #define UNDRLN     0x40
  84. #define ITALIC     0x80
  85. /*    So that's b0-b7; b8,b9,b10 are used for the
  86.     current graphics font, which is 'fo'-1.        */
  87. #define SUPSCRPT 0x0800
  88. #define SUBSCRPT 0x1000
  89. #define BENT     0x2000
  90. #define TALL     0x4000
  91. #define IGNORE     0x8000
  92. /*    All bits are committed                */
  93.  
  94. /* define bits for type of command value                */
  95. #define    HZNUM    1    /* numerical value, horizontal measure        */
  96. #define    VTNUM    2    /* numerical value, vertical measure        */
  97. #define    EPSSYN    4    /* synonym of Epson command            */
  98. #define BRK    8    /* causes a break                */
  99. #define CHARG    16    /* arg is character                */
  100. #define FLAGCH    32    /* value is character flag            */
  101. #define MCRO    64    /* macro                    */
  102. #define BRKAFT 128    /* causes a break before next input line    */
  103. #define ARGTRUE 33    /* assume arg=1, don't scan for number        */
  104.  
  105. /* character flags                            */
  106. #define CEFLAG    0x90
  107. #define RAFLAG    0x91
  108. #define SPFLAG    0x92
  109. #define HSFLAG    0x93
  110. #define PAFLAG    0x94
  111. #define FRFLAG    0x95
  112. #define BCKFLAG 0x96
  113.  
  114. /* following block matches format of data in ep.ini             */
  115. /* initialization data       size tot.size                */
  116. int    val[27][27];    /* 05B2    05B2    values of 'pl', etc.        */
  117. char    valtp[27][27];    /* 02D9 088B    type of value, e.g. numerical    */
  118. char    modelen[64];    /* 0040 08CB    width of Epson built-in char's    */
  119. char    pmlen[256];    /* 0100 09CB    width of Epson prop'l char's    */
  120. int    mode;        /* 0002 09CD    16 bits keep track of font, etc.*/
  121. char    tabwid;        /* 0001 09CE    nominal char width for int'g tab*/
  122. char    bending[7][24];    /* 00A8 0A76    bending                */
  123. char    editname[10];    /* 000A 0A80    name of editor called by eperror*/
  124.     /* total = 10 pp. or 21 records */
  125.  
  126.  
  127. #define BSTKSIZE 60
  128. #define MAXCOL     10
  129.  
  130.