Date: Tue, 03 Sep 1996 18:02:49 -0400 From: "Chuck O'Donnell" <codonnell@bus.net> To: rhh@ct.picker.com Cc: kaplan@cslab.tuwien.ac.at, questions@FreeBSD.org Subject: Re: HP Laserjet 5L Message-ID: <1.5.4.16.19960903220249.347f8d54@bus.net>
next in thread | raw e-mail | index | archive | help
At 08:17 AM 9/3/96 -0400, Randall Hopper wrote: >On Fri, 30 Aug 1996, Leon Kaplan wrote: >> I followed the steps in the handbook but I just can't seem to >> get this working: >> >> My HP 5L is on /dev/lpt0. When I try to "cat /etc/printcap > /dev/lpt0" then >> (appart from the missing LF -> CR+LF translation) everything gets >> printed _very_ slowly (1/2 page per minute). If I use a simple filter script >> as the one below then I have the same problem. Could this be because of >> interrupt driven mode? Should I switch to polling? Any experiences? > >Sounds familiar :) Try lptcontrol -p. Either that, or remove the other >conflicting device on IRQ 7, if one exists (probably a sound card or a >second parallel port). > >Randall Hopper >rhh@ct.picker.com > > Leon, I don't know about the slow printing problem, but for the CR/LF problem, you can use the attached filter `laser.c'. It also has settings for pitch, font, and indentation. The printer does have a built in escape sequence command to set the the correct CR/LF action internally, but it was easier to do it with a filter. Let me know if you want the HP command and I'll go see if I can dig it out. For the filter, I have the following description in /etc/printcap: lp|laser|LaserJet:\ :lp=/dev/lpt0:sd=/var/spool/lpd:lf=/var/log/lpd-errs:\ :pl=66:pw=80:sh:of=/usr/local/bin/laser: The compiled filter program is installed as `/usr/local/bin/laser'. Note the non-default pl setting, which was changed from 60 lines per page to 66 lines per page using the HP Dos software on a 5P. I'm not sure if this applies to the 5L. I noticed you use `cat /etc/printcap > /dev/lp0'. I think you will need to use the lp daemon to take advantage of the filter, i.e. `lp /etc/printcap'. Hope you find this useful. Let me kow if you have any trouble with compilation. Chuck O'Donnell attachment: laser.c ============================================================================= #include <stdio.h> #define PITCH 15 /* font pitch (10, 12, 15, or 16.67 (condensed)) */ #define INDENT 15 /* columns to indent (0-32)*/ int main (void) { int c; /* set font (courier) and pitch */ printf("\033(8U\033(s0p%dh0s0b4099T", PITCH); /* indent */ printf("\033&a%dL", INDENT); /* print the file, adding CR's */ while ((c = getchar()) != EOF) { if (c == '\n') putchar('\r'); putchar(c); } /* reset the printer */ printf("\033E"); return 0; }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1.5.4.16.19960903220249.347f8d54>