1 /* 2 * dvi2tty 3 * Copyright (C) 2003 Marcel J.E. Mol <marcel@mesa.nl> 4 * 5 * This program is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU General Public License 7 * as published by the Free Software Foundation; either version 2 8 * of the License, or (at your option) any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program; if not, write to the Free Software 17 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 18 * 19 */ 20 21 /* DVI COMMANDS */ 22 #define SETC_000 0 /* typeset character 0 and move right */ 23 #define SETC_127 127 /* typeset character 127 and move right */ 24 #define SET1 128 /* typeset a character and move right */ 25 #define SET2 129 /* ??? */ 26 #define SET3 130 /* ??? */ 27 #define SET4 131 /* ??? */ 28 #define SET_RULE 132 /* typeset a rule and move right */ 29 #define PUT1 133 /* typeset a character */ 30 #define PUT2 134 /* ??? */ 31 #define PUT3 135 /* ??? */ 32 #define PUT4 136 /* ??? */ 33 #define PUT_RULE 137 /* typeset a rule */ 34 #define NOP 138 /* no operation */ 35 #define BOP 139 /* beginning of page */ 36 #define EOP 140 /* ending of page */ 37 #define PUSH 141 /* save the current positions */ 38 #define POP 142 /* restore previous positions */ 39 #define RIGHT1 143 /* move right */ 40 #define RIGHT2 144 /* ??? */ 41 #define RIGHT3 145 /* ??? */ 42 #define RIGHT4 146 /* ??? */ 43 #define W0 147 /* move right by |w| */ 44 #define W1 148 /* move right and set |w| */ 45 #define W2 149 /* ??? */ 46 #define W3 150 /* ??? */ 47 #define W4 151 /* ??? */ 48 #define X0 152 /* move right by |x| */ 49 #define X1 153 /* move right and set |x| */ 50 #define X2 154 /* ??? */ 51 #define X3 155 /* ??? */ 52 #define X4 156 /* ??? */ 53 #define DOWN1 157 /* move down */ 54 #define DOWN2 158 /* ??? */ 55 #define DOWN3 159 /* ??? */ 56 #define DOWN4 160 /* ??? */ 57 #define Y0 161 /* move down by |y| */ 58 #define Y1 162 /* move down and set |y| */ 59 #define Y2 163 /* ??? */ 60 #define Y3 164 /* ??? */ 61 #define Y4 165 /* ??? */ 62 #define Z0 166 /* move down by |z| */ 63 #define Z1 167 /* move down and set |z| */ 64 #define Z2 168 /* ??? */ 65 #define Z3 169 /* ??? */ 66 #define Z4 170 /* ??? */ 67 #define FONT_00 171 /* set current font to 0 */ 68 #define FONT_63 234 /* set current font to 63 */ 69 #define FNT1 235 /* set current font */ 70 #define FNT2 236 /* Same as FNT1, except that arg is 2 bytes */ 71 #define FNT3 237 /* Same as FNT1, except that arg is 3 bytes */ 72 #define FNT4 238 /* Same as FNT1, except that arg is 4 bytes */ 73 #define XXX1 239 /* extension to \.DVI primitives */ 74 #define XXX2 240 /* Like XXX1, but 0<=k<65536 */ 75 #define XXX3 241 /* Like XXX1, but 0<=k<@t$2^{24}$@> */ 76 #define XXX4 242 /* potentially long extension to \.DVI 77 primitives */ 78 #define FNT_DEF1 243 /* define the meaning of a font number */ 79 #define FNT_DEF2 244 /* ??? */ 80 #define FNT_DEF3 245 /* ??? */ 81 #define FNT_DEF4 246 /* ??? */ 82 #define PRE 247 /* preamble */ 83 #define POST 248 /* postamble beginning */ 84 #define POST_POST 249 /* postamble ending */ 85 #define TRAILER 223 /* trailer bytes in dvi file */ 86 87 /* additional DVI commands for XeTeX extensions */ 88 #define PIC_FILE 251 89 #define NAT_FNT 252 /* define a native font */ 90 #define SET_GL_AR 253 91 #define SET_GL_ST 254 92 93 /* additional DVI command for pTeX extensions */ 94 #define DVI_DIR 255 /* set direction */ 95 96 97 /* undefined_commands 250 */ 98