blob: 7f28db646f13c84b9007b6c42c2120ded138caa4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
|
/* $Header: qms.h,v 1.1 88/01/15 12:18:55 simpson Rel $ */
/*
$Log: qms.h,v $
* Revision 1.1 88/01/15 12:18:55 simpson
* initial release
*
* Revision 0.1 87/12/11 17:11:57 simpson
* beta test
*
*/
#define QUICON "\r^PY^-\r" /* QUIC Conversion On */
#define QUICOFF "\r^-^PN^-\r" /* QUIC Conversion Off */
#define PORTRAIT "^IOP" /* Portrait mode */
#define LANDSCAPE "^IOL" /* Landscape mode */
#define COMMAND "^N" /* Change command character */
#define SYNTAX "^ISYNTAX" /* Set syntax of numeric parameters */
#define FREEFORM "^F" /* Begin free-form input */
#define FREEOFF "^O" /* End free-form input */
#define IGNOREDATA "^X" /* Ignore subsequent input */
#define ENDIGNORE "^A" /* Stop ignoring data */
#define INITIALIZE "^IF" /* Select tray, offset page length */
#define STATUS "^ISTATUS" /* Print status page */
#define SPECIAL "^$" /* Enter special characters */
#define INITJUST "^IJ" /* Default top page margin */
#define INITBOTTOM "^IB" /* Default bottom page margin */
#define INITTAB "^IT" /* Default left page margin */
#define JUSTIFY "^J" /* Vertical positioning */
#define JUSTIFYMARGIN "^JM" /* Vertical positioning from margin */
#define JUSTIFYRELATIVE "^JR" /* Relative vertical positioning */
#define JUSTIFYDOTS "^JD" /* Relative vertical in dots */
#define TAB "^T" /* Horizontal positioning */
#define TABRELATIVE "^TR" /* Relative horizontal positioning */
#define TABDOTS "^TD" /* Relative horizontal in dots */
#define INITMARGVERT "^IMV" /* Default vertical margins */
#define INITMARGHORZ "^IMH" /* Default horizontal margins */
#define DEFFONT "^IS" /* Default font select */
#define FONT "^S" /* Select font */
#define CHARSPACING "^IC" /* Character spacing */
#define LINESPACING "^IL" /* Line spacing */
#define DOWNLOAD "^DF" /* Download font */
#define ADOWNLOAD "^DFA" /* Advanced download font */
#define QUICCHAR "^M" /* Quic characters */
#define VERTQUIC "^V" /* Vertical Quic characters */
#define LEFTVERTQUIC "^E" /* Left vertical Quic characters */
#define INVERTQUIC "^U" /* Upside down Quic characters */
#define DESCENDER "^DL" /* Lower case descenders on */
#define HALFTONE "^KH" /* Half tone */
#define HALFTONESELECT "^KL" /* Select a half tone */
#define REVERSE "^R" /* Reverse image */
#define LINE "^LS" /* Line drawing */
#define DASHEDLINE "^LD" /* Dashed lines */
#define HORLINEPLOT "^LP" /* Horizontal line plotting */
#define VERTLINEPLOT "^LQ" /* Vertical line plotting */
#define ARC "^LA" /* Arc drawing */
#define DECIMALARC "^LAD" /* Decimal arc drawing */
#define BOX "^LB" /* Box drawing */
#define FORM "^LF" /* Form drawing */
#define HORFORM "^LE" /* Horizontal form drawing */
#define PLOT "^P" /* Plotting */
#define PATTVEC "^PV" /* Pattern vector */
#define PLOTEXPAND "^IP" /* Plot expansion */
#define PENWIDTH "^PW" /* Pen width */
#define PENUP "^U" /* Pen up */
#define PENDOWN "^D" /* Pen down */
#define PENERASE "^E" /* Pen erase */
#define VECTORON "^IGV" /* Vector graphics on */
#define VECTOROFF "^IGE" /* Vector graphics off */
#define BARCHART "^BAR" /* Bar chart drawing */
#define PIECHART "^LAP" /* Pie chart drawing */
#define AREAFILL "^LAF" /* Area fill */
#define REPEAT "^DR" /* Repeat command */
#define AUTOINCDEC "^Y" /* Automatic increment/decrement */
#define INFO "^INFO" /* Get information from printer */
#define COPIES "^DC" /* Number of page copies */
#define STOREOVERLAY "^DOS" /* Store an overlay sequence */
#define RECALLOVERLAY "^DOR" /* Recall an overlay sequence */
#define CLEAROVERLAY "^DOC" /* Clear an overlay sequence */
#define AUTOOVERLAY "^DAOS" /* Define an automatic overlay */
#define CLEARAOVERLAY "^DAOC" /* Clear an automatic overlay */
#define HORBARCODE "^B" /* Horizontal barcodes */
#define VERTBARCODE "^C" /* Vertical barcodes */
#define DIABLO "^IWD" /* Enable diablo simulation */
#define QUME "^IWQ" /* Enable QUME simulation */
#define EXITSIMULATE "^IWE" /* Exit simulation mode */
#define PCONFIG "^ICFG" /* Printer configuration */
#define TEXTPROC "^ISTF" /* Text processing command */
#define EIGHTBITON "^(" /* Turn on eight bit format */
#define EIGHTBITOFF "^)" /* Turn off eight bit format */
#define ENDPASS "^-" /* End pass */
#define NEWLINE "^*" /* End pass, new line */
#define FORMFEED "^," /* End pass, form feed */
#define ENDCMD "^G" /* Command terminator */
#define HEIGHT "^H" /* Quic character height */
#define WIDTH "^W" /* Quic character width */
/* Structure returned when requesting MAP info */
struct qmsmap {
int count; /* Byte count */
int checksum;
char *data; /* "count" bytes of data terminated by NULL */
struct qmsmap *next;
};
/* Structure returned when requesting PAG info */
struct qmspag {
char PO; /* Orientation. 'P' or 'L' */
float TM; /* Top margin */
float BM; /* Bottom margin */
float LM; /* Left margin */
float RM; /* Right margin */
float LPI; /* Lines per inch */
float CPI; /* Characters per inch. 0 == Proportional */
short PT; /* Paper Tray. 0 == Top tray. 1 == Bottom Tray */
short PS; /* Page Size. 0 == Short. 1 == Long. 2 == European A-4 */
char SO; /* Stacker Offset. 'Y' or 'N' */
short CC; /* Copy Count */
};
/* Structure returned when requesting OVL info */
struct qmsovl {
enum { regular, automatic } ovltype;
/* The number and size are only valid for regular overlays */
int ovlnumber; /* Overlay number */
int ovlsize; /* Overlay size in bytes */
struct qmsovl *next;
};
/* Structure returned when requesting PFP info */
struct qmspfp {
char *module; /* Name of installed module */
struct qmspfp *next;
};
/* Structure returned when requesting OPC info */
struct qmsopc {
struct optnode *OC1, *OC2, *OC3, *OC4, *OC5;
};
struct optnode {
short option; /* Number of option */
struct optnode *next;
};
/* Structure returned when requesting RAM info */
struct qmsram {
short TR; /* Total Ram memory in printer */
short AR; /* Current Available Ram memory */
short FR; /* Font Ram memory used */
short OR; /* Overlay Ram memory used */
};
/* Structure returned when requesting FNTB info */
struct qmsfnt {
struct fontnode *rom; /* List of rom fonts */
struct fontnode *ram; /* List of ram fonts */
};
struct fontnode {
char orientation; /* 'P' or 'L' */
short number; /* Font number */
long bytes; /* Number of bytes in printer */
char version;
char class; /* '1' or '2' */
struct fontnode *next;
};
/* Structure returned when requesting version information */
struct qmsver {
float version; /* Version of QUIC */
float firmware; /* Version of the firmware */
struct date { /* Date of the firmware */
short month;
short day;
short year; /* Without the 1900 */
} date;
};
struct qmsmap *qmsmap();
struct qmspag *qmspag();
struct qmsovl *qmsovl();
struct qmspfp *qmspfp();
struct qmsopc *qmsopc();
struct qmsram *qmsram();
struct qmsfnt *qmsfnt();
struct qmsver *qmsver();
|