Specific Problems/Solutions

General

  1. Why do I only get one line per page when I print?
  2. Why do I get a cover page for every page I print?
  3. Can I change the subject line for print jobs e-mailed from the system?
  4. What are the known bugs in the INNOPAC software related to printing?
  5. What about LPR/LPD? Or a Novell, NT, and AppleTalk printer?
  6. Why are the report pages not lining up correctly when printing to a laser printer?
  7. After printing several pages, suddenly the printer skips portions of the printout, or prints garbage. Why?
  8. Can I print diacritics?

Software/Hardware Specific

  1. Why doesn't the default terminal program with Windows 95 seem to work?
  2. What special configuration is needed to print labels?
  3. How do I hook up a serial printer to my PC?

Why do I only get one line per page when I print?

You are likely using the "Attached Printer" type and not using a terminal emulation program that accounts for the way that the INNOPAC software prints. What is happening is that the INNOPAC is only sending one line per "print job". (In this context, a "print job" is the contents between the VT102 Print-On and Print-Off control codes; in the case of the "Attached Printer", this is one line. See the definition of Attached Printer for more information.) In Windows 95, this translates to one entry in the print queue for each line of the INNOPAC printout. On the Macintosh, this displays one print dialog box for every line of the INNOPAC printout. In both cases, the local operating system inserts a form feed between each print job to separate printouts. When printing normal items such as a word processing document, we want this to happen -- otherwise on one page the end of one document would be followed immediately by the beginning of the next.

Some terminal emulation packages account for the idiosyncracies of INNOPAC printing. Some of these are listed in the Software section of this FAQ.


Why do I get a cover page for every page I print?


Can I change the subject line for print jobs e-mailed from the system?

Yes, the default subject line "MAIL FROM THE LIBRARY" can be changed by Innovative to any subject line you specify. You can also change the default e-mail address in the "From:" line. Contact the III Help Desk for further information.


What are the known bugs in the INNOPAC software related to printing?

  1. The NCSA Telnet Printer cannot be used to print circulation notices. There appears to be a buffering problem where the last portion of the last notice is not printed until well after the print job is finished.

    This problem appeared in early versions of Release 11. However, as of 30 December 1997, I cannot confirm it on my system. (PEM)


What about LPR/LPD? Or a Novell, NT, and AppleTalk printer?

The LPR/LPD printing protocol is not used by the INNOPAC printing software. Historically, this seems to be for two reasons: 1) the INNOPAC software wants direct control over the printer to determine when a print job completes and if there are any errors associated with the printing; and 2) there are enough variations with the LPR/LPD software on various UNIX systems that considerable effort would have to be put forth by the Innovative programming staff to ensure the INNOPAC software is portable over many platforms. Instead, the INNOPAC software supports a much simpler way to print to network printers, the "Network System" printer type.

The INNOPAC "System" printers (even the "Network System" printer) cannot print to Novell, NT or AppleTalk printers. These print queue systems require network protocols that are not commonly available on the UNIX servers that run the INNOPAC software. These types of printer systems can be used, but only with the "Attached" printer type and software which supports the VT102 Printer Control codes.


Why are the report pages not lining up correctly when printing to a laser printer?

Many of III's reports are issued with an assumption that 66 lines equals a page. There are no formfeed characters included in the print data stream. If the printer used is a dot matrix type, or other continuous feed, this will work if a) the printer defaults to 6 lines per inch (lpi), and the terminal program doesn't override this; or b) the terminal program in conjunction with Windows (or MacOS) specifically dictates 6 lpi.

