From owner-p4-projects@FreeBSD.ORG Tue Jul 29 06:32:26 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C718E1065682; Tue, 29 Jul 2008 06:32:26 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8710B106567D for ; Tue, 29 Jul 2008 06:32:26 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 83C578FC1A for ; Tue, 29 Jul 2008 06:32:26 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.2/8.14.2) with ESMTP id m6T6WQfV064207 for ; Tue, 29 Jul 2008 06:32:26 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.2/8.14.1/Submit) id m6T6WPni064203 for perforce@freebsd.org; Tue, 29 Jul 2008 06:32:25 GMT (envelope-from jb@freebsd.org) Date: Tue, 29 Jul 2008 06:32:25 GMT Message-Id: <200807290632.m6T6WPni064203@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 146180 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 Jul 2008 06:32:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=146180 Change 146180 by jb@freebsd3 on 2008/07/29 06:31:59 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/printing/chapter.sgml#17 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/virtualization/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/share/sgml/mailing-lists.ent#7 integrate .. //depot/projects/dtrace/doc/mn_MN.UTF-8/books/handbook/printing/chapter.sgml#11 integrate .. //depot/projects/dtrace/doc/mn_MN.UTF-8/books/handbook/virtualization/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/virtualization/chapter.sgml#3 integrate .. //depot/projects/dtrace/ports/LEGAL#41 integrate .. //depot/projects/dtrace/ports/Mk/bsd.sites.mk#35 integrate .. //depot/projects/dtrace/ports/UPDATING#84 integrate .. //depot/projects/dtrace/src/contrib/cvs/doc/HACKING.DOCS#2 integrate .. //depot/projects/dtrace/src/contrib/telnet/telnetd/state.c#4 integrate .. //depot/projects/dtrace/src/contrib/telnet/telnetd/telnetd.c#5 integrate .. //depot/projects/dtrace/src/etc/mtree/BSD.usr.dist#18 integrate .. //depot/projects/dtrace/src/lib/libc/gen/posix_spawn.3#2 integrate .. //depot/projects/dtrace/src/lib/libc/gen/posix_spawn_file_actions_addopen.3#2 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/mktemp.c#6 integrate .. //depot/projects/dtrace/src/release/doc/en_US.ISO8859-1/relnotes/article.sgml#26 integrate .. //depot/projects/dtrace/src/share/colldef/Makefile#7 integrate .. //depot/projects/dtrace/src/share/colldef/no_NO.ISO8859-1.src#1 branch .. //depot/projects/dtrace/src/share/colldef/no_NO.ISO8859-15.src#1 branch .. //depot/projects/dtrace/src/share/timedef/Makefile#6 integrate .. //depot/projects/dtrace/src/share/timedef/nb_NO.ISO8859-1.src#1 branch .. //depot/projects/dtrace/src/share/timedef/nb_NO.UTF-8.src#1 branch .. //depot/projects/dtrace/src/share/timedef/no_NO.ISO8859-1.src#5 delete .. //depot/projects/dtrace/src/share/timedef/no_NO.UTF-8.src#5 delete .. //depot/projects/dtrace/src/sys/amd64/amd64/pmap.c#52 integrate .. //depot/projects/dtrace/src/sys/conf/NOTES#63 integrate .. //depot/projects/dtrace/src/sys/conf/files#101 integrate .. //depot/projects/dtrace/src/sys/dev/wi/if_wi.c#15 integrate .. //depot/projects/dtrace/src/sys/dev/wi/if_wivar.h#7 integrate .. //depot/projects/dtrace/src/sys/i386/i386/pmap.c#43 integrate .. //depot/projects/dtrace/src/sys/kern/sched_4bsd.c#39 integrate .. //depot/projects/dtrace/src/sys/kern/subr_sleepqueue.c#18 integrate .. //depot/projects/dtrace/src/sys/modules/et/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#7 integrate .. //depot/projects/dtrace/src/sys/netgraph/ng_l2tp.c#9 integrate .. //depot/projects/dtrace/src/sys/netinet/raw_ip.c#20 integrate .. //depot/projects/dtrace/src/sys/netinet6/icmp6.c#16 integrate .. //depot/projects/dtrace/src/sys/netinet6/raw_ip6.c#14 integrate .. //depot/projects/dtrace/src/tools/build/mk/OptionalObsoleteFiles.inc#16 integrate .. //depot/projects/dtrace/src/usr.bin/ldd/ldd.c#6 integrate .. //depot/projects/dtrace/src/usr.bin/procstat/procstat.1#4 integrate .. //depot/projects/dtrace/src/usr.sbin/config/config.y#8 integrate .. //depot/projects/dtrace/src/usr.sbin/config/lang.l#5 integrate .. //depot/projects/dtrace/www/share/sgml/news.xml#57 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/printing/chapter.sgml#17 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -31,24 +31,24 @@ LPD spooling system printing - FreeBSD can be used to print with a wide variety of printers, from the + &os; can be used to print with a wide variety of printers, from the oldest impact printer to the latest laser printers, and everything in between, allowing you to produce high-quality printed output from the applications you run. - FreeBSD can also be configured to act as a print server on a - network; in this capacity FreeBSD can receive print jobs from a variety - of other computers, including other FreeBSD computers, &windows; and &macos; - hosts. FreeBSD will ensure that one job at a time is printed, and can - keep statistics on which users and machines are doing the most printing, - produce banner pages showing who's printout is who's, and - more. + &os; can also be configured to act as a print server on a + network; in this capacity &os; can receive print jobs from a variety + of other computers, including other &os; computers, &windows; and + &macos; hosts. &os; will ensure that one job at a time is printed, and + can keep statistics on which users and machines are doing the most + printing, produce banner pages showing who's printout is + who's, and more. After reading this chapter, you will know: - How to configure the FreeBSD print spooler. + How to configure the &os; print spooler. @@ -89,7 +89,7 @@ - Know how to configure and install a new kernel + Know how to configure and install a new kernel (). @@ -98,20 +98,20 @@ Introduction - In order to use printers with FreeBSD, you may set + In order to use printers with &os; you may set them up to work with the Berkeley line printer spooling system, also known as the LPD spooling system, or just LPD. - It is the standard printer control system in FreeBSD. This + It is the standard printer control system in &os;. This chapter introduces LPD and will guide you through its configuration. - If you are already familiar with + If you are already familiar with LPD or another printer spooling system, you may wish to skip to section Basic Setup. + linkend="printing-intro-setup">Basic Setup. - LPD controls everything about a + LPD controls everything about a host's printers. It is responsible for a number of things: @@ -145,7 +145,7 @@ - It can send jobs over the network to a + It can send jobs over the network to a LPD spooler on another host. @@ -162,14 +162,14 @@ Through a configuration file (/etc/printcap), and by providing the special filter programs, you can enable the LPD - system to do all or some - subset of the above for a great variety of printer hardware. + system to do all or some subset of the above for a great variety of + printer hardware. Why You Should Use the Spooler If you are the sole user of your system, you may be wondering - why you should bother with the spooler when you do not need access + why you should bother with the spooler when you do not need access control, header pages, or printer accounting. While it is possible to enable direct access to a printer, you should use the spooler anyway since: @@ -177,17 +177,16 @@ LPD prints jobs in the background; - you do not have to wait - for data to be copied to the printer. + you do not have to wait for data to be copied to the + printer. &tex; - LPD can conveniently run a job - to be printed through - filters to add date/time headers or convert a special file - format (such as a &tex; DVI file) into a format the printer will - understand. You will not have to do these steps + LPD can conveniently run a job + to be printed through filters to add date/time headers or convert + a special file format (such as a &tex; DVI file) into a format + the printer will understand. You will not have to do these steps manually. @@ -206,26 +205,23 @@ Basic Setup To use printers with the LPD spooling - system, you will need to - set up both your printer hardware and the - LPD software. This - document describes two levels of setup: + system, you will need to set up both your printer hardware and the + LPD software. This document describes two + levels of setup: See section Simple Printer - Setup to learn how to connect a printer, tell - LPD how to - communicate with it, and print plain text files to the - printer. + Setup to learn how to connect a printer, tell + LPD how to communicate with it, and + print plain text files to the printer. - See section Advanced - Printer Setup to learn how to print a variety of - special file formats, to print header pages, to print across a - network, to control access to printers, and to do printer - accounting. + See section Advanced Printer + Setup to learn how to print a variety of special file + formats, to print header pages, to print across a network, to + control access to printers, and to do printer accounting. @@ -233,7 +229,7 @@ Simple Printer Setup This section tells how to configure printer hardware and the - LPD software to use the printer. + LPD software to use the printer. It teaches the basics: @@ -245,7 +241,7 @@ Section Software - Setup shows how to set up the + Setup shows how to set up the LPD spooler configuration file (/etc/printcap). @@ -259,9 +255,9 @@ Although this section is called Simple Printer Setup, it is actually fairly complex. Getting the printer to work with your computer and the LPD - spooler is the hardest - part. The advanced options like header pages and accounting are - fairly easy once you get the printer working. + spooler is the hardest part. The advanced options like header pages + and accounting are fairly easy once you get the printer + working. Hardware Setup @@ -269,12 +265,12 @@ This section tells about the various ways you can connect a printer to your PC. It talks about the kinds of ports and cables, and also the kernel configuration you may need to enable - FreeBSD to speak to the printer. + &os; to speak to the printer. If you have already connected your printer and have successfully printed with it under another operating system, you can probably skip to section Software Setup. + linkend="printing-software">Software Setup. Ports and Cables @@ -284,9 +280,9 @@ - printers - serial - + printers + serial + Serial interfaces, also known as RS-232 or COM ports, use a serial port @@ -296,14 +292,14 @@ interfaces sometimes need special cables and might require you to configure somewhat complex communications options. Most PC serial ports have a maximum - transmission rate of 115200 bps, which makes printing - large graphic print jobs with them impractical. + transmission rate of 115200 bps, which makes printing + large graphic print jobs with them impractical. - printers - parallel - + printers + parallel + Parallel interfaces use a parallel port on your computer to send data to the @@ -315,7 +311,7 @@ configuration exceedingly simple. - centronics + centronics parallel printers Parallel interfaces are sometimes known as @@ -324,54 +320,52 @@ - printers - USB - + printers + USB + USB interfaces, named for the Universal Serial - Bus, can run at even faster speeds than parallel or - RS-232 serial interfaces. Cables are simple and cheap. - USB is superior to RS-232 Serial and to Parallel for - printing, but it is not as well supported under &unix; - systems. A way to avoid this problem is to purchase a - printer that has both a USB interface and a Parallel - interface, as many printers do. + Bus, can run at even faster speeds than parallel or + RS-232 serial interfaces. Cables are simple and cheap. + USB is superior to RS-232 Serial and to Parallel for + printing, but it is not as well supported under &unix; + systems. A way to avoid this problem is to purchase a + printer that has both a USB interface and a Parallel + interface, as many printers do. In general, Parallel interfaces usually offer just one-way communication (computer to printer) while serial - and USB gives you two-way. Newer parallel ports (EPP and - ECP) and printers - can communicate in both directions under FreeBSD when a - IEEE-1284-compliant cable is used. + and USB gives you two-way. Newer parallel ports (EPP and + ECP) and printers can communicate in both directions under &os; + when a IEEE-1284-compliant cable is used. PostScript Two-way communication to the printer over a parallel port is generally done in one of two ways. The first method - uses a custom-built printer driver for FreeBSD that speaks + uses a custom-built printer driver for &os; that speaks the proprietary language used by the printer. This is common with inkjet printers and can be used for reporting ink levels and other status information. The second method is used when the printer supports &postscript;. - &postscript; jobs are - actually programs sent to the printer; they need not produce - paper at all and may return results directly to the computer. - &postscript; also uses two-way communication to tell the - computer about problems, such as errors in the &postscript; - program or paper jams. Your users may be appreciative of such - information. Furthermore, the best way to do effective - accounting with a &postscript; printer requires two-way - communication: you ask the printer for its page count (how + &postscript; jobs are actually programs sent to the printer; + they need not produce paper at all and may return results + directly to the computer. &postscript; also uses two-way + communication to tell the computer about problems, such as errors + in the &postscript; program or paper jams. Your users may be + appreciative of such information. Furthermore, the best way to + do effective accounting with a &postscript; printer requires + two-way communication: you ask the printer for its page count (how many pages it has printed in its lifetime), then send the user's job, then ask again for its page count. Subtract the two values and you know how much paper to charge to the user. - + Parallel Ports @@ -381,11 +375,12 @@ both should give you complete guidance. Remember which parallel port you used on the computer. - The first parallel port is ppc0 to - FreeBSD; the second is ppc1, and so - on. The printer device name uses the same scheme: - /dev/lpt0 for the printer on the first - parallel ports etc. + The first parallel port is + ppc0 to &os;; the second + is ppc1, and so on. The + printer device name uses the same scheme: + /dev/lpt0 for the printer + on the first parallel ports etc. @@ -436,7 +431,7 @@ baud rate) that both your computer and the printer can support. Choose 7 or 8 data bits; none, even, or odd parity; and 1 or 2 stop bits. Also choose a flow - control protocol: either none, or XON/XOFF (also known as + control protocol: either none, or XON/XOFF (also known as in-band or software) flow control. Remember these settings for the software configuration that follows. @@ -447,7 +442,7 @@ Software Setup This section describes the software setup necessary to print - with the LPD spooling system in FreeBSD. + with the LPD spooling system in &os;. Here is an outline of the steps involved: @@ -456,15 +451,15 @@ Configure your kernel, if necessary, for the port you are using for the printer; section Kernel Configuration tells + linkend="printing-kernel">Kernel Configuration tells you what you need to do. Set the communications mode for the parallel port, if you are using a parallel port; section Setting the - Communication Mode for the Parallel Port gives + linkend="printing-parallel-port-mode">Setting the + Communication Mode for the Parallel Port gives details. @@ -476,10 +471,9 @@ - Set up LPD for the printer by - modifying the file - /etc/printcap. You will find out how - to do this later in this chapter. + Set up LPD for the printer by + modifying the file /etc/printcap. You + will find out how to do this later in this chapter. @@ -495,7 +489,7 @@ To find out if the kernel you are currently using supports a serial interface, type: - &prompt.root; grep sioN /var/run/dmesg.boot + &prompt.root; grep sioN /var/run/dmesg.boot Where N is the number of the serial port, starting from zero. If you see output similar to @@ -509,17 +503,17 @@ To find out if the kernel supports a parallel interface, type: - &prompt.root; grep ppcN /var/run/dmesg.boot + &prompt.root; grep ppcN /var/run/dmesg.boot Where N is the number of the parallel port, starting from zero. If you see output similar to the following: - - ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0 + + ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/8 bytes threshold - - then the kernel supports the port. + + then the kernel supports the port. You might have to reconfigure your kernel in order for the operating system to recognize and use the parallel or serial @@ -531,328 +525,327 @@ follows. - - Setting the Communication Mode for the Parallel - Port - When you are using the parallel interface, you can choose - whether FreeBSD should use interrupt-driven or polled - communication with the printer. The generic printer - device driver (&man.lpt.4;) on FreeBSD - uses the &man.ppbus.4; system, which controls the port - chipset with the &man.ppc.4; driver. + + Setting the Communication Mode for the Parallel + Port - - - The interrupt-driven method is - the default with the GENERIC kernel. With this method, - the operating system uses an IRQ line to determine when - the printer is ready for data. - + When you are using the parallel interface, you can choose + whether &os; should use interrupt-driven or polled + communication with the printer. The generic printer + device driver (&man.lpt.4;) on &os; + uses the &man.ppbus.4; system, which controls the port + chipset with the &man.ppc.4; driver. - - The polled method directs the - operating system to repeatedly ask the printer if it is - ready for more data. When it responds ready, the kernel - sends more data. - - + + + The interrupt-driven method is + the default with the GENERIC kernel. With this method, + the operating system uses an IRQ line to determine when + the printer is ready for data. + - The interrupt-driven method is usually somewhat faster - but uses up a precious IRQ line. Some newer HP printers - are claimed not to work correctly in interrupt mode, - apparently due to some (not yet exactly understood) timing - problem. These printers need polled mode. You should use - whichever one works. Some printers will work in both - modes, but are painfully slow in interrupt mode. + + The polled method directs the + operating system to repeatedly ask the printer if it is + ready for more data. When it responds ready, the kernel + sends more data. + + - You can set the communications mode in two ways: by - configuring the kernel or by using the &man.lptcontrol.8; - program. + The interrupt-driven method is usually somewhat faster + but uses up a precious IRQ line. Some newer HP printers + are claimed not to work correctly in interrupt mode, + apparently due to some (not yet exactly understood) timing + problem. These printers need polled mode. You should use + whichever one works. Some printers will work in both + modes, but are painfully slow in interrupt mode. - To set the communications mode by configuring - the kernel: + You can set the communications mode in two ways: by + configuring the kernel or by using the &man.lptcontrol.8; + program. - - - Edit your kernel configuration file. Look for - an ppc0 entry. If you are setting up - the second parallel port, use ppc1 - instead. Use ppc2 for the third port, - and so on. + To set the communications mode by configuring + the kernel: - - - If you want interrupt-driven mode, edit the following line: + + + Edit your kernel configuration file. Look for + an ppc0 entry. If you are setting up + the second parallel port, use ppc1 + instead. Use ppc2 for the third port, + and so on. - hint.ppc.0.irq="N" + + + If you want interrupt-driven mode, edit the following + line: - in the /boot/device.hints file - and replace N with the right - IRQ number. The kernel configuration file must - also contain the &man.ppc.4; driver: + hint.ppc.0.irq="N" - device ppc + in the /boot/device.hints file + and replace N with the right + IRQ number. The kernel configuration file must + also contain the &man.ppc.4; driver: - + device ppc + - - If you want polled mode, remove in your - /boot/device.hints file, the - following line: + + If you want polled mode, remove in your + /boot/device.hints file, the + following line: - hint.ppc.0.irq="N" + hint.ppc.0.irq="N" - In some cases, this is not enough to put the - port in polled mode under FreeBSD. Most of - time it comes from &man.acpi.4; driver, this latter - is able to probe and attach devices, and therefore, - control the access mode to the printer port. You - should check your &man.acpi.4; configuration to - correct this problem. - - - + In some cases, this is not enough to put the + port in polled mode under &os;. Most of + time it comes from &man.acpi.4; driver, this latter + is able to probe and attach devices, and therefore, + control the access mode to the printer port. You + should check your &man.acpi.4; configuration to + correct this problem. + + + - - Save the file. Then configure, build, and install the - kernel, then reboot. See kernel configuration for - more details. - - + + Save the file. Then configure, build, and install the + kernel, then reboot. See kernel + configuration for more details. + + - To set the communications mode with - &man.lptcontrol.8;: + To set the communications mode with + &man.lptcontrol.8;: - - - Type: + + + Type: - &prompt.root; lptcontrol -i -d /dev/lptN + &prompt.root; lptcontrol /dev/lptN - to set interrupt-driven mode for - lptN. - + to set interrupt-driven mode for + lptN. + - - Type: + + Type: - &prompt.root; lptcontrol -p -d /dev/lptN + &prompt.root; lptcontrol /dev/lptN - to set polled-mode for + to set polled-mode for lptN. - - + + - You could put these commands in your - /etc/rc.local file to set the mode each - time your system boots. See &man.lptcontrol.8; for more - information. - + You could put these commands in your + /etc/rc.local file to set the mode each + time your system boots. See &man.lptcontrol.8; for more + information. + - - Checking Printer Communications + + Checking Printer Communications - Before proceeding to configure the spooling system, you - should make sure the operating system can successfully send - data to your printer. It is a lot easier to debug printer - communication and the spooling system separately. + Before proceeding to configure the spooling system, you + should make sure the operating system can successfully send + data to your printer. It is a lot easier to debug printer + communication and the spooling system separately. - To test the printer, we will send some text to it. For - printers that can immediately print characters sent to them, - the program &man.lptest.1; is perfect: it generates all 96 - printable ASCII characters in 96 lines. + To test the printer, we will send some text to it. For + printers that can immediately print characters sent to them, + the program &man.lptest.1; is perfect: it generates all 96 + printable ASCII characters in 96 lines. - PostScript - For a &postscript; (or other language-based) printer, we - will need a more sophisticated test. A small &postscript; - program, such as the following, will suffice: + PostScript + For a &postscript; (or other language-based) printer, we + will need a more sophisticated test. A small &postscript; + program, such as the following, will suffice: - %!PS + %!PS 100 100 moveto 300 300 lineto stroke 310 310 moveto /Helvetica findfont 12 scalefont setfont (Is this thing working?) show showpage - The above &postscript; code can be placed into a file and - used as shown in the examples appearing in the following - sections. + The above &postscript; code can be placed into a file and + used as shown in the examples appearing in the following + sections. - PCL - - When this document refers to a printer language, it is - assuming a language like &postscript;, and not Hewlett - Packard's PCL. Although PCL has great functionality, you - can intermingle plain text with its escape sequences. - &postscript; cannot directly print plain text, and that is the - kind of printer language for which we must make special - accommodations. - + PCL + + When this document refers to a printer language, it is + assuming a language like &postscript;, and not Hewlett + Packard's PCL. Although PCL has great functionality, you + can intermingle plain text with its escape sequences. + &postscript; cannot directly print plain text, and that is the + kind of printer language for which we must make special + accommodations. + - - Checking a Parallel Printer + + Checking a Parallel Printer - - printers - parallel - - This section tells you how to check if FreeBSD can - communicate with a printer connected to a parallel - port. + + printers + parallel + + This section tells you how to check if &os; can + communicate with a printer connected to a parallel + port. - To test a printer on a parallel - port: + To test a printer on a parallel + port: - - - Become root with &man.su.1;. - + + + Become root with &man.su.1;. + - - Send data to the printer. + + Send data to the printer. - - - If the printer can print plain text, then use - &man.lptest.1;. Type: + + + If the printer can print plain text, then use + &man.lptest.1;. Type: - &prompt.root; lptest > /dev/lptN + &prompt.root; lptest > /dev/lptN - Where N is the number - of the parallel port, starting from zero. - + Where N is the number + of the parallel port, starting from zero. + - - If the printer understands &postscript; or other - printer language, then send a small program to the - printer. Type: + + If the printer understands &postscript; or other + printer language, then send a small program to the + printer. Type: - &prompt.root; cat > /dev/lptN + &prompt.root; cat > /dev/lptN - Then, line by line, type the program - carefully as you cannot edit a - line once you have pressed RETURN - or ENTER. When you have finished - entering the program, press - CONTROL+D, or whatever your end - of file key is. + Then, line by line, type the program + carefully as you cannot edit a + line once you have pressed RETURN + or ENTER. When you have finished + entering the program, press + CONTROL+D, or whatever your end + of file key is. - Alternatively, you can put the program in a file - and type: + Alternatively, you can put the program in a file + and type: - &prompt.root; cat file > /dev/lptN + &prompt.root; cat file > /dev/lptN - Where file is the - name of the file containing the program you want to - send to the printer. - - - - + Where file is the + name of the file containing the program you want to + send to the printer. + + + + - You should see something print. Do not worry if the - text does not look right; we will fix such things - later. - + You should see something print. Do not worry if the + text does not look right; we will fix such things + later. + - - Checking a Serial Printer + + Checking a Serial Printer - - printers - serial - - This section tells you how to check if FreeBSD can - communicate with a printer on a serial port. + + printers + serial + + This section tells you how to check if &os; can + communicate with a printer on a serial port. - To test a printer on a serial - port: + To test a printer on a serial + port: - - - Become root with &man.su.1;. - + + + Become root with &man.su.1;. + - - Edit the file /etc/remote. Add - the following entry: + + Edit the file /etc/remote. Add + the following entry: - printer:dv=/dev/port:br#bps-rate:pa=parity + printer:dv=/dev/port:br#bps-rate:pa=parity - bits-per-second - serial port - parity - Where port is the device - entry for the serial port (ttyd0, - ttyd1, etc.), - bps-rate is the - bits-per-second rate at which the printer communicates, - and parity is the parity - required by the printer (either even, - odd, none, or - zero). + bits-per-second + serial port + parity + Where port is the device + entry for the serial port (ttyd0, + ttyd1, etc.), + bps-rate is the + bits-per-second rate at which the printer communicates, + and parity is the parity + required by the printer (either even, + odd, none, or + zero). - Here is a sample entry for a printer connected via - a serial line to the third serial port at 19200 bps with - no parity: + Here is a sample entry for a printer connected via + a serial line to the third serial port at 19200 bps + with no parity: - printer:dv=/dev/ttyd2:br#19200:pa=none - + printer:dv=/dev/ttyd2:br#19200:pa=none + - - Connect to the printer with &man.tip.1;. - Type: + + Connect to the printer with &man.tip.1;. + Type: - &prompt.root; tip printer + &prompt.root; tip printer - If this step does not work, edit the file - /etc/remote again and try using - /dev/cuaaN - instead of - /dev/ttydN. - + If this step does not work, edit the file + /etc/remote again and try using + /dev/cuaaN instead of + /dev/ttydN. + - - Send data to the printer. + + Send data to the printer. - - - If the printer can print plain text, then use >>> TRUNCATED FOR MAIL (1000 lines) <<<