Date: Sat, 27 Sep 1997 11:56:46 +0200 From: Robin Huiser <robinh@htsa.hva.nl> To: Antonio Bemfica <bemfica@militzer.me.tuns.ca> Cc: FreeBSD Questions Mailing List <freebsd-questions@FreeBSD.ORG> Subject: Re: printer Message-ID: <342CD85D.97E6E239@htsa.hva.nl> References: <Pine.BSF.3.96.970926124441.13022B-100000@militzer.me.tuns.ca>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------CFDD3672F9F396DC2CFA1DBF
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Antonio Bemfica wrote:
> Hi
>
> I once tried the scheme you suggested for printing Postscript and text to
> HP Deskjets, but somehow whenever I send a ps file it would crash my
> server! Your if-deskjet script looked slightly different, so I tried it
> again, but it still crashes - I've compiled a newer version of Ghostscript
> (5.03) but it still doesn't work. Any clues as to what could be causing
> this? The job gets sent to the printer, and it starts printing allright,
> but by the middle of the first page, poof! the machine invariably crashes
> (Fatal trap 12: page fault while in kernel mode). But text-only jobs
> prints fine!
>
> Antonio
Hello Antonio,
Wow, you have a problem over there! (Are you sure you are running FreeBSD in
stead of Linux? ;-) )
I want to point out a few important things:
* Use Alladin postscript
* Check your lpt driver (polling or irq mode)
* Use the follwing scripts, they work fine for me, and I am using FreeBSD 2.2.2
Please let me know if this works!
Greets,
--
Robin Huiser
,,,
(o o)
()========================oOO==(_)==OOo==========================()
Robin Huiser, student Computer Science
HVA Faculteit Electrotechniek & Informatica, The Netherlands
E-mail: robinh@htsa.hva.nl
Important Unix command:
echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq' | dc
--------------CFDD3672F9F396DC2CFA1DBF
Content-Type: text/plain; charset=us-ascii; name="printcap"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; filename="printcap"
# @(#)printcap 5.3 (Berkeley) 6/30/90
#lp|local line printer:\
# :lp=/dev/lpt0:sd=/var/spool/output/lpd:lf=/var/log/lpd-errs:
deskjet|lp|HP Deskjet 694-C bubblejet printer:\
:sh:sd=/var/spool/lpd/deskjet:lp=/dev/lpt0:mx#0:\
:if=/usr/local/libexec/if-deskjet:
star|STAR LC24-10 Multifont lineprinter:\
:sh:sd=/var/spool/lpd/star:lp=:rm=odie:rp=star:
--------------CFDD3672F9F396DC2CFA1DBF
Content-Type: text/plain; charset=us-ascii; name="if-deskjet"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; filename="if-deskjet"
#!/bin/sh
#
# if-hp - Postscript level 3 and text input filter for lpd
# Installed in /usr/local/libexec/if-hp
#
# Textmode: simply copies stdin to stdout. Ignores all filter arguments
# Postscript: run gs to convert the text you want to print
# Add a formfeed after each job
#
# Some handy functions
#
fatal() {
echo "$@" 1>\&2
exit 2
}
#
# Set LF to LF+CR
#
printf "\033\&k2G" || fatal "Cannot initialize printer"
#
# Read first two characters of the file
#
read first_line
first_two_chars=`expr "$first_line" : '\(..\)'`
if [ "$first_two_chars" = '%!' ]; then
#
# It's postscript; use Ghostscript to scan-convert and print it
#
/usr/local/bin/gs -dSAFER -dNOPAUSE -sPAPERSIZE=a4 -q -sDEVICE=cdj550 -sOutputFile=- - && exit 0
else
#
# Plan text or HP/PCL. so just print it directly; print a form
# at the end to eject the last page
#
echo $first_line && cat && printf "\f" && exit 0 || exit 2
fi
exit 2
--------------CFDD3672F9F396DC2CFA1DBF--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?342CD85D.97E6E239>
