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 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>how_to_add_a_printer</title>
<meta http-equiv="content-type"
content="text/html; charset=ISO-8859-1">
<meta name="author" content="Jean-Jacques Sarton">
</head>
<body bgcolor="White">
<h3>Adding a new printer</h3>
The file <b>printer.desc.bldin</b> which must reside under the directory
/<i>usr/lib/xw</i>, <i>/usr/local/lib/xw</i> or <i>/opt/mtink</i> describe
the printer capabilities. This file can be used as template for creating the
description file <b>printer.desc</b> which will be read by the status monitors
mtink and ttink.<br>
<br>
If the printer.desc file is found, the remaining directories are not scanned.<br>
The scan order is <i>/usr/lib/mtink</i> <i>/usr/local/lib/mtink</i>, <i>/opt/mtink</i><br>
The description find into the printer.desc file prevail.<br><br>
<h4>FILE printer.desc:</h4>
This file contain blocks which describe the printer capability.<br>
<br>
A block look like this:<br>
<br>
<pre>.PRINTER
.name: Stylus C20SX
.colorsNb: 4
.mainProt: D4
.stateFlg: True
.exchangeFlg: False
.exchangeSeparateFlg: False
.cleanSeparateFlg: True
.resetProt: D4
.alignProt: OLD D4
.idFlg: True
.passesNb: 3
.choicesNb: 15
.colorPassesNb: 2
.colorChoicesNb: 9
.alignFunctionName: -
.END
</pre>
<br>
<table cellpadding="2" cellspacing="2" border="0" width="100%">
<tr>
<td valign="top"><b>.PRINTER</b>
</td>
<td valign="top" colspan=2>declare that a new description begins. The following words up to the <b>.END</b>
word, but not including it, describe the capabilities for the printer.
</td>
<tr>
<td> </td>
<td valign="top" colspan=3>Please don't begin a line with a dot '<b>.</b>', this character tell the
ttink/mtink as well as the help program rdPrtDesc that a description line begins.
</td>
</tr>
<tr>
<td valign="top"><b>.name:</b></td>
<td valign="top" colspan=2>must contain the name of the printer as returned by the printer name query.</td>
</tr>
<td valign="top"><b>.colorsNb:</b></td>
<td valign="top" colspan=2>tell ttink/mtink how many inks are used.</td>
</tr>
<td> </td>
<td valign="top" colspan=2>The designer ending with<b> Prot:</b> tell the programs which protocol is
to be used.</td>
<tr>
<td> </td>
<td valign="top" colspan=2> Newer printers know a new protocol which is named the <b>D4</b> protocol.
This new protocol allows to communicate with the printer via independant c
This allows for example to query the remaining ink quantity or the printer
status while printing.<br>
The <b>D4</b> protocol includes also a set of commands, so that most of
the old commands has a replacement. Unfortunately not all printers offer
the full set of <b>D4</b> commands.<br>
Due to this, and also for compatibility to drivers which don't know the
<b> D4</b> protocol, it is possible to tell the printer that the <b>D4</b>
protocol must be disabled.<br>
According to this the following combinations values are possible:
</td>
</tr>
<tr>
<td> </td>
<td valign="top"><i>OLD</i></td>
<td valign="top">The printer don't know anythings about <b>D4</b>.</td>
</tr>
<tr>
<td> </td>
<td valign="top"><i>OLD </i><i>D4</i></td>
<td valign="top">Use non <b>D4</b> command, but send this via the <b>D4</b> protocol.</td>
</tr>
<tr>
<td> </td>
<td valign="top"><i>OLD</i> <i>EXD4</i></td>
<td valign="top">Use the normal commands and set the printer into the compatibility mode.</td>
</tr>
<tr>
<td> </td>
<td valign="top"><i>D4</i></td>
<td valign="top">The printer know a special <b>D4</b> command, use this.</td>
</tr>
<tr>
<td valign="top"><b>.mainProt:</b></td>
<td valign="top" colspan=2>declare the default mode.</td>
</tr>
<tr>
<td valign="top"><b>.resetProt:</b></td>
<td valign="top" colspan=2>declare the protocol type top use for the reset command.
<b>D4</b> printers may all know this command but not perform the operation
as needed (e.g. Stylus Color 980 or the Stylus Scan ...).</td>
</tr>
<tr>
<td valign="top"><b>.alignProt:</b></td>
<td valign="top" colspan=2>This command seem not to have a <i>D4</i> counterpart
and the classic command will alltime be used. Here you may declare only
<i>D4</i> (<i>OLD</i> is implied).</td>
</tr>
<tr>
</tr>
<td> </td>
<td> </td>
<td> </td>
<tr>
<td> </td>
<td valign="top" colspan=2>Words ending with <b>Flg:</b> tell if the printer has a particular capability.
The assigned value may be <i>True</i> or <i>False.</i></td>
</tr>
<tr>
<td valign="top"><b>.stateFlg:</b></td>
<td valign="top" colspan=2>Tell if the printer is able to return if it is busy, working,...</td>
</tr>
<tr>
<td valign="top"><b>.cleanSeparateFlg</b></td>
<td valign="top" colspan=2>A few printers allow to clean separately the
nozzle. For those printers declare<i> True</i>.</td>
</tr>
<tr>
<td valign="top"><b>.idFlg:</b></td>
<td valign="top" colspan=2>The Stylus Scan 2500 and probably the Stylus Scan
2000 don't return an identification. For such model this flag must be set
to <i>False</i>.</td>
</tr>
<tr>
<td valign="top"><b>.exchangeFlg:</b></td>
<td valign="top" colspan=2>A few printers (Stylus Color 480/580) don't allows
to do this via button on the printer.This must be done by software. For such
printers set the value to <i>True</i>.</td>
</tr>
<tr>
<td valign="top"><b>.exchangeSeparateFlg:</b>
</td>
<td valign="top" colspan=2>Both above mentionned printers need a selection of
the cartridge which is to be exchanged. Set the value to <i>True</i>.
</td>
</tr>
</tr>
<td> </td>
<td> </td>
<td> </td>
<tr>
<tr>
<td> </td>
<td valign="top" colspan="2">The remaining designer ending with <b> Nb:</b>
</td>
</tr>
<tr>
<td valign="top"><b>.passesNb:</b><br>
<b>.ChoicesNb:</b><br>
<b>.colorPassesNb:</b><br>
<b>.colorChoicesNb:</b></td>
<td valign="top"colspan=2>are for the aligment procedure. The first two entries
tell how many passes are needed, and how many choices are allowed. These
values can be seen from the windows or Mac OS driver delivered by EPSON.
If the printer don't allow an adjustement for the color head, set the value
for <b>.colorChoicesNb</b> to <i>0</i>.
</td>
</tr>
<tr>
<td valign="top"><b>.alignFunctionName</b></td>
<td valign="top" colspan=2>was introduced specially for the Stylus Photo 820.
This printer don't have a buildin code which print the desired pattern. The
pattern must be supplied by ttink/mtink. For the Stylus Photo 820, enter
<i>Pattern820</i>, for others set the value to "<i>-</i> ".</td>
</tr>
</table>
<br>
<b>The following apply only for the source distribution:</b><br>
<h4>Installing a printer.desc file</h4>
If you want to modify the description for one of the given printers, extract
the data with rdPrtDesc and modify the value for the wanted file, then copy
the resulting printer.desc file to one of the above mentioned directory.
<br>
<h4> Compiling a new printer into ttink/mtink:</h4>
Generate your printer.desc file under the directory .../mtink/utils and call
<br>
<br>
rdPrtDesc -c > ../mainSrc/model.c<br>
<br>
The file for actual printers and the new one is then automatically generated.<br>
<br>
return then to the mtink directory and call make and make install.<br>
</body>
</html>
|