|
|
1.1 ! root 1: /* ! 2: * Interpress utilities ! 3: * ! 4: * Copyright (c) 1984, 1985, 1986 Xerox Corp. ! 5: * ! 6: * Written for Xerox Corporation by William LeFebvre ! 7: * 24-May-1984 ! 8: * ! 9: * HISTORY ! 10: * 07-Jul-86 Lee Moore (lee) at Xerox Webster Research Center ! 11: * Changed the IP Header to be Interpress 2.1 instead of 3.0 . ! 12: * The 8044 services 9.0 doesn't like masters that begin ! 13: * "Interpress/Xerox/3.0 ". ! 14: * ! 15: * 03-Jul-86 Lee Moore (lee) at Xerox Webster Research Center ! 16: * Updated to Interpress 3.0 . Also fixed some typos and marked those ! 17: * operators which appear here which aren't in the Interpress manual. ! 18: * Some are old operators that have been dropped but many aren't documented ! 19: * at all. How they got here is a mystery. Perhaps it is part of research ! 20: * Interpress. ! 21: * ! 22: * 18-Mar-86 Lee Moore (lee) at Xerox Webster Research Center ! 23: * Added definition for RES_Header. ! 24: * ! 25: * ! 26: */ ! 27: ! 28: /* This header appears at the front of every Interpress file */ ! 29: ! 30: # define IP_Header "Interpress/Xerox/2.1 " ! 31: ! 32: # define RES_Header "Interpress/Xerox/2.1/RasterEncoding/1.0 " ! 33: ! 34: /* For convenience -- POINT is the size of a point in meters */ ! 35: # define POINT (0.00035278) ! 36: ! 37: /* ! 38: * Definitions pertaining to InterPress tokes: ! 39: */ ! 40: ! 41: # define SHORT_OP 0200 ! 42: # define LONG_OP 0240 ! 43: # define SHORT_INTEGER 0000 ! 44: # define SHORT_SEQUENCE 0300 ! 45: # define LONG_SEQUENCE 0340 ! 46: ! 47: /* these help us cope with short integer tokens: */ ! 48: # define INTEGER_ZERO 4000 ! 49: # define INTEGER_MAX (32767 - INTEGER_ZERO) ! 50: # define INTEGER_MIN (0 - INTEGER_ZERO) ! 51: ! 52: /* the long and short of sequences: */ ! 53: # define SHORT_SEQUENCE_LIMIT 255 /* (8 bits) */ ! 54: # define LONG_SEQUENCE_LIMIT 16777215 /* (24 bits) */ ! 55: ! 56: /* Sequence types: */ ! 57: # define sequenceAdaptivePixelVector 12 ! 58: # define sequenceAPV sequenceAdaptivePixelVector ! 59: # define sequenceCCITT_4PixelVector 13 ! 60: # define sequenceC4PV sequenceCCITT_4PixelVector ! 61: # define sequenceComment 6 ! 62: # define sequenceCompressedPixelVector 10 ! 63: # define sequenceCPV sequenceCompressedPixelVector ! 64: # define sequenceContinued 7 ! 65: # define sequenceIdentifier 5 ! 66: # define sequenceInsertFile 11 ! 67: # define sequenceInsertMaster 3 ! 68: # define sequenceInteger 2 ! 69: # define sequenceLargeVector 8 ! 70: # define sequencePackedPixelVector 9 ! 71: # define sequencePPV sequencePackedPixelVector ! 72: # define sequenceRational 4 ! 73: # define sequenceString 1 ! 74: ! 75: /* imager variables: */ ! 76: # define I_DCScpx 0 ! 77: # define I_DCScpy 1 ! 78: # define I_correctMX 2 ! 79: # define I_correctMY 3 ! 80: # define I_T 4 ! 81: # define I_priorityImportant 5 ! 82: # define I_mediumXSize 6 ! 83: # define I_mediumYSize 7 ! 84: # define I_fieldXMin 8 ! 85: # define I_fieldYMin 9 ! 86: # define I_fieldXMax 10 ! 87: # define I_fieldYMax 11 ! 88: # define I_showVec 12 /* old: version 2.1 */ ! 89: # define I_font 12 ! 90: # define I_color 13 ! 91: # define I_noImage 14 ! 92: # define I_strokeWidth 15 ! 93: # define I_strokeEnd 16 ! 94: # define I_underlineStart 17 ! 95: # define I_amplifySpace 18 ! 96: # define I_correctPass 19 ! 97: # define I_correctShrink 20 ! 98: # define I_correctTX 21 ! 99: # define I_correctTY 22 ! 100: # define I_strokeJoint 23 ! 101: # define I_clipper 24 ! 102: ! 103: # define I_LIMIT I_clipper ! 104: ! 105: /* operation codes: */ ! 106: # define OP_nil 0 ! 107: # define OP_nop 1 ! 108: ! 109: # define OP_setxy 10 ! 110: # define OP_setxyrel 11 ! 111: # define OP_setxrel 12 ! 112: # define OP_setyrel 13 ! 113: # define OP_linetox 14 ! 114: # define OP_linetoy 15 ! 115: # define OP_space 16 ! 116: # define OP_get 17 ! 117: # define OP_iget 18 ! 118: # define OP_iset 19 ! 119: # define OP_fget 20 ! 120: # define OP_fset 21 ! 121: # define OP_show 22 ! 122: # define OP_lineto 23 ! 123: # define OP_maskstroke 24 ! 124: # define OP_moveto 25 ! 125: ! 126: # define SHORT_OP_LIMIT 31 ! 127: ! 128: # define OP_metricMaster 100 /* ?? */ ! 129: # define OP_environmentMaster 101 /* ?? */ ! 130: # define OP_beginBlock 102 ! 131: # define OP_endBlock 103 ! 132: # define OP_noPages 104 /* ?? */ ! 133: # define OP_pageInstructions 105 /* old: version 2.1 */ ! 134: # define OP_contentInstructions 105 ! 135: # define OP_beginBody 106 ! 136: # define OP_endBody 107 ! 137: ! 138: # define OP_correct 110 ! 139: ! 140: # define OP_makesimpleco 114 ! 141: # define OP_makeco 115 /* ?? */ ! 142: # define OP_makecompiledimage 116 /* ?? */ ! 143: # define OP_findoperator 116 ! 144: ! 145: # define OP_dosavesimplebody 120 ! 146: # define OP_dobody 121 /* ?? */ ! 147: # define OP_dosavebody 122 /* ?? */ ! 148: # define OP_dosaveallbody 123 /* ?? */ ! 149: ! 150: # define OP_maskchar 140 ! 151: ! 152: # define OP_showandfixedxrel 145 ! 153: # define OP_showandxrel 146 ! 154: # define OP_findfont 147 ! 155: # define OP_modifyfont 148 ! 156: # define OP_finddecompressor 149 ! 157: # define OP_findfontvec 150 /* old: ?? */ ! 158: # define OP_setfont 151 ! 159: ! 160: # define OP_setcorrectmeasure 154 ! 161: # define OP_setcorrecttolerance 155 ! 162: # define OP_correctmask 156 /* ?? */ ! 163: # define OP_correctspace 157 /* ?? */ ! 164: ! 165: # define OP_getcp 159 ! 166: # define OP_maket 160 ! 167: # define OP_opent 161 /* ?? */ ! 168: # define OP_translate 162 ! 169: # define OP_rotate 163 ! 170: # define OP_scale 164 ! 171: # define OP_concat 165 ! 172: # define OP_scale2 166 ! 173: # define OP_invert 167 /* ?? */ ! 174: # define OP_concatt 168 ! 175: # define OP_move 169 ! 176: # define OP_trans 170 ! 177: ! 178: # define OP_transform 174 /* ?? */ ! 179: # define OP_transformvewc 175 /* ?? */ ! 180: # define OP_roundxy 176 /* ?? */ ! 181: # define OP_roundxyvec 177 /* ?? */ ! 182: ! 183: # define OP_pop 180 ! 184: # define OP_dup 181 ! 185: ! 186: # define OP_copy 183 ! 187: # define OP_roll 184 ! 188: # define OP_exch 185 ! 189: # define OP_mark 186 ! 190: # define OP_unmark 187 ! 191: # define OP_count 188 ! 192: ! 193: # define OP_unmark0 192 ! 194: ! 195: # define OP_abs 200 ! 196: # define OP_add 201 ! 197: # define OP_and 202 ! 198: # define OP_ceiling 203 ! 199: # define OP_div 204 ! 200: # define OP_eq 205 ! 201: # define OP_floor 206 ! 202: # define OP_ge 207 ! 203: # define OP_gt 208 ! 204: # define OP_mod 209 ! 205: # define OP_mul 210 ! 206: # define OP_neg 211 ! 207: # define OP_not 212 ! 208: # define OP_or 213 ! 209: # define OP_sub 214 ! 210: # define OP_trunc 215 ! 211: # define OP_rem 216 ! 212: # define OP_round 217 ! 213: # define OP_eqn 218 /* internal */ ! 214: ! 215: # define OP_type 220 ! 216: # define OP_atan 221 /* ?? */ ! 217: # define OP_cos 222 /* ?? */ ! 218: # define OP_exp 223 /* ?? */ ! 219: # define OP_log 224 /* ?? */ ! 220: # define OP_sin 225 /* ?? */ ! 221: # define OP_sqrt 226 /* ?? */ ! 222: # define OP_max 227 /* ?? */ ! 223: # define OP_min 228 /* ?? */ ! 224: ! 225: # define OP_do 231 ! 226: # define OP_dosave 232 ! 227: # define OP_dosaveall 233 ! 228: ! 229: # define OP_if 239 ! 230: # define OP_ifcopy 240 ! 231: # define OP_ifelse 241 ! 232: # define OP_loop 242 /* ?? */ ! 233: ! 234: # define OP_frame 250 /* ?? */ ! 235: ! 236: # define OP_poolop 253 /* ?? */ ! 237: # define OP_pool 254 /* ?? */ ! 238: # define OP_pget 255 /* internal */ ! 239: # define OP_pset 256 /* internal */ ! 240: # define OP_makepool 257 /* ?? */ ! 241: # define OP_nopool 258 /* ?? */ ! 242: ! 243: # define OP_env 260 /* ?? */ ! 244: ! 245: # define OP_makeveclu 282 ! 246: # define OP_makevec 283 ! 247: ! 248: # define OP_shape 285 ! 249: # define OP_openvec 286 /* ?? */ ! 250: # define OP_getp 286 ! 251: ! 252: # define OP_getprop 287 ! 253: # define OP_mergeprop 288 ! 254: ! 255: # define OP_dround 300 /* internal */ ! 256: # define OP_getcprounded 301 /* ?? */ ! 257: ! 258: # define OP_curveto 402 ! 259: # define OP_arcto 403 ! 260: # define OP_conicto 404 ! 261: ! 262: # define OP_maskfill 409 ! 263: # define OP_maskrectangle 410 ! 264: # define OP_masktrapezoidx 411 ! 265: # define OP_masktrapezoidy 412 ! 266: # define OP_startunderline 413 ! 267: # define OP_maskunderline 414 ! 268: ! 269: # define OP_makeoutlineodd 416 ! 270: # define OP_makeoutline 417 ! 271: # define OP_clipoutline 418 ! 272: # define OP_cliprectangle 419 ! 273: ! 274: # define OP_findcoloroperator 421 ! 275: # define OP_findcolormodeloperator 422 ! 276: # define OP_findcolor 423 ! 277: # define OP_setgray 424 ! 278: # define OP_makegray 425 ! 279: # define OP_makesampledblack 426 ! 280: # define OP_makesampledcolor 427 ! 281: # define OP_setsampledblack 428 ! 282: # define OP_setsampledcolor 429 ! 283: ! 284: # define OP_maskstrokeclosed 440 ! 285: # define OP_maskvector 441 ! 286: ! 287: # define OP_maskdashedstroke 442 ! 288: ! 289: # define OP_makepixelarray 450 ! 290: # define OP_extractpixelarray 451 ! 291: # define OP_maskpixel 452 ! 292: ! 293: # define OP_error 600 ! 294: ! 295: # define OP_LIMIT OP_error
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.