Calling ROM BIOS Routines to Check the Printer Status
Article ID: 12110
Article Last Modified on 12/1/2003
APPLIES TO
- Microsoft C Professional Development System 6.0
- Microsoft C Professional Development System 6.0a
- Microsoft C Professional Development System 6.0a
- Microsoft C/C++ Professional Development System 7.0
- Microsoft Visual C++ 1.0 Professional Edition
- Microsoft Visual C++ 1.5 Professional Edition
This article was previously published under Q12110
SUMMARY
The text below provides a method for a C application to check the
status of a printer before it attempts to write data to the printer.
MORE INFORMATION
Even though the C language does not define a portable method to check
printer status, your application can retrieve this information using
routines in the ROM BIOS. To obtain status information, call the
_bios_printer() function, an interface to Interrupt 17H, Function 2,
or call the interrupt directly through the int86() functions. For more
information, see the online help file or the run-time library
reference manual provided with your compiler.
In your application, you may want to process printer errors by
changing the critical error handler interrupt vector (the Interrupt
24H vector). The default critical error handler presents the user with
the notorious "abort, retry, ignore" message. Your application can
provide a substitute message, like "Printer offline: place printer on
line and press Y to continue."
REFERENCES
For more information about the ROM BIOS routines or interrupt
handlers, refer to one of the following two books from Microsoft
Press:
- "The Peter Norton Programmer's Guide to the IBM PC,"
by Peter Norton
- "Advanced MS-DOS," by Ray Duncan
Additional query words: kbinf 6.00 6.00a 6.00ax 7.00 1.00 1.50
Keywords: kb16bitonly KB12110