New driver development help - Okimate 20

Sean M. Pappalardo pegasus at renegadetech.com
Fri Nov 16 08:58:29 PST 2007


Hello.

I have been trying to write a driver for the old Okimate 20 24-pin color dot matrix printer. (http://openprinting.org/show_printer.cgi?recnum=Okidata-OkiMate_20 )

I've made a PPD and hacked up the code for rastertoepson to create rastertookimate and it works, marginally. I'm currently having the following problems and would appreciate some direction on how to solve them:

1) There appears to be a horizontal resolution mismatch. Everything prints three times wider than it should but is correct vertically. This happens in all graphics modes.

2) When printing with any of the 8-pin graphics modes, the carriage doesn't return at the end of each line. (The entire page appears to be sent as one loooong line which the printer just truncates.) This occurs with and without interleaving. (24-pin mode works correctly in this regard.)

3) Color printing: Since the PPD specifies the dot column height (8 or 24,) the filter uses OutputRows(). The filter code doesn't seem to make provision for color planes unless CompressData is used, so how can I effectively send banded color separations to the printer in YMC order?
(The printer expects the following: start graphics, align ribbon, yellow data, CR (no LF!), magenta, CR, cyan, CR+LF, repeat for next line.)

4) How can I insert debugging text to display on STDERR or in a log or something? (I've never programmed in C before, just PHP and assembly.)

Thank you very much for your time.





More information about the cups-devel mailing list