HOWEVER, if a laser printer is used, it can generally not print a region at the top and bottom of the page (approx. 0.25" each). But it is not possible to fit 66 lines at 6 lpi within 10.5 inches. SOME printers have front-panel control that allow specifying a 66-line page, which is accomplished by reducing the line spacing. MOST laser printers will have pagination problems. This is true even when they are directly connected to the host (no terminal program is involved).

AnzioWin has added support for this problem. Print Wizard, part of AnzioWin, notices unpaginated text, assumes it should be 66 lines per page, and adjusts line spacing to fit the text to the reduced size of the laserprinted page.


After printing several pages, suddenly the printer skips portions of the printout, or prints garbage. Why?

In almost all cases, the computer can send much more data than the printer can print. When the storage buffer in the printer fills up, the printer needs to tell the computer to stop and wait for it to catch up. This function is called Flow Control. If the computer/terminal and the printer do not agree on how to control the flow of print data, you can see missing portions of the printout or garbage being printed.

You can set your printer and computer/terminal to follow one of may types of flow control. One way is Hardware Flow control (a.k.a. "DTR/DSR"). Using this mechanism, the printer tells the computer/terminal to stop or start sending data based on signals on specific pins of the cable. If you use this mechanism, you need to be sure that all of the pins are properly connected on each end for a serial cable. (Some cheap cable manufactures save money by not connecting all of the required pins.) Another mechanism is Software Flow control (a.k.a. "XON/XOFF"). With this method, the printer sends special characters back to the computer/terminal to tell it to start or stop printing.

Which either way you use, be sure to set your printer and your terminal's printer port or the software settings of your computer's terminal emulator program to use the same mechanism. Flow Control is typically only seen in serial devices, so this should not be a factor if your printer is connected to your computer using a parallel connection.


Can I print diacritics?

Innopac's most complete handling of diacritics is with the T160E terminal type. When you do passhtrough (attached) print in this mode, Innopac encodes the character/diacritic combinations into escape code sequences identical to those used when writing to the screen. The telnet (terminal emulation) program must process these codes and translate them to something the printer can print. The only known program that can do this is Anzio, version 12 or higher.


Why doesn't the default terminal program with Windows 95 seem to work?

The Terminal program that comes with Windows 95 does not support the VT102 printer control codes required to use the Attached Printer (see the definition of "Attached Printer" for more information). Another terminal program that supports the VT102 printer control codes is required; see the Software page of this FAQ for suggestions.


What special configuration is needed to print labels?

Controlling the printing of labels presents special difficulties because of the size of the "document" (a small label). The best strategy for printing labels is to have your printer connected directly to your terminal or PC and to set your terminal program to print directly to the printer (bypassing the Windows or Macintosh print spoolers and network print queues). Various software packages refer to this type of printing by many names:


How do I hook up a serial printer to my PC?

Connecting serial printers has always been problematic. The following variables can be involved:

  1. Cable polarity. A PC's serial port is wired as DTE (Data Terminal Equipment) which means, for instance, that it transmits on pin 2 and receives on pin 3. Printers are also generally wired this way. That means a straight-through cable will NOT work -- you need a cable that crosses 2-3 and 3-2.
  2. Handshake wiring. This also is part of the cable. IF you are using hardware handshaking, that means the printer will indicate it is ready to print by issuing a positive signal on pin 20 (DTR), pin 4 (RTS), or others. Your PC serial port, on the other hand, generally needs to see a positive signal on pin 5 (CTS), 6 (DSR), and 8 (DCD). Thus the cable needs to connect correctly.
  3. Keep in mind that you need to not just get the printer started, you also need to get the PC STOPPED when the printer is busy, out of paper, offline, etc. That's what handshaking is.

    Doing the job right virtually requires a tool called a breakout box, which sits in between the devices, shows you with light which pins are doing what, and lets you cross-wire on an experimental basis.

  4. The baud rate of the printer must match the baud rate of the comm port. This one's tough in a Windows environment. It depends further on how the terminal emulation software writes to the port. If the software uses a Windows printer driver, then Windows determines the baud rate. If, on the other hand, the software is configured to print "raw", "direct to printer", or something like that, that may mean it's writing directly to a file/device named, for instance, "com2". Then it's not clear WHAT sets up the port's baud rate (and handshaking). In some cases a MODE command at the DOS level seems to do it.

Version 12 of Anzio has added considerable error checking with printer handshake-related issues when the device goes "not ready", due to printer problems, lack of paper, a very large print job, etc.