Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Printer driver
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Printer drivers in different operating systems == === Unix and Unix-like === [[Unix]] and other [[Unix-like]] systems such as [[Linux]] and [[OS X]] use [[CUPS]] (short for Common Unix Printing System), a modular printing system for Unix-like computer operating systems, which allows a computer to act as a [[print server]]. A computer running CUPS is a host that can accept print jobs from client computers, process them, and send them to the appropriate printer. Printer drivers are typically implemented as [[filter program|filters]]. They are usually named the ''front end'' of the printing system, while the printer spoolers constitute the ''back end''. Backends are also used to determine the available devices. On startup, each backend is asked for a list of devices it supports, and any information that is available. === DOS === <!-- Courtesy note per [[WP:RSECT]]: [[Epson emulation]] redirects here. --> [[DOS]] supports predefined character devices <code>[[PRN:]]</code>, <code>[[LPT1:]]</code>, <code>[[LPT2:]]</code> and <code>[[LPT3:]]</code> associated with parallel printers supported in the system. Similarly, serial printers can be used with <code>[[AUX:]]</code>, <code>[[COM1:]]</code>, <code>[[COM2:]]</code>, <code>[[COM3:]]</code> and <code>[[COM4:]]</code>. Users can use commands like, for example, "<code>COPY ''file1'' LPT1:</code>" to print the content of a file to a printer. The contents is transferred to the printer without any interpretation. Therefore, this method of printing is either for files already stored in the corresponding printer's language or for generic [[text file]]s without more than simple line-oriented formatting. DOS also provides a dynamically loadable print spooler named [[PRINT (command)|PRINT]] as well as optional support to support screen captures also in graphics mode through [[GRAPHICS]]. If the optional character device driver [[PRINTER.SYS]] is loaded, DOS provides its [[code page]] switching support also for the associated printers—different types of [[dot matrix printer|dot matrix]] and [[ink jet printer]]s are supported by default. Beyond this, there are no system-wide printer-specific drivers for use at application level under MS-DOS/PC DOS. Under [[DR-DOS]], however, the SCRIPT command can be loaded to run in the background in order to intercept and convert printer output from applications into [[PostScript]] to support PS-capable printers also by applications not supporting them directly. In order to support more complex printing for different models of printers, each application (e.g. a [[word processor]]) may be shipped with its own printer drivers, which were essentially descriptions of printer [[escape sequence]]s. Printers, too, have been supplied with drivers for the most popular applications. In addition, it's possible for applications to include tools for editing printer description, in case there was no ready driver. In the days when DOS was widely used, many printers had emulation modes for [[Epson]] FX-80<ref>[http://lprng.sourceforge.net/DISTRIB/RESOURCES/PPD/epson.htm list of Epson FX printer codes]</ref> and [[IBM]] [[List of IBM products|Proprinter]] commands. Many more recent [[laser printer]]s also have emulation modes for [[Hewlett-Packard|HP]] [[Printer Command Language|PCL]] (HP LaserJet) or [[PostScript]] printers which will work in DOS. It appears that these are also compatible with Windows 3.x.<ref>[http://support.microsoft.com/kb/69251 Citizen Printer Emulation Modes for Microsoft Windows 3.0]</ref> === Windows === On [[Microsoft Windows]] systems, printer drivers make use of [[Graphics Device Interface|GDI]] ([[Unidrv]] or [[PostScript|PScript]]-based) or [[XML Paper Specification|XPS]] (XPSDrv). Programs then use the same standard [[Application programming interface|APIs]] to draw text and pictures both on screen and on paper. Printers which use GDI natively are commonly referred to as [[Graphics Device Interface#GDI printers|Winprinters]] and are considered incompatible with other operating systems, although there is software (such as PrintFil) which will make these printers work in a DOS prompt within Windows. [[Win32]] APIs also allow applications to send data directly to the spooler, bypassing the printer driver; however, few applications actually use this option. The printer driver is usually located on the C:\Windows\System32\DriverStore\FileRepository folder on a Windows machine. === Amiga === The original AmigaOS up to 1.3 supported printers through a standard series of drivers stored at the required path "DEVS:Printers". All printer drivers were stored in that directory, and covered the standard printers in 1985-1989 circa, included [[Epson]] FX standard driver, [[Xerox]] 4020, HP, etcetera. Any Amiga printer driver had to communicate though the standard Amiga printer.device (the default standard hardware device of Amiga dealing with printers), and the standard parallel.device (which controlled parallel port) and the driver would then control the printer on its own. Amiga printer drivers were an innovation for their time. They spared users from individually configuring each of their applications. They had the ability to print up to 4096 colors. Through the use of the Printer Preferences program printers could be connected to the serial port as well. Amiga also had support for a virtual device "PRT:" to refer to printer.device so, for example the command "COPY file TO PRT:" caused the file to be printed directly bypassing parallel.device and the default printer driver. Amiga used [[ANSI escape code]]s, not the special ones defined by the various printer manufacturers. This way every application on the Amiga could use the same standard set of control sequences and wouldn't need to know which printer is actually connected. The printer driver then translated these standard sequences into the special sequences a certain printer understands. Amiga internal function "PWrite" of printer.device writes 'length' bytes directly to the printer. This function is generally called on by printer drivers to send their buffer(s) to the printer. Number of buffers are decided by the persons who created the driver. Amiga lacked a standard Printer Spooler. Since AmigaOS 2.0 a standard printer.device was changed to control various printers at same time. The Printer preferences were divided in three main panels: ''Prefs:Printer'' which selects main printer and other basic elements such as "Print Spacing" and "Paper Size". ''PrinterGFX'' controlled features like Dithering and Scaling. ''PrinterPS'' controlled Postscript Printers. The printer drivers surprisingly remained almost same of Workbench 1.3, with 4096 limits. This fact led Amiga users to prefer third party Printer Systems with their own drivers, like [[TurboPrint]] and [[PrintStudio]], which introduced not only recent drivers, but also featured a functioning Printer Spooler into Amiga, and featured 16 million colors printing. [[MorphOS]] uses a special version of TurboPrint to pilot recent printers. Many Amiga programs like DTP programs as [[PageStream]] featured in the past its own printer drivers. USB printers are automatically recognized by the [[Poseidon (USB stack)|Poseidon]] USB Stack. This stack is capable of detecting any USB device by its class, but printers still require a driver to be controlled.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)