![]() |
Understanding DOS Printing vs. WordPerfect Pr |
The information in this document applies to:
WordPerfect® 5.1 for DOS
Problem
Solutions: If DOS does not print using (COPY CON LPT1, PRN or AUX), WordPerfect will not print. Normally WordPerfect prints using the BIOS and only uses interrupts for the Print to Hardware Port (PTHP) option. BIOS The PC BIOS (Basic Input/Output Services) is a collection of small software programs that are a part of the machine. Some of these programs are routines that do things such as video output and/or disk output. It also maintains a table of information on parallel and serial ports. Printing WordPerfect prints a document through the services of the machine's BIOS. The BIOS provides the information concerning where the printer ports are located. The print job goes to the location specified by the BIOS. Printing a WP document from List Files is the same as printing from the WP document screen. They both use the same interrupts from the BIOS. When DOS sends a job to print, it sends it to the BIOS, and the BIOS information is used to direct the print job. DOS prints through BIOS the same way that WordPerfect uses BIOS. When resident programs are being used with WordPerfect such as software print spooler's, network CAPTURE commands or soft font packages (Powerpak, FaceLift, Glyphix), they bypass the BIOS routines in one of two ways. Either the resident program will "capture" the port and route it to their program, or it will create a port device or filename through Shift-F7, S Select, 3 Edit, 2 Port, 8-Other (Other Port Option). The fastest way to print to a local printer is to bypass the BIOS and send the command strings directly to the parallel or serial port. That is what the PTHP (Print to Hardware Port) does. Interrupts The interrupts that WP uses depends on the mapping in the BIOS. Interrupt 17 is a standard parallel interrupt, whereas interrupt 14 is standard for serial printing, and interrupt 05 is for Print Screen. IBM Interrupt Usage Table Interrupt # Definition 05H* Print Screen 06H Unused 07H Unused 08H Hardware IRQ0 (timer tick) 09H Hardware IRQ1 (keyboard) 0AH Hardware IRQ2 (reserved) 0BH Hardware IRQ3 (COM2) 0CH Hardware IRQ4 (COM1) 0DH Hardware IRQ5 (fixed disk) 0EH Hardware IRQ6 (floppy disk) 0FH Hardware IRQ7 (printer) 10H* Video service 11H* Equipment information 12H* Memory size 13H* Disk I/O service 14H* Serial-port service 15H* Cassette/network service 16H* Keyboard service 17H* Printer service 18H* ROM BASIC 19H* Restart system 1AH* Get/Set time/date 1BH Control-Break (user defined) 1CH Timer tick (user defined) 1DH Video parameter pointer 1EH Disk parameter pointer 1FH Graphics character table * = The 12 ROM BIOS Services Interrupt 05H (Print-Screen) Interrupt 05H (decimal 5) activates the print-screen services. The keyboard support routines generate interrupt 05H in response to the Shift-PrintScreen command. Any program, if written to do so, can activate this interrupt and print from the screen like DOS does. This service directs all its output to printer number 0, the default printer. The print-screen will not print to a serial port unless there is a mode redirection command present in the DOS environment. The print-screen service will print any printable characters from the screen in either text or basic graphics mode using both standard video services and standard printer services. In order to print in higher graphics mode such as CGA-compatible graphics, load the GRAPHICS.COM DOS utility in RAM. While this program is running resident, it will print through interrupt 05H, just the same as the normal print-screen service. Interrupt 14H (Serial Port Services) Interrupt 14H (decimal 20) deals with four serial communications services common to all IBM machines (PS/2's have two more). These four services in general are Initializing Serial Port, Send out One Character, Receive One Character, and Getting Serial Port Status. These all deal with standard communication through the RS-232 asynchronous port. Interrupt 17H (Printer Services) Interrupt 17H (decimal 23) supports printer output through the parallel printer adapter. Three ROM BIOS printer services are invoked with interrupt 17H, they are: Send one Byte to the Printer, Initialize Printer, Get Printer Status. Polling vs. Interrupts: Polling is when the program running the CPU periodically pauses to ask the input devices if there is any input processing that needs to be done. This method of printing has to be done through the BIOS. Interrupts are input that interrupts the CPU from processing and informs the CPU that there is information waiting to be entered. This is what PTHP does. IRQ is the level the expansion board will generate an interrupt on. The base address is the base I/O port address of the expansion board. Other - Printer Port The option 8-Other always sends the print job as a file name. When you plug in LPT1: from 8-Other, your are sending a print job named "LPT1:" to DOS. DOS controls the course of the print job, whether through a mode command or through BIOS. Mode The BIOS does not keep track of MODE commands and so when 8-Other LPT1: is used, it goes to DOS and follows a MODE command. If there is no MODE command, it goes to the BIOS. WordPerfect is installed on a machine that has a MODE command redirecting the LPT1: port to COM1: port. The printer is physically connected to COM1:. WordPerfect, by default has its printer driver printing to LPT1:, and the BIOS is directing the print job to LPT1:. DOS can print from "PRN" because the MODE command is redirecting the parallel port to serial. You can change the port in WordPerfect to COM1: or choose 8-Other and type in LPT1:. With the port set to COM1:, the BIOS will direct the print job correctly. With the 8-Other option, the file called "LPT1:" will be directed through the MODE command to the serial port. Some programs may print when WP and DOS do not print, and it could be for any number of reasons. One possible reason is that the other software program prints similar to PTHP or in some way bypasses the BIOS. Note: In most cases, if you cannot print at DOS, WP cannot be guaranteed to print. This is due to the way both DOS and WordPerfect use the BIOS for printing. |
Answer:
Details:
Product specifications, packaging, technical support and information (*Specifications*) refer to theUnited States retail English version only. Specifications for other versions may vary. All Specifications, claims, features, representations, and/or comparisons provided are correct to the best of our knowledge of the date of publication, but are subject to change without notice.OUR MAXIMUM AGGREGATE LIABILITY TO YOU AND THAT OF OUR DEALERS AND SUPPLIERS IS LIMITED. IT SHALL NOTEXCEED THE AMOUNT YOU PAID TO ACCESS THE INFORMATION. SEE LEGAL DISCLAIMER. |