foo2hbpl is an open source printer driver for printers that use the HBPL version 2 wire protocol for their print data, such as the Dell 1355, Fuji Xerox DocuPrint CM205, or the Xerox WorkCentre 6015. These printers are often erroneously referred to as winprinters or GDI printers. However, Microsoft GDI only mandates the API between an application and the printer driver, not the protocol on the wire between the printer driver and the printer. In fact, HBPL printers are raster printers that happen to use a very efficient wire protocol. HBPL is just one of many wire protocols that are in use today, such as Postscript, PCL, Epson, ZjStream, etc. This driver uses Ghostscript to perform all of the heavy lifting (image processing). There are five major components to the foo2hbpl printer driver: foo2hbpl2 (the page image to protocol conversion engine of the driver); foo2hbpl2-wrapper (a shell script (compatible with foomatic) that runs ghostscript and foo2hbpl in a pipeline); icc2ps (converts an ICM color profile to a Postscript CRD, which is then fed into Ghostscript before the users Postscript program); foomatic-db (foomatic database entries that describe the supported printers and their options so that printer spoolers know how to access the printer using foo2hbpl2-wrapper); and hbpldecode (a tool for developers to inspect HBPL streams).